{"nodes": [{"id": "gameengine", "label": "GameEngine.scala", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L1"}, {"id": "gameengine_gameengine", "label": "GameEngine", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L17"}, {"id": "gameengine_pendingpromotion", "label": "PendingPromotion", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L25"}, {"id": "gameengine_gameengine_ispendingpromotion", "label": ".isPendingPromotion()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L29"}, {"id": "gameengine_gameengine_board", "label": ".board()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L32"}, {"id": "gameengine_gameengine_turn", "label": ".turn()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L33"}, {"id": "gameengine_gameengine_context", "label": ".context()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L34"}, {"id": "gameengine_gameengine_canundo", "label": ".canUndo()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L37"}, {"id": "gameengine_gameengine_canredo", "label": ".canRedo()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L40"}, {"id": "gameengine_gameengine_commandhistory", "label": ".commandHistory()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L43"}, {"id": "gameengine_gameengine_processuserinput", "label": ".processUserInput()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L48"}, {"id": "gameengine_gameengine_handleparsedmove", "label": ".handleParsedMove()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L84"}, {"id": "gameengine_gameengine_ispromotionmove", "label": ".isPromotionMove()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L105"}, {"id": "gameengine_gameengine_completepromotion", "label": ".completePromotion()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L114"}, {"id": "gameengine_gameengine_undo", "label": ".undo()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L130"}, {"id": "gameengine_gameengine_redo", "label": ".redo()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L133"}, {"id": "gameengine_gameengine_loadgame", "label": ".loadGame()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L140"}, {"id": "gameengine_gameengine_replaygame", "label": ".replayGame()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L149"}, {"id": "gameengine_gameengine_replaymoves", "label": ".replayMoves()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L161"}, {"id": "gameengine_gameengine_exportgame", "label": ".exportGame()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L183"}, {"id": "gameengine_gameengine_loadposition", "label": ".loadPosition()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L188"}, {"id": "gameengine_gameengine_reset", "label": ".reset()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L196"}, {"id": "gameengine_gameengine_executemove", "label": ".executeMove()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L204"}, {"id": "gameengine_gameengine_translatemovetonotation", "label": ".translateMoveToNotation()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L241"}, {"id": "gameengine_gameengine_enpassantnotation", "label": ".enPassantNotation()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L249"}, {"id": "gameengine_gameengine_promotionnotation", "label": ".promotionNotation()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L252"}, {"id": "gameengine_gameengine_normalmovenotation", "label": ".normalMoveNotation()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L260"}, {"id": "gameengine_gameengine_piecenotation", "label": ".pieceNotation()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L270"}, {"id": "gameengine_gameengine_computecaptured", "label": ".computeCaptured()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L279"}, {"id": "gameengine_gameengine_performundo", "label": ".performUndo()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L290"}, {"id": "gameengine_gameengine_performredo", "label": ".performRedo()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L301"}], "edges": [{"source": "gameengine", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L3", "weight": 1.0}, {"source": "gameengine", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L4", "weight": 1.0}, {"source": "gameengine", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L5", "weight": 1.0}, {"source": "gameengine", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L6", "weight": 1.0}, {"source": "gameengine", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L7", "weight": 1.0}, {"source": "gameengine", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L8", "weight": 1.0}, {"source": "gameengine", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L9", "weight": 1.0}, {"source": "gameengine", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L10", "weight": 1.0}, {"source": "gameengine", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L11", "weight": 1.0}, {"source": "gameengine", "target": "gameengine_gameengine", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L17", "weight": 1.0}, {"source": "gameengine", "target": "gameengine_pendingpromotion", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L25", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_ispendingpromotion", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L29", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_board", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L32", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_turn", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L33", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_context", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L34", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_canundo", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L37", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_canredo", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L40", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_commandhistory", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L43", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_processuserinput", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L48", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_handleparsedmove", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L84", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_ispromotionmove", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L105", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_completepromotion", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L114", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_undo", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L130", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_redo", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L133", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_loadgame", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L140", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_replaygame", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L149", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_replaymoves", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L161", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_exportgame", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L183", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_loadposition", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L188", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_reset", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L196", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_executemove", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L204", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_translatemovetonotation", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L241", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_enpassantnotation", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L249", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_promotionnotation", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L252", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_normalmovenotation", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L260", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_piecenotation", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L270", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_computecaptured", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L279", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_performundo", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L290", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_performredo", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L301", "weight": 1.0}, {"source": "gameengine_gameengine_processuserinput", "target": "gameengine_gameengine_performundo", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L55", "weight": 1.0}, {"source": "gameengine_gameengine_processuserinput", "target": "gameengine_gameengine_performredo", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L58", "weight": 1.0}, {"source": "gameengine_gameengine_processuserinput", "target": "gameengine_gameengine_handleparsedmove", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L81", "weight": 1.0}, {"source": "gameengine_gameengine_handleparsedmove", "target": "gameengine_gameengine_ispromotionmove", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L97", "weight": 1.0}, {"source": "gameengine_gameengine_handleparsedmove", "target": "gameengine_pendingpromotion", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L100", "weight": 1.0}, {"source": "gameengine_gameengine_handleparsedmove", "target": "gameengine_gameengine_executemove", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L103", "weight": 1.0}, {"source": "gameengine_gameengine_completepromotion", "target": "gameengine_gameengine_executemove", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L124", "weight": 1.0}, {"source": "gameengine_gameengine_undo", "target": "gameengine_gameengine_performundo", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L130", "weight": 1.0}, {"source": "gameengine_gameengine_redo", "target": "gameengine_gameengine_performredo", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L133", "weight": 1.0}, {"source": "gameengine_gameengine_loadgame", "target": "gameengine_gameengine_replaygame", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L144", "weight": 1.0}, {"source": "gameengine_gameengine_replaygame", "target": "gameengine_gameengine_replaymoves", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L159", "weight": 1.0}, {"source": "gameengine_gameengine_replaymoves", "target": "gameengine_gameengine_handleparsedmove", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L165", "weight": 1.0}, {"source": "gameengine_gameengine_replaymoves", "target": "gameengine_gameengine_completepromotion", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L170", "weight": 1.0}, {"source": "gameengine_gameengine_executemove", "target": "gameengine_gameengine_computecaptured", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L207", "weight": 1.0}, {"source": "gameengine_gameengine_executemove", "target": "gameengine_gameengine_translatemovetonotation", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L214", "weight": 1.0}, {"source": "gameengine_gameengine_translatemovetonotation", "target": "gameengine_gameengine_enpassantnotation", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L245", "weight": 1.0}, {"source": "gameengine_gameengine_translatemovetonotation", "target": "gameengine_gameengine_promotionnotation", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L246", "weight": 1.0}, {"source": "gameengine_gameengine_translatemovetonotation", "target": "gameengine_gameengine_normalmovenotation", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L247", "weight": 1.0}, {"source": "gameengine_gameengine_normalmovenotation", "target": "gameengine_gameengine_piecenotation", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L266", "weight": 1.0}, {"source": "gameengine_gameengine_performundo", "target": "gameengine_gameengine_undo", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L296", "weight": 1.0}, {"source": "gameengine_gameengine_performredo", "target": "gameengine_gameengine_redo", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L308", "weight": 1.0}]}