diff --git a/.codesight/CODESIGHT.md b/.codesight/CODESIGHT.md index adb4a72..53fbe7f 100644 --- a/.codesight/CODESIGHT.md +++ b/.codesight/CODESIGHT.md @@ -2,8 +2,8 @@ > **Stack:** raw-http | none | unknown | scala -> 0 routes | 0 models | 0 components | 35 lib files | 0 env vars | 0 middleware -> **Token savings:** this file is ~3.700 tokens. Without it, AI exploration would cost ~18.200 tokens. **Saves ~14.500 tokens per conversation.** +> 0 routes | 0 models | 0 components | 57 lib files | 1 env vars | 1 middleware +> **Token savings:** this file is ~0 tokens. Without it, AI exploration would cost ~0 tokens. **Saves ~0 tokens per conversation.** --- @@ -60,6 +60,70 @@ - class ApiResponse - function error - function totalPages +- `modules/bot/python/nnue.py` + - function get_data_dir: () + - function get_tactical_data_dir: () + - function get_weights_dir: () + - function list_checkpoints: () + - function show_header: () + - function show_checkpoints_table: () + - _...6 more_ +- `modules/bot/python/src/export.py` — function export_weights_to_binary: (weights_file, output_file) +- `modules/bot/python/src/generate.py` — function play_random_game_and_collect_positions: (output_file, total_positions, samples_per_game, min_move, max_move, num_workers) +- `modules/bot/python/src/label.py` — function normalize_evaluation: (cp_value, method, scale), function label_positions_with_stockfish: (positions_file, output_file, stockfish_path, batch_size, depth, verbose, normalize, num_workers) +- `modules/bot/python/src/tactical_positions_extractor.py` + - function download_and_extract_puzzle_db: (url, output_dir) + - function extract_puzzle_positions: (puzzle_csv, max_puzzles) -> Set[str] + - function load_positions_from_file: (file_path) -> Set[str] + - function merge_positions: (tactical, other, output_file) + - function interactive_merge_positions: (puzzle_csv, output_file, max_puzzles) +- `modules/bot/python/src/train.py` + - function fen_to_features: (fen) + - function find_next_version: (base_name) + - function save_metadata: (weights_file, metadata) + - function train_nnue: (data_file, output_file, epochs, batch_size, lr, checkpoint, stockfish_depth, use_versioning, early_stopping_patience, weight_decay, subsample_ratio) + - function burst_train: (data_file, output_file, duration_minutes, epochs_per_season, early_stopping_patience, batch_size, lr, initial_checkpoint, stockfish_depth, use_versioning, weight_decay, subsample_ratio) + - class NNUEDataset + - _...1 more_ +- `modules/bot/src/main/scala/de/nowchess/bot/Bot.scala` + - class Bot + - function name + - function nextMove +- `modules/bot/src/main/scala/de/nowchess/bot/BotController.scala` + - class BotController + - function getBot + - function listBots +- `modules/bot/src/main/scala/de/nowchess/bot/Config.scala` — class Config +- `modules/bot/src/main/scala/de/nowchess/bot/ai/Weights.scala` + - class Weights + - class CHECKMATE_SCORE + - class DRAW_SCORE + - function evaluate +- `modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala` — class EvaluationClassic, function evaluate +- `modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala` — class EvaluationNNUE, function evaluate +- `modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala` + - class NNUE + - function evaluate + - function benchmark +- `modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala` — function bestMove, function bestMoveWithTime +- `modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala` + - class MoveOrdering + - class OrderingContext + - function addKillerMove + - function getKillerMoves + - function addHistory + - function getHistory + - _...3 more_ +- `modules/bot/src/main/scala/de/nowchess/bot/logic/TranspositionTable.scala` + - function probe + - function store + - function clear +- `modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala` — function probe +- `modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala` — class PolyglotHash, function hash +- `modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala` + - class ZobristHash + - function hash + - function nextHash - `modules/core/src/main/scala/de/nowchess/chess/command/Command.scala` - class Command - function execute @@ -78,11 +142,11 @@ - `modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala` - class GameEngine - function isPendingPromotion + - function setOpponentBot + - function clearOpponentBot - function board - function turn - - function context - - function canUndo - - _...10 more_ + - _...12 more_ - `modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala` - function context - class Observer @@ -93,6 +157,13 @@ - _...1 more_ - `modules/io/src/main/scala/de/nowchess/io/GameContextExport.scala` — class GameContextExport, function exportGameContext - `modules/io/src/main/scala/de/nowchess/io/GameContextImport.scala` — class GameContextImport, function importGameContext +- `modules/io/src/main/scala/de/nowchess/io/GameFileService.scala` + - class GameFileService + - function saveGameToFile + - function loadGameFromFile + - class FileSystemGameService + - function saveGameToFile + - function loadGameFromFile - `modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala` - class FenExporter - function boardToFen @@ -114,6 +185,8 @@ - function parseBoard - function importGameContext - `modules/io/src/main/scala/de/nowchess/io/fen/FenParserSupport.scala` — function buildSquares +- `modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala` — class JsonExporter, function exportGameContext +- `modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala` — class JsonParser, function importGameContext - `modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala` - class PgnExporter - function exportGameContext @@ -160,43 +233,58 @@ --- +# Config + +## Environment Variables + +- `STOCKFISH_PATH` **required** — modules/bot/python/nnue.py + +--- + +# Middleware + +## custom +- generate — `modules/bot/python/src/generate.py` + +--- + # Dependency Graph ## Most Imported Files (change these carefully) -- `modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala` — imported by **28** files -- `modules/api/src/main/scala/de/nowchess/api/board/Square.scala` — imported by **21** files -- `modules/api/src/main/scala/de/nowchess/api/board/Color.scala` — imported by **19** files -- `modules/api/src/main/scala/de/nowchess/api/move/Move.scala` — imported by **14** files -- `modules/api/src/main/scala/de/nowchess/api/board/Board.scala` — imported by **13** files -- `modules/api/src/main/scala/de/nowchess/api/board/Piece.scala` — imported by **10** files -- `modules/api/src/main/scala/de/nowchess/api/board/PieceType.scala` — imported by **9** files -- `modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala` — imported by **9** files -- `modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala` — imported by **8** files -- `modules/io/src/main/scala/de/nowchess/io/GameContextImport.scala` — imported by **7** files -- `modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala` — imported by **4** files -- `modules/io/src/main/scala/de/nowchess/io/GameContextExport.scala` — imported by **4** files -- `modules/rule/src/main/scala/de/nowchess/rules/RuleSet.scala` — imported by **4** files +- `modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala` — imported by **59** files +- `modules/api/src/main/scala/de/nowchess/api/board/Square.scala` — imported by **39** files +- `modules/api/src/main/scala/de/nowchess/api/board/Color.scala` — imported by **36** files +- `modules/api/src/main/scala/de/nowchess/api/move/Move.scala` — imported by **36** files +- `modules/api/src/main/scala/de/nowchess/api/board/Board.scala` — imported by **22** files +- `modules/api/src/main/scala/de/nowchess/api/board/PieceType.scala` — imported by **21** files +- `modules/api/src/main/scala/de/nowchess/api/board/Piece.scala` — imported by **20** files +- `modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala` — imported by **17** files +- `modules/rule/src/main/scala/de/nowchess/rules/RuleSet.scala` — imported by **10** files +- `modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala` — imported by **10** files +- `modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala` — imported by **8** files +- `modules/io/src/main/scala/de/nowchess/io/GameContextImport.scala` — imported by **8** files +- `modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala` — imported by **5** files +- `modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala` — imported by **5** files +- `modules/bot/src/main/scala/de/nowchess/bot/BotDifficulty.scala` — imported by **5** files +- `modules/io/src/main/scala/de/nowchess/io/GameContextExport.scala` — imported by **5** files +- `modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala` — imported by **4** files +- `modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala` — imported by **4** files +- `modules/bot/src/main/scala/de/nowchess/bot/Bot.scala` — imported by **4** files - `modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala` — imported by **4** files -- `modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala` — imported by **4** files -- `modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala` — imported by **2** files -- `modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala` — imported by **2** files -- `modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala` — imported by **2** files -- `modules/io/src/main/scala/de/nowchess/io/fen/FenParserSupport.scala` — imported by **2** files -- `modules/core/src/main/scala/de/nowchess/chess/controller/Parser.scala` — imported by **1** files ## Import Map (who imports what) -- `modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala` ← `modules/core/src/main/scala/de/nowchess/chess/command/Command.scala`, `modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala`, `modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala`, `modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala`, `modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerTest.scala` +23 more -- `modules/api/src/main/scala/de/nowchess/api/board/Square.scala` ← `modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala`, `modules/api/src/main/scala/de/nowchess/api/move/Move.scala`, `modules/api/src/test/scala/de/nowchess/api/game/GameContextTest.scala`, `modules/api/src/test/scala/de/nowchess/api/move/MoveTest.scala`, `modules/core/src/main/scala/de/nowchess/chess/command/Command.scala` +16 more -- `modules/api/src/main/scala/de/nowchess/api/board/Color.scala` ← `modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala`, `modules/api/src/test/scala/de/nowchess/api/game/GameContextTest.scala`, `modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala`, `modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala` +14 more -- `modules/api/src/main/scala/de/nowchess/api/move/Move.scala` ← `modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala`, `modules/api/src/test/scala/de/nowchess/api/board/BoardTest.scala`, `modules/api/src/test/scala/de/nowchess/api/game/GameContextTest.scala`, `modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala` +9 more -- `modules/api/src/main/scala/de/nowchess/api/board/Board.scala` ← `modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala`, `modules/api/src/test/scala/de/nowchess/api/game/GameContextTest.scala`, `modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineGameEndingTest.scala` +8 more -- `modules/api/src/main/scala/de/nowchess/api/board/Piece.scala` ← `modules/core/src/main/scala/de/nowchess/chess/command/Command.scala`, `modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineScenarioTest.scala`, `modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesStateTransitionsTest.scala` +5 more -- `modules/api/src/main/scala/de/nowchess/api/board/PieceType.scala` ← `modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala`, `modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesStateTransitionsTest.scala`, `modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesTest.scala` +4 more -- `modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala` ← `modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineLoadGameTest.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineNotationTest.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineScenarioTest.scala` +4 more -- `modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala` ← `modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala`, `modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala` +3 more -- `modules/io/src/main/scala/de/nowchess/io/GameContextImport.scala` ← `modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala`, `modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala`, `modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala`, `modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala` +2 more +- `modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala` ← `modules/bot/src/main/scala/de/nowchess/bot/Bot.scala`, `modules/bot/src/main/scala/de/nowchess/bot/ai/Weights.scala`, `modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala`, `modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala`, `modules/bot/src/main/scala/de/nowchess/bot/bots/NNUEBot.scala` +54 more +- `modules/api/src/main/scala/de/nowchess/api/board/Square.scala` ← `modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala`, `modules/api/src/main/scala/de/nowchess/api/move/Move.scala`, `modules/api/src/test/scala/de/nowchess/api/game/GameContextTest.scala`, `modules/api/src/test/scala/de/nowchess/api/move/MoveTest.scala`, `modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala` +34 more +- `modules/api/src/main/scala/de/nowchess/api/board/Color.scala` ← `modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala`, `modules/api/src/test/scala/de/nowchess/api/game/GameContextTest.scala`, `modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala`, `modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala`, `modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala` +31 more +- `modules/api/src/main/scala/de/nowchess/api/move/Move.scala` ← `modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala`, `modules/api/src/test/scala/de/nowchess/api/board/BoardTest.scala`, `modules/api/src/test/scala/de/nowchess/api/game/GameContextTest.scala`, `modules/bot/src/main/scala/de/nowchess/bot/Bot.scala`, `modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala` +31 more +- `modules/api/src/main/scala/de/nowchess/api/board/Board.scala` ← `modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala`, `modules/api/src/test/scala/de/nowchess/api/game/GameContextTest.scala`, `modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala`, `modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala`, `modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala` +17 more +- `modules/api/src/main/scala/de/nowchess/api/board/PieceType.scala` ← `modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala`, `modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala`, `modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala`, `modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala`, `modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala` +16 more +- `modules/api/src/main/scala/de/nowchess/api/board/Piece.scala` ← `modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala`, `modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala`, `modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala`, `modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala`, `modules/bot/src/test/scala/de/nowchess/bot/EvaluationTest.scala` +15 more +- `modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala` ← `modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala`, `modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala`, `modules/bot/src/main/scala/de/nowchess/bot/bots/NNUEBot.scala`, `modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala`, `modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala` +12 more +- `modules/rule/src/main/scala/de/nowchess/rules/RuleSet.scala` ← `modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala`, `modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala`, `modules/bot/src/main/scala/de/nowchess/bot/bots/NNUEBot.scala`, `modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala`, `modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala` +5 more +- `modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala` ← `modules/bot/src/test/scala/de/nowchess/bot/PolyglotHashTest.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineLoadGameTest.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineNotationTest.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala` +5 more --- diff --git a/.codesight/graph.md b/.codesight/graph.md index 11a03e6..698486c 100644 --- a/.codesight/graph.md +++ b/.codesight/graph.md @@ -2,36 +2,36 @@ ## Most Imported Files (change these carefully) -- `modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala` — imported by **28** files -- `modules/api/src/main/scala/de/nowchess/api/board/Square.scala` — imported by **21** files -- `modules/api/src/main/scala/de/nowchess/api/board/Color.scala` — imported by **19** files -- `modules/api/src/main/scala/de/nowchess/api/move/Move.scala` — imported by **14** files -- `modules/api/src/main/scala/de/nowchess/api/board/Board.scala` — imported by **13** files -- `modules/api/src/main/scala/de/nowchess/api/board/Piece.scala` — imported by **10** files -- `modules/api/src/main/scala/de/nowchess/api/board/PieceType.scala` — imported by **9** files -- `modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala` — imported by **9** files -- `modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala` — imported by **8** files -- `modules/io/src/main/scala/de/nowchess/io/GameContextImport.scala` — imported by **7** files -- `modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala` — imported by **4** files -- `modules/io/src/main/scala/de/nowchess/io/GameContextExport.scala` — imported by **4** files -- `modules/rule/src/main/scala/de/nowchess/rules/RuleSet.scala` — imported by **4** files +- `modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala` — imported by **59** files +- `modules/api/src/main/scala/de/nowchess/api/board/Square.scala` — imported by **39** files +- `modules/api/src/main/scala/de/nowchess/api/board/Color.scala` — imported by **36** files +- `modules/api/src/main/scala/de/nowchess/api/move/Move.scala` — imported by **36** files +- `modules/api/src/main/scala/de/nowchess/api/board/Board.scala` — imported by **22** files +- `modules/api/src/main/scala/de/nowchess/api/board/PieceType.scala` — imported by **21** files +- `modules/api/src/main/scala/de/nowchess/api/board/Piece.scala` — imported by **20** files +- `modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala` — imported by **17** files +- `modules/rule/src/main/scala/de/nowchess/rules/RuleSet.scala` — imported by **10** files +- `modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala` — imported by **10** files +- `modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala` — imported by **8** files +- `modules/io/src/main/scala/de/nowchess/io/GameContextImport.scala` — imported by **8** files +- `modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala` — imported by **5** files +- `modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala` — imported by **5** files +- `modules/bot/src/main/scala/de/nowchess/bot/BotDifficulty.scala` — imported by **5** files +- `modules/io/src/main/scala/de/nowchess/io/GameContextExport.scala` — imported by **5** files +- `modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala` — imported by **4** files +- `modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala` — imported by **4** files +- `modules/bot/src/main/scala/de/nowchess/bot/Bot.scala` — imported by **4** files - `modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala` — imported by **4** files -- `modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala` — imported by **4** files -- `modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala` — imported by **2** files -- `modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala` — imported by **2** files -- `modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala` — imported by **2** files -- `modules/io/src/main/scala/de/nowchess/io/fen/FenParserSupport.scala` — imported by **2** files -- `modules/core/src/main/scala/de/nowchess/chess/controller/Parser.scala` — imported by **1** files ## Import Map (who imports what) -- `modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala` ← `modules/core/src/main/scala/de/nowchess/chess/command/Command.scala`, `modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala`, `modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala`, `modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala`, `modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerTest.scala` +23 more -- `modules/api/src/main/scala/de/nowchess/api/board/Square.scala` ← `modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala`, `modules/api/src/main/scala/de/nowchess/api/move/Move.scala`, `modules/api/src/test/scala/de/nowchess/api/game/GameContextTest.scala`, `modules/api/src/test/scala/de/nowchess/api/move/MoveTest.scala`, `modules/core/src/main/scala/de/nowchess/chess/command/Command.scala` +16 more -- `modules/api/src/main/scala/de/nowchess/api/board/Color.scala` ← `modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala`, `modules/api/src/test/scala/de/nowchess/api/game/GameContextTest.scala`, `modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala`, `modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala` +14 more -- `modules/api/src/main/scala/de/nowchess/api/move/Move.scala` ← `modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala`, `modules/api/src/test/scala/de/nowchess/api/board/BoardTest.scala`, `modules/api/src/test/scala/de/nowchess/api/game/GameContextTest.scala`, `modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala` +9 more -- `modules/api/src/main/scala/de/nowchess/api/board/Board.scala` ← `modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala`, `modules/api/src/test/scala/de/nowchess/api/game/GameContextTest.scala`, `modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineGameEndingTest.scala` +8 more -- `modules/api/src/main/scala/de/nowchess/api/board/Piece.scala` ← `modules/core/src/main/scala/de/nowchess/chess/command/Command.scala`, `modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineScenarioTest.scala`, `modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesStateTransitionsTest.scala` +5 more -- `modules/api/src/main/scala/de/nowchess/api/board/PieceType.scala` ← `modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala`, `modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesStateTransitionsTest.scala`, `modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesTest.scala` +4 more -- `modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala` ← `modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineLoadGameTest.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineNotationTest.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineScenarioTest.scala` +4 more -- `modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala` ← `modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala`, `modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala` +3 more -- `modules/io/src/main/scala/de/nowchess/io/GameContextImport.scala` ← `modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala`, `modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala`, `modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala`, `modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala` +2 more +- `modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala` ← `modules/bot/src/main/scala/de/nowchess/bot/Bot.scala`, `modules/bot/src/main/scala/de/nowchess/bot/ai/Weights.scala`, `modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala`, `modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala`, `modules/bot/src/main/scala/de/nowchess/bot/bots/NNUEBot.scala` +54 more +- `modules/api/src/main/scala/de/nowchess/api/board/Square.scala` ← `modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala`, `modules/api/src/main/scala/de/nowchess/api/move/Move.scala`, `modules/api/src/test/scala/de/nowchess/api/game/GameContextTest.scala`, `modules/api/src/test/scala/de/nowchess/api/move/MoveTest.scala`, `modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala` +34 more +- `modules/api/src/main/scala/de/nowchess/api/board/Color.scala` ← `modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala`, `modules/api/src/test/scala/de/nowchess/api/game/GameContextTest.scala`, `modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala`, `modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala`, `modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala` +31 more +- `modules/api/src/main/scala/de/nowchess/api/move/Move.scala` ← `modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala`, `modules/api/src/test/scala/de/nowchess/api/board/BoardTest.scala`, `modules/api/src/test/scala/de/nowchess/api/game/GameContextTest.scala`, `modules/bot/src/main/scala/de/nowchess/bot/Bot.scala`, `modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala` +31 more +- `modules/api/src/main/scala/de/nowchess/api/board/Board.scala` ← `modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala`, `modules/api/src/test/scala/de/nowchess/api/game/GameContextTest.scala`, `modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala`, `modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala`, `modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala` +17 more +- `modules/api/src/main/scala/de/nowchess/api/board/PieceType.scala` ← `modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala`, `modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala`, `modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala`, `modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala`, `modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala` +16 more +- `modules/api/src/main/scala/de/nowchess/api/board/Piece.scala` ← `modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala`, `modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala`, `modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala`, `modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala`, `modules/bot/src/test/scala/de/nowchess/bot/EvaluationTest.scala` +15 more +- `modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala` ← `modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala`, `modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala`, `modules/bot/src/main/scala/de/nowchess/bot/bots/NNUEBot.scala`, `modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala`, `modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala` +12 more +- `modules/rule/src/main/scala/de/nowchess/rules/RuleSet.scala` ← `modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala`, `modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala`, `modules/bot/src/main/scala/de/nowchess/bot/bots/NNUEBot.scala`, `modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala`, `modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala` +5 more +- `modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala` ← `modules/bot/src/test/scala/de/nowchess/bot/PolyglotHashTest.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineLoadGameTest.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineNotationTest.scala`, `modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala` +5 more diff --git a/.codesight/libs.md b/.codesight/libs.md index cc9910a..136b433 100644 --- a/.codesight/libs.md +++ b/.codesight/libs.md @@ -51,6 +51,70 @@ - class ApiResponse - function error - function totalPages +- `modules/bot/python/nnue.py` + - function get_data_dir: () + - function get_tactical_data_dir: () + - function get_weights_dir: () + - function list_checkpoints: () + - function show_header: () + - function show_checkpoints_table: () + - _...6 more_ +- `modules/bot/python/src/export.py` — function export_weights_to_binary: (weights_file, output_file) +- `modules/bot/python/src/generate.py` — function play_random_game_and_collect_positions: (output_file, total_positions, samples_per_game, min_move, max_move, num_workers) +- `modules/bot/python/src/label.py` — function normalize_evaluation: (cp_value, method, scale), function label_positions_with_stockfish: (positions_file, output_file, stockfish_path, batch_size, depth, verbose, normalize, num_workers) +- `modules/bot/python/src/tactical_positions_extractor.py` + - function download_and_extract_puzzle_db: (url, output_dir) + - function extract_puzzle_positions: (puzzle_csv, max_puzzles) -> Set[str] + - function load_positions_from_file: (file_path) -> Set[str] + - function merge_positions: (tactical, other, output_file) + - function interactive_merge_positions: (puzzle_csv, output_file, max_puzzles) +- `modules/bot/python/src/train.py` + - function fen_to_features: (fen) + - function find_next_version: (base_name) + - function save_metadata: (weights_file, metadata) + - function train_nnue: (data_file, output_file, epochs, batch_size, lr, checkpoint, stockfish_depth, use_versioning, early_stopping_patience, weight_decay, subsample_ratio) + - function burst_train: (data_file, output_file, duration_minutes, epochs_per_season, early_stopping_patience, batch_size, lr, initial_checkpoint, stockfish_depth, use_versioning, weight_decay, subsample_ratio) + - class NNUEDataset + - _...1 more_ +- `modules/bot/src/main/scala/de/nowchess/bot/Bot.scala` + - class Bot + - function name + - function nextMove +- `modules/bot/src/main/scala/de/nowchess/bot/BotController.scala` + - class BotController + - function getBot + - function listBots +- `modules/bot/src/main/scala/de/nowchess/bot/Config.scala` — class Config +- `modules/bot/src/main/scala/de/nowchess/bot/ai/Weights.scala` + - class Weights + - class CHECKMATE_SCORE + - class DRAW_SCORE + - function evaluate +- `modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala` — class EvaluationClassic, function evaluate +- `modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala` — class EvaluationNNUE, function evaluate +- `modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala` + - class NNUE + - function evaluate + - function benchmark +- `modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala` — function bestMove, function bestMoveWithTime +- `modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala` + - class MoveOrdering + - class OrderingContext + - function addKillerMove + - function getKillerMoves + - function addHistory + - function getHistory + - _...3 more_ +- `modules/bot/src/main/scala/de/nowchess/bot/logic/TranspositionTable.scala` + - function probe + - function store + - function clear +- `modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala` — function probe +- `modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala` — class PolyglotHash, function hash +- `modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala` + - class ZobristHash + - function hash + - function nextHash - `modules/core/src/main/scala/de/nowchess/chess/command/Command.scala` - class Command - function execute @@ -69,11 +133,11 @@ - `modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala` - class GameEngine - function isPendingPromotion + - function setOpponentBot + - function clearOpponentBot - function board - function turn - - function context - - function canUndo - - _...10 more_ + - _...12 more_ - `modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala` - function context - class Observer @@ -84,6 +148,13 @@ - _...1 more_ - `modules/io/src/main/scala/de/nowchess/io/GameContextExport.scala` — class GameContextExport, function exportGameContext - `modules/io/src/main/scala/de/nowchess/io/GameContextImport.scala` — class GameContextImport, function importGameContext +- `modules/io/src/main/scala/de/nowchess/io/GameFileService.scala` + - class GameFileService + - function saveGameToFile + - function loadGameFromFile + - class FileSystemGameService + - function saveGameToFile + - function loadGameFromFile - `modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala` - class FenExporter - function boardToFen @@ -105,6 +176,8 @@ - function parseBoard - function importGameContext - `modules/io/src/main/scala/de/nowchess/io/fen/FenParserSupport.scala` — function buildSquares +- `modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala` — class JsonExporter, function exportGameContext +- `modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala` — class JsonParser, function importGameContext - `modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala` - class PgnExporter - function exportGameContext diff --git a/graphify-out/GRAPH_REPORT.md b/graphify-out/GRAPH_REPORT.md new file mode 100644 index 0000000..d470944 --- /dev/null +++ b/graphify-out/GRAPH_REPORT.md @@ -0,0 +1,809 @@ +# Graph Report - . (2026-04-12) + +## Corpus Check +- 126 files · ~38,511,901 words +- Verdict: corpus is large enough that graph structure adds value. + +## Summary +- 818 nodes · 1004 edges · 128 communities detected +- Extraction: 100% EXTRACTED · 0% INFERRED · 0% AMBIGUOUS +- Token cost: 0 input · 0 output + +## Community Hubs (Navigation) +- [[_COMMUNITY_Community 0|Community 0]] +- [[_COMMUNITY_Community 1|Community 1]] +- [[_COMMUNITY_Community 2|Community 2]] +- [[_COMMUNITY_Community 3|Community 3]] +- [[_COMMUNITY_Community 4|Community 4]] +- [[_COMMUNITY_Community 5|Community 5]] +- [[_COMMUNITY_Community 6|Community 6]] +- [[_COMMUNITY_Community 7|Community 7]] +- [[_COMMUNITY_Community 8|Community 8]] +- [[_COMMUNITY_Community 9|Community 9]] +- [[_COMMUNITY_Community 10|Community 10]] +- [[_COMMUNITY_Community 11|Community 11]] +- [[_COMMUNITY_Community 12|Community 12]] +- [[_COMMUNITY_Community 13|Community 13]] +- [[_COMMUNITY_Community 14|Community 14]] +- [[_COMMUNITY_Community 15|Community 15]] +- [[_COMMUNITY_Community 16|Community 16]] +- [[_COMMUNITY_Community 17|Community 17]] +- [[_COMMUNITY_Community 18|Community 18]] +- [[_COMMUNITY_Community 19|Community 19]] +- [[_COMMUNITY_Community 20|Community 20]] +- [[_COMMUNITY_Community 21|Community 21]] +- [[_COMMUNITY_Community 22|Community 22]] +- [[_COMMUNITY_Community 23|Community 23]] +- [[_COMMUNITY_Community 24|Community 24]] +- [[_COMMUNITY_Community 25|Community 25]] +- [[_COMMUNITY_Community 26|Community 26]] +- [[_COMMUNITY_Community 27|Community 27]] +- [[_COMMUNITY_Community 28|Community 28]] +- [[_COMMUNITY_Community 29|Community 29]] +- [[_COMMUNITY_Community 30|Community 30]] +- [[_COMMUNITY_Community 31|Community 31]] +- [[_COMMUNITY_Community 32|Community 32]] +- [[_COMMUNITY_Community 33|Community 33]] +- [[_COMMUNITY_Community 34|Community 34]] +- [[_COMMUNITY_Community 35|Community 35]] +- [[_COMMUNITY_Community 36|Community 36]] +- [[_COMMUNITY_Community 37|Community 37]] +- [[_COMMUNITY_Community 38|Community 38]] +- [[_COMMUNITY_Community 39|Community 39]] +- [[_COMMUNITY_Community 40|Community 40]] +- [[_COMMUNITY_Community 41|Community 41]] +- [[_COMMUNITY_Community 42|Community 42]] +- [[_COMMUNITY_Community 43|Community 43]] +- [[_COMMUNITY_Community 44|Community 44]] +- [[_COMMUNITY_Community 45|Community 45]] +- [[_COMMUNITY_Community 46|Community 46]] +- [[_COMMUNITY_Community 47|Community 47]] +- [[_COMMUNITY_Community 48|Community 48]] +- [[_COMMUNITY_Community 49|Community 49]] +- [[_COMMUNITY_Community 50|Community 50]] +- [[_COMMUNITY_Community 51|Community 51]] +- [[_COMMUNITY_Community 52|Community 52]] +- [[_COMMUNITY_Community 53|Community 53]] +- [[_COMMUNITY_Community 54|Community 54]] +- [[_COMMUNITY_Community 55|Community 55]] +- [[_COMMUNITY_Community 56|Community 56]] +- [[_COMMUNITY_Community 57|Community 57]] +- [[_COMMUNITY_Community 58|Community 58]] +- [[_COMMUNITY_Community 59|Community 59]] +- [[_COMMUNITY_Community 60|Community 60]] +- [[_COMMUNITY_Community 61|Community 61]] +- [[_COMMUNITY_Community 62|Community 62]] +- [[_COMMUNITY_Community 63|Community 63]] +- [[_COMMUNITY_Community 64|Community 64]] +- [[_COMMUNITY_Community 65|Community 65]] +- [[_COMMUNITY_Community 66|Community 66]] +- [[_COMMUNITY_Community 67|Community 67]] +- [[_COMMUNITY_Community 68|Community 68]] +- [[_COMMUNITY_Community 69|Community 69]] +- [[_COMMUNITY_Community 70|Community 70]] +- [[_COMMUNITY_Community 71|Community 71]] +- [[_COMMUNITY_Community 72|Community 72]] +- [[_COMMUNITY_Community 73|Community 73]] +- [[_COMMUNITY_Community 74|Community 74]] +- [[_COMMUNITY_Community 75|Community 75]] +- [[_COMMUNITY_Community 76|Community 76]] +- [[_COMMUNITY_Community 77|Community 77]] +- [[_COMMUNITY_Community 78|Community 78]] +- [[_COMMUNITY_Community 79|Community 79]] +- [[_COMMUNITY_Community 80|Community 80]] +- [[_COMMUNITY_Community 81|Community 81]] +- [[_COMMUNITY_Community 82|Community 82]] +- [[_COMMUNITY_Community 83|Community 83]] +- [[_COMMUNITY_Community 84|Community 84]] +- [[_COMMUNITY_Community 85|Community 85]] +- [[_COMMUNITY_Community 86|Community 86]] +- [[_COMMUNITY_Community 87|Community 87]] +- [[_COMMUNITY_Community 88|Community 88]] +- [[_COMMUNITY_Community 89|Community 89]] +- [[_COMMUNITY_Community 90|Community 90]] +- [[_COMMUNITY_Community 91|Community 91]] +- [[_COMMUNITY_Community 92|Community 92]] +- [[_COMMUNITY_Community 93|Community 93]] +- [[_COMMUNITY_Community 94|Community 94]] +- [[_COMMUNITY_Community 95|Community 95]] +- [[_COMMUNITY_Community 96|Community 96]] +- [[_COMMUNITY_Community 97|Community 97]] +- [[_COMMUNITY_Community 98|Community 98]] +- [[_COMMUNITY_Community 99|Community 99]] +- [[_COMMUNITY_Community 100|Community 100]] +- [[_COMMUNITY_Community 101|Community 101]] +- [[_COMMUNITY_Community 102|Community 102]] +- [[_COMMUNITY_Community 103|Community 103]] +- [[_COMMUNITY_Community 104|Community 104]] +- [[_COMMUNITY_Community 105|Community 105]] +- [[_COMMUNITY_Community 106|Community 106]] +- [[_COMMUNITY_Community 107|Community 107]] +- [[_COMMUNITY_Community 108|Community 108]] +- [[_COMMUNITY_Community 109|Community 109]] +- [[_COMMUNITY_Community 110|Community 110]] +- [[_COMMUNITY_Community 111|Community 111]] +- [[_COMMUNITY_Community 112|Community 112]] +- [[_COMMUNITY_Community 113|Community 113]] +- [[_COMMUNITY_Community 114|Community 114]] +- [[_COMMUNITY_Community 115|Community 115]] +- [[_COMMUNITY_Community 116|Community 116]] +- [[_COMMUNITY_Community 117|Community 117]] +- [[_COMMUNITY_Community 118|Community 118]] +- [[_COMMUNITY_Community 119|Community 119]] +- [[_COMMUNITY_Community 120|Community 120]] +- [[_COMMUNITY_Community 121|Community 121]] +- [[_COMMUNITY_Community 122|Community 122]] +- [[_COMMUNITY_Community 123|Community 123]] +- [[_COMMUNITY_Community 124|Community 124]] +- [[_COMMUNITY_Community 125|Community 125]] +- [[_COMMUNITY_Community 126|Community 126]] +- [[_COMMUNITY_Community 127|Community 127]] + +## God Nodes (most connected - your core abstractions) +1. `GameEngine` - 35 edges +2. `DefaultRules` - 35 edges +3. `NNUE` - 22 edges +4. `EvaluationClassic` - 21 edges +5. `MoveOrdering` - 21 edges +6. `ChessBoardView` - 19 edges +7. `FenParserFastParse` - 17 edges +8. `FenParserCombinators` - 16 edges +9. `PgnParser` - 14 edges +10. `JsonExporter` - 13 edges + +## Surprising Connections (you probably didn't know these) +- None detected - all connections are within the same source files. + +## Communities + +### Community 0 - "Community 0" +Cohesion: 0.09 +Nodes (2): GameEngine, PendingPromotion + +### Community 1 - "Community 1" +Cohesion: 0.11 +Nodes (2): CastlingMove, DefaultRules + +### Community 2 - "Community 2" +Cohesion: 0.09 +Nodes (17): ClassGap, _compact_ranges(), _find_scoverage_xml(), format_agent(), format_json(), format_markdown(), format_module_gaps(), main() (+9 more) + +### Community 3 - "Community 3" +Cohesion: 0.14 +Nodes (2): MoveOrdering, OrderingContext + +### Community 4 - "Community 4" +Cohesion: 0.11 +Nodes (21): Dataset, burst_train(), fen_to_features(), find_next_version(), NNUE, NNUEDataset, Find the next version number for model versioning. Looks for nnue_weights_v, Save training metadata alongside the weights file. Args: weights_fi (+13 more) + +### Community 5 - "Community 5" +Cohesion: 0.16 +Nodes (23): burst_train_interactive(), export_interactive(), extract_tactical_interactive(), get_data_dir(), get_tactical_data_dir(), get_weights_dir(), list_checkpoints(), main() (+15 more) + +### Community 6 - "Community 6" +Cohesion: 0.22 +Nodes (1): NNUE + +### Community 7 - "Community 7" +Cohesion: 0.19 +Nodes (1): EvaluationClassic + +### Community 8 - "Community 8" +Cohesion: 0.14 +Nodes (9): format_module(), load_module(), main(), ModuleResult, parse_suite_xml(), run(), SuiteResult, TestCase (+1 more) + +### Community 9 - "Community 9" +Cohesion: 0.18 +Nodes (1): ChessBoardView + +### Community 10 - "Community 10" +Cohesion: 0.14 +Nodes (1): FenParserFastParse + +### Community 11 - "Community 11" +Cohesion: 0.12 +Nodes (7): InvalidFormat, InvalidMove, MoveCommand, MoveResult, QuitCommand, ResetCommand, Successful + +### Community 12 - "Community 12" +Cohesion: 0.12 +Nodes (12): BoardResetEvent, CheckDetectedEvent, CheckmateEvent, DrawClaimedEvent, FiftyMoveRuleAvailableEvent, InvalidMoveEvent, MoveExecutedEvent, MoveRedoneEvent (+4 more) + +### Community 13 - "Community 13" +Cohesion: 0.13 +Nodes (1): FenParserCombinators + +### Community 14 - "Community 14" +Cohesion: 0.26 +Nodes (2): PgnGame, PgnParser + +### Community 15 - "Community 15" +Cohesion: 0.15 +Nodes (3): candidateMoves(), GameEngineIntegrationTest, legalMoves() + +### Community 16 - "Community 16" +Cohesion: 0.14 +Nodes (1): GameEnginePromotionTest + +### Community 17 - "Community 17" +Cohesion: 0.25 +Nodes (1): JsonExporter + +### Community 18 - "Community 18" +Cohesion: 0.24 +Nodes (1): AlphaBetaSearch + +### Community 19 - "Community 19" +Cohesion: 0.15 +Nodes (2): EngineTestHelpers, MockObserver + +### Community 20 - "Community 20" +Cohesion: 0.33 +Nodes (1): ZobristHash + +### Community 21 - "Community 21" +Cohesion: 0.17 +Nodes (3): CommandInvokerBranchTest, ConditionalFailCommand, FailingCommand + +### Community 22 - "Community 22" +Cohesion: 0.24 +Nodes (10): download_and_extract_puzzle_db(), extract_puzzle_positions(), interactive_merge_positions(), load_positions_from_file(), merge_positions(), Load positions from a text file (one FEN per line)., Merge two position sets and write to file., Interactive workflow: extract tactical positions and merge with user selection. (+2 more) + +### Community 23 - "Community 23" +Cohesion: 0.18 +Nodes (1): AlphaBetaSearchTest + +### Community 24 - "Community 24" +Cohesion: 0.18 +Nodes (1): ClassicalBotTest + +### Community 25 - "Community 25" +Cohesion: 0.33 +Nodes (2): BookEntry, PolyglotBook + +### Community 26 - "Community 26" +Cohesion: 0.22 +Nodes (1): CommandInvoker + +### Community 27 - "Community 27" +Cohesion: 0.36 +Nodes (1): FenParser + +### Community 28 - "Community 28" +Cohesion: 0.31 +Nodes (1): JsonParser + +### Community 29 - "Community 29" +Cohesion: 0.31 +Nodes (5): applyMove(), Board, removed(), updated(), withMove() + +### Community 30 - "Community 30" +Cohesion: 0.22 +Nodes (1): GameContext + +### Community 31 - "Community 31" +Cohesion: 0.25 +Nodes (6): ApiError, ApiResponse, Failure, PagedResponse, Pagination, Success + +### Community 32 - "Community 32" +Cohesion: 0.22 +Nodes (8): JsonCapturedPieces, JsonCastlingRights, JsonGameRecord, JsonGameState, JsonMetadata, JsonMove, JsonMoveType, JsonPiece + +### Community 33 - "Community 33" +Cohesion: 0.43 +Nodes (1): FenExporter + +### Community 34 - "Community 34" +Cohesion: 0.29 +Nodes (1): CastlingRights + +### Community 35 - "Community 35" +Cohesion: 0.33 +Nodes (6): _evaluate_fen_batch(), label_positions_with_stockfish(), normalize_evaluation(), Normalize centipawn evaluation to a bounded range. Args: cp_value:, Worker function to evaluate a batch of FENs with Stockfish threading. Args:, Read positions and label them with Stockfish evaluations. Args: pos + +### Community 36 - "Community 36" +Cohesion: 0.29 +Nodes (1): EvaluationNNUE + +### Community 37 - "Community 37" +Cohesion: 0.33 +Nodes (2): TranspositionTable, TTEntry + +### Community 38 - "Community 38" +Cohesion: 0.53 +Nodes (1): PolyglotHash + +### Community 39 - "Community 39" +Cohesion: 0.4 +Nodes (2): ChessGUIApp, ChessGUILauncher + +### Community 40 - "Community 40" +Cohesion: 0.5 +Nodes (2): offset(), Square + +### Community 41 - "Community 41" +Cohesion: 0.4 +Nodes (2): PlayerId, PlayerInfo + +### Community 42 - "Community 42" +Cohesion: 0.4 +Nodes (4): play_random_game_and_collect_positions(), Generate games for one worker. Returns: list of FENs generated by t, Generate positions using multiprocessing with multiple workers. Args:, _worker_generate_games() + +### Community 43 - "Community 43" +Cohesion: 0.4 +Nodes (0): + +### Community 44 - "Community 44" +Cohesion: 0.4 +Nodes (3): EmptyToken, FenParserSupport, PieceToken + +### Community 45 - "Community 45" +Cohesion: 0.6 +Nodes (1): PgnExporter + +### Community 46 - "Community 46" +Cohesion: 0.5 +Nodes (2): PieceSprites, SquareColors + +### Community 47 - "Community 47" +Cohesion: 0.6 +Nodes (1): TerminalUI + +### Community 48 - "Community 48" +Cohesion: 0.5 +Nodes (1): BotController + +### Community 49 - "Community 49" +Cohesion: 0.67 +Nodes (1): HybridBot + +### Community 50 - "Community 50" +Cohesion: 0.67 +Nodes (1): NNUEBot + +### Community 51 - "Community 51" +Cohesion: 0.67 +Nodes (1): Parser + +### Community 52 - "Community 52" +Cohesion: 0.5 +Nodes (1): CommandInvokerTest + +### Community 53 - "Community 53" +Cohesion: 0.5 +Nodes (2): EndingMockObserver, GameEngineGameEndingTest + +### Community 54 - "Community 54" +Cohesion: 0.5 +Nodes (2): GameEngineLoadGameTest, MockObserver + +### Community 55 - "Community 55" +Cohesion: 0.5 +Nodes (1): FileSystemGameService + +### Community 56 - "Community 56" +Cohesion: 0.5 +Nodes (1): DefaultRulesStateTransitionsTest + +### Community 57 - "Community 57" +Cohesion: 0.67 +Nodes (1): GUIObserver + +### Community 58 - "Community 58" +Cohesion: 0.67 +Nodes (0): + +### Community 59 - "Community 59" +Cohesion: 0.67 +Nodes (2): export_weights_to_binary(), Load PyTorch weights and export as binary file. + +### Community 60 - "Community 60" +Cohesion: 0.67 +Nodes (1): ClassicalBot + +### Community 61 - "Community 61" +Cohesion: 0.67 +Nodes (1): MoveCommandTest + +### Community 62 - "Community 62" +Cohesion: 0.67 +Nodes (1): GameEngineNotationTest + +### Community 63 - "Community 63" +Cohesion: 0.67 +Nodes (1): GameEngineWithBotTest + +### Community 64 - "Community 64" +Cohesion: 0.67 +Nodes (1): GameFileServiceSuite + +### Community 65 - "Community 65" +Cohesion: 0.67 +Nodes (1): FenExporterTest + +### Community 66 - "Community 66" +Cohesion: 0.67 +Nodes (1): PgnExporterTest + +### Community 67 - "Community 67" +Cohesion: 0.67 +Nodes (1): Main + +### Community 68 - "Community 68" +Cohesion: 0.67 +Nodes (1): Renderer + +### Community 69 - "Community 69" +Cohesion: 1.0 +Nodes (1): Piece + +### Community 70 - "Community 70" +Cohesion: 1.0 +Nodes (0): + +### Community 71 - "Community 71" +Cohesion: 1.0 +Nodes (1): Move + +### Community 72 - "Community 72" +Cohesion: 1.0 +Nodes (1): BoardTest + +### Community 73 - "Community 73" +Cohesion: 1.0 +Nodes (1): CastlingRightsTest + +### Community 74 - "Community 74" +Cohesion: 1.0 +Nodes (1): ColorTest + +### Community 75 - "Community 75" +Cohesion: 1.0 +Nodes (1): PieceTest + +### Community 76 - "Community 76" +Cohesion: 1.0 +Nodes (1): PieceTypeTest + +### Community 77 - "Community 77" +Cohesion: 1.0 +Nodes (1): SquareTest + +### Community 78 - "Community 78" +Cohesion: 1.0 +Nodes (1): GameContextTest + +### Community 79 - "Community 79" +Cohesion: 1.0 +Nodes (1): MoveTest + +### Community 80 - "Community 80" +Cohesion: 1.0 +Nodes (1): PlayerInfoTest + +### Community 81 - "Community 81" +Cohesion: 1.0 +Nodes (1): ApiResponseTest + +### Community 82 - "Community 82" +Cohesion: 1.0 +Nodes (1): Config + +### Community 83 - "Community 83" +Cohesion: 1.0 +Nodes (1): BotControllerTest + +### Community 84 - "Community 84" +Cohesion: 1.0 +Nodes (1): BotDifficultyTest + +### Community 85 - "Community 85" +Cohesion: 1.0 +Nodes (1): EvaluationTest + +### Community 86 - "Community 86" +Cohesion: 1.0 +Nodes (1): MoveOrderingTest + +### Community 87 - "Community 87" +Cohesion: 1.0 +Nodes (1): PolyglotBookTest + +### Community 88 - "Community 88" +Cohesion: 1.0 +Nodes (1): PolyglotHashTest + +### Community 89 - "Community 89" +Cohesion: 1.0 +Nodes (1): TranspositionTableTest + +### Community 90 - "Community 90" +Cohesion: 1.0 +Nodes (1): ZobristHashTest + +### Community 91 - "Community 91" +Cohesion: 1.0 +Nodes (1): CommandTest + +### Community 92 - "Community 92" +Cohesion: 1.0 +Nodes (1): ParserTest + +### Community 93 - "Community 93" +Cohesion: 1.0 +Nodes (1): GameEngineOutcomesTest + +### Community 94 - "Community 94" +Cohesion: 1.0 +Nodes (1): GameEngineScenarioTest + +### Community 95 - "Community 95" +Cohesion: 1.0 +Nodes (1): GameEngineSpecialMovesTest + +### Community 96 - "Community 96" +Cohesion: 1.0 +Nodes (1): FenParserCombinatorsTest + +### Community 97 - "Community 97" +Cohesion: 1.0 +Nodes (1): FenParserFastParseTest + +### Community 98 - "Community 98" +Cohesion: 1.0 +Nodes (1): FenParserTest + +### Community 99 - "Community 99" +Cohesion: 1.0 +Nodes (1): JsonExporterBranchCoverageSuite + +### Community 100 - "Community 100" +Cohesion: 1.0 +Nodes (1): JsonExporterSuite + +### Community 101 - "Community 101" +Cohesion: 1.0 +Nodes (1): JsonModelExtraTestSuite + +### Community 102 - "Community 102" +Cohesion: 1.0 +Nodes (1): JsonParserEdgeCasesSuite + +### Community 103 - "Community 103" +Cohesion: 1.0 +Nodes (1): JsonParserErrorHandlingSuite + +### Community 104 - "Community 104" +Cohesion: 1.0 +Nodes (1): JsonParserMoveTypeSuite + +### Community 105 - "Community 105" +Cohesion: 1.0 +Nodes (1): JsonParserSuite + +### Community 106 - "Community 106" +Cohesion: 1.0 +Nodes (1): PgnParserTest + +### Community 107 - "Community 107" +Cohesion: 1.0 +Nodes (1): PgnValidatorTest + +### Community 108 - "Community 108" +Cohesion: 1.0 +Nodes (1): DefaultRulesTest + +### Community 109 - "Community 109" +Cohesion: 1.0 +Nodes (0): + +### Community 110 - "Community 110" +Cohesion: 1.0 +Nodes (1): RendererAndUnicodeTest + +### Community 111 - "Community 111" +Cohesion: 1.0 +Nodes (0): + +### Community 112 - "Community 112" +Cohesion: 1.0 +Nodes (0): + +### Community 113 - "Community 113" +Cohesion: 1.0 +Nodes (1): Strip the package prefix from the full method path. + +### Community 114 - "Community 114" +Cohesion: 1.0 +Nodes (1): Lines that are branch points and have at least one uncovered branch statement. + +### Community 115 - "Community 115" +Cohesion: 1.0 +Nodes (0): + +### Community 116 - "Community 116" +Cohesion: 1.0 +Nodes (0): + +### Community 117 - "Community 117" +Cohesion: 1.0 +Nodes (0): + +### Community 118 - "Community 118" +Cohesion: 1.0 +Nodes (0): + +### Community 119 - "Community 119" +Cohesion: 1.0 +Nodes (0): + +### Community 120 - "Community 120" +Cohesion: 1.0 +Nodes (0): + +### Community 121 - "Community 121" +Cohesion: 1.0 +Nodes (0): + +### Community 122 - "Community 122" +Cohesion: 1.0 +Nodes (0): + +### Community 123 - "Community 123" +Cohesion: 1.0 +Nodes (0): + +### Community 124 - "Community 124" +Cohesion: 1.0 +Nodes (0): + +### Community 125 - "Community 125" +Cohesion: 1.0 +Nodes (0): + +### Community 126 - "Community 126" +Cohesion: 1.0 +Nodes (0): + +### Community 127 - "Community 127" +Cohesion: 1.0 +Nodes (0): + +## Knowledge Gaps +- **116 isolated node(s):** `Strip the package prefix from the full method path.`, `Lines that are branch points and have at least one uncovered branch statement.`, `[1,2,3,5,7,8,9] → '1-3, 5, 7-9`, `Compact agent format — optimised for low token count. Emits only actionable`, `Return the first scoverage.xml found inside *module_dir*, or None.` (+111 more) + These have ≤1 connection - possible missing edges or undocumented components. +- **Thin community `Community 69`** (2 nodes): `Piece.scala`, `Piece` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 70`** (2 nodes): `PieceType.scala`, `label()` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 71`** (2 nodes): `Move.scala`, `Move` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 72`** (2 nodes): `BoardTest`, `BoardTest.scala` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 73`** (2 nodes): `CastlingRightsTest`, `CastlingRightsTest.scala` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 74`** (2 nodes): `ColorTest`, `ColorTest.scala` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 75`** (2 nodes): `PieceTest.scala`, `PieceTest` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 76`** (2 nodes): `PieceTypeTest.scala`, `PieceTypeTest` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 77`** (2 nodes): `SquareTest.scala`, `SquareTest` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 78`** (2 nodes): `GameContextTest`, `GameContextTest.scala` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 79`** (2 nodes): `MoveTest.scala`, `MoveTest` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 80`** (2 nodes): `PlayerInfoTest.scala`, `PlayerInfoTest` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 81`** (2 nodes): `ApiResponseTest`, `ApiResponseTest.scala` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 82`** (2 nodes): `Config`, `Config.scala` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 83`** (2 nodes): `BotControllerTest`, `BotControllerTest.scala` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 84`** (2 nodes): `BotDifficultyTest`, `BotDifficultyTest.scala` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 85`** (2 nodes): `EvaluationTest`, `EvaluationTest.scala` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 86`** (2 nodes): `MoveOrderingTest.scala`, `MoveOrderingTest` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 87`** (2 nodes): `PolyglotBookTest.scala`, `PolyglotBookTest` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 88`** (2 nodes): `PolyglotHashTest.scala`, `PolyglotHashTest` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 89`** (2 nodes): `TranspositionTableTest.scala`, `TranspositionTableTest` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 90`** (2 nodes): `ZobristHashTest.scala`, `ZobristHashTest` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 91`** (2 nodes): `CommandTest`, `CommandTest.scala` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 92`** (2 nodes): `ParserTest.scala`, `ParserTest` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 93`** (2 nodes): `GameEngineOutcomesTest`, `GameEngineOutcomesTest.scala` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 94`** (2 nodes): `GameEngineScenarioTest`, `GameEngineScenarioTest.scala` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 95`** (2 nodes): `GameEngineSpecialMovesTest`, `GameEngineSpecialMovesTest.scala` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 96`** (2 nodes): `FenParserCombinatorsTest`, `FenParserCombinatorsTest.scala` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 97`** (2 nodes): `FenParserFastParseTest`, `FenParserFastParseTest.scala` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 98`** (2 nodes): `FenParserTest`, `FenParserTest.scala` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 99`** (2 nodes): `JsonExporterBranchCoverageSuite`, `JsonExporterBranchCoverageSuite.scala` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 100`** (2 nodes): `JsonExporterSuite`, `JsonExporterSuite.scala` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 101`** (2 nodes): `JsonModelExtraTestSuite`, `JsonModelExtraTestSuite.scala` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 102`** (2 nodes): `JsonParserEdgeCasesSuite`, `JsonParserEdgeCasesSuite.scala` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 103`** (2 nodes): `JsonParserErrorHandlingSuite`, `JsonParserErrorHandlingSuite.scala` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 104`** (2 nodes): `JsonParserMoveTypeSuite`, `JsonParserMoveTypeSuite.scala` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 105`** (2 nodes): `JsonParserSuite`, `JsonParserSuite.scala` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 106`** (2 nodes): `PgnParserTest.scala`, `PgnParserTest` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 107`** (2 nodes): `PgnValidatorTest.scala`, `PgnValidatorTest` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 108`** (2 nodes): `DefaultRulesTest`, `DefaultRulesTest.scala` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 109`** (2 nodes): `PieceUnicode.scala`, `unicode()` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 110`** (2 nodes): `RendererAndUnicodeTest.scala`, `RendererAndUnicodeTest` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 111`** (1 nodes): `build.gradle.kts` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 112`** (1 nodes): `settings.gradle.kts` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 113`** (1 nodes): `Strip the package prefix from the full method path.` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 114`** (1 nodes): `Lines that are branch points and have at least one uncovered branch statement.` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 115`** (1 nodes): `test_counter.py` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 116`** (1 nodes): `build.gradle.kts` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 117`** (1 nodes): `build.gradle.kts` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 118`** (1 nodes): `start.ps1` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 119`** (1 nodes): `Bot.scala` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 120`** (1 nodes): `BotDifficulty.scala` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 121`** (1 nodes): `build.gradle.kts` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 122`** (1 nodes): `build.gradle.kts` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 123`** (1 nodes): `GameContextExport.scala` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 124`** (1 nodes): `GameContextImport.scala` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 125`** (1 nodes): `build.gradle.kts` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 126`** (1 nodes): `RuleSet.scala` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. +- **Thin community `Community 127`** (1 nodes): `build.gradle.kts` + Too small to be a meaningful cluster - may be noise or needs more connections extracted. + +## Suggested Questions +_Questions this graph is uniquely positioned to answer:_ + +- **What connects `Strip the package prefix from the full method path.`, `Lines that are branch points and have at least one uncovered branch statement.`, `[1,2,3,5,7,8,9] → '1-3, 5, 7-9` to the rest of the system?** + _116 weakly-connected nodes found - possible documentation gaps or missing edges._ +- **Should `Community 0` be split into smaller, more focused modules?** + _Cohesion score 0.09 - nodes in this community are weakly interconnected._ +- **Should `Community 1` be split into smaller, more focused modules?** + _Cohesion score 0.11 - nodes in this community are weakly interconnected._ +- **Should `Community 2` be split into smaller, more focused modules?** + _Cohesion score 0.09 - nodes in this community are weakly interconnected._ +- **Should `Community 3` be split into smaller, more focused modules?** + _Cohesion score 0.14 - nodes in this community are weakly interconnected._ +- **Should `Community 4` be split into smaller, more focused modules?** + _Cohesion score 0.11 - nodes in this community are weakly interconnected._ +- **Should `Community 8` be split into smaller, more focused modules?** + _Cohesion score 0.14 - nodes in this community are weakly interconnected._ \ No newline at end of file diff --git a/graphify-out/cache/0080a0df03e760105c9717b1cf3f1961985d82a00c8a35441c4ebb662c545e65.json b/graphify-out/cache/0080a0df03e760105c9717b1cf3f1961985d82a00c8a35441c4ebb662c545e65.json new file mode 100644 index 0000000..d27b1aa --- /dev/null +++ b/graphify-out/cache/0080a0df03e760105c9717b1cf3f1961985d82a00c8a35441c4ebb662c545e65.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_rule_src_main_scala_de_nowchess_rules_ruleset_scala", "label": "RuleSet.scala", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/RuleSet.scala", "source_location": "L1"}], "edges": [{"source": "modules_rule_src_main_scala_de_nowchess_rules_ruleset_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/RuleSet.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_rule_src_main_scala_de_nowchess_rules_ruleset_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/RuleSet.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_rule_src_main_scala_de_nowchess_rules_ruleset_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/RuleSet.scala", "source_location": "L5", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/01b7128e7b6019c91511cb4e0d05722b3349fce1158588d7e09f7285b2e28840.json b/graphify-out/cache/01b7128e7b6019c91511cb4e0d05722b3349fce1158588d7e09f7285b2e28840.json new file mode 100644 index 0000000..a396adf --- /dev/null +++ b/graphify-out/cache/01b7128e7b6019c91511cb4e0d05722b3349fce1158588d7e09f7285b2e28840.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_api_src_main_scala_de_nowchess_api_move_move_scala", "label": "Move.scala", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/move/Move.scala", "source_location": "L1"}, {"id": "move_move", "label": "Move", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/move/Move.scala", "source_location": "L35"}], "edges": [{"source": "modules_api_src_main_scala_de_nowchess_api_move_move_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/move/Move.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_api_src_main_scala_de_nowchess_api_move_move_scala", "target": "move_move", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/move/Move.scala", "source_location": "L35", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/01f92b64cb0d8c6da29b66f5128a123bebdc36aab70b561c290cb5c1d0d32d66.json b/graphify-out/cache/01f92b64cb0d8c6da29b66f5128a123bebdc36aab70b561c290cb5c1d0d32d66.json new file mode 100644 index 0000000..6af097c --- /dev/null +++ b/graphify-out/cache/01f92b64cb0d8c6da29b66f5128a123bebdc36aab70b561c290cb5c1d0d32d66.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_src_main_scala_de_nowchess_bot_bot_scala", "label": "Bot.scala", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/Bot.scala", "source_location": "L1"}], "edges": [{"source": "modules_bot_src_main_scala_de_nowchess_bot_bot_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/Bot.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bot_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/Bot.scala", "source_location": "L4", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/034a96327473183fd68fef66203a944a1f1e7acc10a017c95a77b48044836cc1.json b/graphify-out/cache/034a96327473183fd68fef66203a944a1f1e7acc10a017c95a77b48044836cc1.json new file mode 100644 index 0000000..8b996a6 --- /dev/null +++ b/graphify-out/cache/034a96327473183fd68fef66203a944a1f1e7acc10a017c95a77b48044836cc1.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginespecialmovestest_scala", "label": "GameEngineSpecialMovesTest.scala", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineSpecialMovesTest.scala", "source_location": "L1"}, {"id": "gameenginespecialmovestest_gameenginespecialmovestest", "label": "GameEngineSpecialMovesTest", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineSpecialMovesTest.scala", "source_location": "L9"}], "edges": [{"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginespecialmovestest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineSpecialMovesTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginespecialmovestest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineSpecialMovesTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginespecialmovestest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineSpecialMovesTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginespecialmovestest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineSpecialMovesTest.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginespecialmovestest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineSpecialMovesTest.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginespecialmovestest_scala", "target": "gameenginespecialmovestest_gameenginespecialmovestest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineSpecialMovesTest.scala", "source_location": "L9", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/08c08e776c447b4dd439cec9ab4f4ff269899fcd5f32796f25101e26ade45f86.json b/graphify-out/cache/08c08e776c447b4dd439cec9ab4f4ff269899fcd5f32796f25101e26ade45f86.json new file mode 100644 index 0000000..437a93b --- /dev/null +++ b/graphify-out/cache/08c08e776c447b4dd439cec9ab4f4ff269899fcd5f32796f25101e26ade45f86.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_io_src_main_scala_de_nowchess_io_json_jsonparser_scala", "label": "JsonParser.scala", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L1"}, {"id": "jsonparser_jsonparser", "label": "JsonParser", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L23"}, {"id": "jsonparser_jsonparser_importgamecontext", "label": ".importGameContext()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L29"}, {"id": "jsonparser_jsonparser_parseboard", "label": ".parseBoard()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L56"}, {"id": "jsonparser_jsonparser_parseturn", "label": ".parseTurn()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L66"}, {"id": "jsonparser_jsonparser_parsecolor", "label": ".parseColor()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L69"}, {"id": "jsonparser_jsonparser_parsepiecetype", "label": ".parsePieceType()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L74"}, {"id": "jsonparser_jsonparser_parsecastlingrights", "label": ".parseCastlingRights()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L84"}, {"id": "jsonparser_jsonparser_parsemoves", "label": ".parseMoves()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L92"}, {"id": "jsonparser_jsonparser_parsemovetype", "label": ".parseMoveType()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L101"}], "edges": [{"source": "modules_io_src_main_scala_de_nowchess_io_json_jsonparser_scala", "target": "com", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_json_jsonparser_scala", "target": "com", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_json_jsonparser_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_json_jsonparser_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_json_jsonparser_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_json_jsonparser_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_json_jsonparser_scala", "target": "scala", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L9", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_json_jsonparser_scala", "target": "jsonparser_jsonparser", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L23", "weight": 1.0}, {"source": "jsonparser_jsonparser", "target": "jsonparser_jsonparser_importgamecontext", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L29", "weight": 1.0}, {"source": "jsonparser_jsonparser", "target": "jsonparser_jsonparser_parseboard", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L56", "weight": 1.0}, {"source": "jsonparser_jsonparser", "target": "jsonparser_jsonparser_parseturn", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L66", "weight": 1.0}, {"source": "jsonparser_jsonparser", "target": "jsonparser_jsonparser_parsecolor", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L69", "weight": 1.0}, {"source": "jsonparser_jsonparser", "target": "jsonparser_jsonparser_parsepiecetype", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L74", "weight": 1.0}, {"source": "jsonparser_jsonparser", "target": "jsonparser_jsonparser_parsecastlingrights", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L84", "weight": 1.0}, {"source": "jsonparser_jsonparser", "target": "jsonparser_jsonparser_parsemoves", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L92", "weight": 1.0}, {"source": "jsonparser_jsonparser", "target": "jsonparser_jsonparser_parsemovetype", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L101", "weight": 1.0}, {"source": "jsonparser_jsonparser_importgamecontext", "target": "jsonparser_jsonparser_parseboard", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L41", "weight": 1.0}, {"source": "jsonparser_jsonparser_importgamecontext", "target": "jsonparser_jsonparser_parseturn", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L42", "weight": 1.0}, {"source": "jsonparser_jsonparser_importgamecontext", "target": "jsonparser_jsonparser_parsecastlingrights", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L43", "weight": 1.0}, {"source": "jsonparser_jsonparser_importgamecontext", "target": "jsonparser_jsonparser_parsemoves", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L45", "weight": 1.0}, {"source": "jsonparser_jsonparser_parseturn", "target": "jsonparser_jsonparser_parsecolor", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", "source_location": "L67", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/0942cdd6162853ccec19010f86c86fc3329135b2afe682b8c01c77aea615e4df.json b/graphify-out/cache/0942cdd6162853ccec19010f86c86fc3329135b2afe682b8c01c77aea615e4df.json new file mode 100644 index 0000000..c219ee9 --- /dev/null +++ b/graphify-out/cache/0942cdd6162853ccec19010f86c86fc3329135b2afe682b8c01c77aea615e4df.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_io_src_main_scala_de_nowchess_io_json_jsonexporter_scala", "label": "JsonExporter.scala", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L1"}, {"id": "jsonexporter_jsonexporter", "label": "JsonExporter", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L23"}, {"id": "jsonexporter_jsonexporter_createmapper", "label": ".createMapper()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L26"}, {"id": "jsonexporter_jsonexporter_exportgamecontext", "label": ".exportGameContext()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L40"}, {"id": "jsonexporter_jsonexporter_buildgamerecord", "label": ".buildGameRecord()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L44"}, {"id": "jsonexporter_jsonexporter_buildmetadata", "label": ".buildMetadata()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L60"}, {"id": "jsonexporter_jsonexporter_buildgamestate", "label": ".buildGameState()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L68"}, {"id": "jsonexporter_jsonexporter_buildboardpieces", "label": ".buildBoardPieces()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L77"}, {"id": "jsonexporter_jsonexporter_buildcastlingrights", "label": ".buildCastlingRights()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L82"}, {"id": "jsonexporter_jsonexporter_buildmoves", "label": ".buildMoves()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L90"}, {"id": "jsonexporter_jsonexporter_convertmovetype", "label": ".convertMoveType()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L96"}, {"id": "jsonexporter_jsonexporter_buildcapturedpieces", "label": ".buildCapturedPieces()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L117"}, {"id": "jsonexporter_jsonexporter_formatjson", "label": ".formatJson()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L121"}, {"id": "jsonexporter_jsonexporter_getcapturedpieces", "label": ".getCapturedPieces()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L127"}], "edges": [{"source": "modules_io_src_main_scala_de_nowchess_io_json_jsonexporter_scala", "target": "com", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_json_jsonexporter_scala", "target": "com", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_json_jsonexporter_scala", "target": "com", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_json_jsonexporter_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_json_jsonexporter_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_json_jsonexporter_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_json_jsonexporter_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L9", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_json_jsonexporter_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L10", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_json_jsonexporter_scala", "target": "java", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L11", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_json_jsonexporter_scala", "target": "jsonexporter_jsonexporter", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L23", "weight": 1.0}, {"source": "jsonexporter_jsonexporter", "target": "jsonexporter_jsonexporter_createmapper", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L26", "weight": 1.0}, {"source": "jsonexporter_jsonexporter", "target": "jsonexporter_jsonexporter_exportgamecontext", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L40", "weight": 1.0}, {"source": "jsonexporter_jsonexporter", "target": "jsonexporter_jsonexporter_buildgamerecord", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L44", "weight": 1.0}, {"source": "jsonexporter_jsonexporter", "target": "jsonexporter_jsonexporter_buildmetadata", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L60", "weight": 1.0}, {"source": "jsonexporter_jsonexporter", "target": "jsonexporter_jsonexporter_buildgamestate", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L68", "weight": 1.0}, {"source": "jsonexporter_jsonexporter", "target": "jsonexporter_jsonexporter_buildboardpieces", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L77", "weight": 1.0}, {"source": "jsonexporter_jsonexporter", "target": "jsonexporter_jsonexporter_buildcastlingrights", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L82", "weight": 1.0}, {"source": "jsonexporter_jsonexporter", "target": "jsonexporter_jsonexporter_buildmoves", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L90", "weight": 1.0}, {"source": "jsonexporter_jsonexporter", "target": "jsonexporter_jsonexporter_convertmovetype", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L96", "weight": 1.0}, {"source": "jsonexporter_jsonexporter", "target": "jsonexporter_jsonexporter_buildcapturedpieces", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L117", "weight": 1.0}, {"source": "jsonexporter_jsonexporter", "target": "jsonexporter_jsonexporter_formatjson", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L121", "weight": 1.0}, {"source": "jsonexporter_jsonexporter", "target": "jsonexporter_jsonexporter_getcapturedpieces", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L127", "weight": 1.0}, {"source": "jsonexporter_jsonexporter_exportgamecontext", "target": "jsonexporter_jsonexporter_buildgamerecord", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L41", "weight": 1.0}, {"source": "jsonexporter_jsonexporter_exportgamecontext", "target": "jsonexporter_jsonexporter_formatjson", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L42", "weight": 1.0}, {"source": "jsonexporter_jsonexporter_buildgamerecord", "target": "jsonexporter_jsonexporter_exportgamecontext", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L47", "weight": 1.0}, {"source": "jsonexporter_jsonexporter_buildgamerecord", "target": "jsonexporter_jsonexporter_buildmetadata", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L52", "weight": 1.0}, {"source": "jsonexporter_jsonexporter_buildgamerecord", "target": "jsonexporter_jsonexporter_buildgamestate", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L53", "weight": 1.0}, {"source": "jsonexporter_jsonexporter_buildgamerecord", "target": "jsonexporter_jsonexporter_buildmoves", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L55", "weight": 1.0}, {"source": "jsonexporter_jsonexporter_buildgamerecord", "target": "jsonexporter_jsonexporter_buildcapturedpieces", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L56", "weight": 1.0}, {"source": "jsonexporter_jsonexporter_buildgamestate", "target": "jsonexporter_jsonexporter_buildboardpieces", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L70", "weight": 1.0}, {"source": "jsonexporter_jsonexporter_buildgamestate", "target": "jsonexporter_jsonexporter_buildcastlingrights", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L72", "weight": 1.0}, {"source": "jsonexporter_jsonexporter_buildmoves", "target": "jsonexporter_jsonexporter_convertmovetype", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L92", "weight": 1.0}, {"source": "jsonexporter_jsonexporter_buildcapturedpieces", "target": "jsonexporter_jsonexporter_getcapturedpieces", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", "source_location": "L118", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/0a190e2cb6faf109e1a448acb932c75aee421767bb8c2927a1e7fd394d615880.json b/graphify-out/cache/0a190e2cb6faf109e1a448acb932c75aee421767bb8c2927a1e7fd394d615880.json new file mode 100644 index 0000000..5501927 --- /dev/null +++ b/graphify-out/cache/0a190e2cb6faf109e1a448acb932c75aee421767bb8c2927a1e7fd394d615880.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_io_src_main_scala_de_nowchess_io_gamecontextexport_scala", "label": "GameContextExport.scala", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/GameContextExport.scala", "source_location": "L1"}], "edges": [{"source": "modules_io_src_main_scala_de_nowchess_io_gamecontextexport_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/GameContextExport.scala", "source_location": "L3", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/0ac948743741a5512e10d8a0dbb5941ce2d02e265855d7e9a98c2ef60a5966ab.json b/graphify-out/cache/0ac948743741a5512e10d8a0dbb5941ce2d02e265855d7e9a98c2ef60a5966ab.json new file mode 100644 index 0000000..f2dca42 --- /dev/null +++ b/graphify-out/cache/0ac948743741a5512e10d8a0dbb5941ce2d02e265855d7e9a98c2ef60a5966ab.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_api_src_main_scala_de_nowchess_api_board_square_scala", "label": "Square.scala", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Square.scala", "source_location": "L1"}, {"id": "square_square", "label": "Square", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Square.scala", "source_location": "L20"}, {"id": "square_square_tostring", "label": ".toString()", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Square.scala", "source_location": "L22"}, {"id": "square_square_fromalgebraic", "label": ".fromAlgebraic()", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Square.scala", "source_location": "L28"}, {"id": "square_offset", "label": "offset()", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Square.scala", "source_location": "L48"}], "edges": [{"source": "modules_api_src_main_scala_de_nowchess_api_board_square_scala", "target": "square_square", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Square.scala", "source_location": "L20", "weight": 1.0}, {"source": "square_square", "target": "square_square_tostring", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Square.scala", "source_location": "L22", "weight": 1.0}, {"source": "modules_api_src_main_scala_de_nowchess_api_board_square_scala", "target": "square_square", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Square.scala", "source_location": "L25", "weight": 1.0}, {"source": "square_square", "target": "square_square_fromalgebraic", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Square.scala", "source_location": "L28", "weight": 1.0}, {"source": "modules_api_src_main_scala_de_nowchess_api_board_square_scala", "target": "square_offset", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Square.scala", "source_location": "L48", "weight": 1.0}, {"source": "square_square_fromalgebraic", "target": "square_square", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Square.scala", "source_location": "L36", "weight": 1.0}, {"source": "square_offset", "target": "square_square", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Square.scala", "source_location": "L52", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/0ae25717335362c2cd085e9dc4e3db3b499992616a1b5027d371d78645008ada.json b/graphify-out/cache/0ae25717335362c2cd085e9dc4e3db3b499992616a1b5027d371d78645008ada.json new file mode 100644 index 0000000..bab643b --- /dev/null +++ b/graphify-out/cache/0ae25717335362c2cd085e9dc4e3db3b499992616a1b5027d371d78645008ada.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_io_src_test_scala_de_nowchess_io_json_jsonparsersuite_scala", "label": "JsonParserSuite.scala", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserSuite.scala", "source_location": "L1"}, {"id": "jsonparsersuite_jsonparsersuite", "label": "JsonParserSuite", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserSuite.scala", "source_location": "L9"}], "edges": [{"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonparsersuite_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserSuite.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonparsersuite_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserSuite.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonparsersuite_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserSuite.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonparsersuite_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserSuite.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonparsersuite_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserSuite.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonparsersuite_scala", "target": "jsonparsersuite_jsonparsersuite", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserSuite.scala", "source_location": "L9", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/0c61af0f48800728e0431c46dd30d21c8c6c46473900e549bd0e2cba8a38af22.json b/graphify-out/cache/0c61af0f48800728e0431c46dd30d21c8c6c46473900e549bd0e2cba8a38af22.json new file mode 100644 index 0000000..5106389 --- /dev/null +++ b/graphify-out/cache/0c61af0f48800728e0431c46dd30d21c8c6c46473900e549bd0e2cba8a38af22.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_io_src_test_scala_de_nowchess_io_pgn_pgnvalidatortest_scala", "label": "PgnValidatorTest.scala", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnValidatorTest.scala", "source_location": "L1"}, {"id": "pgnvalidatortest_pgnvalidatortest", "label": "PgnValidatorTest", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnValidatorTest.scala", "source_location": "L8"}], "edges": [{"source": "modules_io_src_test_scala_de_nowchess_io_pgn_pgnvalidatortest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnValidatorTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_pgn_pgnvalidatortest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnValidatorTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_pgn_pgnvalidatortest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnValidatorTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_pgn_pgnvalidatortest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnValidatorTest.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_pgn_pgnvalidatortest_scala", "target": "pgnvalidatortest_pgnvalidatortest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnValidatorTest.scala", "source_location": "L8", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/0db20a1ed0ec00d675e3ba1e47a82eea780f2d859d91506a23aad69f3ea04693.json b/graphify-out/cache/0db20a1ed0ec00d675e3ba1e47a82eea780f2d859d91506a23aad69f3ea04693.json new file mode 100644 index 0000000..d2d1c3a --- /dev/null +++ b/graphify-out/cache/0db20a1ed0ec00d675e3ba1e47a82eea780f2d859d91506a23aad69f3ea04693.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_api_src_test_scala_de_nowchess_api_board_piecetest_scala", "label": "PieceTest.scala", "file_type": "code", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/PieceTest.scala", "source_location": "L1"}, {"id": "piecetest_piecetest", "label": "PieceTest", "file_type": "code", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/PieceTest.scala", "source_location": "L6"}], "edges": [{"source": "modules_api_src_test_scala_de_nowchess_api_board_piecetest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/PieceTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_api_src_test_scala_de_nowchess_api_board_piecetest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/PieceTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_api_src_test_scala_de_nowchess_api_board_piecetest_scala", "target": "piecetest_piecetest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/PieceTest.scala", "source_location": "L6", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/0f54db66bba13294c76cbccd77c0ee9b10341c2157397269303f16c0bad364c2.json b/graphify-out/cache/0f54db66bba13294c76cbccd77c0ee9b10341c2157397269303f16c0bad364c2.json new file mode 100644 index 0000000..cba4439 --- /dev/null +++ b/graphify-out/cache/0f54db66bba13294c76cbccd77c0ee9b10341c2157397269303f16c0bad364c2.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_src_test_scala_de_nowchess_bot_botcontrollertest_scala", "label": "BotControllerTest.scala", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/BotControllerTest.scala", "source_location": "L1"}, {"id": "botcontrollertest_botcontrollertest", "label": "BotControllerTest", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/BotControllerTest.scala", "source_location": "L6"}], "edges": [{"source": "modules_bot_src_test_scala_de_nowchess_bot_botcontrollertest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/BotControllerTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_botcontrollertest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/BotControllerTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_botcontrollertest_scala", "target": "botcontrollertest_botcontrollertest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/BotControllerTest.scala", "source_location": "L6", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/0fabde23b3d1aa12a5b579a2aabcb00013a7b57735cb23c5e0ca328e2b2d6c78.json b/graphify-out/cache/0fabde23b3d1aa12a5b579a2aabcb00013a7b57735cb23c5e0ca328e2b2d6c78.json new file mode 100644 index 0000000..a26aa05 --- /dev/null +++ b/graphify-out/cache/0fabde23b3d1aa12a5b579a2aabcb00013a7b57735cb23c5e0ca328e2b2d6c78.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_api_src_main_scala_de_nowchess_api_board_board_scala", "label": "Board.scala", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", "source_location": "L1"}, {"id": "board_board", "label": "Board", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", "source_location": "L5"}, {"id": "board_board_apply", "label": ".apply()", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", "source_location": "L7"}, {"id": "board_pieceat", "label": "pieceAt()", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", "source_location": "L10"}, {"id": "board_updated", "label": "updated()", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", "source_location": "L11"}, {"id": "board_removed", "label": "removed()", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", "source_location": "L12"}, {"id": "board_withmove", "label": "withMove()", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", "source_location": "L13"}, {"id": "board_applymove", "label": "applyMove()", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", "source_location": "L17"}, {"id": "board_pieces", "label": "pieces()", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", "source_location": "L20"}], "edges": [{"source": "modules_api_src_main_scala_de_nowchess_api_board_board_scala", "target": "board_board", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", "source_location": "L5", "weight": 1.0}, {"source": "board_board", "target": "board_board_apply", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_api_src_main_scala_de_nowchess_api_board_board_scala", "target": "board_pieceat", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", "source_location": "L10", "weight": 1.0}, {"source": "modules_api_src_main_scala_de_nowchess_api_board_board_scala", "target": "board_updated", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", "source_location": "L11", "weight": 1.0}, {"source": "modules_api_src_main_scala_de_nowchess_api_board_board_scala", "target": "board_removed", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", "source_location": "L12", "weight": 1.0}, {"source": "modules_api_src_main_scala_de_nowchess_api_board_board_scala", "target": "board_withmove", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", "source_location": "L13", "weight": 1.0}, {"source": "modules_api_src_main_scala_de_nowchess_api_board_board_scala", "target": "board_applymove", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", "source_location": "L17", "weight": 1.0}, {"source": "modules_api_src_main_scala_de_nowchess_api_board_board_scala", "target": "board_pieces", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", "source_location": "L20", "weight": 1.0}, {"source": "board_withmove", "target": "board_updated", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", "source_location": "L15", "weight": 1.0}, {"source": "board_withmove", "target": "board_removed", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", "source_location": "L15", "weight": 1.0}, {"source": "board_applymove", "target": "board_withmove", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", "source_location": "L18", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/126216a927db64c124c831da80623d1fbff6a0ab499bc5508dabaa2141336212.json b/graphify-out/cache/126216a927db64c124c831da80623d1fbff6a0ab499bc5508dabaa2141336212.json new file mode 100644 index 0000000..fc7c8fb --- /dev/null +++ b/graphify-out/cache/126216a927db64c124c831da80623d1fbff6a0ab499bc5508dabaa2141336212.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_io_src_main_scala_de_nowchess_io_fen_fenparser_scala", "label": "FenParser.scala", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", "source_location": "L1"}, {"id": "fenparser_fenparser", "label": "FenParser", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", "source_location": "L7"}, {"id": "fenparser_fenparser_parsefen", "label": ".parseFen()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", "source_location": "L11"}, {"id": "fenparser_fenparser_importgamecontext", "label": ".importGameContext()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", "source_location": "L32"}, {"id": "fenparser_fenparser_parsecolor", "label": ".parseColor()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", "source_location": "L36"}, {"id": "fenparser_fenparser_parsecastling", "label": ".parseCastling()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", "source_location": "L42"}, {"id": "fenparser_fenparser_parseenpassant", "label": ".parseEnPassant()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", "source_location": "L56"}, {"id": "fenparser_fenparser_parseboard", "label": ".parseBoard()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", "source_location": "L63"}, {"id": "fenparser_fenparser_parsepiecerank", "label": ".parsePieceRank()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", "source_location": "L79"}, {"id": "fenparser_fenparser_chartopiece", "label": ".charToPiece()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", "source_location": "L94"}], "edges": [{"source": "modules_io_src_main_scala_de_nowchess_io_fen_fenparser_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_fen_fenparser_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_fen_fenparser_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_fen_fenparser_scala", "target": "fenparser_fenparser", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", "source_location": "L7", "weight": 1.0}, {"source": "fenparser_fenparser", "target": "fenparser_fenparser_parsefen", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", "source_location": "L11", "weight": 1.0}, {"source": "fenparser_fenparser", "target": "fenparser_fenparser_importgamecontext", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", "source_location": "L32", "weight": 1.0}, {"source": "fenparser_fenparser", "target": "fenparser_fenparser_parsecolor", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", "source_location": "L36", "weight": 1.0}, {"source": "fenparser_fenparser", "target": "fenparser_fenparser_parsecastling", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", "source_location": "L42", "weight": 1.0}, {"source": "fenparser_fenparser", "target": "fenparser_fenparser_parseenpassant", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", "source_location": "L56", "weight": 1.0}, {"source": "fenparser_fenparser", "target": "fenparser_fenparser_parseboard", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", "source_location": "L63", "weight": 1.0}, {"source": "fenparser_fenparser", "target": "fenparser_fenparser_parsepiecerank", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", "source_location": "L79", "weight": 1.0}, {"source": "fenparser_fenparser", "target": "fenparser_fenparser_chartopiece", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", "source_location": "L94", "weight": 1.0}, {"source": "fenparser_fenparser_parsefen", "target": "fenparser_fenparser_parseboard", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", "source_location": "L16", "weight": 1.0}, {"source": "fenparser_fenparser_parsefen", "target": "fenparser_fenparser_parsecolor", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", "source_location": "L17", "weight": 1.0}, {"source": "fenparser_fenparser_parsefen", "target": "fenparser_fenparser_parsecastling", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", "source_location": "L18", "weight": 1.0}, {"source": "fenparser_fenparser_parsefen", "target": "fenparser_fenparser_parseenpassant", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", "source_location": "L19", "weight": 1.0}, {"source": "fenparser_fenparser_importgamecontext", "target": "fenparser_fenparser_parsefen", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", "source_location": "L33", "weight": 1.0}, {"source": "fenparser_fenparser_parseboard", "target": "fenparser_fenparser_parsepiecerank", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", "source_location": "L73", "weight": 1.0}, {"source": "fenparser_fenparser_parsepiecerank", "target": "fenparser_fenparser_chartopiece", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", "source_location": "L86", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/128efffbcfd6b3db8a18f784ae1bd64c6283a8ad01afe282361a6424dcf86e8e.json b/graphify-out/cache/128efffbcfd6b3db8a18f784ae1bd64c6283a8ad01afe282361a6424dcf86e8e.json new file mode 100644 index 0000000..7bbeea9 --- /dev/null +++ b/graphify-out/cache/128efffbcfd6b3db8a18f784ae1bd64c6283a8ad01afe282361a6424dcf86e8e.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_src_main_scala_de_nowchess_bot_botdifficulty_scala", "label": "BotDifficulty.scala", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/BotDifficulty.scala", "source_location": "L1"}], "edges": []} \ No newline at end of file diff --git a/graphify-out/cache/13a6391f0600a1b79059972e4589477ee79e3570fac1bb57d09f6ae191df954a.json b/graphify-out/cache/13a6391f0600a1b79059972e4589477ee79e3570fac1bb57d09f6ae191df954a.json new file mode 100644 index 0000000..1144a5b --- /dev/null +++ b/graphify-out/cache/13a6391f0600a1b79059972e4589477ee79e3570fac1bb57d09f6ae191df954a.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_core_src_test_scala_de_nowchess_chess_command_movecommandtest_scala", "label": "MoveCommandTest.scala", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/MoveCommandTest.scala", "source_location": "L1"}, {"id": "movecommandtest_movecommandtest", "label": "MoveCommandTest", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/MoveCommandTest.scala", "source_location": "L8"}, {"id": "movecommandtest_movecommandtest_sq", "label": ".sq()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/MoveCommandTest.scala", "source_location": "L10"}], "edges": [{"source": "modules_core_src_test_scala_de_nowchess_chess_command_movecommandtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/MoveCommandTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_command_movecommandtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/MoveCommandTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_command_movecommandtest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/MoveCommandTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_command_movecommandtest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/MoveCommandTest.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_command_movecommandtest_scala", "target": "movecommandtest_movecommandtest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/MoveCommandTest.scala", "source_location": "L8", "weight": 1.0}, {"source": "movecommandtest_movecommandtest", "target": "movecommandtest_movecommandtest_sq", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/MoveCommandTest.scala", "source_location": "L10", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/15455d14bde06afc9ee6aef22a838a93ae2f21ff53550a23c52edd32d9e9a409.json b/graphify-out/cache/15455d14bde06afc9ee6aef22a838a93ae2f21ff53550a23c52edd32d9e9a409.json new file mode 100644 index 0000000..66c3765 --- /dev/null +++ b/graphify-out/cache/15455d14bde06afc9ee6aef22a838a93ae2f21ff53550a23c52edd32d9e9a409.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_io_src_main_scala_de_nowchess_io_fen_fenparserfastparse_scala", "label": "FenParserFastParse.scala", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L1"}, {"id": "fenparserfastparse_fenparserfastparse", "label": "FenParserFastParse", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L10"}, {"id": "fenparserfastparse_fenparserfastparse_piecechar", "label": ".pieceChar()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L14"}, {"id": "fenparserfastparse_fenparserfastparse_emptycount", "label": ".emptyCount()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L21"}, {"id": "fenparserfastparse_fenparserfastparse_ranktoken", "label": ".rankToken()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L24"}, {"id": "fenparserfastparse_fenparserfastparse_rankparser", "label": ".rankParser()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L29"}, {"id": "fenparserfastparse_fenparserfastparse_sep", "label": ".sep()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L38"}, {"id": "fenparserfastparse_fenparserfastparse_boardparser", "label": ".boardParser()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L40"}, {"id": "fenparserfastparse_fenparserfastparse_colorparser", "label": ".colorParser()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L54"}, {"id": "fenparserfastparse_fenparserfastparse_castlingparser", "label": ".castlingParser()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L62"}, {"id": "fenparserfastparse_fenparserfastparse_enpassantparser", "label": ".enPassantParser()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L75"}, {"id": "fenparserfastparse_fenparserfastparse_clockparser", "label": ".clockParser()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L81"}, {"id": "fenparserfastparse_fenparserfastparse_sp", "label": ".sp()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L86"}, {"id": "fenparserfastparse_fenparserfastparse_fenparser", "label": ".fenParser()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L90"}, {"id": "fenparserfastparse_fenparserfastparse_parsefen", "label": ".parseFen()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L106"}, {"id": "fenparserfastparse_fenparserfastparse_boardparserfull", "label": ".boardParserFull()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L111"}, {"id": "fenparserfastparse_fenparserfastparse_parseboard", "label": ".parseBoard()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L114"}, {"id": "fenparserfastparse_fenparserfastparse_importgamecontext", "label": ".importGameContext()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L119"}], "edges": [{"source": "modules_io_src_main_scala_de_nowchess_io_fen_fenparserfastparse_scala", "target": "fastparse", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_fen_fenparserfastparse_scala", "target": "fastparse", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_fen_fenparserfastparse_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_fen_fenparserfastparse_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_fen_fenparserfastparse_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_fen_fenparserfastparse_scala", "target": "fenparsersupport", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_fen_fenparserfastparse_scala", "target": "fenparserfastparse_fenparserfastparse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L10", "weight": 1.0}, {"source": "fenparserfastparse_fenparserfastparse", "target": "fenparserfastparse_fenparserfastparse_piecechar", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L14", "weight": 1.0}, {"source": "fenparserfastparse_fenparserfastparse", "target": "fenparserfastparse_fenparserfastparse_emptycount", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L21", "weight": 1.0}, {"source": "fenparserfastparse_fenparserfastparse", "target": "fenparserfastparse_fenparserfastparse_ranktoken", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L24", "weight": 1.0}, {"source": "fenparserfastparse_fenparserfastparse", "target": "fenparserfastparse_fenparserfastparse_rankparser", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L29", "weight": 1.0}, {"source": "fenparserfastparse_fenparserfastparse", "target": "fenparserfastparse_fenparserfastparse_sep", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L38", "weight": 1.0}, {"source": "fenparserfastparse_fenparserfastparse", "target": "fenparserfastparse_fenparserfastparse_boardparser", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L40", "weight": 1.0}, {"source": "fenparserfastparse_fenparserfastparse", "target": "fenparserfastparse_fenparserfastparse_colorparser", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L54", "weight": 1.0}, {"source": "fenparserfastparse_fenparserfastparse", "target": "fenparserfastparse_fenparserfastparse_castlingparser", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L62", "weight": 1.0}, {"source": "fenparserfastparse_fenparserfastparse", "target": "fenparserfastparse_fenparserfastparse_enpassantparser", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L75", "weight": 1.0}, {"source": "fenparserfastparse_fenparserfastparse", "target": "fenparserfastparse_fenparserfastparse_clockparser", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L81", "weight": 1.0}, {"source": "fenparserfastparse_fenparserfastparse", "target": "fenparserfastparse_fenparserfastparse_sp", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L86", "weight": 1.0}, {"source": "fenparserfastparse_fenparserfastparse", "target": "fenparserfastparse_fenparserfastparse_fenparser", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L90", "weight": 1.0}, {"source": "fenparserfastparse_fenparserfastparse", "target": "fenparserfastparse_fenparserfastparse_parsefen", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L106", "weight": 1.0}, {"source": "fenparserfastparse_fenparserfastparse", "target": "fenparserfastparse_fenparserfastparse_boardparserfull", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L111", "weight": 1.0}, {"source": "fenparserfastparse_fenparserfastparse", "target": "fenparserfastparse_fenparserfastparse_parseboard", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L114", "weight": 1.0}, {"source": "fenparserfastparse_fenparserfastparse", "target": "fenparserfastparse_fenparserfastparse_importgamecontext", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L119", "weight": 1.0}, {"source": "fenparserfastparse_fenparserfastparse_boardparser", "target": "fenparserfastparse_fenparserfastparse_rankparser", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L41", "weight": 1.0}, {"source": "fenparserfastparse_fenparserfastparse_parsefen", "target": "fenparserfastparse_fenparserfastparse_fenparser", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L107", "weight": 1.0}, {"source": "fenparserfastparse_fenparserfastparse_parseboard", "target": "fenparserfastparse_fenparserfastparse_boardparserfull", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L115", "weight": 1.0}, {"source": "fenparserfastparse_fenparserfastparse_importgamecontext", "target": "fenparserfastparse_fenparserfastparse_parsefen", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", "source_location": "L120", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/156716567d0c81769ae6f4b17033b5694e4c969dbf40b90dc505dc36ed3ed9fa.json b/graphify-out/cache/156716567d0c81769ae6f4b17033b5694e4c969dbf40b90dc505dc36ed3ed9fa.json new file mode 100644 index 0000000..e3a5f38 --- /dev/null +++ b/graphify-out/cache/156716567d0c81769ae6f4b17033b5694e4c969dbf40b90dc505dc36ed3ed9fa.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_api_src_test_scala_de_nowchess_api_game_gamecontexttest_scala", "label": "GameContextTest.scala", "file_type": "code", "source_file": "modules/api/src/test/scala/de/nowchess/api/game/GameContextTest.scala", "source_location": "L1"}, {"id": "gamecontexttest_gamecontexttest", "label": "GameContextTest", "file_type": "code", "source_file": "modules/api/src/test/scala/de/nowchess/api/game/GameContextTest.scala", "source_location": "L8"}], "edges": [{"source": "modules_api_src_test_scala_de_nowchess_api_game_gamecontexttest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/game/GameContextTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_api_src_test_scala_de_nowchess_api_game_gamecontexttest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/game/GameContextTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_api_src_test_scala_de_nowchess_api_game_gamecontexttest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/game/GameContextTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_api_src_test_scala_de_nowchess_api_game_gamecontexttest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/game/GameContextTest.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_api_src_test_scala_de_nowchess_api_game_gamecontexttest_scala", "target": "gamecontexttest_gamecontexttest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/game/GameContextTest.scala", "source_location": "L8", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/167693356e834720aa983c3bd02195e4ed1ff6f6a882f838915070dc7c63a473.json b/graphify-out/cache/167693356e834720aa983c3bd02195e4ed1ff6f6a882f838915070dc7c63a473.json new file mode 100644 index 0000000..0894ce2 --- /dev/null +++ b/graphify-out/cache/167693356e834720aa983c3bd02195e4ed1ff6f6a882f838915070dc7c63a473.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_python_src_label_py", "label": "label.py", "file_type": "code", "source_file": "modules/bot/python/src/label.py", "source_location": "L1"}, {"id": "label_normalize_evaluation", "label": "normalize_evaluation()", "file_type": "code", "source_file": "modules/bot/python/src/label.py", "source_location": "L14"}, {"id": "label_evaluate_fen_batch", "label": "_evaluate_fen_batch()", "file_type": "code", "source_file": "modules/bot/python/src/label.py", "source_location": "L32"}, {"id": "label_label_positions_with_stockfish", "label": "label_positions_with_stockfish()", "file_type": "code", "source_file": "modules/bot/python/src/label.py", "source_location": "L82"}, {"id": "label_rationale_15", "label": "Normalize centipawn evaluation to a bounded range. Args: cp_value:", "file_type": "rationale", "source_file": "modules/bot/python/src/label.py", "source_location": "L15"}, {"id": "label_rationale_33", "label": "Worker function to evaluate a batch of FENs with Stockfish threading. Args:", "file_type": "rationale", "source_file": "modules/bot/python/src/label.py", "source_location": "L33"}, {"id": "label_rationale_83", "label": "Read positions and label them with Stockfish evaluations. Args: pos", "file_type": "rationale", "source_file": "modules/bot/python/src/label.py", "source_location": "L83"}], "edges": [{"source": "modules_bot_python_src_label_py", "target": "json", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/label.py", "source_location": "L4", "weight": 1.0}, {"source": "modules_bot_python_src_label_py", "target": "chess_engine", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/label.py", "source_location": "L5", "weight": 1.0}, {"source": "modules_bot_python_src_label_py", "target": "sys", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/label.py", "source_location": "L6", "weight": 1.0}, {"source": "modules_bot_python_src_label_py", "target": "os", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/label.py", "source_location": "L7", "weight": 1.0}, {"source": "modules_bot_python_src_label_py", "target": "numpy", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/label.py", "source_location": "L8", "weight": 1.0}, {"source": "modules_bot_python_src_label_py", "target": "pathlib", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/label.py", "source_location": "L9", "weight": 1.0}, {"source": "modules_bot_python_src_label_py", "target": "tqdm", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/label.py", "source_location": "L10", "weight": 1.0}, {"source": "modules_bot_python_src_label_py", "target": "multiprocessing", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/label.py", "source_location": "L11", "weight": 1.0}, {"source": "modules_bot_python_src_label_py", "target": "functools", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/label.py", "source_location": "L12", "weight": 1.0}, {"source": "modules_bot_python_src_label_py", "target": "label_normalize_evaluation", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/label.py", "source_location": "L14", "weight": 1.0}, {"source": "modules_bot_python_src_label_py", "target": "label_evaluate_fen_batch", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/label.py", "source_location": "L32", "weight": 1.0}, {"source": "modules_bot_python_src_label_py", "target": "label_label_positions_with_stockfish", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/label.py", "source_location": "L82", "weight": 1.0}, {"source": "modules_bot_python_src_label_py", "target": "argparse", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/label.py", "source_location": "L279", "weight": 1.0}, {"source": "label_evaluate_fen_batch", "target": "label_normalize_evaluation", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/label.py", "source_location": "L70", "weight": 1.0}, {"source": "label_rationale_15", "target": "label_normalize_evaluation", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/label.py", "source_location": "L15", "weight": 1.0}, {"source": "label_rationale_33", "target": "label_evaluate_fen_batch", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/label.py", "source_location": "L33", "weight": 1.0}, {"source": "label_rationale_83", "target": "label_label_positions_with_stockfish", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/label.py", "source_location": "L83", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/1691e4b3da69b66cba75a82053c4d2b2d9b8828107379473211a5e5370379143.json b/graphify-out/cache/1691e4b3da69b66cba75a82053c4d2b2d9b8828107379473211a5e5370379143.json new file mode 100644 index 0000000..d40b01a --- /dev/null +++ b/graphify-out/cache/1691e4b3da69b66cba75a82053c4d2b2d9b8828107379473211a5e5370379143.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_io_src_test_scala_de_nowchess_io_pgn_pgnexportertest_scala", "label": "PgnExporterTest.scala", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnExporterTest.scala", "source_location": "L1"}, {"id": "pgnexportertest_pgnexportertest", "label": "PgnExporterTest", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnExporterTest.scala", "source_location": "L9"}, {"id": "pgnexportertest_pgnexportertest_sq", "label": ".sq()", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnExporterTest.scala", "source_location": "L73"}], "edges": [{"source": "modules_io_src_test_scala_de_nowchess_io_pgn_pgnexportertest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnExporterTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_pgn_pgnexportertest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnExporterTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_pgn_pgnexportertest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnExporterTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_pgn_pgnexportertest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnExporterTest.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_pgn_pgnexportertest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnExporterTest.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_pgn_pgnexportertest_scala", "target": "pgnexportertest_pgnexportertest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnExporterTest.scala", "source_location": "L9", "weight": 1.0}, {"source": "pgnexportertest_pgnexportertest", "target": "pgnexportertest_pgnexportertest_sq", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnExporterTest.scala", "source_location": "L73", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/178f18b14eb7a36e7e48e94207e33cfbcabe301415c18b4db2838625153ccecf.json b/graphify-out/cache/178f18b14eb7a36e7e48e94207e33cfbcabe301415c18b4db2838625153ccecf.json new file mode 100644 index 0000000..acb2d44 --- /dev/null +++ b/graphify-out/cache/178f18b14eb7a36e7e48e94207e33cfbcabe301415c18b4db2838625153ccecf.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessboardview_scala", "label": "ChessBoardView.scala", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L1"}, {"id": "chessboardview_chessboardview", "label": "ChessBoardView", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L28"}, {"id": "chessboardview_chessboardview_initializeboard", "label": ".initializeBoard()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L149"}, {"id": "chessboardview_chessboardview_createsquare", "label": ".createSquare()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L165"}, {"id": "chessboardview_chessboardview_handlesquareclick", "label": ".handleSquareClick()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L185"}, {"id": "chessboardview_chessboardview_updateboard", "label": ".updateBoard()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L218"}, {"id": "chessboardview_chessboardview_updateundoredobuttons", "label": ".updateUndoRedoButtons()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L254"}, {"id": "chessboardview_chessboardview_highlightsquare", "label": ".highlightSquare()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L258"}, {"id": "chessboardview_chessboardview_showmessage", "label": ".showMessage()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L278"}, {"id": "chessboardview_chessboardview_showpromotiondialog", "label": ".showPromotionDialog()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L281"}, {"id": "chessboardview_chessboardview_dofenexport", "label": ".doFenExport()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L298"}, {"id": "chessboardview_chessboardview_dofenimport", "label": ".doFenImport()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L301"}, {"id": "chessboardview_chessboardview_dopgnexport", "label": ".doPgnExport()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L304"}, {"id": "chessboardview_chessboardview_dopgnimport", "label": ".doPgnImport()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L307"}, {"id": "chessboardview_chessboardview_dojsonexport", "label": ".doJsonExport()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L310"}, {"id": "chessboardview_chessboardview_dojsonimport", "label": ".doJsonImport()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L329"}, {"id": "chessboardview_chessboardview_doexport", "label": ".doExport()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L349"}, {"id": "chessboardview_chessboardview_doimport", "label": ".doImport()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L354"}, {"id": "chessboardview_chessboardview_showcopydialog", "label": ".showCopyDialog()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L364"}, {"id": "chessboardview_chessboardview_showinputdialog", "label": ".showInputDialog()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L377"}], "edges": [{"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessboardview_scala", "target": "scala", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessboardview_scala", "target": "scalafx", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessboardview_scala", "target": "scalafx", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessboardview_scala", "target": "scalafx", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessboardview_scala", "target": "scalafx", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessboardview_scala", "target": "scalafx", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessboardview_scala", "target": "scalafx", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L9", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessboardview_scala", "target": "scalafx", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L10", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessboardview_scala", "target": "scalafx", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L11", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessboardview_scala", "target": "scalafx", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L12", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessboardview_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L13", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessboardview_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L14", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessboardview_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L15", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessboardview_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L16", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessboardview_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L17", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessboardview_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L18", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessboardview_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L19", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessboardview_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L20", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessboardview_scala", "target": "java", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L21", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessboardview_scala", "target": "scalafx", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L22", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessboardview_scala", "target": "scalafx", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L23", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessboardview_scala", "target": "chessboardview_chessboardview", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L28", "weight": 1.0}, {"source": "chessboardview_chessboardview", "target": "chessboardview_chessboardview_initializeboard", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L149", "weight": 1.0}, {"source": "chessboardview_chessboardview", "target": "chessboardview_chessboardview_createsquare", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L165", "weight": 1.0}, {"source": "chessboardview_chessboardview", "target": "chessboardview_chessboardview_handlesquareclick", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L185", "weight": 1.0}, {"source": "chessboardview_chessboardview", "target": "chessboardview_chessboardview_updateboard", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L218", "weight": 1.0}, {"source": "chessboardview_chessboardview", "target": "chessboardview_chessboardview_updateundoredobuttons", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L254", "weight": 1.0}, {"source": "chessboardview_chessboardview", "target": "chessboardview_chessboardview_highlightsquare", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L258", "weight": 1.0}, {"source": "chessboardview_chessboardview", "target": "chessboardview_chessboardview_showmessage", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L278", "weight": 1.0}, {"source": "chessboardview_chessboardview", "target": "chessboardview_chessboardview_showpromotiondialog", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L281", "weight": 1.0}, {"source": "chessboardview_chessboardview", "target": "chessboardview_chessboardview_dofenexport", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L298", "weight": 1.0}, {"source": "chessboardview_chessboardview", "target": "chessboardview_chessboardview_dofenimport", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L301", "weight": 1.0}, {"source": "chessboardview_chessboardview", "target": "chessboardview_chessboardview_dopgnexport", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L304", "weight": 1.0}, {"source": "chessboardview_chessboardview", "target": "chessboardview_chessboardview_dopgnimport", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L307", "weight": 1.0}, {"source": "chessboardview_chessboardview", "target": "chessboardview_chessboardview_dojsonexport", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L310", "weight": 1.0}, {"source": "chessboardview_chessboardview", "target": "chessboardview_chessboardview_dojsonimport", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L329", "weight": 1.0}, {"source": "chessboardview_chessboardview", "target": "chessboardview_chessboardview_doexport", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L349", "weight": 1.0}, {"source": "chessboardview_chessboardview", "target": "chessboardview_chessboardview_doimport", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L354", "weight": 1.0}, {"source": "chessboardview_chessboardview", "target": "chessboardview_chessboardview_showcopydialog", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L364", "weight": 1.0}, {"source": "chessboardview_chessboardview", "target": "chessboardview_chessboardview_showinputdialog", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L377", "weight": 1.0}, {"source": "chessboardview_chessboardview_initializeboard", "target": "chessboardview_chessboardview_createsquare", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L159", "weight": 1.0}, {"source": "chessboardview_chessboardview_initializeboard", "target": "chessboardview_chessboardview_updateboard", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L163", "weight": 1.0}, {"source": "chessboardview_chessboardview_createsquare", "target": "chessboardview_chessboardview_handlesquareclick", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L179", "weight": 1.0}, {"source": "chessboardview_chessboardview_handlesquareclick", "target": "chessboardview_chessboardview_highlightsquare", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L196", "weight": 1.0}, {"source": "chessboardview_chessboardview_handlesquareclick", "target": "chessboardview_chessboardview_updateboard", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L211", "weight": 1.0}, {"source": "chessboardview_chessboardview_updateboard", "target": "chessboardview_chessboardview_updateundoredobuttons", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L252", "weight": 1.0}, {"source": "chessboardview_chessboardview_dofenexport", "target": "chessboardview_chessboardview_doexport", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L299", "weight": 1.0}, {"source": "chessboardview_chessboardview_dofenimport", "target": "chessboardview_chessboardview_doimport", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L302", "weight": 1.0}, {"source": "chessboardview_chessboardview_dopgnexport", "target": "chessboardview_chessboardview_doexport", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L305", "weight": 1.0}, {"source": "chessboardview_chessboardview_dopgnimport", "target": "chessboardview_chessboardview_doimport", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L308", "weight": 1.0}, {"source": "chessboardview_chessboardview_dojsonexport", "target": "chessboardview_chessboardview_showmessage", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L326", "weight": 1.0}, {"source": "chessboardview_chessboardview_dojsonimport", "target": "chessboardview_chessboardview_showmessage", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L345", "weight": 1.0}, {"source": "chessboardview_chessboardview_doexport", "target": "chessboardview_chessboardview_showcopydialog", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L351", "weight": 1.0}, {"source": "chessboardview_chessboardview_doimport", "target": "chessboardview_chessboardview_showinputdialog", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L355", "weight": 1.0}, {"source": "chessboardview_chessboardview_doimport", "target": "chessboardview_chessboardview_showmessage", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", "source_location": "L359", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/17fa3b2813b4b84610bb5411c7c3b0d9365276599075672ae8b1babff12a9c3e.json b/graphify-out/cache/17fa3b2813b4b84610bb5411c7c3b0d9365276599075672ae8b1babff12a9c3e.json new file mode 100644 index 0000000..5ff34a2 --- /dev/null +++ b/graphify-out/cache/17fa3b2813b4b84610bb5411c7c3b0d9365276599075672ae8b1babff12a9c3e.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_python_start_ps1", "label": "start.ps1", "file_type": "code", "source_file": "modules/bot/python/start.ps1", "source_location": "L1"}], "edges": []} \ No newline at end of file diff --git a/graphify-out/cache/18c4f3b62cb204f11b545d9d1bc8dd9d75da0ed009be4dbf3b2145329c1aeb62.json b/graphify-out/cache/18c4f3b62cb204f11b545d9d1bc8dd9d75da0ed009be4dbf3b2145329c1aeb62.json new file mode 100644 index 0000000..8e2e006 --- /dev/null +++ b/graphify-out/cache/18c4f3b62cb204f11b545d9d1bc8dd9d75da0ed009be4dbf3b2145329c1aeb62.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_core_src_main_scala_de_nowchess_chess_command_command_scala", "label": "Command.scala", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L1"}, {"id": "command_movecommand", "label": "MoveCommand", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L21"}, {"id": "command_movecommand_execute", "label": ".execute()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L29"}, {"id": "command_movecommand_undo", "label": ".undo()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L32"}, {"id": "command_movecommand_description", "label": ".description()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L35"}, {"id": "command_moveresult", "label": "MoveResult", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L39"}, {"id": "command_successful", "label": "Successful", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L40"}, {"id": "command_invalidformat", "label": "InvalidFormat", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L41"}, {"id": "command_invalidmove", "label": "InvalidMove", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L42"}, {"id": "command_quitcommand", "label": "QuitCommand", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L45"}, {"id": "command_quitcommand_execute", "label": ".execute()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L46"}, {"id": "command_quitcommand_undo", "label": ".undo()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L47"}, {"id": "command_quitcommand_description", "label": ".description()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L48"}, {"id": "command_resetcommand", "label": "ResetCommand", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L51"}, {"id": "command_resetcommand_execute", "label": ".execute()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L55"}, {"id": "command_resetcommand_undo", "label": ".undo()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L57"}, {"id": "command_resetcommand_description", "label": ".description()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L60"}], "edges": [{"source": "modules_core_src_main_scala_de_nowchess_chess_command_command_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_core_src_main_scala_de_nowchess_chess_command_command_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_core_src_main_scala_de_nowchess_chess_command_command_scala", "target": "command_movecommand", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L21", "weight": 1.0}, {"source": "command_movecommand", "target": "command_movecommand_execute", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L29", "weight": 1.0}, {"source": "command_movecommand", "target": "command_movecommand_undo", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L32", "weight": 1.0}, {"source": "command_movecommand", "target": "command_movecommand_description", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L35", "weight": 1.0}, {"source": "modules_core_src_main_scala_de_nowchess_chess_command_command_scala", "target": "command_moveresult", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L39", "weight": 1.0}, {"source": "modules_core_src_main_scala_de_nowchess_chess_command_command_scala", "target": "command_successful", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L40", "weight": 1.0}, {"source": "modules_core_src_main_scala_de_nowchess_chess_command_command_scala", "target": "command_invalidformat", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L41", "weight": 1.0}, {"source": "modules_core_src_main_scala_de_nowchess_chess_command_command_scala", "target": "command_invalidmove", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L42", "weight": 1.0}, {"source": "modules_core_src_main_scala_de_nowchess_chess_command_command_scala", "target": "command_quitcommand", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L45", "weight": 1.0}, {"source": "command_quitcommand", "target": "command_quitcommand_execute", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L46", "weight": 1.0}, {"source": "command_quitcommand", "target": "command_quitcommand_undo", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L47", "weight": 1.0}, {"source": "command_quitcommand", "target": "command_quitcommand_description", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L48", "weight": 1.0}, {"source": "modules_core_src_main_scala_de_nowchess_chess_command_command_scala", "target": "command_resetcommand", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L51", "weight": 1.0}, {"source": "command_resetcommand", "target": "command_resetcommand_execute", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L55", "weight": 1.0}, {"source": "command_resetcommand", "target": "command_resetcommand_undo", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L57", "weight": 1.0}, {"source": "command_resetcommand", "target": "command_resetcommand_description", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", "source_location": "L60", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/1dd979d5dd32394512792606507424029eef45b1c4479ca1d37864c5eea67780.json b/graphify-out/cache/1dd979d5dd32394512792606507424029eef45b1c4479ca1d37864c5eea67780.json new file mode 100644 index 0000000..77bea98 --- /dev/null +++ b/graphify-out/cache/1dd979d5dd32394512792606507424029eef45b1c4479ca1d37864c5eea67780.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", "label": "Observer.scala", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L1"}, {"id": "observer_moveexecutedevent", "label": "MoveExecutedEvent", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L12"}, {"id": "observer_checkdetectedevent", "label": "CheckDetectedEvent", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L20"}, {"id": "observer_checkmateevent", "label": "CheckmateEvent", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L25"}, {"id": "observer_stalemateevent", "label": "StalemateEvent", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L31"}, {"id": "observer_invalidmoveevent", "label": "InvalidMoveEvent", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L36"}, {"id": "observer_promotionrequiredevent", "label": "PromotionRequiredEvent", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L42"}, {"id": "observer_boardresetevent", "label": "BoardResetEvent", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L49"}, {"id": "observer_fiftymoveruleavailableevent", "label": "FiftyMoveRuleAvailableEvent", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L54"}, {"id": "observer_drawclaimedevent", "label": "DrawClaimedEvent", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L59"}, {"id": "observer_moveundoneevent", "label": "MoveUndoneEvent", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L64"}, {"id": "observer_moveredoneevent", "label": "MoveRedoneEvent", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L70"}, {"id": "observer_pgnloadedevent", "label": "PgnLoadedEvent", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L79"}, {"id": "observer_subscribe", "label": "subscribe()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L92"}, {"id": "observer_unsubscribe", "label": "unsubscribe()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L97"}, {"id": "observer_notifyobservers", "label": "notifyObservers()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L102"}, {"id": "observer_observercount", "label": "observerCount()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L107"}], "edges": [{"source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", "target": "observer_moveexecutedevent", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L12", "weight": 1.0}, {"source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", "target": "observer_checkdetectedevent", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L20", "weight": 1.0}, {"source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", "target": "observer_checkmateevent", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L25", "weight": 1.0}, {"source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", "target": "observer_stalemateevent", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L31", "weight": 1.0}, {"source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", "target": "observer_invalidmoveevent", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L36", "weight": 1.0}, {"source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", "target": "observer_promotionrequiredevent", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L42", "weight": 1.0}, {"source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", "target": "observer_boardresetevent", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L49", "weight": 1.0}, {"source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", "target": "observer_fiftymoveruleavailableevent", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L54", "weight": 1.0}, {"source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", "target": "observer_drawclaimedevent", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L59", "weight": 1.0}, {"source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", "target": "observer_moveundoneevent", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L64", "weight": 1.0}, {"source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", "target": "observer_moveredoneevent", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L70", "weight": 1.0}, {"source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", "target": "observer_pgnloadedevent", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L79", "weight": 1.0}, {"source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", "target": "observer_subscribe", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L92", "weight": 1.0}, {"source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", "target": "observer_unsubscribe", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L97", "weight": 1.0}, {"source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", "target": "observer_notifyobservers", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L102", "weight": 1.0}, {"source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", "target": "observer_observercount", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", "source_location": "L107", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/1e53d68033da54e774994a5d1a03ffc98e3318d7ef2a674d113379a5b791380c.json b/graphify-out/cache/1e53d68033da54e774994a5d1a03ffc98e3318d7ef2a674d113379a5b791380c.json new file mode 100644 index 0000000..630dd21 --- /dev/null +++ b/graphify-out/cache/1e53d68033da54e774994a5d1a03ffc98e3318d7ef2a674d113379a5b791380c.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "label": "GameEngineIntegrationTest.scala", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L1"}, {"id": "gameengineintegrationtest_gameengineintegrationtest", "label": "GameEngineIntegrationTest", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L13"}, {"id": "gameengineintegrationtest_gameengineintegrationtest_sq", "label": ".sq()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L15"}, {"id": "gameengineintegrationtest_gameengineintegrationtest_captureevents", "label": ".captureEvents()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L18"}, {"id": "gameengineintegrationtest_importgamecontext", "label": "importGameContext()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L58"}, {"id": "gameengineintegrationtest_candidatemoves", "label": "candidateMoves()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L92"}, {"id": "gameengineintegrationtest_legalmoves", "label": "legalMoves()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L93"}, {"id": "gameengineintegrationtest_alllegalmoves", "label": "allLegalMoves()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L95"}, {"id": "gameengineintegrationtest_ischeck", "label": "isCheck()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L96"}, {"id": "gameengineintegrationtest_ischeckmate", "label": "isCheckmate()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L97"}, {"id": "gameengineintegrationtest_isstalemate", "label": "isStalemate()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L98"}, {"id": "gameengineintegrationtest_isinsufficientmaterial", "label": "isInsufficientMaterial()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L99"}, {"id": "gameengineintegrationtest_isfiftymoverule", "label": "isFiftyMoveRule()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L100"}, {"id": "gameengineintegrationtest_applymove", "label": "applyMove()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L101"}, {"id": "gameengineintegrationtest_ongameevent", "label": "onGameEvent()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L169"}], "edges": [{"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L9", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L10", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L11", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "gameengineintegrationtest_gameengineintegrationtest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L13", "weight": 1.0}, {"source": "gameengineintegrationtest_gameengineintegrationtest", "target": "gameengineintegrationtest_gameengineintegrationtest_sq", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L15", "weight": 1.0}, {"source": "gameengineintegrationtest_gameengineintegrationtest", "target": "gameengineintegrationtest_gameengineintegrationtest_captureevents", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L18", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "gameengineintegrationtest_importgamecontext", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L58", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "gameengineintegrationtest_candidatemoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L92", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "gameengineintegrationtest_legalmoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L93", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "gameengineintegrationtest_alllegalmoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L95", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "gameengineintegrationtest_ischeck", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L96", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "gameengineintegrationtest_ischeckmate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L97", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "gameengineintegrationtest_isstalemate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L98", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "gameengineintegrationtest_isinsufficientmaterial", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L99", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "gameengineintegrationtest_isfiftymoverule", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L100", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "gameengineintegrationtest_applymove", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L101", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "gameengineintegrationtest_importgamecontext", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L105", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "gameengineintegrationtest_candidatemoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L114", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "gameengineintegrationtest_legalmoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L115", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "gameengineintegrationtest_alllegalmoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L116", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "gameengineintegrationtest_ischeck", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L117", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "gameengineintegrationtest_ischeckmate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L118", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "gameengineintegrationtest_isstalemate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L119", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "gameengineintegrationtest_isinsufficientmaterial", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L120", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "gameengineintegrationtest_isfiftymoverule", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L121", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "gameengineintegrationtest_applymove", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L122", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "gameengineintegrationtest_importgamecontext", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L129", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", "target": "gameengineintegrationtest_ongameevent", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L169", "weight": 1.0}, {"source": "gameengineintegrationtest_candidatemoves", "target": "gameengineintegrationtest_legalmoves", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L92", "weight": 1.0}, {"source": "gameengineintegrationtest_legalmoves", "target": "gameengineintegrationtest_gameengineintegrationtest_sq", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", "source_location": "L94", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/1e630355e481158a6565c0706d8d1a54098dcf0833d643bebc735ac96d5f1ef6.json b/graphify-out/cache/1e630355e481158a6565c0706d8d1a54098dcf0833d643bebc735ac96d5f1ef6.json new file mode 100644 index 0000000..d338753 --- /dev/null +++ b/graphify-out/cache/1e630355e481158a6565c0706d8d1a54098dcf0833d643bebc735ac96d5f1ef6.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_api_src_main_scala_de_nowchess_api_board_castlingrights_scala", "label": "CastlingRights.scala", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala", "source_location": "L1"}, {"id": "castlingrights_castlingrights", "label": "CastlingRights", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala", "source_location": "L15"}, {"id": "castlingrights_castlingrights_hasanyrights", "label": ".hasAnyRights()", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala", "source_location": "L23"}, {"id": "castlingrights_castlingrights_hasrights", "label": ".hasRights()", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala", "source_location": "L28"}, {"id": "castlingrights_castlingrights_revokecolor", "label": ".revokeColor()", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala", "source_location": "L34"}, {"id": "castlingrights_castlingrights_revokekingside", "label": ".revokeKingSide()", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala", "source_location": "L40"}, {"id": "castlingrights_castlingrights_revokequeenside", "label": ".revokeQueenSide()", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala", "source_location": "L46"}], "edges": [{"source": "modules_api_src_main_scala_de_nowchess_api_board_castlingrights_scala", "target": "castlingrights_castlingrights", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala", "source_location": "L15", "weight": 1.0}, {"source": "castlingrights_castlingrights", "target": "castlingrights_castlingrights_hasanyrights", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala", "source_location": "L23", "weight": 1.0}, {"source": "castlingrights_castlingrights", "target": "castlingrights_castlingrights_hasrights", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala", "source_location": "L28", "weight": 1.0}, {"source": "castlingrights_castlingrights", "target": "castlingrights_castlingrights_revokecolor", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala", "source_location": "L34", "weight": 1.0}, {"source": "castlingrights_castlingrights", "target": "castlingrights_castlingrights_revokekingside", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala", "source_location": "L40", "weight": 1.0}, {"source": "castlingrights_castlingrights", "target": "castlingrights_castlingrights_revokequeenside", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala", "source_location": "L46", "weight": 1.0}, {"source": "modules_api_src_main_scala_de_nowchess_api_board_castlingrights_scala", "target": "castlingrights_castlingrights", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala", "source_location": "L50", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/21324ed6dc2e9304b676f7855216959d11590f6354f2d865a1e3cdd004c381dd.json b/graphify-out/cache/21324ed6dc2e9304b676f7855216959d11590f6354f2d865a1e3cdd004c381dd.json new file mode 100644 index 0000000..5e09596 --- /dev/null +++ b/graphify-out/cache/21324ed6dc2e9304b676f7855216959d11590f6354f2d865a1e3cdd004c381dd.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_core_src_test_scala_de_nowchess_chess_controller_parsertest_scala", "label": "ParserTest.scala", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/controller/ParserTest.scala", "source_location": "L1"}, {"id": "parsertest_parsertest", "label": "ParserTest", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/controller/ParserTest.scala", "source_location": "L7"}], "edges": [{"source": "modules_core_src_test_scala_de_nowchess_chess_controller_parsertest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/controller/ParserTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_controller_parsertest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/controller/ParserTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_controller_parsertest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/controller/ParserTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_controller_parsertest_scala", "target": "parsertest_parsertest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/controller/ParserTest.scala", "source_location": "L7", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/21a19d6eed89123298ca6383d575762bbfab934cf7bfdd46076e892e75ec98b1.json b/graphify-out/cache/21a19d6eed89123298ca6383d575762bbfab934cf7bfdd46076e892e75ec98b1.json new file mode 100644 index 0000000..876344e --- /dev/null +++ b/graphify-out/cache/21a19d6eed89123298ca6383d575762bbfab934cf7bfdd46076e892e75ec98b1.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_python_src_train_py", "label": "train.py", "file_type": "code", "source_file": "modules/bot/python/src/train.py", "source_location": "L1"}, {"id": "train_nnuedataset", "label": "NNUEDataset", "file_type": "code", "source_file": "modules/bot/python/src/train.py", "source_location": "L17"}, {"id": "dataset", "label": "Dataset", "file_type": "code", "source_file": "", "source_location": ""}, {"id": "train_nnuedataset_init", "label": ".__init__()", "file_type": "code", "source_file": "modules/bot/python/src/train.py", "source_location": "L20"}, {"id": "train_nnuedataset_len", "label": ".__len__()", "file_type": "code", "source_file": "modules/bot/python/src/train.py", "source_location": "L48"}, {"id": "train_nnuedataset_getitem", "label": ".__getitem__()", "file_type": "code", "source_file": "modules/bot/python/src/train.py", "source_location": "L51"}, {"id": "train_fen_to_features", "label": "fen_to_features()", "file_type": "code", "source_file": "modules/bot/python/src/train.py", "source_location": "L64"}, {"id": "train_nnue", "label": "NNUE", "file_type": "code", "source_file": "modules/bot/python/src/train.py", "source_location": "L89"}, {"id": "train_nnue_init", "label": ".__init__()", "file_type": "code", "source_file": "modules/bot/python/src/train.py", "source_location": "L92"}, {"id": "train_nnue_forward", "label": ".forward()", "file_type": "code", "source_file": "modules/bot/python/src/train.py", "source_location": "L112"}, {"id": "train_find_next_version", "label": "find_next_version()", "file_type": "code", "source_file": "modules/bot/python/src/train.py", "source_location": "L119"}, {"id": "train_save_metadata", "label": "save_metadata()", "file_type": "code", "source_file": "modules/bot/python/src/train.py", "source_location": "L141"}, {"id": "train_setup_training", "label": "_setup_training()", "file_type": "code", "source_file": "modules/bot/python/src/train.py", "source_location": "L155"}, {"id": "train_run_training_season", "label": "_run_training_season()", "file_type": "code", "source_file": "modules/bot/python/src/train.py", "source_location": "L218"}, {"id": "train_save_versioned_model", "label": "_save_versioned_model()", "file_type": "code", "source_file": "modules/bot/python/src/train.py", "source_location": "L329"}, {"id": "train_train_nnue", "label": "train_nnue()", "file_type": "code", "source_file": "modules/bot/python/src/train.py", "source_location": "L370"}, {"id": "train_burst_train", "label": "burst_train()", "file_type": "code", "source_file": "modules/bot/python/src/train.py", "source_location": "L448"}, {"id": "train_rationale_18", "label": "Dataset of chess positions with evaluations.", "file_type": "rationale", "source_file": "modules/bot/python/src/train.py", "source_location": "L18"}, {"id": "train_rationale_65", "label": "Convert FEN to 768-dimensional binary feature vector.", "file_type": "rationale", "source_file": "modules/bot/python/src/train.py", "source_location": "L65"}, {"id": "train_rationale_90", "label": "NNUE neural network architecture: 768\u21921536\u21921024\u2192512\u2192256\u21921 with dropout regulariz", "file_type": "rationale", "source_file": "modules/bot/python/src/train.py", "source_location": "L90"}, {"id": "train_rationale_120", "label": "Find the next version number for model versioning. Looks for nnue_weights_v", "file_type": "rationale", "source_file": "modules/bot/python/src/train.py", "source_location": "L120"}, {"id": "train_rationale_142", "label": "Save training metadata alongside the weights file. Args: weights_fi", "file_type": "rationale", "source_file": "modules/bot/python/src/train.py", "source_location": "L142"}, {"id": "train_rationale_156", "label": "Set up device, dataset, and data loaders. Returns: (device, dataset", "file_type": "rationale", "source_file": "modules/bot/python/src/train.py", "source_location": "L156"}, {"id": "train_rationale_225", "label": "Run one training season until epoch limit, early stopping, or deadline. Arg", "file_type": "rationale", "source_file": "modules/bot/python/src/train.py", "source_location": "L225"}, {"id": "train_rationale_332", "label": "Save the best model with optional versioning and metadata.", "file_type": "rationale", "source_file": "modules/bot/python/src/train.py", "source_location": "L332"}, {"id": "train_rationale_371", "label": "Train the NNUE model with GPU optimizations and automatic mixed precision.", "file_type": "rationale", "source_file": "modules/bot/python/src/train.py", "source_location": "L371"}, {"id": "train_rationale_453", "label": "Train in burst mode: repeatedly restart from the best checkpoint until the time", "file_type": "rationale", "source_file": "modules/bot/python/src/train.py", "source_location": "L453"}], "edges": [{"source": "modules_bot_python_src_train_py", "target": "json", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L4", "weight": 1.0}, {"source": "modules_bot_python_src_train_py", "target": "torch", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L5", "weight": 1.0}, {"source": "modules_bot_python_src_train_py", "target": "torch_nn", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L6", "weight": 1.0}, {"source": "modules_bot_python_src_train_py", "target": "torch_optim", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L7", "weight": 1.0}, {"source": "modules_bot_python_src_train_py", "target": "torch_utils_data", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L8", "weight": 1.0}, {"source": "modules_bot_python_src_train_py", "target": "sys", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L9", "weight": 1.0}, {"source": "modules_bot_python_src_train_py", "target": "pathlib", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L10", "weight": 1.0}, {"source": "modules_bot_python_src_train_py", "target": "tqdm", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L11", "weight": 1.0}, {"source": "modules_bot_python_src_train_py", "target": "chess", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L12", "weight": 1.0}, {"source": "modules_bot_python_src_train_py", "target": "datetime", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L13", "weight": 1.0}, {"source": "modules_bot_python_src_train_py", "target": "re", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L14", "weight": 1.0}, {"source": "modules_bot_python_src_train_py", "target": "numpy", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L15", "weight": 1.0}, {"source": "modules_bot_python_src_train_py", "target": "train_nnuedataset", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L17", "weight": 1.0}, {"source": "train_nnuedataset", "target": "dataset", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L17", "weight": 1.0}, {"source": "train_nnuedataset", "target": "train_nnuedataset_init", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L20", "weight": 1.0}, {"source": "train_nnuedataset", "target": "train_nnuedataset_len", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L48", "weight": 1.0}, {"source": "train_nnuedataset", "target": "train_nnuedataset_getitem", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L51", "weight": 1.0}, {"source": "modules_bot_python_src_train_py", "target": "train_fen_to_features", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L64", "weight": 1.0}, {"source": "modules_bot_python_src_train_py", "target": "train_nnue", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L89", "weight": 1.0}, {"source": "train_nnue", "target": "train_nnue_init", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L92", "weight": 1.0}, {"source": "train_nnue", "target": "train_nnue_forward", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L112", "weight": 1.0}, {"source": "modules_bot_python_src_train_py", "target": "train_find_next_version", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L119", "weight": 1.0}, {"source": "modules_bot_python_src_train_py", "target": "train_save_metadata", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L141", "weight": 1.0}, {"source": "modules_bot_python_src_train_py", "target": "train_setup_training", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L155", "weight": 1.0}, {"source": "modules_bot_python_src_train_py", "target": "train_run_training_season", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L218", "weight": 1.0}, {"source": "modules_bot_python_src_train_py", "target": "train_save_versioned_model", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L329", "weight": 1.0}, {"source": "modules_bot_python_src_train_py", "target": "train_train_nnue", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L370", "weight": 1.0}, {"source": "modules_bot_python_src_train_py", "target": "train_burst_train", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L448", "weight": 1.0}, {"source": "modules_bot_python_src_train_py", "target": "argparse", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L571", "weight": 1.0}, {"source": "train_nnuedataset_getitem", "target": "train_fen_to_features", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L54", "weight": 1.0}, {"source": "train_setup_training", "target": "train_nnuedataset", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L172", "weight": 1.0}, {"source": "train_save_versioned_model", "target": "train_find_next_version", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L338", "weight": 1.0}, {"source": "train_save_versioned_model", "target": "train_save_metadata", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L364", "weight": 1.0}, {"source": "train_train_nnue", "target": "train_setup_training", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L387", "weight": 1.0}, {"source": "train_train_nnue", "target": "train_nnue", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L389", "weight": 1.0}, {"source": "train_train_nnue", "target": "train_run_training_season", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L427", "weight": 1.0}, {"source": "train_train_nnue", "target": "train_save_versioned_model", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L440", "weight": 1.0}, {"source": "train_burst_train", "target": "train_setup_training", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L476", "weight": 1.0}, {"source": "train_burst_train", "target": "train_nnue", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L478", "weight": 1.0}, {"source": "train_burst_train", "target": "train_run_training_season", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L522", "weight": 1.0}, {"source": "train_burst_train", "target": "train_save_versioned_model", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L554", "weight": 1.0}, {"source": "train_rationale_18", "target": "train_nnuedataset", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L18", "weight": 1.0}, {"source": "train_rationale_65", "target": "train_fen_to_features", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L65", "weight": 1.0}, {"source": "train_rationale_90", "target": "train_nnue", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L90", "weight": 1.0}, {"source": "train_rationale_120", "target": "train_find_next_version", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L120", "weight": 1.0}, {"source": "train_rationale_142", "target": "train_save_metadata", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L142", "weight": 1.0}, {"source": "train_rationale_156", "target": "train_setup_training", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L156", "weight": 1.0}, {"source": "train_rationale_225", "target": "train_run_training_season", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L225", "weight": 1.0}, {"source": "train_rationale_332", "target": "train_save_versioned_model", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L332", "weight": 1.0}, {"source": "train_rationale_371", "target": "train_train_nnue", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L371", "weight": 1.0}, {"source": "train_rationale_453", "target": "train_burst_train", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/train.py", "source_location": "L453", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/22773e87889ae6e79b51bf6a8e3b4d28b07caa9d237c8591fc7bbd9681d3f6e7.json b/graphify-out/cache/22773e87889ae6e79b51bf6a8e3b4d28b07caa9d237c8591fc7bbd9681d3f6e7.json new file mode 100644 index 0000000..44560c8 --- /dev/null +++ b/graphify-out/cache/22773e87889ae6e79b51bf6a8e3b4d28b07caa9d237c8591fc7bbd9681d3f6e7.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_io_src_test_scala_de_nowchess_io_json_jsonmodelextratestsuite_scala", "label": "JsonModelExtraTestSuite.scala", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonModelExtraTestSuite.scala", "source_location": "L1"}, {"id": "jsonmodelextratestsuite_jsonmodelextratestsuite", "label": "JsonModelExtraTestSuite", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonModelExtraTestSuite.scala", "source_location": "L6"}], "edges": [{"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonmodelextratestsuite_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonModelExtraTestSuite.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonmodelextratestsuite_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonModelExtraTestSuite.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonmodelextratestsuite_scala", "target": "jsonmodelextratestsuite_jsonmodelextratestsuite", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonModelExtraTestSuite.scala", "source_location": "L6", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/25292ceb3dde3cc55642391c5840ddec88ad718bab4508de3094f513efd66002.json b/graphify-out/cache/25292ceb3dde3cc55642391c5840ddec88ad718bab4508de3094f513efd66002.json new file mode 100644 index 0000000..ae6ac4a --- /dev/null +++ b/graphify-out/cache/25292ceb3dde3cc55642391c5840ddec88ad718bab4508de3094f513efd66002.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_rule_src_test_scala_de_nowchess_rule_defaultrulestest_scala", "label": "DefaultRulesTest.scala", "file_type": "code", "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesTest.scala", "source_location": "L1"}, {"id": "defaultrulestest_defaultrulestest", "label": "DefaultRulesTest", "file_type": "code", "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesTest.scala", "source_location": "L11"}], "edges": [{"source": "modules_rule_src_test_scala_de_nowchess_rule_defaultrulestest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_rule_src_test_scala_de_nowchess_rule_defaultrulestest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_rule_src_test_scala_de_nowchess_rule_defaultrulestest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_rule_src_test_scala_de_nowchess_rule_defaultrulestest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesTest.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_rule_src_test_scala_de_nowchess_rule_defaultrulestest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesTest.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_rule_src_test_scala_de_nowchess_rule_defaultrulestest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesTest.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_rule_src_test_scala_de_nowchess_rule_defaultrulestest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesTest.scala", "source_location": "L9", "weight": 1.0}, {"source": "modules_rule_src_test_scala_de_nowchess_rule_defaultrulestest_scala", "target": "defaultrulestest_defaultrulestest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesTest.scala", "source_location": "L11", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/259be4a6446172a467a68c567f2d0cf7a99c31d83f011e0e5a659b6a7b9b730d.json b/graphify-out/cache/259be4a6446172a467a68c567f2d0cf7a99c31d83f011e0e5a659b6a7b9b730d.json new file mode 100644 index 0000000..b9d3fcb --- /dev/null +++ b/graphify-out/cache/259be4a6446172a467a68c567f2d0cf7a99c31d83f011e0e5a659b6a7b9b730d.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_api_src_test_scala_de_nowchess_api_board_colortest_scala", "label": "ColorTest.scala", "file_type": "code", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/ColorTest.scala", "source_location": "L1"}, {"id": "colortest_colortest", "label": "ColorTest", "file_type": "code", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/ColorTest.scala", "source_location": "L6"}], "edges": [{"source": "modules_api_src_test_scala_de_nowchess_api_board_colortest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/ColorTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_api_src_test_scala_de_nowchess_api_board_colortest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/ColorTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_api_src_test_scala_de_nowchess_api_board_colortest_scala", "target": "colortest_colortest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/ColorTest.scala", "source_location": "L6", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/2861204d14166de66e2e6b34c76853ea35e953176bf04fd9e709a24876c53e26.json b/graphify-out/cache/2861204d14166de66e2e6b34c76853ea35e953176bf04fd9e709a24876c53e26.json new file mode 100644 index 0000000..6d13da1 --- /dev/null +++ b/graphify-out/cache/2861204d14166de66e2e6b34c76853ea35e953176bf04fd9e709a24876c53e26.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_io_src_test_scala_de_nowchess_io_fen_fenexportertest_scala", "label": "FenExporterTest.scala", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenExporterTest.scala", "source_location": "L1"}, {"id": "fenexportertest_fenexportertest", "label": "FenExporterTest", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenExporterTest.scala", "source_location": "L9"}, {"id": "fenexportertest_fenexportertest_context", "label": ".context()", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenExporterTest.scala", "source_location": "L11"}], "edges": [{"source": "modules_io_src_test_scala_de_nowchess_io_fen_fenexportertest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenExporterTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_fen_fenexportertest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenExporterTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_fen_fenexportertest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenExporterTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_fen_fenexportertest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenExporterTest.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_fen_fenexportertest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenExporterTest.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_fen_fenexportertest_scala", "target": "fenexportertest_fenexportertest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenExporterTest.scala", "source_location": "L9", "weight": 1.0}, {"source": "fenexportertest_fenexportertest", "target": "fenexportertest_fenexportertest_context", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenExporterTest.scala", "source_location": "L11", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/2993173eb1c13d315ea23f5a00795b1f0532fdf78493eade26d71b7e5714e8b7.json b/graphify-out/cache/2993173eb1c13d315ea23f5a00795b1f0532fdf78493eade26d71b7e5714e8b7.json new file mode 100644 index 0000000..d45e3fd --- /dev/null +++ b/graphify-out/cache/2993173eb1c13d315ea23f5a00795b1f0532fdf78493eade26d71b7e5714e8b7.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_io_src_main_scala_de_nowchess_io_fen_fenparsercombinators_scala", "label": "FenParserCombinators.scala", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L1"}, {"id": "fenparsercombinators_fenparsercombinators", "label": "FenParserCombinators", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L9"}, {"id": "fenparsercombinators_fenparsercombinators_piecechar", "label": ".pieceChar()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L15"}, {"id": "fenparsercombinators_fenparsercombinators_emptycount", "label": ".emptyCount()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L22"}, {"id": "fenparsercombinators_fenparsercombinators_ranktoken", "label": ".rankToken()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L27"}, {"id": "fenparsercombinators_fenparsercombinators_ranktokens", "label": ".rankTokens()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L30"}, {"id": "fenparsercombinators_fenparsercombinators_rankparser", "label": ".rankParser()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L35"}, {"id": "fenparsercombinators_fenparsercombinators_ranksep", "label": ".rankSep()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L44"}, {"id": "fenparsercombinators_fenparsercombinators_boardparser", "label": ".boardParser()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L47"}, {"id": "fenparsercombinators_fenparsercombinators_colorparser", "label": ".colorParser()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L61"}, {"id": "fenparsercombinators_fenparsercombinators_castlingparser", "label": ".castlingParser()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L69"}, {"id": "fenparsercombinators_fenparsercombinators_enpassantparser", "label": ".enPassantParser()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L82"}, {"id": "fenparsercombinators_fenparsercombinators_clockparser", "label": ".clockParser()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L88"}, {"id": "fenparsercombinators_fenparsercombinators_fenparser", "label": ".fenParser()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L93"}, {"id": "fenparsercombinators_fenparsercombinators_parsefen", "label": ".parseFen()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L109"}, {"id": "fenparsercombinators_fenparsercombinators_parseboard", "label": ".parseBoard()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L114"}, {"id": "fenparsercombinators_fenparsercombinators_importgamecontext", "label": ".importGameContext()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L119"}], "edges": [{"source": "modules_io_src_main_scala_de_nowchess_io_fen_fenparsercombinators_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_fen_fenparsercombinators_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_fen_fenparsercombinators_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_fen_fenparsercombinators_scala", "target": "scala", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_fen_fenparsercombinators_scala", "target": "fenparsersupport", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_fen_fenparsercombinators_scala", "target": "fenparsercombinators_fenparsercombinators", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L9", "weight": 1.0}, {"source": "fenparsercombinators_fenparsercombinators", "target": "fenparsercombinators_fenparsercombinators_piecechar", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L15", "weight": 1.0}, {"source": "fenparsercombinators_fenparsercombinators", "target": "fenparsercombinators_fenparsercombinators_emptycount", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L22", "weight": 1.0}, {"source": "fenparsercombinators_fenparsercombinators", "target": "fenparsercombinators_fenparsercombinators_ranktoken", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L27", "weight": 1.0}, {"source": "fenparsercombinators_fenparsercombinators", "target": "fenparsercombinators_fenparsercombinators_ranktokens", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L30", "weight": 1.0}, {"source": "fenparsercombinators_fenparsercombinators", "target": "fenparsercombinators_fenparsercombinators_rankparser", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L35", "weight": 1.0}, {"source": "fenparsercombinators_fenparsercombinators", "target": "fenparsercombinators_fenparsercombinators_ranksep", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L44", "weight": 1.0}, {"source": "fenparsercombinators_fenparsercombinators", "target": "fenparsercombinators_fenparsercombinators_boardparser", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L47", "weight": 1.0}, {"source": "fenparsercombinators_fenparsercombinators", "target": "fenparsercombinators_fenparsercombinators_colorparser", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L61", "weight": 1.0}, {"source": "fenparsercombinators_fenparsercombinators", "target": "fenparsercombinators_fenparsercombinators_castlingparser", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L69", "weight": 1.0}, {"source": "fenparsercombinators_fenparsercombinators", "target": "fenparsercombinators_fenparsercombinators_enpassantparser", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L82", "weight": 1.0}, {"source": "fenparsercombinators_fenparsercombinators", "target": "fenparsercombinators_fenparsercombinators_clockparser", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L88", "weight": 1.0}, {"source": "fenparsercombinators_fenparsercombinators", "target": "fenparsercombinators_fenparsercombinators_fenparser", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L93", "weight": 1.0}, {"source": "fenparsercombinators_fenparsercombinators", "target": "fenparsercombinators_fenparsercombinators_parsefen", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L109", "weight": 1.0}, {"source": "fenparsercombinators_fenparsercombinators", "target": "fenparsercombinators_fenparsercombinators_parseboard", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L114", "weight": 1.0}, {"source": "fenparsercombinators_fenparsercombinators", "target": "fenparsercombinators_fenparsercombinators_importgamecontext", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L119", "weight": 1.0}, {"source": "fenparsercombinators_fenparsercombinators_boardparser", "target": "fenparsercombinators_fenparsercombinators_rankparser", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L48", "weight": 1.0}, {"source": "fenparsercombinators_fenparsercombinators_importgamecontext", "target": "fenparsercombinators_fenparsercombinators_parsefen", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", "source_location": "L120", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/2aec4ec9ddb5097509ded8ea3c68900cc343932e4b9f92a0d61b4e71d48b14b7.json b/graphify-out/cache/2aec4ec9ddb5097509ded8ea3c68900cc343932e4b9f92a0d61b4e71d48b14b7.json new file mode 100644 index 0000000..9173b30 --- /dev/null +++ b/graphify-out/cache/2aec4ec9ddb5097509ded8ea3c68900cc343932e4b9f92a0d61b4e71d48b14b7.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_src_main_scala_de_nowchess_bot_bots_classic_evaluationclassic_scala", "label": "EvaluationClassic.scala", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L1"}, {"id": "evaluationclassic_evaluationclassic", "label": "EvaluationClassic", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L7"}, {"id": "evaluationclassic_evaluationclassic_evaluate", "label": ".evaluate()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L125"}, {"id": "evaluationclassic_evaluationclassic_gamephase", "label": ".gamePhase()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L136"}, {"id": "evaluationclassic_evaluationclassic_isendgame", "label": ".isEndgame()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L142"}, {"id": "evaluationclassic_evaluationclassic_taper", "label": ".taper()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L145"}, {"id": "evaluationclassic_evaluationclassic_materialandpositional", "label": ".materialAndPositional()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L148"}, {"id": "evaluationclassic_evaluationclassic_squarebonus", "label": ".squareBonus()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L158"}, {"id": "evaluationclassic_evaluationclassic_pawnstructure", "label": ".pawnStructure()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L171"}, {"id": "evaluationclassic_evaluationclassic_structurescore", "label": ".structureScore()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L182"}, {"id": "evaluationclassic_evaluationclassic_positionalbonuses", "label": ".positionalBonuses()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L190"}, {"id": "evaluationclassic_evaluationclassic_ispassedpawn", "label": ".isPassedPawn()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L203"}, {"id": "evaluationclassic_evaluationclassic_rookopenfilebonus", "label": ".rookOpenFileBonus()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L216"}, {"id": "evaluationclassic_evaluationclassic_kingshieldbonus", "label": ".kingShieldBonus()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L227"}, {"id": "evaluationclassic_evaluationclassic_slidingcount", "label": ".slidingCount()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L242"}, {"id": "evaluationclassic_evaluationclassic_knightcount", "label": ".knightCount()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L261"}, {"id": "evaluationclassic_evaluationclassic_mobilityscore", "label": ".mobilityScore()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L268"}, {"id": "evaluationclassic_evaluationclassic_rookandbishopbonuses", "label": ".rookAndBishopBonuses()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L283"}, {"id": "evaluationclassic_evaluationclassic_endgamebonus", "label": ".endgameBonus()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L309"}, {"id": "evaluationclassic_evaluationclassic_kingcentralizationdistance", "label": ".kingCentralizationDistance()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L325"}, {"id": "evaluationclassic_evaluationclassic_kingedgedistance", "label": ".kingEdgeDistance()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L330"}, {"id": "evaluationclassic_evaluationclassic_materialcount", "label": ".materialCount()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L335"}], "edges": [{"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_classic_evaluationclassic_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_classic_evaluationclassic_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_classic_evaluationclassic_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_classic_evaluationclassic_scala", "target": "evaluationclassic_evaluationclassic", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L7", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic", "target": "evaluationclassic_evaluationclassic_evaluate", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L125", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic", "target": "evaluationclassic_evaluationclassic_gamephase", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L136", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic", "target": "evaluationclassic_evaluationclassic_isendgame", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L142", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic", "target": "evaluationclassic_evaluationclassic_taper", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L145", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic", "target": "evaluationclassic_evaluationclassic_materialandpositional", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L148", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic", "target": "evaluationclassic_evaluationclassic_squarebonus", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L158", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic", "target": "evaluationclassic_evaluationclassic_pawnstructure", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L171", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic", "target": "evaluationclassic_evaluationclassic_structurescore", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L182", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic", "target": "evaluationclassic_evaluationclassic_positionalbonuses", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L190", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic", "target": "evaluationclassic_evaluationclassic_ispassedpawn", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L203", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic", "target": "evaluationclassic_evaluationclassic_rookopenfilebonus", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L216", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic", "target": "evaluationclassic_evaluationclassic_kingshieldbonus", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L227", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic", "target": "evaluationclassic_evaluationclassic_slidingcount", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L242", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic", "target": "evaluationclassic_evaluationclassic_knightcount", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L261", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic", "target": "evaluationclassic_evaluationclassic_mobilityscore", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L268", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic", "target": "evaluationclassic_evaluationclassic_rookandbishopbonuses", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L283", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic", "target": "evaluationclassic_evaluationclassic_endgamebonus", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L309", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic", "target": "evaluationclassic_evaluationclassic_kingcentralizationdistance", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L325", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic", "target": "evaluationclassic_evaluationclassic_kingedgedistance", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L330", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic", "target": "evaluationclassic_evaluationclassic_materialcount", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L335", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic_evaluate", "target": "evaluationclassic_evaluationclassic_gamephase", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L126", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic_evaluate", "target": "evaluationclassic_evaluationclassic_isendgame", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L127", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic_evaluate", "target": "evaluationclassic_evaluationclassic_materialandpositional", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L128", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic_evaluate", "target": "evaluationclassic_evaluationclassic_pawnstructure", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L129", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic_evaluate", "target": "evaluationclassic_evaluationclassic_mobilityscore", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L130", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic_evaluate", "target": "evaluationclassic_evaluationclassic_rookandbishopbonuses", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L131", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic_evaluate", "target": "evaluationclassic_evaluationclassic_positionalbonuses", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L132", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic_evaluate", "target": "evaluationclassic_evaluationclassic_endgamebonus", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L133", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic_materialandpositional", "target": "evaluationclassic_evaluationclassic_squarebonus", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L150", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic_materialandpositional", "target": "evaluationclassic_evaluationclassic_taper", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L156", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic_pawnstructure", "target": "evaluationclassic_evaluationclassic_structurescore", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L178", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic_pawnstructure", "target": "evaluationclassic_evaluationclassic_taper", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L180", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic_positionalbonuses", "target": "evaluationclassic_evaluationclassic_ispassedpawn", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L194", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic_positionalbonuses", "target": "evaluationclassic_evaluationclassic_rookopenfilebonus", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L197", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic_positionalbonuses", "target": "evaluationclassic_evaluationclassic_kingshieldbonus", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L198", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic_mobilityscore", "target": "evaluationclassic_evaluationclassic_knightcount", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L271", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic_mobilityscore", "target": "evaluationclassic_evaluationclassic_slidingcount", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L272", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic_mobilityscore", "target": "evaluationclassic_evaluationclassic_taper", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L281", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic_rookandbishopbonuses", "target": "evaluationclassic_evaluationclassic_taper", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L307", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic_endgamebonus", "target": "evaluationclassic_evaluationclassic_kingcentralizationdistance", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L314", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic_endgamebonus", "target": "evaluationclassic_evaluationclassic_materialcount", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L317", "weight": 1.0}, {"source": "evaluationclassic_evaluationclassic_endgamebonus", "target": "evaluationclassic_evaluationclassic_kingedgedistance", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", "source_location": "L320", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/2b69334e9210bcbf06af311e4477bea548a704daafa82c07e75fcfd8a380e13d.json b/graphify-out/cache/2b69334e9210bcbf06af311e4477bea548a704daafa82c07e75fcfd8a380e13d.json new file mode 100644 index 0000000..8653674 --- /dev/null +++ b/graphify-out/cache/2b69334e9210bcbf06af311e4477bea548a704daafa82c07e75fcfd8a380e13d.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_core_src_test_scala_de_nowchess_chess_command_commandtest_scala", "label": "CommandTest.scala", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandTest.scala", "source_location": "L1"}, {"id": "commandtest_commandtest", "label": "CommandTest", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandTest.scala", "source_location": "L7"}], "edges": [{"source": "modules_core_src_test_scala_de_nowchess_chess_command_commandtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_command_commandtest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_command_commandtest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_command_commandtest_scala", "target": "commandtest_commandtest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandTest.scala", "source_location": "L7", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/2e3410c3bc726b504080c9d3676a94eecde9e3101316c261d70f96c9a295bb50.json b/graphify-out/cache/2e3410c3bc726b504080c9d3676a94eecde9e3101316c261d70f96c9a295bb50.json new file mode 100644 index 0000000..59b4a4d --- /dev/null +++ b/graphify-out/cache/2e3410c3bc726b504080c9d3676a94eecde9e3101316c261d70f96c9a295bb50.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_ui_build_gradle_kts", "label": "build.gradle.kts", "file_type": "code", "source_file": "modules/ui/build.gradle.kts", "source_location": "L1"}], "edges": []} \ No newline at end of file diff --git a/graphify-out/cache/33468e5cdf1b28d16b3617d56393c5bd87d5fcd021f50565a7a98c879979a491.json b/graphify-out/cache/33468e5cdf1b28d16b3617d56393c5bd87d5fcd021f50565a7a98c879979a491.json new file mode 100644 index 0000000..edd7658 --- /dev/null +++ b/graphify-out/cache/33468e5cdf1b28d16b3617d56393c5bd87d5fcd021f50565a7a98c879979a491.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_src_main_scala_de_nowchess_bot_bots_hybridbot_scala", "label": "HybridBot.scala", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala", "source_location": "L1"}, {"id": "hybridbot_hybridbot", "label": "HybridBot", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala", "source_location": "L13"}, {"id": "hybridbot_hybridbot_nextmove", "label": ".nextMove()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala", "source_location": "L23"}, {"id": "hybridbot_hybridbot_searchwithveto", "label": ".searchWithVeto()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala", "source_location": "L26"}], "edges": [{"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_hybridbot_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_hybridbot_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_hybridbot_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_hybridbot_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_hybridbot_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_hybridbot_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_hybridbot_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala", "source_location": "L9", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_hybridbot_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala", "source_location": "L10", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_hybridbot_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala", "source_location": "L11", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_hybridbot_scala", "target": "hybridbot_hybridbot", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala", "source_location": "L13", "weight": 1.0}, {"source": "hybridbot_hybridbot", "target": "hybridbot_hybridbot_nextmove", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala", "source_location": "L23", "weight": 1.0}, {"source": "hybridbot_hybridbot", "target": "hybridbot_hybridbot_searchwithveto", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala", "source_location": "L26", "weight": 1.0}, {"source": "hybridbot_hybridbot_nextmove", "target": "hybridbot_hybridbot_searchwithveto", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala", "source_location": "L24", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/390ff4af6a7420e7b519e91f6296b815902f4b47873562a6e4245417b71cf179.json b/graphify-out/cache/390ff4af6a7420e7b519e91f6296b815902f4b47873562a6e4245417b71cf179.json new file mode 100644 index 0000000..fa77cb5 --- /dev/null +++ b/graphify-out/cache/390ff4af6a7420e7b519e91f6296b815902f4b47873562a6e4245417b71cf179.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_ui_src_test_scala_de_nowchess_ui_utils_rendererandunicodetest_scala", "label": "RendererAndUnicodeTest.scala", "file_type": "code", "source_file": "modules/ui/src/test/scala/de/nowchess/ui/utils/RendererAndUnicodeTest.scala", "source_location": "L1"}, {"id": "rendererandunicodetest_rendererandunicodetest", "label": "RendererAndUnicodeTest", "file_type": "code", "source_file": "modules/ui/src/test/scala/de/nowchess/ui/utils/RendererAndUnicodeTest.scala", "source_location": "L7"}], "edges": [{"source": "modules_ui_src_test_scala_de_nowchess_ui_utils_rendererandunicodetest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/test/scala/de/nowchess/ui/utils/RendererAndUnicodeTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_ui_src_test_scala_de_nowchess_ui_utils_rendererandunicodetest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/test/scala/de/nowchess/ui/utils/RendererAndUnicodeTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_ui_src_test_scala_de_nowchess_ui_utils_rendererandunicodetest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/test/scala/de/nowchess/ui/utils/RendererAndUnicodeTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_ui_src_test_scala_de_nowchess_ui_utils_rendererandunicodetest_scala", "target": "rendererandunicodetest_rendererandunicodetest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/ui/src/test/scala/de/nowchess/ui/utils/RendererAndUnicodeTest.scala", "source_location": "L7", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/39200e1658d0946a74e1826ce35260fd06101b34dc01682a9946412e6a7fb126.json b/graphify-out/cache/39200e1658d0946a74e1826ce35260fd06101b34dc01682a9946412e6a7fb126.json new file mode 100644 index 0000000..2732432 --- /dev/null +++ b/graphify-out/cache/39200e1658d0946a74e1826ce35260fd06101b34dc01682a9946412e6a7fb126.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_io_src_test_scala_de_nowchess_io_fen_fenparsercombinatorstest_scala", "label": "FenParserCombinatorsTest.scala", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenParserCombinatorsTest.scala", "source_location": "L1"}, {"id": "fenparsercombinatorstest_fenparsercombinatorstest", "label": "FenParserCombinatorsTest", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenParserCombinatorsTest.scala", "source_location": "L7"}], "edges": [{"source": "modules_io_src_test_scala_de_nowchess_io_fen_fenparsercombinatorstest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenParserCombinatorsTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_fen_fenparsercombinatorstest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenParserCombinatorsTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_fen_fenparsercombinatorstest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenParserCombinatorsTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_fen_fenparsercombinatorstest_scala", "target": "fenparsercombinatorstest_fenparsercombinatorstest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenParserCombinatorsTest.scala", "source_location": "L7", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/396b591b201b2ccfbc064660d96cf2aba6e8d942f0d7e9f152212f7124a5e7dd.json b/graphify-out/cache/396b591b201b2ccfbc064660d96cf2aba6e8d942f0d7e9f152212f7124a5e7dd.json new file mode 100644 index 0000000..ac482be --- /dev/null +++ b/graphify-out/cache/396b591b201b2ccfbc064660d96cf2aba6e8d942f0d7e9f152212f7124a5e7dd.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_io_src_test_scala_de_nowchess_io_json_jsonparsererrorhandlingsuite_scala", "label": "JsonParserErrorHandlingSuite.scala", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserErrorHandlingSuite.scala", "source_location": "L1"}, {"id": "jsonparsererrorhandlingsuite_jsonparsererrorhandlingsuite", "label": "JsonParserErrorHandlingSuite", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserErrorHandlingSuite.scala", "source_location": "L7"}], "edges": [{"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonparsererrorhandlingsuite_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserErrorHandlingSuite.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonparsererrorhandlingsuite_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserErrorHandlingSuite.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonparsererrorhandlingsuite_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserErrorHandlingSuite.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonparsererrorhandlingsuite_scala", "target": "jsonparsererrorhandlingsuite_jsonparsererrorhandlingsuite", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserErrorHandlingSuite.scala", "source_location": "L7", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/3a6b645d5b1e543aee5cd5ab1fe0a1e22467a371b66377fc4379cf6255864e43.json b/graphify-out/cache/3a6b645d5b1e543aee5cd5ab1fe0a1e22467a371b66377fc4379cf6255864e43.json new file mode 100644 index 0000000..4f79814 --- /dev/null +++ b/graphify-out/cache/3a6b645d5b1e543aee5cd5ab1fe0a1e22467a371b66377fc4379cf6255864e43.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_io_src_main_scala_de_nowchess_io_gamecontextimport_scala", "label": "GameContextImport.scala", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/GameContextImport.scala", "source_location": "L1"}], "edges": [{"source": "modules_io_src_main_scala_de_nowchess_io_gamecontextimport_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/GameContextImport.scala", "source_location": "L3", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/3e15f5e60b487c8657ef149bffce94cecbd36a5d3a0030b5b9dedf9ced5c9daf.json b/graphify-out/cache/3e15f5e60b487c8657ef149bffce94cecbd36a5d3a0030b5b9dedf9ced5c9daf.json new file mode 100644 index 0000000..a5d4ac3 --- /dev/null +++ b/graphify-out/cache/3e15f5e60b487c8657ef149bffce94cecbd36a5d3a0030b5b9dedf9ced5c9daf.json @@ -0,0 +1 @@ +{"nodes": [{"id": "build_gradle_kts", "label": "build.gradle.kts", "file_type": "code", "source_file": "build.gradle.kts", "source_location": "L1"}], "edges": []} \ No newline at end of file diff --git a/graphify-out/cache/4124e33c6988a5816434fd44932efc8876a9b2e4f6f266066cdab2a982297855.json b/graphify-out/cache/4124e33c6988a5816434fd44932efc8876a9b2e4f6f266066cdab2a982297855.json new file mode 100644 index 0000000..a19981e --- /dev/null +++ b/graphify-out/cache/4124e33c6988a5816434fd44932efc8876a9b2e4f6f266066cdab2a982297855.json @@ -0,0 +1 @@ +{"nodes": [{"id": "jacoco_reporter_scoverage_coverage_gaps_py", "label": "scoverage_coverage_gaps.py", "file_type": "code", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L1"}, {"id": "scoverage_coverage_gaps_statement", "label": "Statement", "file_type": "code", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L43"}, {"id": "scoverage_coverage_gaps_is_covered", "label": "is_covered()", "file_type": "code", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L51"}, {"id": "scoverage_coverage_gaps_is_uncovered", "label": "is_uncovered()", "file_type": "code", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L55"}, {"id": "scoverage_coverage_gaps_methodgap", "label": "MethodGap", "file_type": "code", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L60"}, {"id": "scoverage_coverage_gaps_short_name", "label": "short_name()", "file_type": "code", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L70"}, {"id": "scoverage_coverage_gaps_stmt_coverage_pct", "label": "stmt_coverage_pct()", "file_type": "code", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L75"}, {"id": "scoverage_coverage_gaps_branch_coverage_pct", "label": "branch_coverage_pct()", "file_type": "code", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L79"}, {"id": "scoverage_coverage_gaps_missed_branches", "label": "missed_branches()", "file_type": "code", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L83"}, {"id": "scoverage_coverage_gaps_has_gaps", "label": "has_gaps()", "file_type": "code", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L87"}, {"id": "scoverage_coverage_gaps_classgap", "label": "ClassGap", "file_type": "code", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L92"}, {"id": "scoverage_coverage_gaps_all_uncovered_lines", "label": "all_uncovered_lines()", "file_type": "code", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L107"}, {"id": "scoverage_coverage_gaps_uncovered_branch_lines", "label": "uncovered_branch_lines()", "file_type": "code", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L117"}, {"id": "scoverage_coverage_gaps_total_statements", "label": "total_statements()", "file_type": "code", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L131"}, {"id": "scoverage_coverage_gaps_covered_statements", "label": "covered_statements()", "file_type": "code", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L135"}, {"id": "scoverage_coverage_gaps_missed_statements", "label": "missed_statements()", "file_type": "code", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L139"}, {"id": "scoverage_coverage_gaps_total_branches", "label": "total_branches()", "file_type": "code", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L143"}, {"id": "scoverage_coverage_gaps_covered_branches", "label": "covered_branches()", "file_type": "code", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L147"}, {"id": "scoverage_coverage_gaps_normalise_source", "label": "_normalise_source()", "file_type": "code", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L171"}, {"id": "scoverage_coverage_gaps_parse_scoverage_xml", "label": "parse_scoverage_xml()", "file_type": "code", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L183"}, {"id": "scoverage_coverage_gaps_compact_ranges", "label": "_compact_ranges()", "file_type": "code", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L275"}, {"id": "scoverage_coverage_gaps_format_agent", "label": "format_agent()", "file_type": "code", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L295"}, {"id": "scoverage_coverage_gaps_format_json", "label": "format_json()", "file_type": "code", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L353"}, {"id": "scoverage_coverage_gaps_format_markdown", "label": "format_markdown()", "file_type": "code", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L405"}, {"id": "scoverage_coverage_gaps_find_scoverage_xml", "label": "_find_scoverage_xml()", "file_type": "code", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L470"}, {"id": "scoverage_coverage_gaps_format_module_gaps", "label": "format_module_gaps()", "file_type": "code", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L479"}, {"id": "scoverage_coverage_gaps_run_scan_modules", "label": "run_scan_modules()", "file_type": "code", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L492"}, {"id": "scoverage_coverage_gaps_main", "label": "main()", "file_type": "code", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L538"}, {"id": "scoverage_coverage_gaps_rationale_71", "label": "Strip the package prefix from the full method path.", "file_type": "rationale", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L71"}, {"id": "scoverage_coverage_gaps_rationale_118", "label": "Lines that are branch points and have at least one uncovered branch statement.", "file_type": "rationale", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L118"}, {"id": "scoverage_coverage_gaps_rationale_276", "label": "[1,2,3,5,7,8,9] \u2192 '1-3, 5, 7-9", "file_type": "rationale", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L276"}, {"id": "scoverage_coverage_gaps_rationale_296", "label": "Compact agent format \u2014 optimised for low token count. Emits only actionable", "file_type": "rationale", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L296"}, {"id": "scoverage_coverage_gaps_rationale_471", "label": "Return the first scoverage.xml found inside *module_dir*, or None.", "file_type": "rationale", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L471"}, {"id": "scoverage_coverage_gaps_rationale_480", "label": "One summary line per module. If coverage is not 100%, append an agent hint.", "file_type": "rationale", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L480"}], "edges": [{"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "xml_etree_elementtree", "relation": "imports", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L27", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "sys", "relation": "imports", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L28", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "argparse", "relation": "imports", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L29", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "json", "relation": "imports", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L30", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "re", "relation": "imports", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L31", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "glob", "relation": "imports", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L32", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "pathlib", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L33", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "dataclasses", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L34", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "typing", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L35", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_statement", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L43", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_is_covered", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L51", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_is_uncovered", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L55", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_methodgap", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L60", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_short_name", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L70", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_stmt_coverage_pct", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L75", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_branch_coverage_pct", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L79", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_missed_branches", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L83", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_has_gaps", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L87", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_classgap", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L92", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_all_uncovered_lines", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L107", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_uncovered_branch_lines", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L117", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_total_statements", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L131", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_covered_statements", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L135", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_missed_statements", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L139", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_total_branches", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L143", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_covered_branches", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L147", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_missed_branches", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L151", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_stmt_coverage_pct", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L155", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_branch_coverage_pct", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L159", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_has_gaps", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L163", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_normalise_source", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L171", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_parse_scoverage_xml", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L183", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_compact_ranges", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L275", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_format_agent", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L295", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_format_json", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L353", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_format_markdown", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L405", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_find_scoverage_xml", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L470", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_format_module_gaps", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L479", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_run_scan_modules", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L492", "weight": 1.0}, {"source": "jacoco_reporter_scoverage_coverage_gaps_py", "target": "scoverage_coverage_gaps_main", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L538", "weight": 1.0}, {"source": "scoverage_coverage_gaps_parse_scoverage_xml", "target": "scoverage_coverage_gaps_classgap", "relation": "calls", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L220", "weight": 1.0}, {"source": "scoverage_coverage_gaps_parse_scoverage_xml", "target": "scoverage_coverage_gaps_normalise_source", "relation": "calls", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L222", "weight": 1.0}, {"source": "scoverage_coverage_gaps_parse_scoverage_xml", "target": "scoverage_coverage_gaps_statement", "relation": "calls", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L237", "weight": 1.0}, {"source": "scoverage_coverage_gaps_parse_scoverage_xml", "target": "scoverage_coverage_gaps_methodgap", "relation": "calls", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L257", "weight": 1.0}, {"source": "scoverage_coverage_gaps_format_agent", "target": "scoverage_coverage_gaps_compact_ranges", "relation": "calls", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L333", "weight": 1.0}, {"source": "scoverage_coverage_gaps_format_markdown", "target": "scoverage_coverage_gaps_compact_ranges", "relation": "calls", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L436", "weight": 1.0}, {"source": "scoverage_coverage_gaps_run_scan_modules", "target": "scoverage_coverage_gaps_find_scoverage_xml", "relation": "calls", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L509", "weight": 1.0}, {"source": "scoverage_coverage_gaps_run_scan_modules", "target": "scoverage_coverage_gaps_parse_scoverage_xml", "relation": "calls", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L514", "weight": 1.0}, {"source": "scoverage_coverage_gaps_run_scan_modules", "target": "scoverage_coverage_gaps_format_module_gaps", "relation": "calls", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L522", "weight": 1.0}, {"source": "scoverage_coverage_gaps_main", "target": "scoverage_coverage_gaps_run_scan_modules", "relation": "calls", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L585", "weight": 1.0}, {"source": "scoverage_coverage_gaps_main", "target": "scoverage_coverage_gaps_parse_scoverage_xml", "relation": "calls", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L595", "weight": 1.0}, {"source": "scoverage_coverage_gaps_main", "target": "scoverage_coverage_gaps_format_agent", "relation": "calls", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L608", "weight": 1.0}, {"source": "scoverage_coverage_gaps_main", "target": "scoverage_coverage_gaps_format_json", "relation": "calls", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L610", "weight": 1.0}, {"source": "scoverage_coverage_gaps_main", "target": "scoverage_coverage_gaps_format_markdown", "relation": "calls", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L612", "weight": 1.0}, {"source": "scoverage_coverage_gaps_rationale_71", "target": "scoverage_coverage_gaps_methodgap_short_name", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L71", "weight": 1.0}, {"source": "scoverage_coverage_gaps_rationale_118", "target": "scoverage_coverage_gaps_classgap_uncovered_branch_lines", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L118", "weight": 1.0}, {"source": "scoverage_coverage_gaps_rationale_276", "target": "scoverage_coverage_gaps_compact_ranges", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L276", "weight": 1.0}, {"source": "scoverage_coverage_gaps_rationale_296", "target": "scoverage_coverage_gaps_format_agent", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L296", "weight": 1.0}, {"source": "scoverage_coverage_gaps_rationale_471", "target": "scoverage_coverage_gaps_find_scoverage_xml", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L471", "weight": 1.0}, {"source": "scoverage_coverage_gaps_rationale_480", "target": "scoverage_coverage_gaps_format_module_gaps", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", "source_location": "L480", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/43412929dd832af6ff2acdbdbc58c5b39fbd40527699cc9c4b0ed33e63dda05a.json b/graphify-out/cache/43412929dd832af6ff2acdbdbc58c5b39fbd40527699cc9c4b0ed33e63dda05a.json new file mode 100644 index 0000000..a1b31a6 --- /dev/null +++ b/graphify-out/cache/43412929dd832af6ff2acdbdbc58c5b39fbd40527699cc9c4b0ed33e63dda05a.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_src_test_scala_de_nowchess_bot_zobristhashtest_scala", "label": "ZobristHashTest.scala", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ZobristHashTest.scala", "source_location": "L1"}, {"id": "zobristhashtest_zobristhashtest", "label": "ZobristHashTest", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ZobristHashTest.scala", "source_location": "L11"}], "edges": [{"source": "modules_bot_src_test_scala_de_nowchess_bot_zobristhashtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ZobristHashTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_zobristhashtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ZobristHashTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_zobristhashtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ZobristHashTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_zobristhashtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ZobristHashTest.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_zobristhashtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ZobristHashTest.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_zobristhashtest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ZobristHashTest.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_zobristhashtest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ZobristHashTest.scala", "source_location": "L9", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_zobristhashtest_scala", "target": "zobristhashtest_zobristhashtest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ZobristHashTest.scala", "source_location": "L11", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/468bc34fd474303ab50aef22a668b7510df7799c41db78b5edd65e21dca65e05.json b/graphify-out/cache/468bc34fd474303ab50aef22a668b7510df7799c41db78b5edd65e21dca65e05.json new file mode 100644 index 0000000..bb3f4d8 --- /dev/null +++ b/graphify-out/cache/468bc34fd474303ab50aef22a668b7510df7799c41db78b5edd65e21dca65e05.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_api_build_gradle_kts", "label": "build.gradle.kts", "file_type": "code", "source_file": "modules/api/build.gradle.kts", "source_location": "L1"}], "edges": []} \ No newline at end of file diff --git a/graphify-out/cache/48879fc701e052ddd476df4ef4ea301e024627b713b2a95c4e3ae748e54df104.json b/graphify-out/cache/48879fc701e052ddd476df4ef4ea301e024627b713b2a95c4e3ae748e54df104.json new file mode 100644 index 0000000..cdac47e --- /dev/null +++ b/graphify-out/cache/48879fc701e052ddd476df4ef4ea301e024627b713b2a95c4e3ae748e54df104.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_io_src_test_scala_de_nowchess_io_gamefileservicesuite_scala", "label": "GameFileServiceSuite.scala", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/GameFileServiceSuite.scala", "source_location": "L1"}, {"id": "gamefileservicesuite_gamefileservicesuite", "label": "GameFileServiceSuite", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/GameFileServiceSuite.scala", "source_location": "L12"}, {"id": "gamefileservicesuite_exportgamecontext", "label": "exportGameContext()", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/GameFileServiceSuite.scala", "source_location": "L124"}], "edges": [{"source": "modules_io_src_test_scala_de_nowchess_io_gamefileservicesuite_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/GameFileServiceSuite.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_gamefileservicesuite_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/GameFileServiceSuite.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_gamefileservicesuite_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/GameFileServiceSuite.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_gamefileservicesuite_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/GameFileServiceSuite.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_gamefileservicesuite_scala", "target": "java", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/GameFileServiceSuite.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_gamefileservicesuite_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/GameFileServiceSuite.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_gamefileservicesuite_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/GameFileServiceSuite.scala", "source_location": "L9", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_gamefileservicesuite_scala", "target": "scala", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/GameFileServiceSuite.scala", "source_location": "L10", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_gamefileservicesuite_scala", "target": "gamefileservicesuite_gamefileservicesuite", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/GameFileServiceSuite.scala", "source_location": "L12", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_gamefileservicesuite_scala", "target": "gamefileservicesuite_exportgamecontext", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/GameFileServiceSuite.scala", "source_location": "L124", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/497c68ab494c1004b17f20f8b04ee407150ead5b3a9ea50dfc910ef89d63b6ee.json b/graphify-out/cache/497c68ab494c1004b17f20f8b04ee407150ead5b3a9ea50dfc910ef89d63b6ee.json new file mode 100644 index 0000000..e4011bb --- /dev/null +++ b/graphify-out/cache/497c68ab494c1004b17f20f8b04ee407150ead5b3a9ea50dfc910ef89d63b6ee.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_python_src_generate_py", "label": "generate.py", "file_type": "code", "source_file": "modules/bot/python/src/generate.py", "source_location": "L1"}, {"id": "generate_worker_generate_games", "label": "_worker_generate_games()", "file_type": "code", "source_file": "modules/bot/python/src/generate.py", "source_location": "L13"}, {"id": "generate_play_random_game_and_collect_positions", "label": "play_random_game_and_collect_positions()", "file_type": "code", "source_file": "modules/bot/python/src/generate.py", "source_location": "L64"}, {"id": "generate_rationale_14", "label": "Generate games for one worker. Returns: list of FENs generated by t", "file_type": "rationale", "source_file": "modules/bot/python/src/generate.py", "source_location": "L14"}, {"id": "generate_rationale_72", "label": "Generate positions using multiprocessing with multiple workers. Args:", "file_type": "rationale", "source_file": "modules/bot/python/src/generate.py", "source_location": "L72"}], "edges": [{"source": "modules_bot_python_src_generate_py", "target": "chess", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/generate.py", "source_location": "L4", "weight": 1.0}, {"source": "modules_bot_python_src_generate_py", "target": "random", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/generate.py", "source_location": "L5", "weight": 1.0}, {"source": "modules_bot_python_src_generate_py", "target": "sys", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/generate.py", "source_location": "L6", "weight": 1.0}, {"source": "modules_bot_python_src_generate_py", "target": "pathlib", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/generate.py", "source_location": "L7", "weight": 1.0}, {"source": "modules_bot_python_src_generate_py", "target": "tqdm", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/generate.py", "source_location": "L8", "weight": 1.0}, {"source": "modules_bot_python_src_generate_py", "target": "multiprocessing", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/generate.py", "source_location": "L9", "weight": 1.0}, {"source": "modules_bot_python_src_generate_py", "target": "datetime", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/generate.py", "source_location": "L10", "weight": 1.0}, {"source": "modules_bot_python_src_generate_py", "target": "time", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/generate.py", "source_location": "L11", "weight": 1.0}, {"source": "modules_bot_python_src_generate_py", "target": "generate_worker_generate_games", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/generate.py", "source_location": "L13", "weight": 1.0}, {"source": "modules_bot_python_src_generate_py", "target": "generate_play_random_game_and_collect_positions", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/generate.py", "source_location": "L64", "weight": 1.0}, {"source": "modules_bot_python_src_generate_py", "target": "argparse", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/generate.py", "source_location": "L144", "weight": 1.0}, {"source": "generate_rationale_14", "target": "generate_worker_generate_games", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/generate.py", "source_location": "L14", "weight": 1.0}, {"source": "generate_rationale_72", "target": "generate_play_random_game_and_collect_positions", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/generate.py", "source_location": "L72", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/4df60ae6d9b6d6db8119f8b50c2be8b3ca435782c6206c603d7829ae6af39215.json b/graphify-out/cache/4df60ae6d9b6d6db8119f8b50c2be8b3ca435782c6206c603d7829ae6af39215.json new file mode 100644 index 0000000..3d92010 --- /dev/null +++ b/graphify-out/cache/4df60ae6d9b6d6db8119f8b50c2be8b3ca435782c6206c603d7829ae6af39215.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_core_src_main_scala_de_nowchess_chess_controller_parser_scala", "label": "Parser.scala", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/controller/Parser.scala", "source_location": "L1"}, {"id": "parser_parser", "label": "Parser", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/controller/Parser.scala", "source_location": "L5"}, {"id": "parser_parser_parsemove", "label": ".parseMove()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/controller/Parser.scala", "source_location": "L10"}, {"id": "parser_parser_parsesquare", "label": ".parseSquare()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/controller/Parser.scala", "source_location": "L20"}], "edges": [{"source": "modules_core_src_main_scala_de_nowchess_chess_controller_parser_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/controller/Parser.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_core_src_main_scala_de_nowchess_chess_controller_parser_scala", "target": "parser_parser", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/controller/Parser.scala", "source_location": "L5", "weight": 1.0}, {"source": "parser_parser", "target": "parser_parser_parsemove", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/controller/Parser.scala", "source_location": "L10", "weight": 1.0}, {"source": "parser_parser", "target": "parser_parser_parsesquare", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/controller/Parser.scala", "source_location": "L20", "weight": 1.0}, {"source": "parser_parser_parsemove", "target": "parser_parser_parsesquare", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/controller/Parser.scala", "source_location": "L16", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/4fefc5baf0002832553f1fbb23fbf60e9a5f976cd5b65461d05fc993ed22609d.json b/graphify-out/cache/4fefc5baf0002832553f1fbb23fbf60e9a5f976cd5b65461d05fc993ed22609d.json new file mode 100644 index 0000000..7201de3 --- /dev/null +++ b/graphify-out/cache/4fefc5baf0002832553f1fbb23fbf60e9a5f976cd5b65461d05fc993ed22609d.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_src_main_scala_de_nowchess_bot_config_scala", "label": "Config.scala", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/Config.scala", "source_location": "L1"}, {"id": "config_config", "label": "Config", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/Config.scala", "source_location": "L3"}], "edges": [{"source": "modules_bot_src_main_scala_de_nowchess_bot_config_scala", "target": "config_config", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/Config.scala", "source_location": "L3", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/53d09cc069ac57de88a076def08f78b61931bc30bb0bb14baa7f23fa4666cf49.json b/graphify-out/cache/53d09cc069ac57de88a076def08f78b61931bc30bb0bb14baa7f23fa4666cf49.json new file mode 100644 index 0000000..d408970 --- /dev/null +++ b/graphify-out/cache/53d09cc069ac57de88a076def08f78b61931bc30bb0bb14baa7f23fa4666cf49.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_ui_src_main_scala_de_nowchess_ui_gui_piecesprites_scala", "label": "PieceSprites.scala", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/PieceSprites.scala", "source_location": "L1"}, {"id": "piecesprites_piecesprites", "label": "PieceSprites", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/PieceSprites.scala", "source_location": "L7"}, {"id": "piecesprites_piecesprites_loadpieceimage", "label": ".loadPieceImage()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/PieceSprites.scala", "source_location": "L13"}, {"id": "piecesprites_piecesprites_loadimage", "label": ".loadImage()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/PieceSprites.scala", "source_location": "L24"}, {"id": "piecesprites_squarecolors", "label": "SquareColors", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/PieceSprites.scala", "source_location": "L31"}], "edges": [{"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_piecesprites_scala", "target": "scalafx", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/PieceSprites.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_piecesprites_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/PieceSprites.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_piecesprites_scala", "target": "piecesprites_piecesprites", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/PieceSprites.scala", "source_location": "L7", "weight": 1.0}, {"source": "piecesprites_piecesprites", "target": "piecesprites_piecesprites_loadpieceimage", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/PieceSprites.scala", "source_location": "L13", "weight": 1.0}, {"source": "piecesprites_piecesprites", "target": "piecesprites_piecesprites_loadimage", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/PieceSprites.scala", "source_location": "L24", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_piecesprites_scala", "target": "piecesprites_squarecolors", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/PieceSprites.scala", "source_location": "L31", "weight": 1.0}, {"source": "piecesprites_piecesprites_loadpieceimage", "target": "piecesprites_piecesprites_loadimage", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/PieceSprites.scala", "source_location": "L15", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/55982d38f4703b7d9841c11907bd2af228d78ac22c52687877d8a26c1201a6e4.json b/graphify-out/cache/55982d38f4703b7d9841c11907bd2af228d78ac22c52687877d8a26c1201a6e4.json new file mode 100644 index 0000000..1c60329 --- /dev/null +++ b/graphify-out/cache/55982d38f4703b7d9841c11907bd2af228d78ac22c52687877d8a26c1201a6e4.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_src_main_scala_de_nowchess_bot_logic_transpositiontable_scala", "label": "TranspositionTable.scala", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/TranspositionTable.scala", "source_location": "L1"}, {"id": "transpositiontable_ttentry", "label": "TTEntry", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/TranspositionTable.scala", "source_location": "L10"}, {"id": "transpositiontable_transpositiontable", "label": "TranspositionTable", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/TranspositionTable.scala", "source_location": "L18"}, {"id": "transpositiontable_transpositiontable_probe", "label": ".probe()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/TranspositionTable.scala", "source_location": "L24"}, {"id": "transpositiontable_transpositiontable_store", "label": ".store()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/TranspositionTable.scala", "source_location": "L30"}, {"id": "transpositiontable_transpositiontable_clear", "label": ".clear()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/TranspositionTable.scala", "source_location": "L36"}], "edges": [{"source": "modules_bot_src_main_scala_de_nowchess_bot_logic_transpositiontable_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/TranspositionTable.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_logic_transpositiontable_scala", "target": "transpositiontable_ttentry", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/TranspositionTable.scala", "source_location": "L10", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_logic_transpositiontable_scala", "target": "transpositiontable_transpositiontable", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/TranspositionTable.scala", "source_location": "L18", "weight": 1.0}, {"source": "transpositiontable_transpositiontable", "target": "transpositiontable_transpositiontable_probe", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/TranspositionTable.scala", "source_location": "L24", "weight": 1.0}, {"source": "transpositiontable_transpositiontable", "target": "transpositiontable_transpositiontable_store", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/TranspositionTable.scala", "source_location": "L30", "weight": 1.0}, {"source": "transpositiontable_transpositiontable", "target": "transpositiontable_transpositiontable_clear", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/TranspositionTable.scala", "source_location": "L36", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/6106993546baddc948d338c397e9153a281a1e7006adb63c83caf9ae850ac0cb.json b/graphify-out/cache/6106993546baddc948d338c397e9153a281a1e7006adb63c83caf9ae850ac0cb.json new file mode 100644 index 0000000..15f2a12 --- /dev/null +++ b/graphify-out/cache/6106993546baddc948d338c397e9153a281a1e7006adb63c83caf9ae850ac0cb.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_api_src_main_scala_de_nowchess_api_game_gamecontext_scala", "label": "GameContext.scala", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", "source_location": "L1"}, {"id": "gamecontext_gamecontext", "label": "GameContext", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", "source_location": "L8"}, {"id": "gamecontext_gamecontext_withboard", "label": ".withBoard()", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", "source_location": "L17"}, {"id": "gamecontext_gamecontext_withturn", "label": ".withTurn()", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", "source_location": "L20"}, {"id": "gamecontext_gamecontext_withcastlingrights", "label": ".withCastlingRights()", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", "source_location": "L23"}, {"id": "gamecontext_gamecontext_withenpassantsquare", "label": ".withEnPassantSquare()", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", "source_location": "L26"}, {"id": "gamecontext_gamecontext_withhalfmoveclock", "label": ".withHalfMoveClock()", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", "source_location": "L29"}, {"id": "gamecontext_gamecontext_withmove", "label": ".withMove()", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", "source_location": "L32"}, {"id": "gamecontext_gamecontext_initial", "label": ".initial()", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", "source_location": "L36"}], "edges": [{"source": "modules_api_src_main_scala_de_nowchess_api_game_gamecontext_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_api_src_main_scala_de_nowchess_api_game_gamecontext_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_api_src_main_scala_de_nowchess_api_game_gamecontext_scala", "target": "gamecontext_gamecontext", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", "source_location": "L8", "weight": 1.0}, {"source": "gamecontext_gamecontext", "target": "gamecontext_gamecontext_withboard", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", "source_location": "L17", "weight": 1.0}, {"source": "gamecontext_gamecontext", "target": "gamecontext_gamecontext_withturn", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", "source_location": "L20", "weight": 1.0}, {"source": "gamecontext_gamecontext", "target": "gamecontext_gamecontext_withcastlingrights", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", "source_location": "L23", "weight": 1.0}, {"source": "gamecontext_gamecontext", "target": "gamecontext_gamecontext_withenpassantsquare", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", "source_location": "L26", "weight": 1.0}, {"source": "gamecontext_gamecontext", "target": "gamecontext_gamecontext_withhalfmoveclock", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", "source_location": "L29", "weight": 1.0}, {"source": "gamecontext_gamecontext", "target": "gamecontext_gamecontext_withmove", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", "source_location": "L32", "weight": 1.0}, {"source": "modules_api_src_main_scala_de_nowchess_api_game_gamecontext_scala", "target": "gamecontext_gamecontext", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", "source_location": "L34", "weight": 1.0}, {"source": "gamecontext_gamecontext", "target": "gamecontext_gamecontext_initial", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", "source_location": "L36", "weight": 1.0}, {"source": "gamecontext_gamecontext_initial", "target": "gamecontext_gamecontext", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", "source_location": "L36", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/61eb7892fd530403643b47d98f719d3111164c584e348ec84f4bde24cffbfa39.json b/graphify-out/cache/61eb7892fd530403643b47d98f719d3111164c584e348ec84f4bde24cffbfa39.json new file mode 100644 index 0000000..d5ad65c --- /dev/null +++ b/graphify-out/cache/61eb7892fd530403643b47d98f719d3111164c584e348ec84f4bde24cffbfa39.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_api_src_test_scala_de_nowchess_api_board_piecetypetest_scala", "label": "PieceTypeTest.scala", "file_type": "code", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/PieceTypeTest.scala", "source_location": "L1"}, {"id": "piecetypetest_piecetypetest", "label": "PieceTypeTest", "file_type": "code", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/PieceTypeTest.scala", "source_location": "L6"}], "edges": [{"source": "modules_api_src_test_scala_de_nowchess_api_board_piecetypetest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/PieceTypeTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_api_src_test_scala_de_nowchess_api_board_piecetypetest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/PieceTypeTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_api_src_test_scala_de_nowchess_api_board_piecetypetest_scala", "target": "piecetypetest_piecetypetest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/PieceTypeTest.scala", "source_location": "L6", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/6325ec85896dc3f026f4b10aef08e79a7846c82860b50b132f2e984b2796b055.json b/graphify-out/cache/6325ec85896dc3f026f4b10aef08e79a7846c82860b50b132f2e984b2796b055.json new file mode 100644 index 0000000..16b92dd --- /dev/null +++ b/graphify-out/cache/6325ec85896dc3f026f4b10aef08e79a7846c82860b50b132f2e984b2796b055.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_api_src_test_scala_de_nowchess_api_player_playerinfotest_scala", "label": "PlayerInfoTest.scala", "file_type": "code", "source_file": "modules/api/src/test/scala/de/nowchess/api/player/PlayerInfoTest.scala", "source_location": "L1"}, {"id": "playerinfotest_playerinfotest", "label": "PlayerInfoTest", "file_type": "code", "source_file": "modules/api/src/test/scala/de/nowchess/api/player/PlayerInfoTest.scala", "source_location": "L6"}], "edges": [{"source": "modules_api_src_test_scala_de_nowchess_api_player_playerinfotest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/player/PlayerInfoTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_api_src_test_scala_de_nowchess_api_player_playerinfotest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/player/PlayerInfoTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_api_src_test_scala_de_nowchess_api_player_playerinfotest_scala", "target": "playerinfotest_playerinfotest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/player/PlayerInfoTest.scala", "source_location": "L6", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/64886467aeb868c4deccf120dfa73477a0c2af53d78f68d5fc446ca218cba7c3.json b/graphify-out/cache/64886467aeb868c4deccf120dfa73477a0c2af53d78f68d5fc446ca218cba7c3.json new file mode 100644 index 0000000..106970c --- /dev/null +++ b/graphify-out/cache/64886467aeb868c4deccf120dfa73477a0c2af53d78f68d5fc446ca218cba7c3.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_io_src_test_scala_de_nowchess_io_pgn_pgnparsertest_scala", "label": "PgnParserTest.scala", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnParserTest.scala", "source_location": "L1"}, {"id": "pgnparsertest_pgnparsertest", "label": "PgnParserTest", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnParserTest.scala", "source_location": "L10"}], "edges": [{"source": "modules_io_src_test_scala_de_nowchess_io_pgn_pgnparsertest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnParserTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_pgn_pgnparsertest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnParserTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_pgn_pgnparsertest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnParserTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_pgn_pgnparsertest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnParserTest.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_pgn_pgnparsertest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnParserTest.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_pgn_pgnparsertest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnParserTest.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_pgn_pgnparsertest_scala", "target": "pgnparsertest_pgnparsertest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnParserTest.scala", "source_location": "L10", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/67408c215b08f2317475c476596b3177c39658a0d529639643bb4ea8b8dbaed6.json b/graphify-out/cache/67408c215b08f2317475c476596b3177c39658a0d529639643bb4ea8b8dbaed6.json new file mode 100644 index 0000000..fa44ed4 --- /dev/null +++ b/graphify-out/cache/67408c215b08f2317475c476596b3177c39658a0d529639643bb4ea8b8dbaed6.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_io_src_main_scala_de_nowchess_io_pgn_pgnparser_scala", "label": "PgnParser.scala", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L1"}, {"id": "pgnparser_pgngame", "label": "PgnGame", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L10"}, {"id": "pgnparser_pgnparser", "label": "PgnParser", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L15"}, {"id": "pgnparser_pgnparser_validatepgn", "label": ".validatePgn()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L20"}, {"id": "pgnparser_pgnparser_importgamecontext", "label": ".importGameContext()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L31"}, {"id": "pgnparser_pgnparser_parsepgn", "label": ".parsePgn()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L39"}, {"id": "pgnparser_pgnparser_parseheaders", "label": ".parseHeaders()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L48"}, {"id": "pgnparser_pgnparser_parsemovestext", "label": ".parseMovesText()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L53"}, {"id": "pgnparser_pgnparser_ismovenumberorresult", "label": ".isMoveNumberOrResult()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L69"}, {"id": "pgnparser_pgnparser_parsealgebraicmove", "label": ".parseAlgebraicMove()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L77"}, {"id": "pgnparser_pgnparser_parseregularmove", "label": ".parseRegularMove()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L93"}, {"id": "pgnparser_pgnparser_matcheshint", "label": ".matchesHint()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L136"}, {"id": "pgnparser_pgnparser_promotionmatches", "label": ".promotionMatches()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L143"}, {"id": "pgnparser_pgnparser_extractpromotion", "label": ".extractPromotion()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L152"}, {"id": "pgnparser_pgnparser_chartopiecetype", "label": ".charToPieceType()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L164"}, {"id": "pgnparser_pgnparser_validatemovestext", "label": ".validateMovesText()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L176"}], "edges": [{"source": "modules_io_src_main_scala_de_nowchess_io_pgn_pgnparser_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_pgn_pgnparser_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_pgn_pgnparser_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_pgn_pgnparser_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_pgn_pgnparser_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_pgn_pgnparser_scala", "target": "pgnparser_pgngame", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L10", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_pgn_pgnparser_scala", "target": "pgnparser_pgnparser", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L15", "weight": 1.0}, {"source": "pgnparser_pgnparser", "target": "pgnparser_pgnparser_validatepgn", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L20", "weight": 1.0}, {"source": "pgnparser_pgnparser", "target": "pgnparser_pgnparser_importgamecontext", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L31", "weight": 1.0}, {"source": "pgnparser_pgnparser", "target": "pgnparser_pgnparser_parsepgn", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L39", "weight": 1.0}, {"source": "pgnparser_pgnparser", "target": "pgnparser_pgnparser_parseheaders", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L48", "weight": 1.0}, {"source": "pgnparser_pgnparser", "target": "pgnparser_pgnparser_parsemovestext", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L53", "weight": 1.0}, {"source": "pgnparser_pgnparser", "target": "pgnparser_pgnparser_ismovenumberorresult", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L69", "weight": 1.0}, {"source": "pgnparser_pgnparser", "target": "pgnparser_pgnparser_parsealgebraicmove", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L77", "weight": 1.0}, {"source": "pgnparser_pgnparser", "target": "pgnparser_pgnparser_parseregularmove", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L93", "weight": 1.0}, {"source": "pgnparser_pgnparser", "target": "pgnparser_pgnparser_matcheshint", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L136", "weight": 1.0}, {"source": "pgnparser_pgnparser", "target": "pgnparser_pgnparser_promotionmatches", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L143", "weight": 1.0}, {"source": "pgnparser_pgnparser", "target": "pgnparser_pgnparser_extractpromotion", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L152", "weight": 1.0}, {"source": "pgnparser_pgnparser", "target": "pgnparser_pgnparser_chartopiecetype", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L164", "weight": 1.0}, {"source": "pgnparser_pgnparser", "target": "pgnparser_pgnparser_validatemovestext", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L176", "weight": 1.0}, {"source": "pgnparser_pgnparser_validatepgn", "target": "pgnparser_pgnparser_parseheaders", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L23", "weight": 1.0}, {"source": "pgnparser_pgnparser_validatepgn", "target": "pgnparser_pgnparser_validatemovestext", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L25", "weight": 1.0}, {"source": "pgnparser_pgnparser_validatepgn", "target": "pgnparser_pgngame", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L25", "weight": 1.0}, {"source": "pgnparser_pgnparser_importgamecontext", "target": "pgnparser_pgnparser_validatepgn", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L32", "weight": 1.0}, {"source": "pgnparser_pgnparser_parsepgn", "target": "pgnparser_pgnparser_parseheaders", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L42", "weight": 1.0}, {"source": "pgnparser_pgnparser_parsepgn", "target": "pgnparser_pgnparser_parsemovestext", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L44", "weight": 1.0}, {"source": "pgnparser_pgnparser_parsepgn", "target": "pgnparser_pgngame", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L45", "weight": 1.0}, {"source": "pgnparser_pgnparser_parsemovestext", "target": "pgnparser_pgnparser_ismovenumberorresult", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L59", "weight": 1.0}, {"source": "pgnparser_pgnparser_parsemovestext", "target": "pgnparser_pgnparser_parsealgebraicmove", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L61", "weight": 1.0}, {"source": "pgnparser_pgnparser_parsealgebraicmove", "target": "pgnparser_pgnparser_parseregularmove", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L90", "weight": 1.0}, {"source": "pgnparser_pgnparser_parseregularmove", "target": "pgnparser_pgnparser_chartopiecetype", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L109", "weight": 1.0}, {"source": "pgnparser_pgnparser_parseregularmove", "target": "pgnparser_pgnparser_extractpromotion", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L117", "weight": 1.0}, {"source": "pgnparser_pgnparser_parseregularmove", "target": "pgnparser_pgnparser_matcheshint", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L129", "weight": 1.0}, {"source": "pgnparser_pgnparser_parseregularmove", "target": "pgnparser_pgnparser_promotionmatches", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L130", "weight": 1.0}, {"source": "pgnparser_pgnparser_validatemovestext", "target": "pgnparser_pgnparser_ismovenumberorresult", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L183", "weight": 1.0}, {"source": "pgnparser_pgnparser_validatemovestext", "target": "pgnparser_pgnparser_parsealgebraicmove", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", "source_location": "L185", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/6ae6cd321eca9ce43d50e1c2eb885006b62d350170dbe2e936ab3ff97ac1dcf6.json b/graphify-out/cache/6ae6cd321eca9ce43d50e1c2eb885006b62d350170dbe2e936ab3ff97ac1dcf6.json new file mode 100644 index 0000000..feac3c2 --- /dev/null +++ b/graphify-out/cache/6ae6cd321eca9ce43d50e1c2eb885006b62d350170dbe2e936ab3ff97ac1dcf6.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_io_src_test_scala_de_nowchess_io_json_jsonexportersuite_scala", "label": "JsonExporterSuite.scala", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonExporterSuite.scala", "source_location": "L1"}, {"id": "jsonexportersuite_jsonexportersuite", "label": "JsonExporterSuite", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonExporterSuite.scala", "source_location": "L9"}], "edges": [{"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonexportersuite_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonExporterSuite.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonexportersuite_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonExporterSuite.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonexportersuite_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonExporterSuite.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonexportersuite_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonExporterSuite.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonexportersuite_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonExporterSuite.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonexportersuite_scala", "target": "jsonexportersuite_jsonexportersuite", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonExporterSuite.scala", "source_location": "L9", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/70112b2f25b626dd218bccc047b32f32421a5f49f004a91da965196e72fed641.json b/graphify-out/cache/70112b2f25b626dd218bccc047b32f32421a5f49f004a91da965196e72fed641.json new file mode 100644 index 0000000..9f993a1 --- /dev/null +++ b/graphify-out/cache/70112b2f25b626dd218bccc047b32f32421a5f49f004a91da965196e72fed641.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_io_src_main_scala_de_nowchess_io_fen_fenexporter_scala", "label": "FenExporter.scala", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", "source_location": "L1"}, {"id": "fenexporter_fenexporter", "label": "FenExporter", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", "source_location": "L7"}, {"id": "fenexporter_fenexporter_boardtofen", "label": ".boardToFen()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", "source_location": "L10"}, {"id": "fenexporter_fenexporter_buildrankstring", "label": ".buildRankString()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", "source_location": "L16"}, {"id": "fenexporter_fenexporter_gamecontexttofen", "label": ".gameContextToFen()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", "source_location": "L29"}, {"id": "fenexporter_fenexporter_exportgamecontext", "label": ".exportGameContext()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", "source_location": "L37"}, {"id": "fenexporter_fenexporter_castlingstring", "label": ".castlingString()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", "source_location": "L40"}, {"id": "fenexporter_fenexporter_piecetofenchar", "label": ".pieceToFenChar()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", "source_location": "L49"}], "edges": [{"source": "modules_io_src_main_scala_de_nowchess_io_fen_fenexporter_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_fen_fenexporter_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_fen_fenexporter_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_fen_fenexporter_scala", "target": "fenexporter_fenexporter", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", "source_location": "L7", "weight": 1.0}, {"source": "fenexporter_fenexporter", "target": "fenexporter_fenexporter_boardtofen", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", "source_location": "L10", "weight": 1.0}, {"source": "fenexporter_fenexporter", "target": "fenexporter_fenexporter_buildrankstring", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", "source_location": "L16", "weight": 1.0}, {"source": "fenexporter_fenexporter", "target": "fenexporter_fenexporter_gamecontexttofen", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", "source_location": "L29", "weight": 1.0}, {"source": "fenexporter_fenexporter", "target": "fenexporter_fenexporter_exportgamecontext", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", "source_location": "L37", "weight": 1.0}, {"source": "fenexporter_fenexporter", "target": "fenexporter_fenexporter_castlingstring", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", "source_location": "L40", "weight": 1.0}, {"source": "fenexporter_fenexporter", "target": "fenexporter_fenexporter_piecetofenchar", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", "source_location": "L49", "weight": 1.0}, {"source": "fenexporter_fenexporter_boardtofen", "target": "fenexporter_fenexporter_buildrankstring", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", "source_location": "L12", "weight": 1.0}, {"source": "fenexporter_fenexporter_buildrankstring", "target": "fenexporter_fenexporter_piecetofenchar", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", "source_location": "L23", "weight": 1.0}, {"source": "fenexporter_fenexporter_gamecontexttofen", "target": "fenexporter_fenexporter_boardtofen", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", "source_location": "L30", "weight": 1.0}, {"source": "fenexporter_fenexporter_gamecontexttofen", "target": "fenexporter_fenexporter_castlingstring", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", "source_location": "L32", "weight": 1.0}, {"source": "fenexporter_fenexporter_exportgamecontext", "target": "fenexporter_fenexporter_gamecontexttofen", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", "source_location": "L37", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/7048dc20e8a4a550395759a2ad04d030bcd8a4e49931e571c1e418f26a3473df.json b/graphify-out/cache/7048dc20e8a4a550395759a2ad04d030bcd8a4e49931e571c1e418f26a3473df.json new file mode 100644 index 0000000..9c878f1 --- /dev/null +++ b/graphify-out/cache/7048dc20e8a4a550395759a2ad04d030bcd8a4e49931e571c1e418f26a3473df.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_core_src_main_scala_de_nowchess_chess_command_commandinvoker_scala", "label": "CommandInvoker.scala", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", "source_location": "L1"}, {"id": "commandinvoker_commandinvoker", "label": "CommandInvoker", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", "source_location": "L4"}, {"id": "commandinvoker_commandinvoker_execute", "label": ".execute()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", "source_location": "L11"}, {"id": "commandinvoker_commandinvoker_undo", "label": ".undo()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", "source_location": "L22"}, {"id": "commandinvoker_commandinvoker_redo", "label": ".redo()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", "source_location": "L33"}, {"id": "commandinvoker_commandinvoker_history", "label": ".history()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", "source_location": "L44"}, {"id": "commandinvoker_commandinvoker_getcurrentindex", "label": ".getCurrentIndex()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", "source_location": "L49"}, {"id": "commandinvoker_commandinvoker_clear", "label": ".clear()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", "source_location": "L54"}, {"id": "commandinvoker_commandinvoker_canundo", "label": ".canUndo()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", "source_location": "L60"}, {"id": "commandinvoker_commandinvoker_canredo", "label": ".canRedo()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", "source_location": "L65"}], "edges": [{"source": "modules_core_src_main_scala_de_nowchess_chess_command_commandinvoker_scala", "target": "commandinvoker_commandinvoker", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", "source_location": "L4", "weight": 1.0}, {"source": "commandinvoker_commandinvoker", "target": "commandinvoker_commandinvoker_execute", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", "source_location": "L11", "weight": 1.0}, {"source": "commandinvoker_commandinvoker", "target": "commandinvoker_commandinvoker_undo", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", "source_location": "L22", "weight": 1.0}, {"source": "commandinvoker_commandinvoker", "target": "commandinvoker_commandinvoker_redo", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", "source_location": "L33", "weight": 1.0}, {"source": "commandinvoker_commandinvoker", "target": "commandinvoker_commandinvoker_history", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", "source_location": "L44", "weight": 1.0}, {"source": "commandinvoker_commandinvoker", "target": "commandinvoker_commandinvoker_getcurrentindex", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", "source_location": "L49", "weight": 1.0}, {"source": "commandinvoker_commandinvoker", "target": "commandinvoker_commandinvoker_clear", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", "source_location": "L54", "weight": 1.0}, {"source": "commandinvoker_commandinvoker", "target": "commandinvoker_commandinvoker_canundo", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", "source_location": "L60", "weight": 1.0}, {"source": "commandinvoker_commandinvoker", "target": "commandinvoker_commandinvoker_canredo", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", "source_location": "L65", "weight": 1.0}, {"source": "commandinvoker_commandinvoker_redo", "target": "commandinvoker_commandinvoker_execute", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", "source_location": "L36", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/724d45e7f0dccd8c2f7dd6a08ba648c50857615ad552b02c723baa8ea34eba06.json b/graphify-out/cache/724d45e7f0dccd8c2f7dd6a08ba648c50857615ad552b02c723baa8ea34eba06.json new file mode 100644 index 0000000..8c419ea --- /dev/null +++ b/graphify-out/cache/724d45e7f0dccd8c2f7dd6a08ba648c50857615ad552b02c723baa8ea34eba06.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_io_src_main_scala_de_nowchess_io_json_jsonmodel_scala", "label": "JsonModel.scala", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", "source_location": "L1"}, {"id": "jsonmodel_jsonmetadata", "label": "JsonMetadata", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", "source_location": "L3"}, {"id": "jsonmodel_jsonpiece", "label": "JsonPiece", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", "source_location": "L10"}, {"id": "jsonmodel_jsoncastlingrights", "label": "JsonCastlingRights", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", "source_location": "L16"}, {"id": "jsonmodel_jsongamestate", "label": "JsonGameState", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", "source_location": "L23"}, {"id": "jsonmodel_jsoncapturedpieces", "label": "JsonCapturedPieces", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", "source_location": "L31"}, {"id": "jsonmodel_jsonmovetype", "label": "JsonMoveType", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", "source_location": "L36"}, {"id": "jsonmodel_jsonmove", "label": "JsonMove", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", "source_location": "L42"}, {"id": "jsonmodel_jsongamerecord", "label": "JsonGameRecord", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", "source_location": "L48"}], "edges": [{"source": "modules_io_src_main_scala_de_nowchess_io_json_jsonmodel_scala", "target": "jsonmodel_jsonmetadata", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_json_jsonmodel_scala", "target": "jsonmodel_jsonpiece", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", "source_location": "L10", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_json_jsonmodel_scala", "target": "jsonmodel_jsoncastlingrights", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", "source_location": "L16", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_json_jsonmodel_scala", "target": "jsonmodel_jsongamestate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", "source_location": "L23", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_json_jsonmodel_scala", "target": "jsonmodel_jsoncapturedpieces", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", "source_location": "L31", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_json_jsonmodel_scala", "target": "jsonmodel_jsonmovetype", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", "source_location": "L36", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_json_jsonmodel_scala", "target": "jsonmodel_jsonmove", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", "source_location": "L42", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_json_jsonmodel_scala", "target": "jsonmodel_jsongamerecord", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", "source_location": "L48", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/76c791335f6a7c4762f109779de0a0d31d46e60c86264589c4e3e2e192cea52a.json b/graphify-out/cache/76c791335f6a7c4762f109779de0a0d31d46e60c86264589c4e3e2e192cea52a.json new file mode 100644 index 0000000..4256429 --- /dev/null +++ b/graphify-out/cache/76c791335f6a7c4762f109779de0a0d31d46e60c86264589c4e3e2e192cea52a.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_src_test_scala_de_nowchess_bot_polyglothashtest_scala", "label": "PolyglotHashTest.scala", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/PolyglotHashTest.scala", "source_location": "L1"}, {"id": "polyglothashtest_polyglothashtest", "label": "PolyglotHashTest", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/PolyglotHashTest.scala", "source_location": "L10"}], "edges": [{"source": "modules_bot_src_test_scala_de_nowchess_bot_polyglothashtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/PolyglotHashTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_polyglothashtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/PolyglotHashTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_polyglothashtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/PolyglotHashTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_polyglothashtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/PolyglotHashTest.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_polyglothashtest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/PolyglotHashTest.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_polyglothashtest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/PolyglotHashTest.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_polyglothashtest_scala", "target": "polyglothashtest_polyglothashtest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/PolyglotHashTest.scala", "source_location": "L10", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/834a6df275bfc2c92d19fbd38ceb0630766efeccc1653517eb82d6fe6bb4406f.json b/graphify-out/cache/834a6df275bfc2c92d19fbd38ceb0630766efeccc1653517eb82d6fe6bb4406f.json new file mode 100644 index 0000000..6ba214b --- /dev/null +++ b/graphify-out/cache/834a6df275bfc2c92d19fbd38ceb0630766efeccc1653517eb82d6fe6bb4406f.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginegameendingtest_scala", "label": "GameEngineGameEndingTest.scala", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineGameEndingTest.scala", "source_location": "L1"}, {"id": "gameenginegameendingtest_gameenginegameendingtest", "label": "GameEngineGameEndingTest", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineGameEndingTest.scala", "source_location": "L10"}, {"id": "gameenginegameendingtest_endingmockobserver", "label": "EndingMockObserver", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineGameEndingTest.scala", "source_location": "L96"}, {"id": "gameenginegameendingtest_endingmockobserver_ongameevent", "label": ".onGameEvent()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineGameEndingTest.scala", "source_location": "L99"}], "edges": [{"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginegameendingtest_scala", "target": "scala", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineGameEndingTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginegameendingtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineGameEndingTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginegameendingtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineGameEndingTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginegameendingtest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineGameEndingTest.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginegameendingtest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineGameEndingTest.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginegameendingtest_scala", "target": "gameenginegameendingtest_gameenginegameendingtest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineGameEndingTest.scala", "source_location": "L10", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginegameendingtest_scala", "target": "gameenginegameendingtest_endingmockobserver", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineGameEndingTest.scala", "source_location": "L96", "weight": 1.0}, {"source": "gameenginegameendingtest_endingmockobserver", "target": "gameenginegameendingtest_endingmockobserver_ongameevent", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineGameEndingTest.scala", "source_location": "L99", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/83cc3c71aac2c61b46471db3c10fb4f9069c02195b75605197c14c41d2d98f23.json b/graphify-out/cache/83cc3c71aac2c61b46471db3c10fb4f9069c02195b75605197c14c41d2d98f23.json new file mode 100644 index 0000000..654823d --- /dev/null +++ b/graphify-out/cache/83cc3c71aac2c61b46471db3c10fb4f9069c02195b75605197c14c41d2d98f23.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_rule_build_gradle_kts", "label": "build.gradle.kts", "file_type": "code", "source_file": "modules/rule/build.gradle.kts", "source_location": "L1"}], "edges": []} \ No newline at end of file diff --git a/graphify-out/cache/85d29a8295ada2d5a5e0e32892961a27cc3a796e5fbe26e8e060200f1f2ff5d8.json b/graphify-out/cache/85d29a8295ada2d5a5e0e32892961a27cc3a796e5fbe26e8e060200f1f2ff5d8.json new file mode 100644 index 0000000..7706997 --- /dev/null +++ b/graphify-out/cache/85d29a8295ada2d5a5e0e32892961a27cc3a796e5fbe26e8e060200f1f2ff5d8.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginescenariotest_scala", "label": "GameEngineScenarioTest.scala", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineScenarioTest.scala", "source_location": "L1"}, {"id": "gameenginescenariotest_gameenginescenariotest", "label": "GameEngineScenarioTest", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineScenarioTest.scala", "source_location": "L11"}], "edges": [{"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginescenariotest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineScenarioTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginescenariotest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineScenarioTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginescenariotest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineScenarioTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginescenariotest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineScenarioTest.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginescenariotest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineScenarioTest.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginescenariotest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineScenarioTest.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginescenariotest_scala", "target": "scala", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineScenarioTest.scala", "source_location": "L9", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginescenariotest_scala", "target": "gameenginescenariotest_gameenginescenariotest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineScenarioTest.scala", "source_location": "L11", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/8619fba617ab92979486874390607a781154e97a09dea783d224a25fcb4c5c67.json b/graphify-out/cache/8619fba617ab92979486874390607a781154e97a09dea783d224a25fcb4c5c67.json new file mode 100644 index 0000000..930c150 --- /dev/null +++ b/graphify-out/cache/8619fba617ab92979486874390607a781154e97a09dea783d224a25fcb4c5c67.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_ui_src_main_scala_de_nowchess_ui_main_scala", "label": "Main.scala", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/Main.scala", "source_location": "L1"}, {"id": "main_main", "label": "Main", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/Main.scala", "source_location": "L14"}, {"id": "main_main_main", "label": ".main()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/Main.scala", "source_location": "L15"}], "edges": [{"source": "modules_ui_src_main_scala_de_nowchess_ui_main_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/Main.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_main_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/Main.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_main_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/Main.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_main_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/Main.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_main_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/Main.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_main_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/Main.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_main_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/Main.scala", "source_location": "L9", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_main_scala", "target": "main_main", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/Main.scala", "source_location": "L14", "weight": 1.0}, {"source": "main_main", "target": "main_main_main", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/Main.scala", "source_location": "L15", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/8932f50bffb8c6793bc3014cbf375d4f89eef59faa6011961f177a2afab9f02e.json b/graphify-out/cache/8932f50bffb8c6793bc3014cbf375d4f89eef59faa6011961f177a2afab9f02e.json new file mode 100644 index 0000000..f261f08 --- /dev/null +++ b/graphify-out/cache/8932f50bffb8c6793bc3014cbf375d4f89eef59faa6011961f177a2afab9f02e.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_src_test_scala_de_nowchess_bot_transpositiontabletest_scala", "label": "TranspositionTableTest.scala", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/TranspositionTableTest.scala", "source_location": "L1"}, {"id": "transpositiontabletest_transpositiontabletest", "label": "TranspositionTableTest", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/TranspositionTableTest.scala", "source_location": "L9"}], "edges": [{"source": "modules_bot_src_test_scala_de_nowchess_bot_transpositiontabletest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/TranspositionTableTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_transpositiontabletest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/TranspositionTableTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_transpositiontabletest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/TranspositionTableTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_transpositiontabletest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/TranspositionTableTest.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_transpositiontabletest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/TranspositionTableTest.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_transpositiontabletest_scala", "target": "transpositiontabletest_transpositiontabletest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/TranspositionTableTest.scala", "source_location": "L9", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/89d1db8eb6561e3b3495960e088ffdfdcfaf7f38892315f5eff621678a022acf.json b/graphify-out/cache/89d1db8eb6561e3b3495960e088ffdfdcfaf7f38892315f5eff621678a022acf.json new file mode 100644 index 0000000..9450f73 --- /dev/null +++ b/graphify-out/cache/89d1db8eb6561e3b3495960e088ffdfdcfaf7f38892315f5eff621678a022acf.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_python_src_export_py", "label": "export.py", "file_type": "code", "source_file": "modules/bot/python/src/export.py", "source_location": "L1"}, {"id": "export_export_weights_to_binary", "label": "export_weights_to_binary()", "file_type": "code", "source_file": "modules/bot/python/src/export.py", "source_location": "L9"}, {"id": "export_rationale_10", "label": "Load PyTorch weights and export as binary file.", "file_type": "rationale", "source_file": "modules/bot/python/src/export.py", "source_location": "L10"}], "edges": [{"source": "modules_bot_python_src_export_py", "target": "torch", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/export.py", "source_location": "L4", "weight": 1.0}, {"source": "modules_bot_python_src_export_py", "target": "struct", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/export.py", "source_location": "L5", "weight": 1.0}, {"source": "modules_bot_python_src_export_py", "target": "sys", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/export.py", "source_location": "L6", "weight": 1.0}, {"source": "modules_bot_python_src_export_py", "target": "pathlib", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/export.py", "source_location": "L7", "weight": 1.0}, {"source": "modules_bot_python_src_export_py", "target": "export_export_weights_to_binary", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/export.py", "source_location": "L9", "weight": 1.0}, {"source": "export_rationale_10", "target": "export_export_weights_to_binary", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/export.py", "source_location": "L10", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/8ab25c7ef94a33b8e40b5730842ccc0a968e4f4540428ac92278e97969599a3c.json b/graphify-out/cache/8ab25c7ef94a33b8e40b5730842ccc0a968e4f4540428ac92278e97969599a3c.json new file mode 100644 index 0000000..d66c6a2 --- /dev/null +++ b/graphify-out/cache/8ab25c7ef94a33b8e40b5730842ccc0a968e4f4540428ac92278e97969599a3c.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_src_main_scala_de_nowchess_bot_logic_alphabetasearch_scala", "label": "AlphaBetaSearch.scala", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L1"}, {"id": "alphabetasearch_alphabetasearch", "label": "AlphaBetaSearch", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L13"}, {"id": "alphabetasearch_alphabetasearch_bestmove", "label": ".bestMove()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L37"}, {"id": "alphabetasearch_alphabetasearch_bestmovewithtime", "label": ".bestMoveWithTime()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L54"}, {"id": "alphabetasearch_alphabetasearch_isoutoftime", "label": ".isOutOfTime()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L73"}, {"id": "alphabetasearch_alphabetasearch_searchwithaspiration", "label": ".searchWithAspiration()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L76"}, {"id": "alphabetasearch_alphabetasearch_hasnonpawnmaterial", "label": ".hasNonPawnMaterial()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L100"}, {"id": "alphabetasearch_alphabetasearch_nullmovecontext", "label": ".nullMoveContext()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L107"}, {"id": "alphabetasearch_alphabetasearch_trynullmove", "label": ".tryNullMove()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L110"}, {"id": "alphabetasearch_alphabetasearch_search", "label": ".search()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L129"}, {"id": "alphabetasearch_alphabetasearch_searchsequential", "label": ".searchSequential()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L175"}, {"id": "alphabetasearch_alphabetasearch_quiescence", "label": ".quiescence()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L251"}, {"id": "alphabetasearch_alphabetasearch_iscapture", "label": ".isCapture()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L289"}], "edges": [{"source": "modules_bot_src_main_scala_de_nowchess_bot_logic_alphabetasearch_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_logic_alphabetasearch_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_logic_alphabetasearch_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_logic_alphabetasearch_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_logic_alphabetasearch_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_logic_alphabetasearch_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_logic_alphabetasearch_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L9", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_logic_alphabetasearch_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L10", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_logic_alphabetasearch_scala", "target": "java", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L11", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_logic_alphabetasearch_scala", "target": "alphabetasearch_alphabetasearch", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L13", "weight": 1.0}, {"source": "alphabetasearch_alphabetasearch", "target": "alphabetasearch_alphabetasearch_bestmove", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L37", "weight": 1.0}, {"source": "alphabetasearch_alphabetasearch", "target": "alphabetasearch_alphabetasearch_bestmovewithtime", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L54", "weight": 1.0}, {"source": "alphabetasearch_alphabetasearch", "target": "alphabetasearch_alphabetasearch_isoutoftime", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L73", "weight": 1.0}, {"source": "alphabetasearch_alphabetasearch", "target": "alphabetasearch_alphabetasearch_searchwithaspiration", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L76", "weight": 1.0}, {"source": "alphabetasearch_alphabetasearch", "target": "alphabetasearch_alphabetasearch_hasnonpawnmaterial", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L100", "weight": 1.0}, {"source": "alphabetasearch_alphabetasearch", "target": "alphabetasearch_alphabetasearch_nullmovecontext", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L107", "weight": 1.0}, {"source": "alphabetasearch_alphabetasearch", "target": "alphabetasearch_alphabetasearch_trynullmove", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L110", "weight": 1.0}, {"source": "alphabetasearch_alphabetasearch", "target": "alphabetasearch_alphabetasearch_search", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L129", "weight": 1.0}, {"source": "alphabetasearch_alphabetasearch", "target": "alphabetasearch_alphabetasearch_searchsequential", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L175", "weight": 1.0}, {"source": "alphabetasearch_alphabetasearch", "target": "alphabetasearch_alphabetasearch_quiescence", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L251", "weight": 1.0}, {"source": "alphabetasearch_alphabetasearch", "target": "alphabetasearch_alphabetasearch_iscapture", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L289", "weight": 1.0}, {"source": "alphabetasearch_alphabetasearch_bestmove", "target": "alphabetasearch_alphabetasearch_searchwithaspiration", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L47", "weight": 1.0}, {"source": "alphabetasearch_alphabetasearch_trynullmove", "target": "alphabetasearch_alphabetasearch_nullmovecontext", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L117", "weight": 1.0}, {"source": "alphabetasearch_alphabetasearch_trynullmove", "target": "alphabetasearch_alphabetasearch_search", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L125", "weight": 1.0}, {"source": "alphabetasearch_alphabetasearch_search", "target": "alphabetasearch_alphabetasearch_quiescence", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L161", "weight": 1.0}, {"source": "alphabetasearch_alphabetasearch_search", "target": "alphabetasearch_alphabetasearch_hasnonpawnmaterial", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L164", "weight": 1.0}, {"source": "alphabetasearch_alphabetasearch_search", "target": "alphabetasearch_alphabetasearch_trynullmove", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L165", "weight": 1.0}, {"source": "alphabetasearch_alphabetasearch_search", "target": "alphabetasearch_alphabetasearch_searchsequential", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L171", "weight": 1.0}, {"source": "alphabetasearch_alphabetasearch_quiescence", "target": "alphabetasearch_alphabetasearch_iscapture", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", "source_location": "L269", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/8fc779fbeb66f47f9cd6c19f05fd215701b141501253ce0092a802af30bc2db2.json b/graphify-out/cache/8fc779fbeb66f47f9cd6c19f05fd215701b141501253ce0092a802af30bc2db2.json new file mode 100644 index 0000000..ec7724a --- /dev/null +++ b/graphify-out/cache/8fc779fbeb66f47f9cd6c19f05fd215701b141501253ce0092a802af30bc2db2.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_src_test_scala_de_nowchess_bot_botdifficultytest_scala", "label": "BotDifficultyTest.scala", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/BotDifficultyTest.scala", "source_location": "L1"}, {"id": "botdifficultytest_botdifficultytest", "label": "BotDifficultyTest", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/BotDifficultyTest.scala", "source_location": "L6"}], "edges": [{"source": "modules_bot_src_test_scala_de_nowchess_bot_botdifficultytest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/BotDifficultyTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_botdifficultytest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/BotDifficultyTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_botdifficultytest_scala", "target": "botdifficultytest_botdifficultytest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/BotDifficultyTest.scala", "source_location": "L6", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/9050af21437c6eb72ed7b64149f06ab50897b0f3428336a127df163bf8e9d9a9.json b/graphify-out/cache/9050af21437c6eb72ed7b64149f06ab50897b0f3428336a127df163bf8e9d9a9.json new file mode 100644 index 0000000..7cfffe8 --- /dev/null +++ b/graphify-out/cache/9050af21437c6eb72ed7b64149f06ab50897b0f3428336a127df163bf8e9d9a9.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_build_gradle_kts", "label": "build.gradle.kts", "file_type": "code", "source_file": "modules/bot/build.gradle.kts", "source_location": "L1"}], "edges": []} \ No newline at end of file diff --git a/graphify-out/cache/9268e2436beb00989e6e01c45c90d6c9f1cea6fe127ba0ddedb65d43bd414fdb.json b/graphify-out/cache/9268e2436beb00989e6e01c45c90d6c9f1cea6fe127ba0ddedb65d43bd414fdb.json new file mode 100644 index 0000000..07deecd --- /dev/null +++ b/graphify-out/cache/9268e2436beb00989e6e01c45c90d6c9f1cea6fe127ba0ddedb65d43bd414fdb.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_python_nnue_py", "label": "nnue.py", "file_type": "code", "source_file": "modules/bot/python/nnue.py", "source_location": "L1"}, {"id": "nnue_get_data_dir", "label": "get_data_dir()", "file_type": "code", "source_file": "modules/bot/python/nnue.py", "source_location": "L26"}, {"id": "nnue_get_tactical_data_dir", "label": "get_tactical_data_dir()", "file_type": "code", "source_file": "modules/bot/python/nnue.py", "source_location": "L32"}, {"id": "nnue_get_weights_dir", "label": "get_weights_dir()", "file_type": "code", "source_file": "modules/bot/python/nnue.py", "source_location": "L38"}, {"id": "nnue_list_checkpoints", "label": "list_checkpoints()", "file_type": "code", "source_file": "modules/bot/python/nnue.py", "source_location": "L44"}, {"id": "nnue_show_header", "label": "show_header()", "file_type": "code", "source_file": "modules/bot/python/nnue.py", "source_location": "L52"}, {"id": "nnue_show_checkpoints_table", "label": "show_checkpoints_table()", "file_type": "code", "source_file": "modules/bot/python/nnue.py", "source_location": "L65"}, {"id": "nnue_show_main_menu", "label": "show_main_menu()", "file_type": "code", "source_file": "modules/bot/python/nnue.py", "source_location": "L90"}, {"id": "nnue_train_interactive", "label": "train_interactive()", "file_type": "code", "source_file": "modules/bot/python/nnue.py", "source_location": "L124"}, {"id": "nnue_burst_train_interactive", "label": "burst_train_interactive()", "file_type": "code", "source_file": "modules/bot/python/nnue.py", "source_location": "L289"}, {"id": "nnue_export_interactive", "label": "export_interactive()", "file_type": "code", "source_file": "modules/bot/python/nnue.py", "source_location": "L365"}, {"id": "nnue_extract_tactical_interactive", "label": "extract_tactical_interactive()", "file_type": "code", "source_file": "modules/bot/python/nnue.py", "source_location": "L413"}, {"id": "nnue_main", "label": "main()", "file_type": "code", "source_file": "modules/bot/python/nnue.py", "source_location": "L473"}, {"id": "nnue_rationale_27", "label": "Get/create data directory.", "file_type": "rationale", "source_file": "modules/bot/python/nnue.py", "source_location": "L27"}, {"id": "nnue_rationale_33", "label": "Get/create data directory.", "file_type": "rationale", "source_file": "modules/bot/python/nnue.py", "source_location": "L33"}, {"id": "nnue_rationale_39", "label": "Get/create weights directory.", "file_type": "rationale", "source_file": "modules/bot/python/nnue.py", "source_location": "L39"}, {"id": "nnue_rationale_45", "label": "List available checkpoint versions.", "file_type": "rationale", "source_file": "modules/bot/python/nnue.py", "source_location": "L45"}, {"id": "nnue_rationale_53", "label": "Display application header.", "file_type": "rationale", "source_file": "modules/bot/python/nnue.py", "source_location": "L53"}, {"id": "nnue_rationale_66", "label": "Display available checkpoints in a table.", "file_type": "rationale", "source_file": "modules/bot/python/nnue.py", "source_location": "L66"}, {"id": "nnue_rationale_91", "label": "Display and handle main menu.", "file_type": "rationale", "source_file": "modules/bot/python/nnue.py", "source_location": "L91"}, {"id": "nnue_rationale_125", "label": "Interactive training menu.", "file_type": "rationale", "source_file": "modules/bot/python/nnue.py", "source_location": "L125"}, {"id": "nnue_rationale_290", "label": "Interactive burst training menu.", "file_type": "rationale", "source_file": "modules/bot/python/nnue.py", "source_location": "L290"}, {"id": "nnue_rationale_366", "label": "Interactive export menu.", "file_type": "rationale", "source_file": "modules/bot/python/nnue.py", "source_location": "L366"}, {"id": "nnue_rationale_414", "label": "Interactive tactical positions extraction and merge menu.", "file_type": "rationale", "source_file": "modules/bot/python/nnue.py", "source_location": "L414"}], "edges": [{"source": "modules_bot_python_nnue_py", "target": "os", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L4", "weight": 1.0}, {"source": "modules_bot_python_nnue_py", "target": "shutil", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L5", "weight": 1.0}, {"source": "modules_bot_python_nnue_py", "target": "sys", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L6", "weight": 1.0}, {"source": "modules_bot_python_nnue_py", "target": "pathlib", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L7", "weight": 1.0}, {"source": "modules_bot_python_nnue_py", "target": "rich_console", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L8", "weight": 1.0}, {"source": "modules_bot_python_nnue_py", "target": "rich_table", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L9", "weight": 1.0}, {"source": "modules_bot_python_nnue_py", "target": "rich_panel", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L10", "weight": 1.0}, {"source": "modules_bot_python_nnue_py", "target": "rich_prompt", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L11", "weight": 1.0}, {"source": "modules_bot_python_nnue_py", "target": "rich", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L12", "weight": 1.0}, {"source": "modules_bot_python_nnue_py", "target": "generate", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L17", "weight": 1.0}, {"source": "modules_bot_python_nnue_py", "target": "label", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L18", "weight": 1.0}, {"source": "modules_bot_python_nnue_py", "target": "train", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L19", "weight": 1.0}, {"source": "modules_bot_python_nnue_py", "target": "export", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L20", "weight": 1.0}, {"source": "modules_bot_python_nnue_py", "target": "tactical_positions_extractor", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L21", "weight": 1.0}, {"source": "modules_bot_python_nnue_py", "target": "nnue_get_data_dir", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L26", "weight": 1.0}, {"source": "modules_bot_python_nnue_py", "target": "nnue_get_tactical_data_dir", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L32", "weight": 1.0}, {"source": "modules_bot_python_nnue_py", "target": "nnue_get_weights_dir", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L38", "weight": 1.0}, {"source": "modules_bot_python_nnue_py", "target": "nnue_list_checkpoints", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L44", "weight": 1.0}, {"source": "modules_bot_python_nnue_py", "target": "nnue_show_header", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L52", "weight": 1.0}, {"source": "modules_bot_python_nnue_py", "target": "nnue_show_checkpoints_table", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L65", "weight": 1.0}, {"source": "modules_bot_python_nnue_py", "target": "nnue_show_main_menu", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L90", "weight": 1.0}, {"source": "modules_bot_python_nnue_py", "target": "nnue_train_interactive", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L124", "weight": 1.0}, {"source": "modules_bot_python_nnue_py", "target": "nnue_burst_train_interactive", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L289", "weight": 1.0}, {"source": "modules_bot_python_nnue_py", "target": "nnue_export_interactive", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L365", "weight": 1.0}, {"source": "modules_bot_python_nnue_py", "target": "nnue_extract_tactical_interactive", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L413", "weight": 1.0}, {"source": "modules_bot_python_nnue_py", "target": "nnue_main", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L473", "weight": 1.0}, {"source": "nnue_list_checkpoints", "target": "nnue_get_weights_dir", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L46", "weight": 1.0}, {"source": "nnue_show_checkpoints_table", "target": "nnue_list_checkpoints", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L68", "weight": 1.0}, {"source": "nnue_show_checkpoints_table", "target": "nnue_get_weights_dir", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L79", "weight": 1.0}, {"source": "nnue_show_main_menu", "target": "nnue_show_header", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L95", "weight": 1.0}, {"source": "nnue_show_main_menu", "target": "nnue_show_checkpoints_table", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L96", "weight": 1.0}, {"source": "nnue_show_main_menu", "target": "nnue_train_interactive", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L109", "weight": 1.0}, {"source": "nnue_show_main_menu", "target": "nnue_burst_train_interactive", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L111", "weight": 1.0}, {"source": "nnue_show_main_menu", "target": "nnue_export_interactive", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L113", "weight": 1.0}, {"source": "nnue_show_main_menu", "target": "nnue_extract_tactical_interactive", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L115", "weight": 1.0}, {"source": "nnue_train_interactive", "target": "nnue_show_header", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L127", "weight": 1.0}, {"source": "nnue_train_interactive", "target": "nnue_list_checkpoints", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L132", "weight": 1.0}, {"source": "nnue_train_interactive", "target": "nnue_get_data_dir", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L154", "weight": 1.0}, {"source": "nnue_train_interactive", "target": "nnue_get_weights_dir", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L213", "weight": 1.0}, {"source": "nnue_burst_train_interactive", "target": "nnue_show_header", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L292", "weight": 1.0}, {"source": "nnue_burst_train_interactive", "target": "nnue_get_data_dir", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L302", "weight": 1.0}, {"source": "nnue_burst_train_interactive", "target": "nnue_list_checkpoints", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L306", "weight": 1.0}, {"source": "nnue_burst_train_interactive", "target": "nnue_get_weights_dir", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L312", "weight": 1.0}, {"source": "nnue_export_interactive", "target": "nnue_show_header", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L368", "weight": 1.0}, {"source": "nnue_export_interactive", "target": "nnue_list_checkpoints", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L373", "weight": 1.0}, {"source": "nnue_export_interactive", "target": "nnue_get_weights_dir", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L394", "weight": 1.0}, {"source": "nnue_extract_tactical_interactive", "target": "nnue_show_header", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L416", "weight": 1.0}, {"source": "nnue_main", "target": "nnue_show_main_menu", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L475", "weight": 1.0}, {"source": "nnue_rationale_27", "target": "nnue_get_data_dir", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L27", "weight": 1.0}, {"source": "nnue_rationale_33", "target": "nnue_get_tactical_data_dir", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L33", "weight": 1.0}, {"source": "nnue_rationale_39", "target": "nnue_get_weights_dir", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L39", "weight": 1.0}, {"source": "nnue_rationale_45", "target": "nnue_list_checkpoints", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L45", "weight": 1.0}, {"source": "nnue_rationale_53", "target": "nnue_show_header", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L53", "weight": 1.0}, {"source": "nnue_rationale_66", "target": "nnue_show_checkpoints_table", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L66", "weight": 1.0}, {"source": "nnue_rationale_91", "target": "nnue_show_main_menu", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L91", "weight": 1.0}, {"source": "nnue_rationale_125", "target": "nnue_train_interactive", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L125", "weight": 1.0}, {"source": "nnue_rationale_290", "target": "nnue_burst_train_interactive", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L290", "weight": 1.0}, {"source": "nnue_rationale_366", "target": "nnue_export_interactive", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L366", "weight": 1.0}, {"source": "nnue_rationale_414", "target": "nnue_extract_tactical_interactive", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/nnue.py", "source_location": "L414", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/95ad07c33f9380f7d2ff4d634904b4512fdb49ee53280a5041442574ffde2fc6.json b/graphify-out/cache/95ad07c33f9380f7d2ff4d634904b4512fdb49ee53280a5041442574ffde2fc6.json new file mode 100644 index 0000000..2a7f143 --- /dev/null +++ b/graphify-out/cache/95ad07c33f9380f7d2ff4d634904b4512fdb49ee53280a5041442574ffde2fc6.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_src_main_scala_de_nowchess_bot_util_zobristhash_scala", "label": "ZobristHash.scala", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L1"}, {"id": "zobristhash_zobristhash", "label": "ZobristHash", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L9"}, {"id": "zobristhash_zobristhash_hash", "label": ".hash()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L31"}, {"id": "zobristhash_zobristhash_nexthash", "label": ".nextHash()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L45"}, {"id": "zobristhash_zobristhash_applynormaldelta", "label": ".applyNormalDelta()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L59"}, {"id": "zobristhash_zobristhash_applypromotiondelta", "label": ".applyPromotionDelta()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L66"}, {"id": "zobristhash_zobristhash_applyenpassantdelta", "label": ".applyEnPassantDelta()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L73"}, {"id": "zobristhash_zobristhash_applycastledelta", "label": ".applyCastleDelta()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L81"}, {"id": "zobristhash_zobristhash_promotedpiecetype", "label": ".promotedPieceType()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L102"}, {"id": "zobristhash_zobristhash_togglecastling", "label": ".toggleCastling()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L108"}, {"id": "zobristhash_zobristhash_toggleenpassant", "label": ".toggleEnPassant()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L114"}, {"id": "zobristhash_zobristhash_piecekey", "label": ".pieceKey()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L118"}], "edges": [{"source": "modules_bot_src_main_scala_de_nowchess_bot_util_zobristhash_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_util_zobristhash_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_util_zobristhash_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_util_zobristhash_scala", "target": "scala", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_util_zobristhash_scala", "target": "zobristhash_zobristhash", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L9", "weight": 1.0}, {"source": "zobristhash_zobristhash", "target": "zobristhash_zobristhash_hash", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L31", "weight": 1.0}, {"source": "zobristhash_zobristhash", "target": "zobristhash_zobristhash_nexthash", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L45", "weight": 1.0}, {"source": "zobristhash_zobristhash", "target": "zobristhash_zobristhash_applynormaldelta", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L59", "weight": 1.0}, {"source": "zobristhash_zobristhash", "target": "zobristhash_zobristhash_applypromotiondelta", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L66", "weight": 1.0}, {"source": "zobristhash_zobristhash", "target": "zobristhash_zobristhash_applyenpassantdelta", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L73", "weight": 1.0}, {"source": "zobristhash_zobristhash", "target": "zobristhash_zobristhash_applycastledelta", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L81", "weight": 1.0}, {"source": "zobristhash_zobristhash", "target": "zobristhash_zobristhash_promotedpiecetype", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L102", "weight": 1.0}, {"source": "zobristhash_zobristhash", "target": "zobristhash_zobristhash_togglecastling", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L108", "weight": 1.0}, {"source": "zobristhash_zobristhash", "target": "zobristhash_zobristhash_toggleenpassant", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L114", "weight": 1.0}, {"source": "zobristhash_zobristhash", "target": "zobristhash_zobristhash_piecekey", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L118", "weight": 1.0}, {"source": "zobristhash_zobristhash_nexthash", "target": "zobristhash_zobristhash_togglecastling", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L47", "weight": 1.0}, {"source": "zobristhash_zobristhash_nexthash", "target": "zobristhash_zobristhash_toggleenpassant", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L48", "weight": 1.0}, {"source": "zobristhash_zobristhash_nexthash", "target": "zobristhash_zobristhash_applycastledelta", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L51", "weight": 1.0}, {"source": "zobristhash_zobristhash_nexthash", "target": "zobristhash_zobristhash_applyenpassantdelta", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L53", "weight": 1.0}, {"source": "zobristhash_zobristhash_nexthash", "target": "zobristhash_zobristhash_applypromotiondelta", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L55", "weight": 1.0}, {"source": "zobristhash_zobristhash_nexthash", "target": "zobristhash_zobristhash_applynormaldelta", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L57", "weight": 1.0}, {"source": "zobristhash_zobristhash_applynormaldelta", "target": "zobristhash_zobristhash_piecekey", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L61", "weight": 1.0}, {"source": "zobristhash_zobristhash_applypromotiondelta", "target": "zobristhash_zobristhash_piecekey", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L68", "weight": 1.0}, {"source": "zobristhash_zobristhash_applypromotiondelta", "target": "zobristhash_zobristhash_promotedpiecetype", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L70", "weight": 1.0}, {"source": "zobristhash_zobristhash_applyenpassantdelta", "target": "zobristhash_zobristhash_piecekey", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L76", "weight": 1.0}, {"source": "zobristhash_zobristhash_applycastledelta", "target": "zobristhash_zobristhash_piecekey", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", "source_location": "L100", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/9781853a0a82648a27c9378f8497cd881fd05281a278c4a4fe0f0354ff616472.json b/graphify-out/cache/9781853a0a82648a27c9378f8497cd881fd05281a278c4a4fe0f0354ff616472.json new file mode 100644 index 0000000..5fee22d --- /dev/null +++ b/graphify-out/cache/9781853a0a82648a27c9378f8497cd881fd05281a278c4a4fe0f0354ff616472.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_core_src_main_scala_de_nowchess_chess_engine_gameengine_scala", "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": "L18"}, {"id": "gameengine_pendingpromotion", "label": "PendingPromotion", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L27"}, {"id": "gameengine_gameengine_ispendingpromotion", "label": ".isPendingPromotion()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L37"}, {"id": "gameengine_gameengine_setopponentbot", "label": ".setOpponentBot()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L42"}, {"id": "gameengine_gameengine_clearopponentbot", "label": ".clearOpponentBot()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L48"}, {"id": "gameengine_gameengine_board", "label": ".board()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L54"}, {"id": "gameengine_gameengine_turn", "label": ".turn()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L55"}, {"id": "gameengine_gameengine_context", "label": ".context()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L56"}, {"id": "gameengine_gameengine_canundo", "label": ".canUndo()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L59"}, {"id": "gameengine_gameengine_canredo", "label": ".canRedo()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L62"}, {"id": "gameengine_gameengine_commandhistory", "label": ".commandHistory()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L65"}, {"id": "gameengine_gameengine_processuserinput", "label": ".processUserInput()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L70"}, {"id": "gameengine_gameengine_handleparsedmove", "label": ".handleParsedMove()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L110"}, {"id": "gameengine_gameengine_ispromotionmove", "label": ".isPromotionMove()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L131"}, {"id": "gameengine_gameengine_completepromotion", "label": ".completePromotion()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L139"}, {"id": "gameengine_gameengine_undo", "label": ".undo()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L153"}, {"id": "gameengine_gameengine_redo", "label": ".redo()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L156"}, {"id": "gameengine_gameengine_loadgame", "label": ".loadGame()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L161"}, {"id": "gameengine_gameengine_replaygame", "label": ".replayGame()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L170"}, {"id": "gameengine_gameengine_replaymoves", "label": ".replayMoves()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L181"}, {"id": "gameengine_gameengine_applyreplaymove", "label": ".applyReplayMove()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L188"}, {"id": "gameengine_gameengine_exportgame", "label": ".exportGame()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L199"}, {"id": "gameengine_gameengine_loadposition", "label": ".loadPosition()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L204"}, {"id": "gameengine_gameengine_reset", "label": ".reset()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L212"}, {"id": "gameengine_gameengine_executemove", "label": ".executeMove()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L220"}, {"id": "gameengine_gameengine_translatemovetonotation", "label": ".translateMoveToNotation()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L263"}, {"id": "gameengine_gameengine_enpassantnotation", "label": ".enPassantNotation()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L271"}, {"id": "gameengine_gameengine_promotionnotation", "label": ".promotionNotation()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L274"}, {"id": "gameengine_gameengine_normalmovenotation", "label": ".normalMoveNotation()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L282"}, {"id": "gameengine_gameengine_piecenotation", "label": ".pieceNotation()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L292"}, {"id": "gameengine_gameengine_computecaptured", "label": ".computeCaptured()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L301"}, {"id": "gameengine_gameengine_requestbotmoveifneeded", "label": ".requestBotMoveIfNeeded()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L315"}, {"id": "gameengine_gameengine_applybotmove", "label": ".applyBotMove()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L325"}, {"id": "gameengine_gameengine_handlebotnomove", "label": ".handleBotNoMove()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L350"}, {"id": "gameengine_gameengine_performundo", "label": ".performUndo()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L359"}, {"id": "gameengine_gameengine_performredo", "label": ".performRedo()", "file_type": "code", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L369"}], "edges": [{"source": "modules_core_src_main_scala_de_nowchess_chess_engine_gameengine_scala", "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": "modules_core_src_main_scala_de_nowchess_chess_engine_gameengine_scala", "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": "modules_core_src_main_scala_de_nowchess_chess_engine_gameengine_scala", "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": "modules_core_src_main_scala_de_nowchess_chess_engine_gameengine_scala", "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": "modules_core_src_main_scala_de_nowchess_chess_engine_gameengine_scala", "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": "modules_core_src_main_scala_de_nowchess_chess_engine_gameengine_scala", "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": "modules_core_src_main_scala_de_nowchess_chess_engine_gameengine_scala", "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": "modules_core_src_main_scala_de_nowchess_chess_engine_gameengine_scala", "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": "modules_core_src_main_scala_de_nowchess_chess_engine_gameengine_scala", "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": "modules_core_src_main_scala_de_nowchess_chess_engine_gameengine_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L12", "weight": 1.0}, {"source": "modules_core_src_main_scala_de_nowchess_chess_engine_gameengine_scala", "target": "scala", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L13", "weight": 1.0}, {"source": "modules_core_src_main_scala_de_nowchess_chess_engine_gameengine_scala", "target": "gameengine_gameengine", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L18", "weight": 1.0}, {"source": "modules_core_src_main_scala_de_nowchess_chess_engine_gameengine_scala", "target": "gameengine_pendingpromotion", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L27", "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": "L37", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_setopponentbot", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L42", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_clearopponentbot", "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_board", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L54", "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": "L55", "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": "L56", "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": "L59", "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": "L62", "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": "L65", "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": "L70", "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": "L110", "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": "L131", "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": "L139", "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": "L153", "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": "L156", "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": "L161", "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": "L170", "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": "L181", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_applyreplaymove", "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_exportgame", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L199", "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": "L204", "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": "L212", "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": "L220", "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": "L263", "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": "L271", "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": "L274", "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": "L282", "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": "L292", "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": "L301", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_requestbotmoveifneeded", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L315", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_applybotmove", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L325", "weight": 1.0}, {"source": "gameengine_gameengine", "target": "gameengine_gameengine_handlebotnomove", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L350", "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": "L359", "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": "L369", "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": "L77", "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": "L80", "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": "L107", "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": "L123", "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": "L126", "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": "L129", "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": "L148", "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": "L153", "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": "L156", "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": "L165", "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": "L179", "weight": 1.0}, {"source": "gameengine_gameengine_replaymoves", "target": "gameengine_gameengine_applyreplaymove", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L183", "weight": 1.0}, {"source": "gameengine_gameengine_applyreplaymove", "target": "gameengine_gameengine_handleparsedmove", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L189", "weight": 1.0}, {"source": "gameengine_gameengine_applyreplaymove", "target": "gameengine_gameengine_completepromotion", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L192", "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": "L223", "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": "L230", "weight": 1.0}, {"source": "gameengine_gameengine_executemove", "target": "gameengine_gameengine_requestbotmoveifneeded", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L261", "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": "L267", "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": "L268", "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": "L269", "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": "L288", "weight": 1.0}, {"source": "gameengine_gameengine_requestbotmoveifneeded", "target": "gameengine_gameengine_applybotmove", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L320", "weight": 1.0}, {"source": "gameengine_gameengine_requestbotmoveifneeded", "target": "gameengine_gameengine_handlebotnomove", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L321", "weight": 1.0}, {"source": "gameengine_gameengine_applybotmove", "target": "gameengine_gameengine_completepromotion", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L340", "weight": 1.0}, {"source": "gameengine_gameengine_applybotmove", "target": "gameengine_gameengine_executemove", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", "source_location": "L343", "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": "L365", "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": "L376", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/984a7f5a4eb20a6f587c564d20832e08620a5235512dd3d9a22cf217ecd7ae5f.json b/graphify-out/cache/984a7f5a4eb20a6f587c564d20832e08620a5235512dd3d9a22cf217ecd7ae5f.json new file mode 100644 index 0000000..cf9f882 --- /dev/null +++ b/graphify-out/cache/984a7f5a4eb20a6f587c564d20832e08620a5235512dd3d9a22cf217ecd7ae5f.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_src_main_scala_de_nowchess_bot_botcontroller_scala", "label": "BotController.scala", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/BotController.scala", "source_location": "L1"}, {"id": "botcontroller_botcontroller", "label": "BotController", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/BotController.scala", "source_location": "L5"}, {"id": "botcontroller_botcontroller_getbot", "label": ".getBot()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/BotController.scala", "source_location": "L15"}, {"id": "botcontroller_botcontroller_listbots", "label": ".listBots()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/BotController.scala", "source_location": "L18"}], "edges": [{"source": "modules_bot_src_main_scala_de_nowchess_bot_botcontroller_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/BotController.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_botcontroller_scala", "target": "botcontroller_botcontroller", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/BotController.scala", "source_location": "L5", "weight": 1.0}, {"source": "botcontroller_botcontroller", "target": "botcontroller_botcontroller_getbot", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/BotController.scala", "source_location": "L15", "weight": 1.0}, {"source": "botcontroller_botcontroller", "target": "botcontroller_botcontroller_listbots", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/BotController.scala", "source_location": "L18", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/98c87263efa9fdb1790676738931f02d49a1574c16e529bd7c67cff244f99d6d.json b/graphify-out/cache/98c87263efa9fdb1790676738931f02d49a1574c16e529bd7c67cff244f99d6d.json new file mode 100644 index 0000000..1b81bb9 --- /dev/null +++ b/graphify-out/cache/98c87263efa9fdb1790676738931f02d49a1574c16e529bd7c67cff244f99d6d.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_api_src_test_scala_de_nowchess_api_board_castlingrightstest_scala", "label": "CastlingRightsTest.scala", "file_type": "code", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/CastlingRightsTest.scala", "source_location": "L1"}, {"id": "castlingrightstest_castlingrightstest", "label": "CastlingRightsTest", "file_type": "code", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/CastlingRightsTest.scala", "source_location": "L6"}], "edges": [{"source": "modules_api_src_test_scala_de_nowchess_api_board_castlingrightstest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/CastlingRightsTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_api_src_test_scala_de_nowchess_api_board_castlingrightstest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/CastlingRightsTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_api_src_test_scala_de_nowchess_api_board_castlingrightstest_scala", "target": "castlingrightstest_castlingrightstest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/CastlingRightsTest.scala", "source_location": "L6", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/99bac4aebff37f24217de0d9b0414cc96b8f1bfb23c1458527f61d8cf33ca0b4.json b/graphify-out/cache/99bac4aebff37f24217de0d9b0414cc96b8f1bfb23c1458527f61d8cf33ca0b4.json new file mode 100644 index 0000000..4d84433 --- /dev/null +++ b/graphify-out/cache/99bac4aebff37f24217de0d9b0414cc96b8f1bfb23c1458527f61d8cf33ca0b4.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_ui_src_main_scala_de_nowchess_ui_utils_pieceunicode_scala", "label": "PieceUnicode.scala", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/utils/PieceUnicode.scala", "source_location": "L1"}, {"id": "pieceunicode_unicode", "label": "unicode()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/utils/PieceUnicode.scala", "source_location": "L6"}], "edges": [{"source": "modules_ui_src_main_scala_de_nowchess_ui_utils_pieceunicode_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/utils/PieceUnicode.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_utils_pieceunicode_scala", "target": "pieceunicode_unicode", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/utils/PieceUnicode.scala", "source_location": "L6", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/a05d5ef933c8fb134adb6ab053fb18b4855b367fcffb2547254a4e490522eaf6.json b/graphify-out/cache/a05d5ef933c8fb134adb6ab053fb18b4855b367fcffb2547254a4e490522eaf6.json new file mode 100644 index 0000000..0ff9e03 --- /dev/null +++ b/graphify-out/cache/a05d5ef933c8fb134adb6ab053fb18b4855b367fcffb2547254a4e490522eaf6.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_api_src_test_scala_de_nowchess_api_move_movetest_scala", "label": "MoveTest.scala", "file_type": "code", "source_file": "modules/api/src/test/scala/de/nowchess/api/move/MoveTest.scala", "source_location": "L1"}, {"id": "movetest_movetest", "label": "MoveTest", "file_type": "code", "source_file": "modules/api/src/test/scala/de/nowchess/api/move/MoveTest.scala", "source_location": "L7"}], "edges": [{"source": "modules_api_src_test_scala_de_nowchess_api_move_movetest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/move/MoveTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_api_src_test_scala_de_nowchess_api_move_movetest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/move/MoveTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_api_src_test_scala_de_nowchess_api_move_movetest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/move/MoveTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_api_src_test_scala_de_nowchess_api_move_movetest_scala", "target": "movetest_movetest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/move/MoveTest.scala", "source_location": "L7", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/a21f0706d4fe6d960fd8d9ff594d1cddb1d650907f285693b76e7fa2f8839e10.json b/graphify-out/cache/a21f0706d4fe6d960fd8d9ff594d1cddb1d650907f285693b76e7fa2f8839e10.json new file mode 100644 index 0000000..3db3115 --- /dev/null +++ b/graphify-out/cache/a21f0706d4fe6d960fd8d9ff594d1cddb1d650907f285693b76e7fa2f8839e10.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessgui_scala", "label": "ChessGUI.scala", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessGUI.scala", "source_location": "L1"}, {"id": "chessgui_chessguiapp", "label": "ChessGUIApp", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessGUI.scala", "source_location": "L13"}, {"id": "chessgui_chessguiapp_start", "label": ".start()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessGUI.scala", "source_location": "L15"}, {"id": "chessgui_chessguilauncher", "label": "ChessGUILauncher", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessGUI.scala", "source_location": "L48"}, {"id": "chessgui_chessguilauncher_getengine", "label": ".getEngine()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessGUI.scala", "source_location": "L51"}, {"id": "chessgui_chessguilauncher_launch", "label": ".launch()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessGUI.scala", "source_location": "L53"}], "edges": [{"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessgui_scala", "target": "javafx", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessGUI.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessgui_scala", "target": "javafx", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessGUI.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessgui_scala", "target": "scalafx", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessGUI.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessgui_scala", "target": "scalafx", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessGUI.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessgui_scala", "target": "scalafx", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessGUI.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessgui_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessGUI.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessgui_scala", "target": "chessgui_chessguiapp", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessGUI.scala", "source_location": "L13", "weight": 1.0}, {"source": "chessgui_chessguiapp", "target": "chessgui_chessguiapp_start", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessGUI.scala", "source_location": "L15", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessgui_scala", "target": "chessgui_chessguilauncher", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessGUI.scala", "source_location": "L48", "weight": 1.0}, {"source": "chessgui_chessguilauncher", "target": "chessgui_chessguilauncher_getengine", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessGUI.scala", "source_location": "L51", "weight": 1.0}, {"source": "chessgui_chessguilauncher", "target": "chessgui_chessguilauncher_launch", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessGUI.scala", "source_location": "L53", "weight": 1.0}, {"source": "chessgui_chessguilauncher_launch", "target": "chessgui_chessguiapp_start", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessGUI.scala", "source_location": "L58", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/a3c90ab0aa98f7d67a765d228c8015ac5467c0128edd3dc1cd85f160772876b1.json b/graphify-out/cache/a3c90ab0aa98f7d67a765d228c8015ac5467c0128edd3dc1cd85f160772876b1.json new file mode 100644 index 0000000..c5af165 --- /dev/null +++ b/graphify-out/cache/a3c90ab0aa98f7d67a765d228c8015ac5467c0128edd3dc1cd85f160772876b1.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_core_src_test_scala_de_nowchess_chess_engine_enginetesthelpers_scala", "label": "EngineTestHelpers.scala", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L1"}, {"id": "enginetesthelpers_enginetesthelpers", "label": "EngineTestHelpers", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L10"}, {"id": "enginetesthelpers_enginetesthelpers_makeengine", "label": ".makeEngine()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L12"}, {"id": "enginetesthelpers_enginetesthelpers_makeenginewithboard", "label": ".makeEngineWithBoard()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L15"}, {"id": "enginetesthelpers_enginetesthelpers_loadfen", "label": ".loadFen()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L18"}, {"id": "enginetesthelpers_enginetesthelpers_captureevents", "label": ".captureEvents()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L21"}, {"id": "enginetesthelpers_mockobserver", "label": "MockObserver", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L26"}, {"id": "enginetesthelpers_mockobserver_events", "label": ".events()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L29"}, {"id": "enginetesthelpers_mockobserver_eventcount", "label": ".eventCount()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L30"}, {"id": "enginetesthelpers_mockobserver_hasevent", "label": ".hasEvent()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L31"}, {"id": "enginetesthelpers_mockobserver_getevent", "label": ".getEvent()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L33"}, {"id": "enginetesthelpers_mockobserver_ongameevent", "label": ".onGameEvent()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L36"}, {"id": "enginetesthelpers_mockobserver_clear", "label": ".clear()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L39"}], "edges": [{"source": "modules_core_src_test_scala_de_nowchess_chess_engine_enginetesthelpers_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_enginetesthelpers_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_enginetesthelpers_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_enginetesthelpers_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_enginetesthelpers_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_enginetesthelpers_scala", "target": "scala", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_enginetesthelpers_scala", "target": "enginetesthelpers_enginetesthelpers", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L10", "weight": 1.0}, {"source": "enginetesthelpers_enginetesthelpers", "target": "enginetesthelpers_enginetesthelpers_makeengine", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L12", "weight": 1.0}, {"source": "enginetesthelpers_enginetesthelpers", "target": "enginetesthelpers_enginetesthelpers_makeenginewithboard", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L15", "weight": 1.0}, {"source": "enginetesthelpers_enginetesthelpers", "target": "enginetesthelpers_enginetesthelpers_loadfen", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L18", "weight": 1.0}, {"source": "enginetesthelpers_enginetesthelpers", "target": "enginetesthelpers_enginetesthelpers_captureevents", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L21", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_enginetesthelpers_scala", "target": "enginetesthelpers_mockobserver", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L26", "weight": 1.0}, {"source": "enginetesthelpers_mockobserver", "target": "enginetesthelpers_mockobserver_events", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L29", "weight": 1.0}, {"source": "enginetesthelpers_mockobserver", "target": "enginetesthelpers_mockobserver_eventcount", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L30", "weight": 1.0}, {"source": "enginetesthelpers_mockobserver", "target": "enginetesthelpers_mockobserver_hasevent", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L31", "weight": 1.0}, {"source": "enginetesthelpers_mockobserver", "target": "enginetesthelpers_mockobserver_getevent", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L33", "weight": 1.0}, {"source": "enginetesthelpers_mockobserver", "target": "enginetesthelpers_mockobserver_ongameevent", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L36", "weight": 1.0}, {"source": "enginetesthelpers_mockobserver", "target": "enginetesthelpers_mockobserver_clear", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", "source_location": "L39", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/a6509261c875c9fe0bd6d1ae1d3acef0b51bdce9bdd7b1ecfa65bf36444eca20.json b/graphify-out/cache/a6509261c875c9fe0bd6d1ae1d3acef0b51bdce9bdd7b1ecfa65bf36444eca20.json new file mode 100644 index 0000000..e70c8aa --- /dev/null +++ b/graphify-out/cache/a6509261c875c9fe0bd6d1ae1d3acef0b51bdce9bdd7b1ecfa65bf36444eca20.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_api_src_main_scala_de_nowchess_api_board_color_scala", "label": "Color.scala", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Color.scala", "source_location": "L1"}, {"id": "color_opposite", "label": "opposite()", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Color.scala", "source_location": "L6"}, {"id": "color_label", "label": "label()", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Color.scala", "source_location": "L10"}], "edges": [{"source": "modules_api_src_main_scala_de_nowchess_api_board_color_scala", "target": "color_opposite", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Color.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_api_src_main_scala_de_nowchess_api_board_color_scala", "target": "color_label", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Color.scala", "source_location": "L10", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/a841ec8a713f8476c2217dd78c637d4faa59d74932e190332f2dc66fd794946c.json b/graphify-out/cache/a841ec8a713f8476c2217dd78c637d4faa59d74932e190332f2dc66fd794946c.json new file mode 100644 index 0000000..fed5ca2 --- /dev/null +++ b/graphify-out/cache/a841ec8a713f8476c2217dd78c637d4faa59d74932e190332f2dc66fd794946c.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", "label": "ClassicalBotTest.scala", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L1"}, {"id": "classicalbottest_classicalbottest", "label": "ClassicalBotTest", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L12"}, {"id": "classicalbottest_candidatemoves", "label": "candidateMoves()", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L29"}, {"id": "classicalbottest_legalmoves", "label": "legalMoves()", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L30"}, {"id": "classicalbottest_alllegalmoves", "label": "allLegalMoves()", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L31"}, {"id": "classicalbottest_ischeck", "label": "isCheck()", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L32"}, {"id": "classicalbottest_ischeckmate", "label": "isCheckmate()", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L33"}, {"id": "classicalbottest_isstalemate", "label": "isStalemate()", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L34"}, {"id": "classicalbottest_isinsufficientmaterial", "label": "isInsufficientMaterial()", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L35"}, {"id": "classicalbottest_isfiftymoverule", "label": "isFiftyMoveRule()", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L36"}, {"id": "classicalbottest_applymove", "label": "applyMove()", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L37"}], "edges": [{"source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L9", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L10", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", "target": "classicalbottest_classicalbottest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L12", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", "target": "classicalbottest_candidatemoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L29", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", "target": "classicalbottest_legalmoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L30", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", "target": "classicalbottest_alllegalmoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L31", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", "target": "classicalbottest_ischeck", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L32", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", "target": "classicalbottest_ischeckmate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L33", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", "target": "classicalbottest_isstalemate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L34", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", "target": "classicalbottest_isinsufficientmaterial", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L35", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", "target": "classicalbottest_isfiftymoverule", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L36", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", "target": "classicalbottest_applymove", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L37", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", "target": "classicalbottest_candidatemoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L59", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", "target": "classicalbottest_legalmoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L60", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", "target": "classicalbottest_alllegalmoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L61", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", "target": "classicalbottest_ischeck", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L62", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", "target": "classicalbottest_ischeckmate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L63", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", "target": "classicalbottest_isstalemate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L64", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", "target": "classicalbottest_isinsufficientmaterial", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L65", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", "target": "classicalbottest_isfiftymoverule", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L66", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", "target": "classicalbottest_applymove", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", "source_location": "L67", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/a9517f6918af731c85ce7be5d1eaf9ddb65eb410a954d5fe73d175087ddf59d5.json b/graphify-out/cache/a9517f6918af731c85ce7be5d1eaf9ddb65eb410a954d5fe73d175087ddf59d5.json new file mode 100644 index 0000000..b178576 --- /dev/null +++ b/graphify-out/cache/a9517f6918af731c85ce7be5d1eaf9ddb65eb410a954d5fe73d175087ddf59d5.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_io_src_test_scala_de_nowchess_io_fen_fenparsertest_scala", "label": "FenParserTest.scala", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenParserTest.scala", "source_location": "L1"}, {"id": "fenparsertest_fenparsertest", "label": "FenParserTest", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenParserTest.scala", "source_location": "L7"}], "edges": [{"source": "modules_io_src_test_scala_de_nowchess_io_fen_fenparsertest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenParserTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_fen_fenparsertest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenParserTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_fen_fenparsertest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenParserTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_fen_fenparsertest_scala", "target": "fenparsertest_fenparsertest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenParserTest.scala", "source_location": "L7", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/aa36ce45ea31e5b1092a58783929aa72d1edba7e37da5de544102e50100d4caf.json b/graphify-out/cache/aa36ce45ea31e5b1092a58783929aa72d1edba7e37da5de544102e50100d4caf.json new file mode 100644 index 0000000..9e4456f --- /dev/null +++ b/graphify-out/cache/aa36ce45ea31e5b1092a58783929aa72d1edba7e37da5de544102e50100d4caf.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_api_src_main_scala_de_nowchess_api_player_playerinfo_scala", "label": "PlayerInfo.scala", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/player/PlayerInfo.scala", "source_location": "L1"}, {"id": "playerinfo_playerid", "label": "PlayerId", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/player/PlayerInfo.scala", "source_location": "L9"}, {"id": "playerinfo_playerid_apply", "label": ".apply()", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/player/PlayerInfo.scala", "source_location": "L10"}, {"id": "playerinfo_value", "label": "value()", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/player/PlayerInfo.scala", "source_location": "L11"}, {"id": "playerinfo_playerinfo", "label": "PlayerInfo", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/player/PlayerInfo.scala", "source_location": "L23"}], "edges": [{"source": "modules_api_src_main_scala_de_nowchess_api_player_playerinfo_scala", "target": "playerinfo_playerid", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/player/PlayerInfo.scala", "source_location": "L9", "weight": 1.0}, {"source": "playerinfo_playerid", "target": "playerinfo_playerid_apply", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/player/PlayerInfo.scala", "source_location": "L10", "weight": 1.0}, {"source": "modules_api_src_main_scala_de_nowchess_api_player_playerinfo_scala", "target": "playerinfo_value", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/player/PlayerInfo.scala", "source_location": "L11", "weight": 1.0}, {"source": "modules_api_src_main_scala_de_nowchess_api_player_playerinfo_scala", "target": "playerinfo_playerinfo", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/player/PlayerInfo.scala", "source_location": "L23", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/ae27bd9f47b0ca4e7147df32751a28b0ac6de231f87cd9cb7160cd2de748197b.json b/graphify-out/cache/ae27bd9f47b0ca4e7147df32751a28b0ac6de231f87cd9cb7160cd2de748197b.json new file mode 100644 index 0000000..a2d0cd1 --- /dev/null +++ b/graphify-out/cache/ae27bd9f47b0ca4e7147df32751a28b0ac6de231f87cd9cb7160cd2de748197b.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_src_test_scala_de_nowchess_bot_polyglotbooktest_scala", "label": "PolyglotBookTest.scala", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/PolyglotBookTest.scala", "source_location": "L1"}, {"id": "polyglotbooktest_polyglotbooktest", "label": "PolyglotBookTest", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/PolyglotBookTest.scala", "source_location": "L16"}], "edges": [{"source": "modules_bot_src_test_scala_de_nowchess_bot_polyglotbooktest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/PolyglotBookTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_polyglotbooktest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/PolyglotBookTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_polyglotbooktest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/PolyglotBookTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_polyglotbooktest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/PolyglotBookTest.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_polyglotbooktest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/PolyglotBookTest.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_polyglotbooktest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/PolyglotBookTest.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_polyglotbooktest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/PolyglotBookTest.scala", "source_location": "L9", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_polyglotbooktest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/PolyglotBookTest.scala", "source_location": "L10", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_polyglotbooktest_scala", "target": "java", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/PolyglotBookTest.scala", "source_location": "L12", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_polyglotbooktest_scala", "target": "java", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/PolyglotBookTest.scala", "source_location": "L13", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_polyglotbooktest_scala", "target": "scala", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/PolyglotBookTest.scala", "source_location": "L14", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_polyglotbooktest_scala", "target": "polyglotbooktest_polyglotbooktest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/PolyglotBookTest.scala", "source_location": "L16", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/aed7c49f60c6918fb62fe3cba31e7531bfe2370952b04eae8a3c9dc51c1bd3cc.json b/graphify-out/cache/aed7c49f60c6918fb62fe3cba31e7531bfe2370952b04eae8a3c9dc51c1bd3cc.json new file mode 100644 index 0000000..a4d5883 --- /dev/null +++ b/graphify-out/cache/aed7c49f60c6918fb62fe3cba31e7531bfe2370952b04eae8a3c9dc51c1bd3cc.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_src_main_scala_de_nowchess_bot_util_polyglotbook_scala", "label": "PolyglotBook.scala", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L1"}, {"id": "polyglotbook_polyglotbook", "label": "PolyglotBook", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L19"}, {"id": "polyglotbook_polyglotbook_probe", "label": ".probe()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L34"}, {"id": "polyglotbook_polyglotbook_loadbookfile", "label": ".loadBookFile()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L44"}, {"id": "polyglotbook_polyglotbook_decodemove", "label": ".decodeMove()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L71"}, {"id": "polyglotbook_polyglotbook_iskingmove", "label": ".isKingMove()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L97"}, {"id": "polyglotbook_polyglotbook_isrooksquare", "label": ".isRookSquare()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L102"}, {"id": "polyglotbook_polyglotbook_decodecastling", "label": ".decodeCastling()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L115"}, {"id": "polyglotbook_polyglotbook_weightedrandom", "label": ".weightedRandom()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L123"}, {"id": "polyglotbook_bookentry", "label": "BookEntry", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L137"}], "edges": [{"source": "modules_bot_src_main_scala_de_nowchess_bot_util_polyglotbook_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_util_polyglotbook_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_util_polyglotbook_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_util_polyglotbook_scala", "target": "java", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_util_polyglotbook_scala", "target": "scala", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_util_polyglotbook_scala", "target": "scala", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L9", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_util_polyglotbook_scala", "target": "polyglotbook_polyglotbook", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L19", "weight": 1.0}, {"source": "polyglotbook_polyglotbook", "target": "polyglotbook_polyglotbook_probe", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L34", "weight": 1.0}, {"source": "polyglotbook_polyglotbook", "target": "polyglotbook_polyglotbook_loadbookfile", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L44", "weight": 1.0}, {"source": "polyglotbook_polyglotbook", "target": "polyglotbook_polyglotbook_decodemove", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L71", "weight": 1.0}, {"source": "polyglotbook_polyglotbook", "target": "polyglotbook_polyglotbook_iskingmove", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L97", "weight": 1.0}, {"source": "polyglotbook_polyglotbook", "target": "polyglotbook_polyglotbook_isrooksquare", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L102", "weight": 1.0}, {"source": "polyglotbook_polyglotbook", "target": "polyglotbook_polyglotbook_decodecastling", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L115", "weight": 1.0}, {"source": "polyglotbook_polyglotbook", "target": "polyglotbook_polyglotbook_weightedrandom", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L123", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_util_polyglotbook_scala", "target": "polyglotbook_bookentry", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L137", "weight": 1.0}, {"source": "polyglotbook_polyglotbook_probe", "target": "polyglotbook_polyglotbook_weightedrandom", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L40", "weight": 1.0}, {"source": "polyglotbook_polyglotbook_probe", "target": "polyglotbook_polyglotbook_decodemove", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L41", "weight": 1.0}, {"source": "polyglotbook_polyglotbook_loadbookfile", "target": "polyglotbook_bookentry", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L54", "weight": 1.0}, {"source": "polyglotbook_polyglotbook_decodemove", "target": "polyglotbook_polyglotbook_iskingmove", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L83", "weight": 1.0}, {"source": "polyglotbook_polyglotbook_decodemove", "target": "polyglotbook_polyglotbook_isrooksquare", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L83", "weight": 1.0}, {"source": "polyglotbook_polyglotbook_decodemove", "target": "polyglotbook_polyglotbook_decodecastling", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", "source_location": "L83", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/af8bd28eee6c8733bed8f6e8215856d8842fdc855babc5dead32498b99f012d3.json b/graphify-out/cache/af8bd28eee6c8733bed8f6e8215856d8842fdc855babc5dead32498b99f012d3.json new file mode 100644 index 0000000..4c1ca9b --- /dev/null +++ b/graphify-out/cache/af8bd28eee6c8733bed8f6e8215856d8842fdc855babc5dead32498b99f012d3.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginewithbottest_scala", "label": "GameEngineWithBotTest.scala", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineWithBotTest.scala", "source_location": "L1"}, {"id": "gameenginewithbottest_gameenginewithbottest", "label": "GameEngineWithBotTest", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineWithBotTest.scala", "source_location": "L14"}, {"id": "gameenginewithbottest_ongameevent", "label": "onGameEvent()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineWithBotTest.scala", "source_location": "L29"}], "edges": [{"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginewithbottest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineWithBotTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginewithbottest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineWithBotTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginewithbottest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineWithBotTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginewithbottest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineWithBotTest.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginewithbottest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineWithBotTest.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginewithbottest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineWithBotTest.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginewithbottest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineWithBotTest.scala", "source_location": "L9", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginewithbottest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineWithBotTest.scala", "source_location": "L10", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginewithbottest_scala", "target": "scala", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineWithBotTest.scala", "source_location": "L11", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginewithbottest_scala", "target": "scala", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineWithBotTest.scala", "source_location": "L12", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginewithbottest_scala", "target": "gameenginewithbottest_gameenginewithbottest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineWithBotTest.scala", "source_location": "L14", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginewithbottest_scala", "target": "gameenginewithbottest_ongameevent", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineWithBotTest.scala", "source_location": "L29", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginewithbottest_scala", "target": "gameenginewithbottest_ongameevent", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineWithBotTest.scala", "source_location": "L75", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginewithbottest_scala", "target": "gameenginewithbottest_ongameevent", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineWithBotTest.scala", "source_location": "L99", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/afc0ef04d806fe3e9d7d1f589275ab23a663e8cea0f95dfff6946317b77d28eb.json b/graphify-out/cache/afc0ef04d806fe3e9d7d1f589275ab23a663e8cea0f95dfff6946317b77d28eb.json new file mode 100644 index 0000000..a6aa9bd --- /dev/null +++ b/graphify-out/cache/afc0ef04d806fe3e9d7d1f589275ab23a663e8cea0f95dfff6946317b77d28eb.json @@ -0,0 +1 @@ +{"nodes": [{"id": "jacoco_reporter_test_counter_py", "label": "test_counter.py", "file_type": "code", "source_file": "jacoco-reporter/test_counter.py", "source_location": "L1"}], "edges": [{"source": "jacoco_reporter_test_counter_py", "target": "glob", "relation": "imports", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_counter.py", "source_location": "L1", "weight": 1.0}, {"source": "jacoco_reporter_test_counter_py", "target": "re", "relation": "imports", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_counter.py", "source_location": "L1", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/bc80ee4978559d96ff5d794bf7995129905372d642da765af874e8dc1e9889dd.json b/graphify-out/cache/bc80ee4978559d96ff5d794bf7995129905372d642da765af874e8dc1e9889dd.json new file mode 100644 index 0000000..a52f90b --- /dev/null +++ b/graphify-out/cache/bc80ee4978559d96ff5d794bf7995129905372d642da765af874e8dc1e9889dd.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_io_src_test_scala_de_nowchess_io_json_jsonparsermovetypesuite_scala", "label": "JsonParserMoveTypeSuite.scala", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserMoveTypeSuite.scala", "source_location": "L1"}, {"id": "jsonparsermovetypesuite_jsonparsermovetypesuite", "label": "JsonParserMoveTypeSuite", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserMoveTypeSuite.scala", "source_location": "L9"}], "edges": [{"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonparsermovetypesuite_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserMoveTypeSuite.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonparsermovetypesuite_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserMoveTypeSuite.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonparsermovetypesuite_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserMoveTypeSuite.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonparsermovetypesuite_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserMoveTypeSuite.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonparsermovetypesuite_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserMoveTypeSuite.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonparsermovetypesuite_scala", "target": "jsonparsermovetypesuite_jsonparsermovetypesuite", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserMoveTypeSuite.scala", "source_location": "L9", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/bcd1a9405a6bece84293a2eba1845dfe57ef00d3560ccfcbba0917178b0bf119.json b/graphify-out/cache/bcd1a9405a6bece84293a2eba1845dfe57ef00d3560ccfcbba0917178b0bf119.json new file mode 100644 index 0000000..eb0cf79 --- /dev/null +++ b/graphify-out/cache/bcd1a9405a6bece84293a2eba1845dfe57ef00d3560ccfcbba0917178b0bf119.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_ui_src_main_scala_de_nowchess_ui_terminal_terminalui_scala", "label": "TerminalUI.scala", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/terminal/TerminalUI.scala", "source_location": "L1"}, {"id": "terminalui_terminalui", "label": "TerminalUI", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/terminal/TerminalUI.scala", "source_location": "L12"}, {"id": "terminalui_terminalui_ongameevent", "label": ".onGameEvent()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/terminal/TerminalUI.scala", "source_location": "L17"}, {"id": "terminalui_terminalui_start", "label": ".start()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/terminal/TerminalUI.scala", "source_location": "L77"}, {"id": "terminalui_terminalui_printprompt", "label": ".printPrompt()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/terminal/TerminalUI.scala", "source_location": "L113"}], "edges": [{"source": "modules_ui_src_main_scala_de_nowchess_ui_terminal_terminalui_scala", "target": "scala", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/terminal/TerminalUI.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_terminal_terminalui_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/terminal/TerminalUI.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_terminal_terminalui_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/terminal/TerminalUI.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_terminal_terminalui_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/terminal/TerminalUI.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_terminal_terminalui_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/terminal/TerminalUI.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_terminal_terminalui_scala", "target": "terminalui_terminalui", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/terminal/TerminalUI.scala", "source_location": "L12", "weight": 1.0}, {"source": "terminalui_terminalui", "target": "terminalui_terminalui_ongameevent", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/terminal/TerminalUI.scala", "source_location": "L17", "weight": 1.0}, {"source": "terminalui_terminalui", "target": "terminalui_terminalui_start", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/terminal/TerminalUI.scala", "source_location": "L77", "weight": 1.0}, {"source": "terminalui_terminalui", "target": "terminalui_terminalui_printprompt", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/terminal/TerminalUI.scala", "source_location": "L113", "weight": 1.0}, {"source": "terminalui_terminalui_ongameevent", "target": "terminalui_terminalui_printprompt", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/terminal/TerminalUI.scala", "source_location": "L24", "weight": 1.0}, {"source": "terminalui_terminalui_start", "target": "terminalui_terminalui_printprompt", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/terminal/TerminalUI.scala", "source_location": "L84", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/c000bb1a28720be5f595b15e0f8e0250568c13276250db1a4f0f9c6ff1037462.json b/graphify-out/cache/c000bb1a28720be5f595b15e0f8e0250568c13276250db1a4f0f9c6ff1037462.json new file mode 100644 index 0000000..2b4d6ae --- /dev/null +++ b/graphify-out/cache/c000bb1a28720be5f595b15e0f8e0250568c13276250db1a4f0f9c6ff1037462.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_api_src_main_scala_de_nowchess_api_board_piecetype_scala", "label": "PieceType.scala", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/PieceType.scala", "source_location": "L1"}, {"id": "piecetype_label", "label": "label()", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/PieceType.scala", "source_location": "L6"}], "edges": [{"source": "modules_api_src_main_scala_de_nowchess_api_board_piecetype_scala", "target": "piecetype_label", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/PieceType.scala", "source_location": "L6", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/c320db2058bae25490fe09dc9baf7ef1f1f50143459c8126c3ead8c0c491a0f7.json b/graphify-out/cache/c320db2058bae25490fe09dc9baf7ef1f1f50143459c8126c3ead8c0c491a0f7.json new file mode 100644 index 0000000..c75e358 --- /dev/null +++ b/graphify-out/cache/c320db2058bae25490fe09dc9baf7ef1f1f50143459c8126c3ead8c0c491a0f7.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_src_main_scala_de_nowchess_bot_util_polyglothash_scala", "label": "PolyglotHash.scala", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala", "source_location": "L1"}, {"id": "polyglothash_polyglothash", "label": "PolyglotHash", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala", "source_location": "L6"}, {"id": "polyglothash_polyglothash_hash", "label": ".hash()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala", "source_location": "L169"}, {"id": "polyglothash_polyglothash_pieceindex", "label": ".pieceIndex()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala", "source_location": "L182"}, {"id": "polyglothash_polyglothash_squareindex", "label": ".squareIndex()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala", "source_location": "L193"}, {"id": "polyglothash_polyglothash_cancaptureenpassant", "label": ".canCaptureEnPassant()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala", "source_location": "L196"}], "edges": [{"source": "modules_bot_src_main_scala_de_nowchess_bot_util_polyglothash_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_util_polyglothash_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_util_polyglothash_scala", "target": "polyglothash_polyglothash", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala", "source_location": "L6", "weight": 1.0}, {"source": "polyglothash_polyglothash", "target": "polyglothash_polyglothash_hash", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala", "source_location": "L169", "weight": 1.0}, {"source": "polyglothash_polyglothash", "target": "polyglothash_polyglothash_pieceindex", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala", "source_location": "L182", "weight": 1.0}, {"source": "polyglothash_polyglothash", "target": "polyglothash_polyglothash_squareindex", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala", "source_location": "L193", "weight": 1.0}, {"source": "polyglothash_polyglothash", "target": "polyglothash_polyglothash_cancaptureenpassant", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala", "source_location": "L196", "weight": 1.0}, {"source": "polyglothash_polyglothash_hash", "target": "polyglothash_polyglothash_pieceindex", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala", "source_location": "L171", "weight": 1.0}, {"source": "polyglothash_polyglothash_hash", "target": "polyglothash_polyglothash_squareindex", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala", "source_location": "L171", "weight": 1.0}, {"source": "polyglothash_polyglothash_hash", "target": "polyglothash_polyglothash_cancaptureenpassant", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala", "source_location": "L178", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/c7ecc5453deb5aa881c43ac7c7c8bbaf203a4508af49a285884ffe4eb2922ba9.json b/graphify-out/cache/c7ecc5453deb5aa881c43ac7c7c8bbaf203a4508af49a285884ffe4eb2922ba9.json new file mode 100644 index 0000000..80a0e9b --- /dev/null +++ b/graphify-out/cache/c7ecc5453deb5aa881c43ac7c7c8bbaf203a4508af49a285884ffe4eb2922ba9.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_io_src_main_scala_de_nowchess_io_pgn_pgnexporter_scala", "label": "PgnExporter.scala", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala", "source_location": "L1"}, {"id": "pgnexporter_pgnexporter", "label": "PgnExporter", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala", "source_location": "L9"}, {"id": "pgnexporter_pgnexporter_exportgamecontext", "label": ".exportGameContext()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala", "source_location": "L12"}, {"id": "pgnexporter_pgnexporter_exportgame", "label": ".exportGame()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala", "source_location": "L23"}, {"id": "pgnexporter_pgnexporter_movetoalgebraic", "label": ".moveToAlgebraic()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala", "source_location": "L52"}], "edges": [{"source": "modules_io_src_main_scala_de_nowchess_io_pgn_pgnexporter_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_pgn_pgnexporter_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_pgn_pgnexporter_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_pgn_pgnexporter_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_pgn_pgnexporter_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_pgn_pgnexporter_scala", "target": "pgnexporter_pgnexporter", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala", "source_location": "L9", "weight": 1.0}, {"source": "pgnexporter_pgnexporter", "target": "pgnexporter_pgnexporter_exportgamecontext", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala", "source_location": "L12", "weight": 1.0}, {"source": "pgnexporter_pgnexporter", "target": "pgnexporter_pgnexporter_exportgame", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala", "source_location": "L23", "weight": 1.0}, {"source": "pgnexporter_pgnexporter", "target": "pgnexporter_pgnexporter_movetoalgebraic", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala", "source_location": "L52", "weight": 1.0}, {"source": "pgnexporter_pgnexporter_exportgamecontext", "target": "pgnexporter_pgnexporter_exportgame", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala", "source_location": "L20", "weight": 1.0}, {"source": "pgnexporter_pgnexporter_exportgame", "target": "pgnexporter_pgnexporter_movetoalgebraic", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala", "source_location": "L34", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/c97c2fa9b81ad72879bd088188e7b0adc8f4c4bad721121340771a1e3d80a4dc.json b/graphify-out/cache/c97c2fa9b81ad72879bd088188e7b0adc8f4c4bad721121340771a1e3d80a4dc.json new file mode 100644 index 0000000..3604c7d --- /dev/null +++ b/graphify-out/cache/c97c2fa9b81ad72879bd088188e7b0adc8f4c4bad721121340771a1e3d80a4dc.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_rule_src_test_scala_de_nowchess_rule_defaultrulesstatetransitionstest_scala", "label": "DefaultRulesStateTransitionsTest.scala", "file_type": "code", "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesStateTransitionsTest.scala", "source_location": "L1"}, {"id": "defaultrulesstatetransitionstest_defaultrulesstatetransitionstest", "label": "DefaultRulesStateTransitionsTest", "file_type": "code", "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesStateTransitionsTest.scala", "source_location": "L11"}, {"id": "defaultrulesstatetransitionstest_defaultrulesstatetransitionstest_contextfromfen", "label": ".contextFromFen()", "file_type": "code", "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesStateTransitionsTest.scala", "source_location": "L13"}, {"id": "defaultrulesstatetransitionstest_defaultrulesstatetransitionstest_sq", "label": ".sq()", "file_type": "code", "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesStateTransitionsTest.scala", "source_location": "L16"}], "edges": [{"source": "modules_rule_src_test_scala_de_nowchess_rule_defaultrulesstatetransitionstest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesStateTransitionsTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_rule_src_test_scala_de_nowchess_rule_defaultrulesstatetransitionstest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesStateTransitionsTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_rule_src_test_scala_de_nowchess_rule_defaultrulesstatetransitionstest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesStateTransitionsTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_rule_src_test_scala_de_nowchess_rule_defaultrulesstatetransitionstest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesStateTransitionsTest.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_rule_src_test_scala_de_nowchess_rule_defaultrulesstatetransitionstest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesStateTransitionsTest.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_rule_src_test_scala_de_nowchess_rule_defaultrulesstatetransitionstest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesStateTransitionsTest.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_rule_src_test_scala_de_nowchess_rule_defaultrulesstatetransitionstest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesStateTransitionsTest.scala", "source_location": "L9", "weight": 1.0}, {"source": "modules_rule_src_test_scala_de_nowchess_rule_defaultrulesstatetransitionstest_scala", "target": "defaultrulesstatetransitionstest_defaultrulesstatetransitionstest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesStateTransitionsTest.scala", "source_location": "L11", "weight": 1.0}, {"source": "defaultrulesstatetransitionstest_defaultrulesstatetransitionstest", "target": "defaultrulesstatetransitionstest_defaultrulesstatetransitionstest_contextfromfen", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesStateTransitionsTest.scala", "source_location": "L13", "weight": 1.0}, {"source": "defaultrulesstatetransitionstest_defaultrulesstatetransitionstest", "target": "defaultrulesstatetransitionstest_defaultrulesstatetransitionstest_sq", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesStateTransitionsTest.scala", "source_location": "L16", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/ca15bb168a711c3d00313f547bf7f06a653070440851ec62cf6af15062a867c8.json b/graphify-out/cache/ca15bb168a711c3d00313f547bf7f06a653070440851ec62cf6af15062a867c8.json new file mode 100644 index 0000000..2fc4b08 --- /dev/null +++ b/graphify-out/cache/ca15bb168a711c3d00313f547bf7f06a653070440851ec62cf6af15062a867c8.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_src_main_scala_de_nowchess_bot_ai_evaluation_scala", "label": "Evaluation.scala", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/ai/Evaluation.scala", "source_location": "L1"}, {"id": "evaluation_initaccumulator", "label": "initAccumulator()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/ai/Evaluation.scala", "source_location": "L18"}, {"id": "evaluation_copyaccumulator", "label": "copyAccumulator()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/ai/Evaluation.scala", "source_location": "L21"}, {"id": "evaluation_pushaccumulator", "label": "pushAccumulator()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/ai/Evaluation.scala", "source_location": "L24"}, {"id": "evaluation_evaluateaccumulator", "label": "evaluateAccumulator()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/ai/Evaluation.scala", "source_location": "L29"}], "edges": [{"source": "modules_bot_src_main_scala_de_nowchess_bot_ai_evaluation_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/ai/Evaluation.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_ai_evaluation_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/ai/Evaluation.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_ai_evaluation_scala", "target": "evaluation_initaccumulator", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/ai/Evaluation.scala", "source_location": "L18", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_ai_evaluation_scala", "target": "evaluation_copyaccumulator", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/ai/Evaluation.scala", "source_location": "L21", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_ai_evaluation_scala", "target": "evaluation_pushaccumulator", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/ai/Evaluation.scala", "source_location": "L24", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_ai_evaluation_scala", "target": "evaluation_evaluateaccumulator", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/ai/Evaluation.scala", "source_location": "L29", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/cb2c1869bc469c84c8bcb997a0c4a708840d273deec212db4090a9ca192cd0aa.json b/graphify-out/cache/cb2c1869bc469c84c8bcb997a0c4a708840d273deec212db4090a9ca192cd0aa.json new file mode 100644 index 0000000..32596e8 --- /dev/null +++ b/graphify-out/cache/cb2c1869bc469c84c8bcb997a0c4a708840d273deec212db4090a9ca192cd0aa.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_api_src_test_scala_de_nowchess_api_board_boardtest_scala", "label": "BoardTest.scala", "file_type": "code", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/BoardTest.scala", "source_location": "L1"}, {"id": "boardtest_boardtest", "label": "BoardTest", "file_type": "code", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/BoardTest.scala", "source_location": "L7"}], "edges": [{"source": "modules_api_src_test_scala_de_nowchess_api_board_boardtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/BoardTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_api_src_test_scala_de_nowchess_api_board_boardtest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/BoardTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_api_src_test_scala_de_nowchess_api_board_boardtest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/BoardTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_api_src_test_scala_de_nowchess_api_board_boardtest_scala", "target": "boardtest_boardtest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/BoardTest.scala", "source_location": "L7", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/cb3ef52482536708adf501fbf771e3342835509bbfd8e6ae1f83aa0b4cc7ac74.json b/graphify-out/cache/cb3ef52482536708adf501fbf771e3342835509bbfd8e6ae1f83aa0b4cc7ac74.json new file mode 100644 index 0000000..fff35cc --- /dev/null +++ b/graphify-out/cache/cb3ef52482536708adf501fbf771e3342835509bbfd8e6ae1f83aa0b4cc7ac74.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", "label": "GameEnginePromotionTest.scala", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L1"}, {"id": "gameenginepromotiontest_gameenginepromotiontest", "label": "GameEnginePromotionTest", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L13"}, {"id": "gameenginepromotiontest_gameenginepromotiontest_sq", "label": ".sq()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L15"}, {"id": "gameenginepromotiontest_gameenginepromotiontest_captureevents", "label": ".captureEvents()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L17"}, {"id": "gameenginepromotiontest_gameenginepromotiontest_enginewith", "label": ".engineWith()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L22"}, {"id": "gameenginepromotiontest_candidatemoves", "label": "candidateMoves()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L156"}, {"id": "gameenginepromotiontest_legalmoves", "label": "legalMoves()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L158"}, {"id": "gameenginepromotiontest_alllegalmoves", "label": "allLegalMoves()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L164"}, {"id": "gameenginepromotiontest_ischeck", "label": "isCheck()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L166"}, {"id": "gameenginepromotiontest_ischeckmate", "label": "isCheckmate()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L168"}, {"id": "gameenginepromotiontest_isstalemate", "label": "isStalemate()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L170"}, {"id": "gameenginepromotiontest_isinsufficientmaterial", "label": "isInsufficientMaterial()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L172"}, {"id": "gameenginepromotiontest_isfiftymoverule", "label": "isFiftyMoveRule()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L174"}, {"id": "gameenginepromotiontest_applymove", "label": "applyMove()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L176"}], "edges": [{"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L9", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L10", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L11", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", "target": "gameenginepromotiontest_gameenginepromotiontest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L13", "weight": 1.0}, {"source": "gameenginepromotiontest_gameenginepromotiontest", "target": "gameenginepromotiontest_gameenginepromotiontest_sq", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L15", "weight": 1.0}, {"source": "gameenginepromotiontest_gameenginepromotiontest", "target": "gameenginepromotiontest_gameenginepromotiontest_captureevents", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L17", "weight": 1.0}, {"source": "gameenginepromotiontest_gameenginepromotiontest", "target": "gameenginepromotiontest_gameenginepromotiontest_enginewith", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L22", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", "target": "gameenginepromotiontest_candidatemoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L156", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", "target": "gameenginepromotiontest_legalmoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L158", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", "target": "gameenginepromotiontest_alllegalmoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L164", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", "target": "gameenginepromotiontest_ischeck", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L166", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", "target": "gameenginepromotiontest_ischeckmate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L168", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", "target": "gameenginepromotiontest_isstalemate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L170", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", "target": "gameenginepromotiontest_isinsufficientmaterial", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L172", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", "target": "gameenginepromotiontest_isfiftymoverule", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L174", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", "target": "gameenginepromotiontest_applymove", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", "source_location": "L176", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/cc2be9a1e17b1e7051084d78a5864ed5ceb4dffe9ea71c428ff19a0ac24fc0d4.json b/graphify-out/cache/cc2be9a1e17b1e7051084d78a5864ed5ceb4dffe9ea71c428ff19a0ac24fc0d4.json new file mode 100644 index 0000000..13d1637 --- /dev/null +++ b/graphify-out/cache/cc2be9a1e17b1e7051084d78a5864ed5ceb4dffe9ea71c428ff19a0ac24fc0d4.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_src_main_scala_de_nowchess_bot_logic_moveordering_scala", "label": "MoveOrdering.scala", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L1"}, {"id": "moveordering_moveordering", "label": "MoveOrdering", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L10"}, {"id": "moveordering_orderingcontext", "label": "OrderingContext", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L12"}, {"id": "moveordering_orderingcontext_addkillermove", "label": ".addKillerMove()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L16"}, {"id": "moveordering_orderingcontext_getkillermoves", "label": ".getKillerMoves()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L21"}, {"id": "moveordering_orderingcontext_addhistory", "label": ".addHistory()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L24"}, {"id": "moveordering_orderingcontext_gethistory", "label": ".getHistory()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L28"}, {"id": "moveordering_orderingcontext_clear", "label": ".clear()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L31"}, {"id": "moveordering_moveordering_score", "label": ".score()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L35"}, {"id": "moveordering_moveordering_sort", "label": ".sort()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L53"}, {"id": "moveordering_moveordering_scorequietmove", "label": ".scoreQuietMove()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L62"}, {"id": "moveordering_moveordering_promotioncapturebonus", "label": ".promotionCaptureBonus()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L69"}, {"id": "moveordering_moveordering_capturescore", "label": ".captureScore()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L72"}, {"id": "moveordering_moveordering_mvvlva", "label": ".mvvLva()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L77"}, {"id": "moveordering_moveordering_attackervalue", "label": ".attackerValue()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L80"}, {"id": "moveordering_moveordering_victimvalue", "label": ".victimValue()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L83"}, {"id": "moveordering_moveordering_piecevalue", "label": ".pieceValue()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L90"}, {"id": "moveordering_moveordering_iscapture", "label": ".isCapture()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L98"}, {"id": "moveordering_moveordering_staticexchange", "label": ".staticExchange()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L104"}, {"id": "moveordering_moveordering_movedpieceaftermove", "label": ".movedPieceAfterMove()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L114"}, {"id": "moveordering_moveordering_exchangegain", "label": ".exchangeGain()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L119"}, {"id": "moveordering_moveordering_resolvegain", "label": ".resolveGain()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L128"}, {"id": "moveordering_moveordering_applyseemove", "label": ".applySeeMove()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L135"}, {"id": "moveordering_moveordering_leastvaluableattacker", "label": ".leastValuableAttacker()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L142"}, {"id": "moveordering_moveordering_attackssquare", "label": ".attacksSquare()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L151"}, {"id": "moveordering_moveordering_clearline", "label": ".clearLine()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L169"}, {"id": "moveordering_moveordering_pathclear", "label": ".pathClear()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L175"}, {"id": "moveordering_moveordering_promotionpiecetype", "label": ".promotionPieceType()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L182"}], "edges": [{"source": "modules_bot_src_main_scala_de_nowchess_bot_logic_moveordering_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_logic_moveordering_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_logic_moveordering_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_logic_moveordering_scala", "target": "scala", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_logic_moveordering_scala", "target": "scala", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_logic_moveordering_scala", "target": "moveordering_moveordering", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L10", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_logic_moveordering_scala", "target": "moveordering_orderingcontext", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L12", "weight": 1.0}, {"source": "moveordering_orderingcontext", "target": "moveordering_orderingcontext_addkillermove", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L16", "weight": 1.0}, {"source": "moveordering_orderingcontext", "target": "moveordering_orderingcontext_getkillermoves", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L21", "weight": 1.0}, {"source": "moveordering_orderingcontext", "target": "moveordering_orderingcontext_addhistory", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L24", "weight": 1.0}, {"source": "moveordering_orderingcontext", "target": "moveordering_orderingcontext_gethistory", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L28", "weight": 1.0}, {"source": "moveordering_orderingcontext", "target": "moveordering_orderingcontext_clear", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L31", "weight": 1.0}, {"source": "moveordering_moveordering", "target": "moveordering_moveordering_score", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L35", "weight": 1.0}, {"source": "moveordering_moveordering", "target": "moveordering_moveordering_sort", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L53", "weight": 1.0}, {"source": "moveordering_moveordering", "target": "moveordering_moveordering_scorequietmove", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L62", "weight": 1.0}, {"source": "moveordering_moveordering", "target": "moveordering_moveordering_promotioncapturebonus", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L69", "weight": 1.0}, {"source": "moveordering_moveordering", "target": "moveordering_moveordering_capturescore", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L72", "weight": 1.0}, {"source": "moveordering_moveordering", "target": "moveordering_moveordering_mvvlva", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L77", "weight": 1.0}, {"source": "moveordering_moveordering", "target": "moveordering_moveordering_attackervalue", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L80", "weight": 1.0}, {"source": "moveordering_moveordering", "target": "moveordering_moveordering_victimvalue", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L83", "weight": 1.0}, {"source": "moveordering_moveordering", "target": "moveordering_moveordering_piecevalue", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L90", "weight": 1.0}, {"source": "moveordering_moveordering", "target": "moveordering_moveordering_iscapture", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L98", "weight": 1.0}, {"source": "moveordering_moveordering", "target": "moveordering_moveordering_staticexchange", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L104", "weight": 1.0}, {"source": "moveordering_moveordering", "target": "moveordering_moveordering_movedpieceaftermove", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L114", "weight": 1.0}, {"source": "moveordering_moveordering", "target": "moveordering_moveordering_exchangegain", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L119", "weight": 1.0}, {"source": "moveordering_moveordering", "target": "moveordering_moveordering_resolvegain", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L128", "weight": 1.0}, {"source": "moveordering_moveordering", "target": "moveordering_moveordering_applyseemove", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L135", "weight": 1.0}, {"source": "moveordering_moveordering", "target": "moveordering_moveordering_leastvaluableattacker", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L142", "weight": 1.0}, {"source": "moveordering_moveordering", "target": "moveordering_moveordering_attackssquare", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L151", "weight": 1.0}, {"source": "moveordering_moveordering", "target": "moveordering_moveordering_clearline", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L169", "weight": 1.0}, {"source": "moveordering_moveordering", "target": "moveordering_moveordering_pathclear", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L175", "weight": 1.0}, {"source": "moveordering_moveordering", "target": "moveordering_moveordering_promotionpiecetype", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L182", "weight": 1.0}, {"source": "moveordering_moveordering_score", "target": "moveordering_moveordering_promotioncapturebonus", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L46", "weight": 1.0}, {"source": "moveordering_moveordering_score", "target": "moveordering_moveordering_capturescore", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L48", "weight": 1.0}, {"source": "moveordering_moveordering_score", "target": "moveordering_moveordering_scorequietmove", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L51", "weight": 1.0}, {"source": "moveordering_moveordering_sort", "target": "moveordering_moveordering_score", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L60", "weight": 1.0}, {"source": "moveordering_moveordering_scorequietmove", "target": "moveordering_orderingcontext_getkillermoves", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L63", "weight": 1.0}, {"source": "moveordering_moveordering_scorequietmove", "target": "moveordering_orderingcontext_gethistory", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L66", "weight": 1.0}, {"source": "moveordering_moveordering_promotioncapturebonus", "target": "moveordering_moveordering_iscapture", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L70", "weight": 1.0}, {"source": "moveordering_moveordering_promotioncapturebonus", "target": "moveordering_moveordering_capturescore", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L70", "weight": 1.0}, {"source": "moveordering_moveordering_capturescore", "target": "moveordering_moveordering_staticexchange", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L73", "weight": 1.0}, {"source": "moveordering_moveordering_capturescore", "target": "moveordering_moveordering_mvvlva", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L75", "weight": 1.0}, {"source": "moveordering_moveordering_mvvlva", "target": "moveordering_moveordering_victimvalue", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L78", "weight": 1.0}, {"source": "moveordering_moveordering_mvvlva", "target": "moveordering_moveordering_attackervalue", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L78", "weight": 1.0}, {"source": "moveordering_moveordering_staticexchange", "target": "moveordering_moveordering_iscapture", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L105", "weight": 1.0}, {"source": "moveordering_moveordering_staticexchange", "target": "moveordering_moveordering_victimvalue", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L108", "weight": 1.0}, {"source": "moveordering_moveordering_staticexchange", "target": "moveordering_moveordering_movedpieceaftermove", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L109", "weight": 1.0}, {"source": "moveordering_moveordering_staticexchange", "target": "moveordering_moveordering_applyseemove", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L110", "weight": 1.0}, {"source": "moveordering_moveordering_staticexchange", "target": "moveordering_moveordering_exchangegain", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L111", "weight": 1.0}, {"source": "moveordering_moveordering_staticexchange", "target": "moveordering_moveordering_piecevalue", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L111", "weight": 1.0}, {"source": "moveordering_moveordering_movedpieceaftermove", "target": "moveordering_moveordering_promotionpiecetype", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L116", "weight": 1.0}, {"source": "moveordering_moveordering_exchangegain", "target": "moveordering_moveordering_leastvaluableattacker", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L121", "weight": 1.0}, {"source": "moveordering_moveordering_exchangegain", "target": "moveordering_moveordering_resolvegain", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L122", "weight": 1.0}, {"source": "moveordering_moveordering_exchangegain", "target": "moveordering_moveordering_piecevalue", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L126", "weight": 1.0}, {"source": "moveordering_moveordering_leastvaluableattacker", "target": "moveordering_moveordering_attackssquare", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L145", "weight": 1.0}, {"source": "moveordering_moveordering_leastvaluableattacker", "target": "moveordering_moveordering_piecevalue", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L148", "weight": 1.0}, {"source": "moveordering_moveordering_attackssquare", "target": "moveordering_moveordering_clearline", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L162", "weight": 1.0}, {"source": "moveordering_moveordering_clearline", "target": "moveordering_moveordering_pathclear", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", "source_location": "L173", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/cc9d47cc592d227f206732e226e5420b25100d71272e8a28733073ab48900d27.json b/graphify-out/cache/cc9d47cc592d227f206732e226e5420b25100d71272e8a28733073ab48900d27.json new file mode 100644 index 0000000..877a07e --- /dev/null +++ b/graphify-out/cache/cc9d47cc592d227f206732e226e5420b25100d71272e8a28733073ab48900d27.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_core_src_test_scala_de_nowchess_chess_command_commandinvokerbranchtest_scala", "label": "CommandInvokerBranchTest.scala", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", "source_location": "L1"}, {"id": "commandinvokerbranchtest_commandinvokerbranchtest", "label": "CommandInvokerBranchTest", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", "source_location": "L8"}, {"id": "commandinvokerbranchtest_commandinvokerbranchtest_sq", "label": ".sq()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", "source_location": "L10"}, {"id": "commandinvokerbranchtest_failingcommand", "label": "FailingCommand", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", "source_location": "L12"}, {"id": "commandinvokerbranchtest_failingcommand_execute", "label": ".execute()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", "source_location": "L13"}, {"id": "commandinvokerbranchtest_failingcommand_undo", "label": ".undo()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", "source_location": "L14"}, {"id": "commandinvokerbranchtest_failingcommand_description", "label": ".description()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", "source_location": "L15"}, {"id": "commandinvokerbranchtest_conditionalfailcommand", "label": "ConditionalFailCommand", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", "source_location": "L17"}, {"id": "commandinvokerbranchtest_conditionalfailcommand_execute", "label": ".execute()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", "source_location": "L21"}, {"id": "commandinvokerbranchtest_conditionalfailcommand_undo", "label": ".undo()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", "source_location": "L22"}, {"id": "commandinvokerbranchtest_conditionalfailcommand_description", "label": ".description()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", "source_location": "L23"}, {"id": "commandinvokerbranchtest_commandinvokerbranchtest_createmovecommand", "label": ".createMoveCommand()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", "source_location": "L25"}], "edges": [{"source": "modules_core_src_test_scala_de_nowchess_chess_command_commandinvokerbranchtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_command_commandinvokerbranchtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_command_commandinvokerbranchtest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_command_commandinvokerbranchtest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_command_commandinvokerbranchtest_scala", "target": "commandinvokerbranchtest_commandinvokerbranchtest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", "source_location": "L8", "weight": 1.0}, {"source": "commandinvokerbranchtest_commandinvokerbranchtest", "target": "commandinvokerbranchtest_commandinvokerbranchtest_sq", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", "source_location": "L10", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_command_commandinvokerbranchtest_scala", "target": "commandinvokerbranchtest_failingcommand", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", "source_location": "L12", "weight": 1.0}, {"source": "commandinvokerbranchtest_failingcommand", "target": "commandinvokerbranchtest_failingcommand_execute", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", "source_location": "L13", "weight": 1.0}, {"source": "commandinvokerbranchtest_failingcommand", "target": "commandinvokerbranchtest_failingcommand_undo", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", "source_location": "L14", "weight": 1.0}, {"source": "commandinvokerbranchtest_failingcommand", "target": "commandinvokerbranchtest_failingcommand_description", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", "source_location": "L15", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_command_commandinvokerbranchtest_scala", "target": "commandinvokerbranchtest_conditionalfailcommand", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", "source_location": "L17", "weight": 1.0}, {"source": "commandinvokerbranchtest_conditionalfailcommand", "target": "commandinvokerbranchtest_conditionalfailcommand_execute", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", "source_location": "L21", "weight": 1.0}, {"source": "commandinvokerbranchtest_conditionalfailcommand", "target": "commandinvokerbranchtest_conditionalfailcommand_undo", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", "source_location": "L22", "weight": 1.0}, {"source": "commandinvokerbranchtest_conditionalfailcommand", "target": "commandinvokerbranchtest_conditionalfailcommand_description", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", "source_location": "L23", "weight": 1.0}, {"source": "commandinvokerbranchtest_commandinvokerbranchtest", "target": "commandinvokerbranchtest_commandinvokerbranchtest_createmovecommand", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", "source_location": "L25", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/ce981314731470880ab96fd1638d35d1824782153b805213fe885d2182c0c65d.json b/graphify-out/cache/ce981314731470880ab96fd1638d35d1824782153b805213fe885d2182c0c65d.json new file mode 100644 index 0000000..158cc13 --- /dev/null +++ b/graphify-out/cache/ce981314731470880ab96fd1638d35d1824782153b805213fe885d2182c0c65d.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "label": "AlphaBetaSearchTest.scala", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L1"}, {"id": "alphabetasearchtest_alphabetasearchtest", "label": "AlphaBetaSearchTest", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L13"}, {"id": "alphabetasearchtest_candidatemoves", "label": "candidateMoves()", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L32"}, {"id": "alphabetasearchtest_legalmoves", "label": "legalMoves()", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L33"}, {"id": "alphabetasearchtest_alllegalmoves", "label": "allLegalMoves()", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L34"}, {"id": "alphabetasearchtest_ischeck", "label": "isCheck()", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L35"}, {"id": "alphabetasearchtest_ischeckmate", "label": "isCheckmate()", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L36"}, {"id": "alphabetasearchtest_isstalemate", "label": "isStalemate()", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L37"}, {"id": "alphabetasearchtest_isinsufficientmaterial", "label": "isInsufficientMaterial()", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L38"}, {"id": "alphabetasearchtest_isfiftymoverule", "label": "isFiftyMoveRule()", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L39"}, {"id": "alphabetasearchtest_applymove", "label": "applyMove()", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L40"}], "edges": [{"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L9", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L10", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L11", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_alphabetasearchtest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L13", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_candidatemoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L32", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_legalmoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L33", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_alllegalmoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L34", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_ischeck", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L35", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_ischeckmate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L36", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_isstalemate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L37", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_isinsufficientmaterial", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L38", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_isfiftymoverule", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L39", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_applymove", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L40", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_candidatemoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L79", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_legalmoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L80", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_alllegalmoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L81", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_ischeck", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L82", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_ischeckmate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L83", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_isstalemate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L84", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_isinsufficientmaterial", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L85", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_isfiftymoverule", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L86", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_applymove", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L87", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_candidatemoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L95", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_legalmoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L96", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_alllegalmoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L97", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_ischeck", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L98", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_ischeckmate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L99", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_isstalemate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L100", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_isinsufficientmaterial", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L101", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_isfiftymoverule", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L102", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_applymove", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L103", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_candidatemoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L111", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_legalmoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L112", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_alllegalmoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L113", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_ischeck", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L114", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_ischeckmate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L115", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_isstalemate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L116", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_isinsufficientmaterial", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L117", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_isfiftymoverule", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L118", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_applymove", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L119", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_candidatemoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L137", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_legalmoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L138", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_alllegalmoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L139", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_ischeck", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L140", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_ischeckmate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L141", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_isstalemate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L142", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_isinsufficientmaterial", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L143", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_isfiftymoverule", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L144", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_applymove", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L145", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_candidatemoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L154", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_legalmoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L155", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_alllegalmoves", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L156", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_ischeck", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L157", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_ischeckmate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L158", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_isstalemate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L159", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_isinsufficientmaterial", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L160", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_isfiftymoverule", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L161", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", "target": "alphabetasearchtest_applymove", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", "source_location": "L162", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/d17b9c07f57184d3976f52684edf3f3b84fb308f2b957ffdcdcbb354f6e310bf.json b/graphify-out/cache/d17b9c07f57184d3976f52684edf3f3b84fb308f2b957ffdcdcbb354f6e310bf.json new file mode 100644 index 0000000..035a365 --- /dev/null +++ b/graphify-out/cache/d17b9c07f57184d3976f52684edf3f3b84fb308f2b957ffdcdcbb354f6e310bf.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_api_src_main_scala_de_nowchess_api_response_apiresponse_scala", "label": "ApiResponse.scala", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", "source_location": "L1"}, {"id": "apiresponse_apiresponse", "label": "ApiResponse", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", "source_location": "L12"}, {"id": "apiresponse_success", "label": "Success", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", "source_location": "L14"}, {"id": "apiresponse_failure", "label": "Failure", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", "source_location": "L17"}, {"id": "apiresponse_apiresponse_error", "label": ".error()", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", "source_location": "L20"}, {"id": "apiresponse_apierror", "label": "ApiError", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", "source_location": "L31"}, {"id": "apiresponse_pagination", "label": "Pagination", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", "source_location": "L46"}, {"id": "apiresponse_pagination_totalpages", "label": ".totalPages()", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", "source_location": "L51"}, {"id": "apiresponse_pagedresponse", "label": "PagedResponse", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", "source_location": "L64"}], "edges": [{"source": "modules_api_src_main_scala_de_nowchess_api_response_apiresponse_scala", "target": "apiresponse_apiresponse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", "source_location": "L12", "weight": 1.0}, {"source": "modules_api_src_main_scala_de_nowchess_api_response_apiresponse_scala", "target": "apiresponse_success", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", "source_location": "L14", "weight": 1.0}, {"source": "modules_api_src_main_scala_de_nowchess_api_response_apiresponse_scala", "target": "apiresponse_failure", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", "source_location": "L17", "weight": 1.0}, {"source": "apiresponse_apiresponse", "target": "apiresponse_apiresponse_error", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", "source_location": "L20", "weight": 1.0}, {"source": "modules_api_src_main_scala_de_nowchess_api_response_apiresponse_scala", "target": "apiresponse_apierror", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", "source_location": "L31", "weight": 1.0}, {"source": "modules_api_src_main_scala_de_nowchess_api_response_apiresponse_scala", "target": "apiresponse_pagination", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", "source_location": "L46", "weight": 1.0}, {"source": "apiresponse_pagination", "target": "apiresponse_pagination_totalpages", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", "source_location": "L51", "weight": 1.0}, {"source": "modules_api_src_main_scala_de_nowchess_api_response_apiresponse_scala", "target": "apiresponse_pagedresponse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", "source_location": "L64", "weight": 1.0}, {"source": "apiresponse_apiresponse_error", "target": "apiresponse_failure", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", "source_location": "L20", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/d4473a8506eb10649430bf8514fc44a3bb8b25a076245e98d4fa4483e1850aeb.json b/graphify-out/cache/d4473a8506eb10649430bf8514fc44a3bb8b25a076245e98d4fa4483e1850aeb.json new file mode 100644 index 0000000..190887b --- /dev/null +++ b/graphify-out/cache/d4473a8506eb10649430bf8514fc44a3bb8b25a076245e98d4fa4483e1850aeb.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_api_src_test_scala_de_nowchess_api_board_squaretest_scala", "label": "SquareTest.scala", "file_type": "code", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/SquareTest.scala", "source_location": "L1"}, {"id": "squaretest_squaretest", "label": "SquareTest", "file_type": "code", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/SquareTest.scala", "source_location": "L6"}], "edges": [{"source": "modules_api_src_test_scala_de_nowchess_api_board_squaretest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/SquareTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_api_src_test_scala_de_nowchess_api_board_squaretest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/SquareTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_api_src_test_scala_de_nowchess_api_board_squaretest_scala", "target": "squaretest_squaretest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/board/SquareTest.scala", "source_location": "L6", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/d4734b413a446bcb44670f02f23bc573d48db40162f855e521efc30de3c4dc73.json b/graphify-out/cache/d4734b413a446bcb44670f02f23bc573d48db40162f855e521efc30de3c4dc73.json new file mode 100644 index 0000000..249f40c --- /dev/null +++ b/graphify-out/cache/d4734b413a446bcb44670f02f23bc573d48db40162f855e521efc30de3c4dc73.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_core_src_test_scala_de_nowchess_chess_command_commandinvokertest_scala", "label": "CommandInvokerTest.scala", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerTest.scala", "source_location": "L1"}, {"id": "commandinvokertest_commandinvokertest", "label": "CommandInvokerTest", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerTest.scala", "source_location": "L8"}, {"id": "commandinvokertest_commandinvokertest_sq", "label": ".sq()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerTest.scala", "source_location": "L10"}, {"id": "commandinvokertest_commandinvokertest_createmovecommand", "label": ".createMoveCommand()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerTest.scala", "source_location": "L12"}], "edges": [{"source": "modules_core_src_test_scala_de_nowchess_chess_command_commandinvokertest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_command_commandinvokertest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_command_commandinvokertest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_command_commandinvokertest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerTest.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_command_commandinvokertest_scala", "target": "commandinvokertest_commandinvokertest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerTest.scala", "source_location": "L8", "weight": 1.0}, {"source": "commandinvokertest_commandinvokertest", "target": "commandinvokertest_commandinvokertest_sq", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerTest.scala", "source_location": "L10", "weight": 1.0}, {"source": "commandinvokertest_commandinvokertest", "target": "commandinvokertest_commandinvokertest_createmovecommand", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerTest.scala", "source_location": "L12", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/d7255cadb3e7aec9e30903bc7303b26c5188791f73cb9f1b3aadd4495b5bdabf.json b/graphify-out/cache/d7255cadb3e7aec9e30903bc7303b26c5188791f73cb9f1b3aadd4495b5bdabf.json new file mode 100644 index 0000000..fe8c844 --- /dev/null +++ b/graphify-out/cache/d7255cadb3e7aec9e30903bc7303b26c5188791f73cb9f1b3aadd4495b5bdabf.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_ui_src_main_scala_de_nowchess_ui_gui_guiobserver_scala", "label": "GUIObserver.scala", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/GUIObserver.scala", "source_location": "L1"}, {"id": "guiobserver_guiobserver", "label": "GUIObserver", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/GUIObserver.scala", "source_location": "L12"}, {"id": "guiobserver_guiobserver_ongameevent", "label": ".onGameEvent()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/GUIObserver.scala", "source_location": "L14"}, {"id": "guiobserver_guiobserver_showalert", "label": ".showAlert()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/GUIObserver.scala", "source_location": "L71"}], "edges": [{"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_guiobserver_scala", "target": "scalafx", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/GUIObserver.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_guiobserver_scala", "target": "scalafx", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/GUIObserver.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_guiobserver_scala", "target": "scalafx", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/GUIObserver.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_guiobserver_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/GUIObserver.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_guiobserver_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/GUIObserver.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_gui_guiobserver_scala", "target": "guiobserver_guiobserver", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/GUIObserver.scala", "source_location": "L12", "weight": 1.0}, {"source": "guiobserver_guiobserver", "target": "guiobserver_guiobserver_ongameevent", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/GUIObserver.scala", "source_location": "L14", "weight": 1.0}, {"source": "guiobserver_guiobserver", "target": "guiobserver_guiobserver_showalert", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/GUIObserver.scala", "source_location": "L71", "weight": 1.0}, {"source": "guiobserver_guiobserver_ongameevent", "target": "guiobserver_guiobserver_showalert", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/GUIObserver.scala", "source_location": "L30", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/d857fadefbcb69a975e26a5eaf641cdae572e15d630f26da32bedc5db4d1c993.json b/graphify-out/cache/d857fadefbcb69a975e26a5eaf641cdae572e15d630f26da32bedc5db4d1c993.json new file mode 100644 index 0000000..e9e15f3 --- /dev/null +++ b/graphify-out/cache/d857fadefbcb69a975e26a5eaf641cdae572e15d630f26da32bedc5db4d1c993.json @@ -0,0 +1 @@ +{"nodes": [{"id": "jacoco_reporter_test_gaps_py", "label": "test_gaps.py", "file_type": "code", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L1"}, {"id": "test_gaps_testcase", "label": "TestCase", "file_type": "code", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L28"}, {"id": "test_gaps_short_class", "label": "short_class()", "file_type": "code", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L37"}, {"id": "test_gaps_status", "label": "status()", "file_type": "code", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L41"}, {"id": "test_gaps_suiteresult", "label": "SuiteResult", "file_type": "code", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L52"}, {"id": "test_gaps_passed", "label": "passed()", "file_type": "code", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L62"}, {"id": "test_gaps_is_clean", "label": "is_clean()", "file_type": "code", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L66"}, {"id": "test_gaps_bad_cases", "label": "bad_cases()", "file_type": "code", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L70"}, {"id": "test_gaps_skipped_cases", "label": "skipped_cases()", "file_type": "code", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L74"}, {"id": "test_gaps_moduleresult", "label": "ModuleResult", "file_type": "code", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L79"}, {"id": "test_gaps_total", "label": "total()", "file_type": "code", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L84"}, {"id": "test_gaps_failures", "label": "failures()", "file_type": "code", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L86"}, {"id": "test_gaps_errors", "label": "errors()", "file_type": "code", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L88"}, {"id": "test_gaps_skipped", "label": "skipped()", "file_type": "code", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L90"}, {"id": "test_gaps_parse_suite_xml", "label": "parse_suite_xml()", "file_type": "code", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L109"}, {"id": "test_gaps_load_module", "label": "load_module()", "file_type": "code", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L150"}, {"id": "test_gaps_truncate", "label": "_truncate()", "file_type": "code", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L172"}, {"id": "test_gaps_format_module", "label": "format_module()", "file_type": "code", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L177"}, {"id": "test_gaps_run", "label": "run()", "file_type": "code", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L219"}, {"id": "test_gaps_main", "label": "main()", "file_type": "code", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L260"}], "edges": [{"source": "jacoco_reporter_test_gaps_py", "target": "xml_etree_elementtree", "relation": "imports", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L15", "weight": 1.0}, {"source": "jacoco_reporter_test_gaps_py", "target": "sys", "relation": "imports", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L16", "weight": 1.0}, {"source": "jacoco_reporter_test_gaps_py", "target": "argparse", "relation": "imports", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L17", "weight": 1.0}, {"source": "jacoco_reporter_test_gaps_py", "target": "pathlib", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L18", "weight": 1.0}, {"source": "jacoco_reporter_test_gaps_py", "target": "dataclasses", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L19", "weight": 1.0}, {"source": "jacoco_reporter_test_gaps_py", "target": "typing", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L20", "weight": 1.0}, {"source": "jacoco_reporter_test_gaps_py", "target": "test_gaps_testcase", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L28", "weight": 1.0}, {"source": "jacoco_reporter_test_gaps_py", "target": "test_gaps_short_class", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L37", "weight": 1.0}, {"source": "jacoco_reporter_test_gaps_py", "target": "test_gaps_status", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L41", "weight": 1.0}, {"source": "jacoco_reporter_test_gaps_py", "target": "test_gaps_suiteresult", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L52", "weight": 1.0}, {"source": "jacoco_reporter_test_gaps_py", "target": "test_gaps_passed", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L62", "weight": 1.0}, {"source": "jacoco_reporter_test_gaps_py", "target": "test_gaps_is_clean", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L66", "weight": 1.0}, {"source": "jacoco_reporter_test_gaps_py", "target": "test_gaps_bad_cases", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L70", "weight": 1.0}, {"source": "jacoco_reporter_test_gaps_py", "target": "test_gaps_skipped_cases", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L74", "weight": 1.0}, {"source": "jacoco_reporter_test_gaps_py", "target": "test_gaps_moduleresult", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L79", "weight": 1.0}, {"source": "jacoco_reporter_test_gaps_py", "target": "test_gaps_total", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L84", "weight": 1.0}, {"source": "jacoco_reporter_test_gaps_py", "target": "test_gaps_failures", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L86", "weight": 1.0}, {"source": "jacoco_reporter_test_gaps_py", "target": "test_gaps_errors", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L88", "weight": 1.0}, {"source": "jacoco_reporter_test_gaps_py", "target": "test_gaps_skipped", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L90", "weight": 1.0}, {"source": "jacoco_reporter_test_gaps_py", "target": "test_gaps_passed", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L92", "weight": 1.0}, {"source": "jacoco_reporter_test_gaps_py", "target": "test_gaps_is_clean", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L94", "weight": 1.0}, {"source": "jacoco_reporter_test_gaps_py", "target": "test_gaps_bad_cases", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L97", "weight": 1.0}, {"source": "jacoco_reporter_test_gaps_py", "target": "test_gaps_skipped_cases", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L101", "weight": 1.0}, {"source": "jacoco_reporter_test_gaps_py", "target": "test_gaps_parse_suite_xml", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L109", "weight": 1.0}, {"source": "jacoco_reporter_test_gaps_py", "target": "test_gaps_load_module", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L150", "weight": 1.0}, {"source": "jacoco_reporter_test_gaps_py", "target": "test_gaps_truncate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L172", "weight": 1.0}, {"source": "jacoco_reporter_test_gaps_py", "target": "test_gaps_format_module", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L177", "weight": 1.0}, {"source": "jacoco_reporter_test_gaps_py", "target": "test_gaps_run", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L219", "weight": 1.0}, {"source": "jacoco_reporter_test_gaps_py", "target": "test_gaps_main", "relation": "contains", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L260", "weight": 1.0}, {"source": "test_gaps_parse_suite_xml", "target": "test_gaps_testcase", "relation": "calls", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L135", "weight": 1.0}, {"source": "test_gaps_parse_suite_xml", "target": "test_gaps_suiteresult", "relation": "calls", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L144", "weight": 1.0}, {"source": "test_gaps_load_module", "target": "test_gaps_moduleresult", "relation": "calls", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L159", "weight": 1.0}, {"source": "test_gaps_load_module", "target": "test_gaps_parse_suite_xml", "relation": "calls", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L162", "weight": 1.0}, {"source": "test_gaps_format_module", "target": "test_gaps_truncate", "relation": "calls", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L200", "weight": 1.0}, {"source": "test_gaps_run", "target": "test_gaps_load_module", "relation": "calls", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L241", "weight": 1.0}, {"source": "test_gaps_run", "target": "test_gaps_format_module", "relation": "calls", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L245", "weight": 1.0}, {"source": "test_gaps_main", "target": "test_gaps_run", "relation": "calls", "confidence": "EXTRACTED", "source_file": "jacoco-reporter/test_gaps.py", "source_location": "L284", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/d914b5a8abafc8ae9fb678ce86f1d41d4f2d7d12a5e0f267f18ad58b2851e4d1.json b/graphify-out/cache/d914b5a8abafc8ae9fb678ce86f1d41d4f2d7d12a5e0f267f18ad58b2851e4d1.json new file mode 100644 index 0000000..b403968 --- /dev/null +++ b/graphify-out/cache/d914b5a8abafc8ae9fb678ce86f1d41d4f2d7d12a5e0f267f18ad58b2851e4d1.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_src_test_scala_de_nowchess_bot_moveorderingtest_scala", "label": "MoveOrderingTest.scala", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/MoveOrderingTest.scala", "source_location": "L1"}, {"id": "moveorderingtest_moveorderingtest", "label": "MoveOrderingTest", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/MoveOrderingTest.scala", "source_location": "L10"}], "edges": [{"source": "modules_bot_src_test_scala_de_nowchess_bot_moveorderingtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/MoveOrderingTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_moveorderingtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/MoveOrderingTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_moveorderingtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/MoveOrderingTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_moveorderingtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/MoveOrderingTest.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_moveorderingtest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/MoveOrderingTest.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_moveorderingtest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/MoveOrderingTest.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_moveorderingtest_scala", "target": "moveorderingtest_moveorderingtest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/MoveOrderingTest.scala", "source_location": "L10", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/d916b06d62dcdbcebbce94087c0fbb6d09eea94a7b34dcce33dae60de0455de6.json b/graphify-out/cache/d916b06d62dcdbcebbce94087c0fbb6d09eea94a7b34dcce33dae60de0455de6.json new file mode 100644 index 0000000..b84377c --- /dev/null +++ b/graphify-out/cache/d916b06d62dcdbcebbce94087c0fbb6d09eea94a7b34dcce33dae60de0455de6.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_src_main_scala_de_nowchess_bot_bots_classicalbot_scala", "label": "ClassicalBot.scala", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala", "source_location": "L1"}, {"id": "classicalbot_classicalbot", "label": "ClassicalBot", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala", "source_location": "L12"}, {"id": "classicalbot_classicalbot_nextmove", "label": ".nextMove()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala", "source_location": "L23"}], "edges": [{"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_classicalbot_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_classicalbot_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_classicalbot_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_classicalbot_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_classicalbot_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_classicalbot_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_classicalbot_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala", "source_location": "L9", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_classicalbot_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala", "source_location": "L10", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_classicalbot_scala", "target": "classicalbot_classicalbot", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala", "source_location": "L12", "weight": 1.0}, {"source": "classicalbot_classicalbot", "target": "classicalbot_classicalbot_nextmove", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala", "source_location": "L23", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/d9bbbca94eca7aebbeefef71b723b38af27de2dd29c742d1caf1ade61fb0a0fa.json b/graphify-out/cache/d9bbbca94eca7aebbeefef71b723b38af27de2dd29c742d1caf1ade61fb0a0fa.json new file mode 100644 index 0000000..0ca486b --- /dev/null +++ b/graphify-out/cache/d9bbbca94eca7aebbeefef71b723b38af27de2dd29c742d1caf1ade61fb0a0fa.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_src_test_scala_de_nowchess_bot_evaluationtest_scala", "label": "EvaluationTest.scala", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/EvaluationTest.scala", "source_location": "L1"}, {"id": "evaluationtest_evaluationtest", "label": "EvaluationTest", "file_type": "code", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/EvaluationTest.scala", "source_location": "L10"}], "edges": [{"source": "modules_bot_src_test_scala_de_nowchess_bot_evaluationtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/EvaluationTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_evaluationtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/EvaluationTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_evaluationtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/EvaluationTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_evaluationtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/EvaluationTest.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_evaluationtest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/EvaluationTest.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_evaluationtest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/EvaluationTest.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_bot_src_test_scala_de_nowchess_bot_evaluationtest_scala", "target": "evaluationtest_evaluationtest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/test/scala/de/nowchess/bot/EvaluationTest.scala", "source_location": "L10", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/dc64f2d01a0131b1a809b183ab4368ebca3f2a6e1135bbe6db4bb02e10ce7080.json b/graphify-out/cache/dc64f2d01a0131b1a809b183ab4368ebca3f2a6e1135bbe6db4bb02e10ce7080.json new file mode 100644 index 0000000..8ddcd8b --- /dev/null +++ b/graphify-out/cache/dc64f2d01a0131b1a809b183ab4368ebca3f2a6e1135bbe6db4bb02e10ce7080.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_io_src_test_scala_de_nowchess_io_fen_fenparserfastparsetest_scala", "label": "FenParserFastParseTest.scala", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenParserFastParseTest.scala", "source_location": "L1"}, {"id": "fenparserfastparsetest_fenparserfastparsetest", "label": "FenParserFastParseTest", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenParserFastParseTest.scala", "source_location": "L7"}], "edges": [{"source": "modules_io_src_test_scala_de_nowchess_io_fen_fenparserfastparsetest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenParserFastParseTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_fen_fenparserfastparsetest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenParserFastParseTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_fen_fenparserfastparsetest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenParserFastParseTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_fen_fenparserfastparsetest_scala", "target": "fenparserfastparsetest_fenparserfastparsetest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenParserFastParseTest.scala", "source_location": "L7", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/dceccb432722eda063871efb447514f584f0e45fa3948d338a574f1916ab7b3f.json b/graphify-out/cache/dceccb432722eda063871efb447514f584f0e45fa3948d338a574f1916ab7b3f.json new file mode 100644 index 0000000..360e523 --- /dev/null +++ b/graphify-out/cache/dceccb432722eda063871efb447514f584f0e45fa3948d338a574f1916ab7b3f.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_io_src_test_scala_de_nowchess_io_json_jsonparseredgecasessuite_scala", "label": "JsonParserEdgeCasesSuite.scala", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserEdgeCasesSuite.scala", "source_location": "L1"}, {"id": "jsonparseredgecasessuite_jsonparseredgecasessuite", "label": "JsonParserEdgeCasesSuite", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserEdgeCasesSuite.scala", "source_location": "L8"}], "edges": [{"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonparseredgecasessuite_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserEdgeCasesSuite.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonparseredgecasessuite_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserEdgeCasesSuite.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonparseredgecasessuite_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserEdgeCasesSuite.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonparseredgecasessuite_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserEdgeCasesSuite.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonparseredgecasessuite_scala", "target": "jsonparseredgecasessuite_jsonparseredgecasessuite", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserEdgeCasesSuite.scala", "source_location": "L8", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/ded9e1769d123a8308a6f46f45dd618dc111a81f38d4752803b1bd30d2502f5c.json b/graphify-out/cache/ded9e1769d123a8308a6f46f45dd618dc111a81f38d4752803b1bd30d2502f5c.json new file mode 100644 index 0000000..37e3721 --- /dev/null +++ b/graphify-out/cache/ded9e1769d123a8308a6f46f45dd618dc111a81f38d4752803b1bd30d2502f5c.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_io_build_gradle_kts", "label": "build.gradle.kts", "file_type": "code", "source_file": "modules/io/build.gradle.kts", "source_location": "L1"}], "edges": []} \ No newline at end of file diff --git a/graphify-out/cache/df35dd143dfe131be077b0a3c2393df21016eb9000dc6c0ea0eb81c2c8873f9b.json b/graphify-out/cache/df35dd143dfe131be077b0a3c2393df21016eb9000dc6c0ea0eb81c2c8873f9b.json new file mode 100644 index 0000000..1f4e15b --- /dev/null +++ b/graphify-out/cache/df35dd143dfe131be077b0a3c2393df21016eb9000dc6c0ea0eb81c2c8873f9b.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_io_src_test_scala_de_nowchess_io_json_jsonexporterbranchcoveragesuite_scala", "label": "JsonExporterBranchCoverageSuite.scala", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonExporterBranchCoverageSuite.scala", "source_location": "L1"}, {"id": "jsonexporterbranchcoveragesuite_jsonexporterbranchcoveragesuite", "label": "JsonExporterBranchCoverageSuite", "file_type": "code", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonExporterBranchCoverageSuite.scala", "source_location": "L9"}], "edges": [{"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonexporterbranchcoveragesuite_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonExporterBranchCoverageSuite.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonexporterbranchcoveragesuite_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonExporterBranchCoverageSuite.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonexporterbranchcoveragesuite_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonExporterBranchCoverageSuite.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonexporterbranchcoveragesuite_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonExporterBranchCoverageSuite.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonexporterbranchcoveragesuite_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonExporterBranchCoverageSuite.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_io_src_test_scala_de_nowchess_io_json_jsonexporterbranchcoveragesuite_scala", "target": "jsonexporterbranchcoveragesuite_jsonexporterbranchcoveragesuite", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonExporterBranchCoverageSuite.scala", "source_location": "L9", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/e4db2540041f2f4bb7896bb79a90b8503b75b506fa22c3f41a27032800484b8b.json b/graphify-out/cache/e4db2540041f2f4bb7896bb79a90b8503b75b506fa22c3f41a27032800484b8b.json new file mode 100644 index 0000000..a67aaf5 --- /dev/null +++ b/graphify-out/cache/e4db2540041f2f4bb7896bb79a90b8503b75b506fa22c3f41a27032800484b8b.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineoutcomestest_scala", "label": "GameEngineOutcomesTest.scala", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineOutcomesTest.scala", "source_location": "L1"}, {"id": "gameengineoutcomestest_gameengineoutcomestest", "label": "GameEngineOutcomesTest", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineOutcomesTest.scala", "source_location": "L8"}], "edges": [{"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineoutcomestest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineOutcomesTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineoutcomestest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineOutcomesTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineoutcomestest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineOutcomesTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineoutcomestest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineOutcomesTest.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineoutcomestest_scala", "target": "gameengineoutcomestest_gameengineoutcomestest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineOutcomesTest.scala", "source_location": "L8", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/e6cefa452ad061888e6e74a27e1ff8d64e59d18644c956e2b4937273c76a2e4c.json b/graphify-out/cache/e6cefa452ad061888e6e74a27e1ff8d64e59d18644c956e2b4937273c76a2e4c.json new file mode 100644 index 0000000..a584662 --- /dev/null +++ b/graphify-out/cache/e6cefa452ad061888e6e74a27e1ff8d64e59d18644c956e2b4937273c76a2e4c.json @@ -0,0 +1 @@ +{"nodes": [{"id": "settings_gradle_kts", "label": "settings.gradle.kts", "file_type": "code", "source_file": "settings.gradle.kts", "source_location": "L1"}], "edges": []} \ No newline at end of file diff --git a/graphify-out/cache/e930a3cbb7afc92ff0f9e66201ddddf24d69446eea7ff175f31df188b1f1a8da.json b/graphify-out/cache/e930a3cbb7afc92ff0f9e66201ddddf24d69446eea7ff175f31df188b1f1a8da.json new file mode 100644 index 0000000..08cf404 --- /dev/null +++ b/graphify-out/cache/e930a3cbb7afc92ff0f9e66201ddddf24d69446eea7ff175f31df188b1f1a8da.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_io_src_main_scala_de_nowchess_io_gamefileservice_scala", "label": "GameFileService.scala", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/GameFileService.scala", "source_location": "L1"}, {"id": "gamefileservice_filesystemgameservice", "label": "FileSystemGameService", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/GameFileService.scala", "source_location": "L17"}, {"id": "gamefileservice_filesystemgameservice_savegametofile", "label": ".saveGameToFile()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/GameFileService.scala", "source_location": "L20"}, {"id": "gamefileservice_filesystemgameservice_loadgamefromfile", "label": ".loadGameFromFile()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/GameFileService.scala", "source_location": "L31"}], "edges": [{"source": "modules_io_src_main_scala_de_nowchess_io_gamefileservice_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/GameFileService.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_gamefileservice_scala", "target": "java", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/GameFileService.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_gamefileservice_scala", "target": "java", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/GameFileService.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_gamefileservice_scala", "target": "scala", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/GameFileService.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_gamefileservice_scala", "target": "gamefileservice_filesystemgameservice", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/GameFileService.scala", "source_location": "L17", "weight": 1.0}, {"source": "gamefileservice_filesystemgameservice", "target": "gamefileservice_filesystemgameservice_savegametofile", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/GameFileService.scala", "source_location": "L20", "weight": 1.0}, {"source": "gamefileservice_filesystemgameservice", "target": "gamefileservice_filesystemgameservice_loadgamefromfile", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/GameFileService.scala", "source_location": "L31", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/eaf67afff8986b09c1998e42f48f2dda269630c0b5703decee21e965b442f7ad.json b/graphify-out/cache/eaf67afff8986b09c1998e42f48f2dda269630c0b5703decee21e965b442f7ad.json new file mode 100644 index 0000000..a175982 --- /dev/null +++ b/graphify-out/cache/eaf67afff8986b09c1998e42f48f2dda269630c0b5703decee21e965b442f7ad.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_rule_src_main_scala_de_nowchess_rules_sets_defaultrules_scala", "label": "DefaultRules.scala", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L1"}, {"id": "defaultrules_defaultrules", "label": "DefaultRules", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L12"}, {"id": "defaultrules_defaultrules_pawnforward", "label": ".pawnForward()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L22"}, {"id": "defaultrules_defaultrules_pawnstartrank", "label": ".pawnStartRank()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L23"}, {"id": "defaultrules_defaultrules_pawnpromorank", "label": ".pawnPromoRank()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L24"}, {"id": "defaultrules_defaultrules_candidatemoves", "label": ".candidateMoves()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L28"}, {"id": "defaultrules_defaultrules_legalmoves", "label": ".legalMoves()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L41"}, {"id": "defaultrules_defaultrules_alllegalmoves", "label": ".allLegalMoves()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L46"}, {"id": "defaultrules_defaultrules_ischeck", "label": ".isCheck()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L49"}, {"id": "defaultrules_defaultrules_ischeckmate", "label": ".isCheckmate()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L53"}, {"id": "defaultrules_defaultrules_isstalemate", "label": ".isStalemate()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L56"}, {"id": "defaultrules_defaultrules_isinsufficientmaterial", "label": ".isInsufficientMaterial()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L59"}, {"id": "defaultrules_defaultrules_isfiftymoverule", "label": ".isFiftyMoveRule()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L62"}, {"id": "defaultrules_defaultrules_slidingmoves", "label": ".slidingMoves()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L67"}, {"id": "defaultrules_defaultrules_castray", "label": ".castRay()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L75"}, {"id": "defaultrules_defaultrules_knightcandidates", "label": ".knightCandidates()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L94"}, {"id": "defaultrules_defaultrules_kingcandidates", "label": ".kingCandidates()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L110"}, {"id": "defaultrules_castlingmove", "label": "CastlingMove", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L127"}, {"id": "defaultrules_defaultrules_castlingcandidates", "label": ".castlingCandidates()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L135"}, {"id": "defaultrules_defaultrules_whitecastles", "label": ".whiteCastles()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L144"}, {"id": "defaultrules_defaultrules_blackcastles", "label": ".blackCastles()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L163"}, {"id": "defaultrules_defaultrules_queensidebsquare", "label": ".queensideBSquare()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L182"}, {"id": "defaultrules_defaultrules_addcastlemove", "label": ".addCastleMove()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L188"}, {"id": "defaultrules_defaultrules_squaresempty", "label": ".squaresEmpty()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L214"}, {"id": "defaultrules_defaultrules_pawncandidates", "label": ".pawnCandidates()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L219"}, {"id": "defaultrules_defaultrules_kingsquare", "label": ".kingSquare()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L272"}, {"id": "defaultrules_defaultrules_isattackedby", "label": ".isAttackedBy()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L275"}, {"id": "defaultrules_defaultrules_squareattacks", "label": ".squareAttacks()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L282"}, {"id": "defaultrules_defaultrules_rayreaches", "label": ".rayReaches()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L295"}, {"id": "defaultrules_defaultrules_leaveskingincheck", "label": ".leavesKingInCheck()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L306"}, {"id": "defaultrules_defaultrules_applymove", "label": ".applyMove()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L313"}, {"id": "defaultrules_defaultrules_applycastle", "label": ".applyCastle()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L341"}, {"id": "defaultrules_defaultrules_applyenpassant", "label": ".applyEnPassant()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L354"}, {"id": "defaultrules_defaultrules_applypromotion", "label": ".applyPromotion()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L359"}, {"id": "defaultrules_defaultrules_updatecastlingrights", "label": ".updateCastlingRights()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L367"}, {"id": "defaultrules_defaultrules_computeenpassantsquare", "label": ".computeEnPassantSquare()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L392"}, {"id": "defaultrules_defaultrules_insufficientmaterial", "label": ".insufficientMaterial()", "file_type": "code", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L404"}], "edges": [{"source": "modules_rule_src_main_scala_de_nowchess_rules_sets_defaultrules_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_rule_src_main_scala_de_nowchess_rules_sets_defaultrules_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_rule_src_main_scala_de_nowchess_rules_sets_defaultrules_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_rule_src_main_scala_de_nowchess_rules_sets_defaultrules_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_rule_src_main_scala_de_nowchess_rules_sets_defaultrules_scala", "target": "scala", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_rule_src_main_scala_de_nowchess_rules_sets_defaultrules_scala", "target": "defaultrules_defaultrules", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L12", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_pawnforward", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L22", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_pawnstartrank", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L23", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_pawnpromorank", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L24", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_candidatemoves", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L28", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_legalmoves", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L41", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_alllegalmoves", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L46", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_ischeck", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L49", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_ischeckmate", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L53", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_isstalemate", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L56", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_isinsufficientmaterial", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L59", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_isfiftymoverule", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L62", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_slidingmoves", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L67", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_castray", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L75", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_knightcandidates", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L94", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_kingcandidates", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L110", "weight": 1.0}, {"source": "modules_rule_src_main_scala_de_nowchess_rules_sets_defaultrules_scala", "target": "defaultrules_castlingmove", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L127", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_castlingcandidates", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L135", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_whitecastles", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L144", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_blackcastles", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L163", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_queensidebsquare", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L182", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_addcastlemove", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L188", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_squaresempty", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L214", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_pawncandidates", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L219", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_kingsquare", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L272", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_isattackedby", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L275", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_squareattacks", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L282", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_rayreaches", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L295", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_leaveskingincheck", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L306", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_applymove", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L313", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_applycastle", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L341", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_applyenpassant", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L354", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_applypromotion", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L359", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_updatecastlingrights", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L367", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_computeenpassantsquare", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L392", "weight": 1.0}, {"source": "defaultrules_defaultrules", "target": "defaultrules_defaultrules_insufficientmaterial", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L404", "weight": 1.0}, {"source": "defaultrules_defaultrules_candidatemoves", "target": "defaultrules_defaultrules_pawncandidates", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L33", "weight": 1.0}, {"source": "defaultrules_defaultrules_candidatemoves", "target": "defaultrules_defaultrules_knightcandidates", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L34", "weight": 1.0}, {"source": "defaultrules_defaultrules_candidatemoves", "target": "defaultrules_defaultrules_slidingmoves", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L35", "weight": 1.0}, {"source": "defaultrules_defaultrules_candidatemoves", "target": "defaultrules_defaultrules_kingcandidates", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L38", "weight": 1.0}, {"source": "defaultrules_defaultrules_legalmoves", "target": "defaultrules_defaultrules_candidatemoves", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L42", "weight": 1.0}, {"source": "defaultrules_defaultrules_legalmoves", "target": "defaultrules_defaultrules_leaveskingincheck", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L43", "weight": 1.0}, {"source": "defaultrules_defaultrules_alllegalmoves", "target": "defaultrules_defaultrules_legalmoves", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L47", "weight": 1.0}, {"source": "defaultrules_defaultrules_ischeck", "target": "defaultrules_defaultrules_kingsquare", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L50", "weight": 1.0}, {"source": "defaultrules_defaultrules_ischeck", "target": "defaultrules_defaultrules_isattackedby", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L51", "weight": 1.0}, {"source": "defaultrules_defaultrules_ischeckmate", "target": "defaultrules_defaultrules_ischeck", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L54", "weight": 1.0}, {"source": "defaultrules_defaultrules_ischeckmate", "target": "defaultrules_defaultrules_alllegalmoves", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L54", "weight": 1.0}, {"source": "defaultrules_defaultrules_isstalemate", "target": "defaultrules_defaultrules_ischeck", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L57", "weight": 1.0}, {"source": "defaultrules_defaultrules_isstalemate", "target": "defaultrules_defaultrules_alllegalmoves", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L57", "weight": 1.0}, {"source": "defaultrules_defaultrules_isinsufficientmaterial", "target": "defaultrules_defaultrules_insufficientmaterial", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L60", "weight": 1.0}, {"source": "defaultrules_defaultrules_slidingmoves", "target": "defaultrules_defaultrules_castray", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L73", "weight": 1.0}, {"source": "defaultrules_defaultrules_kingcandidates", "target": "defaultrules_defaultrules_castlingcandidates", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L123", "weight": 1.0}, {"source": "defaultrules_defaultrules_castlingcandidates", "target": "defaultrules_defaultrules_whitecastles", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L141", "weight": 1.0}, {"source": "defaultrules_defaultrules_castlingcandidates", "target": "defaultrules_defaultrules_blackcastles", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L142", "weight": 1.0}, {"source": "defaultrules_defaultrules_whitecastles", "target": "defaultrules_defaultrules_addcastlemove", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L149", "weight": 1.0}, {"source": "defaultrules_defaultrules_whitecastles", "target": "defaultrules_castlingmove", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L153", "weight": 1.0}, {"source": "defaultrules_defaultrules_blackcastles", "target": "defaultrules_defaultrules_addcastlemove", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L168", "weight": 1.0}, {"source": "defaultrules_defaultrules_blackcastles", "target": "defaultrules_castlingmove", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L172", "weight": 1.0}, {"source": "defaultrules_defaultrules_addcastlemove", "target": "defaultrules_defaultrules_queensidebsquare", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L195", "weight": 1.0}, {"source": "defaultrules_defaultrules_addcastlemove", "target": "defaultrules_defaultrules_squaresempty", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L197", "weight": 1.0}, {"source": "defaultrules_defaultrules_addcastlemove", "target": "defaultrules_defaultrules_isattackedby", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L208", "weight": 1.0}, {"source": "defaultrules_defaultrules_pawncandidates", "target": "defaultrules_defaultrules_pawnforward", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L224", "weight": 1.0}, {"source": "defaultrules_defaultrules_pawncandidates", "target": "defaultrules_defaultrules_pawnstartrank", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L225", "weight": 1.0}, {"source": "defaultrules_defaultrules_pawncandidates", "target": "defaultrules_defaultrules_pawnpromorank", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L226", "weight": 1.0}, {"source": "defaultrules_defaultrules_isattackedby", "target": "defaultrules_defaultrules_squareattacks", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L278", "weight": 1.0}, {"source": "defaultrules_defaultrules_squareattacks", "target": "defaultrules_defaultrules_pawnforward", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L283", "weight": 1.0}, {"source": "defaultrules_defaultrules_squareattacks", "target": "defaultrules_defaultrules_rayreaches", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L289", "weight": 1.0}, {"source": "defaultrules_defaultrules_leaveskingincheck", "target": "defaultrules_defaultrules_applymove", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L307", "weight": 1.0}, {"source": "defaultrules_defaultrules_leaveskingincheck", "target": "defaultrules_defaultrules_ischeck", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L309", "weight": 1.0}, {"source": "defaultrules_defaultrules_applymove", "target": "defaultrules_defaultrules_applycastle", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L318", "weight": 1.0}, {"source": "defaultrules_defaultrules_applymove", "target": "defaultrules_defaultrules_applyenpassant", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L320", "weight": 1.0}, {"source": "defaultrules_defaultrules_applymove", "target": "defaultrules_defaultrules_applypromotion", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L321", "weight": 1.0}, {"source": "defaultrules_defaultrules_applymove", "target": "defaultrules_defaultrules_updatecastlingrights", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L324", "weight": 1.0}, {"source": "defaultrules_defaultrules_applymove", "target": "defaultrules_defaultrules_computeenpassantsquare", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L325", "weight": 1.0}, {"source": "defaultrules_defaultrules_applyenpassant", "target": "defaultrules_defaultrules_applymove", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", "source_location": "L357", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/eb67414c8d42d51828587ba3bb9893ccfe0cbe40c3230fa2db830a93eae7eb6a.json b/graphify-out/cache/eb67414c8d42d51828587ba3bb9893ccfe0cbe40c3230fa2db830a93eae7eb6a.json new file mode 100644 index 0000000..600b2c1 --- /dev/null +++ b/graphify-out/cache/eb67414c8d42d51828587ba3bb9893ccfe0cbe40c3230fa2db830a93eae7eb6a.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnue_nnue_scala", "label": "NNUE.scala", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L1"}, {"id": "nnue_nnue", "label": "NNUE", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L9"}, {"id": "nnue_nnue_loadweights", "label": ".loadWeights()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L22"}, {"id": "nnue_nnue_readtensor", "label": ".readTensor()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L61"}, {"id": "nnue_nnue_squarenum", "label": ".squareNum()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L90"}, {"id": "nnue_nnue_featureindex", "label": ".featureIndex()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L92"}, {"id": "nnue_nnue_addcolumn", "label": ".addColumn()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L96"}, {"id": "nnue_nnue_subtractcolumn", "label": ".subtractColumn()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L100"}, {"id": "nnue_nnue_initaccumulator", "label": ".initAccumulator()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L107"}, {"id": "nnue_nnue_pushaccumulator", "label": ".pushAccumulator()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L114"}, {"id": "nnue_nnue_copyaccumulator", "label": ".copyAccumulator()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L124"}, {"id": "nnue_nnue_applynormaldelta", "label": ".applyNormalDelta()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L127"}, {"id": "nnue_nnue_applyenpassantdelta", "label": ".applyEnPassantDelta()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L136"}, {"id": "nnue_nnue_applycastledelta", "label": ".applyCastleDelta()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L144"}, {"id": "nnue_nnue_applypromotiondelta", "label": ".applyPromotionDelta()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L158"}, {"id": "nnue_nnue_promotedtype", "label": ".promotedType()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L166"}, {"id": "nnue_nnue_evaluateatply", "label": ".evaluateAtPly()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L177"}, {"id": "nnue_nnue_runl2tooutput", "label": ".runL2toOutput()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L186"}, {"id": "nnue_nnue_rundenserelu", "label": ".runDenseReLU()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L194"}, {"id": "nnue_nnue_runoutputlayer", "label": ".runOutputLayer()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L206"}, {"id": "nnue_nnue_scorefromoutput", "label": ".scoreFromOutput()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L209"}, {"id": "nnue_nnue_evaluate", "label": ".evaluate()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L226"}, {"id": "nnue_nnue_benchmark", "label": ".benchmark()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L233"}], "edges": [{"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnue_nnue_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnue_nnue_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnue_nnue_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnue_nnue_scala", "target": "java", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnue_nnue_scala", "target": "java", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnue_nnue_scala", "target": "nnue_nnue", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L9", "weight": 1.0}, {"source": "nnue_nnue", "target": "nnue_nnue_loadweights", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L22", "weight": 1.0}, {"source": "nnue_nnue", "target": "nnue_nnue_readtensor", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L61", "weight": 1.0}, {"source": "nnue_nnue", "target": "nnue_nnue_squarenum", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L90", "weight": 1.0}, {"source": "nnue_nnue", "target": "nnue_nnue_featureindex", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L92", "weight": 1.0}, {"source": "nnue_nnue", "target": "nnue_nnue_addcolumn", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L96", "weight": 1.0}, {"source": "nnue_nnue", "target": "nnue_nnue_subtractcolumn", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L100", "weight": 1.0}, {"source": "nnue_nnue", "target": "nnue_nnue_initaccumulator", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L107", "weight": 1.0}, {"source": "nnue_nnue", "target": "nnue_nnue_pushaccumulator", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L114", "weight": 1.0}, {"source": "nnue_nnue", "target": "nnue_nnue_copyaccumulator", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L124", "weight": 1.0}, {"source": "nnue_nnue", "target": "nnue_nnue_applynormaldelta", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L127", "weight": 1.0}, {"source": "nnue_nnue", "target": "nnue_nnue_applyenpassantdelta", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L136", "weight": 1.0}, {"source": "nnue_nnue", "target": "nnue_nnue_applycastledelta", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L144", "weight": 1.0}, {"source": "nnue_nnue", "target": "nnue_nnue_applypromotiondelta", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L158", "weight": 1.0}, {"source": "nnue_nnue", "target": "nnue_nnue_promotedtype", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L166", "weight": 1.0}, {"source": "nnue_nnue", "target": "nnue_nnue_evaluateatply", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L177", "weight": 1.0}, {"source": "nnue_nnue", "target": "nnue_nnue_runl2tooutput", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L186", "weight": 1.0}, {"source": "nnue_nnue", "target": "nnue_nnue_rundenserelu", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L194", "weight": 1.0}, {"source": "nnue_nnue", "target": "nnue_nnue_runoutputlayer", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L206", "weight": 1.0}, {"source": "nnue_nnue", "target": "nnue_nnue_scorefromoutput", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L209", "weight": 1.0}, {"source": "nnue_nnue", "target": "nnue_nnue_evaluate", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L226", "weight": 1.0}, {"source": "nnue_nnue", "target": "nnue_nnue_benchmark", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L233", "weight": 1.0}, {"source": "nnue_nnue_loadweights", "target": "nnue_nnue_readtensor", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L47", "weight": 1.0}, {"source": "nnue_nnue_initaccumulator", "target": "nnue_nnue_addcolumn", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L109", "weight": 1.0}, {"source": "nnue_nnue_initaccumulator", "target": "nnue_nnue_featureindex", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L109", "weight": 1.0}, {"source": "nnue_nnue_initaccumulator", "target": "nnue_nnue_squarenum", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L109", "weight": 1.0}, {"source": "nnue_nnue_pushaccumulator", "target": "nnue_nnue_applynormaldelta", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L118", "weight": 1.0}, {"source": "nnue_nnue_pushaccumulator", "target": "nnue_nnue_applyenpassantdelta", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L119", "weight": 1.0}, {"source": "nnue_nnue_pushaccumulator", "target": "nnue_nnue_applycastledelta", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L120", "weight": 1.0}, {"source": "nnue_nnue_pushaccumulator", "target": "nnue_nnue_applypromotiondelta", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L121", "weight": 1.0}, {"source": "nnue_nnue_applynormaldelta", "target": "nnue_nnue_squarenum", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L129", "weight": 1.0}, {"source": "nnue_nnue_applynormaldelta", "target": "nnue_nnue_subtractcolumn", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L131", "weight": 1.0}, {"source": "nnue_nnue_applynormaldelta", "target": "nnue_nnue_featureindex", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L131", "weight": 1.0}, {"source": "nnue_nnue_applynormaldelta", "target": "nnue_nnue_addcolumn", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L133", "weight": 1.0}, {"source": "nnue_nnue_applyenpassantdelta", "target": "nnue_nnue_subtractcolumn", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L139", "weight": 1.0}, {"source": "nnue_nnue_applyenpassantdelta", "target": "nnue_nnue_featureindex", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L139", "weight": 1.0}, {"source": "nnue_nnue_applyenpassantdelta", "target": "nnue_nnue_squarenum", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L139", "weight": 1.0}, {"source": "nnue_nnue_applyenpassantdelta", "target": "nnue_nnue_addcolumn", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L141", "weight": 1.0}, {"source": "nnue_nnue_applycastledelta", "target": "nnue_nnue_subtractcolumn", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L152", "weight": 1.0}, {"source": "nnue_nnue_applycastledelta", "target": "nnue_nnue_featureindex", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L152", "weight": 1.0}, {"source": "nnue_nnue_applycastledelta", "target": "nnue_nnue_squarenum", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L152", "weight": 1.0}, {"source": "nnue_nnue_applycastledelta", "target": "nnue_nnue_addcolumn", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L153", "weight": 1.0}, {"source": "nnue_nnue_applypromotiondelta", "target": "nnue_nnue_squarenum", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L160", "weight": 1.0}, {"source": "nnue_nnue_applypromotiondelta", "target": "nnue_nnue_subtractcolumn", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L161", "weight": 1.0}, {"source": "nnue_nnue_applypromotiondelta", "target": "nnue_nnue_featureindex", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L161", "weight": 1.0}, {"source": "nnue_nnue_applypromotiondelta", "target": "nnue_nnue_addcolumn", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L163", "weight": 1.0}, {"source": "nnue_nnue_applypromotiondelta", "target": "nnue_nnue_promotedtype", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L163", "weight": 1.0}, {"source": "nnue_nnue_evaluateatply", "target": "nnue_nnue_runl2tooutput", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L181", "weight": 1.0}, {"source": "nnue_nnue_runl2tooutput", "target": "nnue_nnue_rundenserelu", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L188", "weight": 1.0}, {"source": "nnue_nnue_runl2tooutput", "target": "nnue_nnue_runoutputlayer", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L191", "weight": 1.0}, {"source": "nnue_nnue_runl2tooutput", "target": "nnue_nnue_scorefromoutput", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L192", "weight": 1.0}, {"source": "nnue_nnue_evaluate", "target": "nnue_nnue_addcolumn", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L229", "weight": 1.0}, {"source": "nnue_nnue_evaluate", "target": "nnue_nnue_featureindex", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L229", "weight": 1.0}, {"source": "nnue_nnue_evaluate", "target": "nnue_nnue_squarenum", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L229", "weight": 1.0}, {"source": "nnue_nnue_evaluate", "target": "nnue_nnue_runl2tooutput", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L230", "weight": 1.0}, {"source": "nnue_nnue_benchmark", "target": "nnue_nnue_evaluate", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", "source_location": "L236", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/ec88899de8be6174a967d2a91d49faefec76cf285dcaf2b50c1632f76fc0ee9a.json b/graphify-out/cache/ec88899de8be6174a967d2a91d49faefec76cf285dcaf2b50c1632f76fc0ee9a.json new file mode 100644 index 0000000..18b327f --- /dev/null +++ b/graphify-out/cache/ec88899de8be6174a967d2a91d49faefec76cf285dcaf2b50c1632f76fc0ee9a.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_ui_src_main_scala_de_nowchess_ui_utils_renderer_scala", "label": "Renderer.scala", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/utils/Renderer.scala", "source_location": "L1"}, {"id": "renderer_renderer", "label": "Renderer", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/utils/Renderer.scala", "source_location": "L5"}, {"id": "renderer_renderer_render", "label": ".render()", "file_type": "code", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/utils/Renderer.scala", "source_location": "L13"}], "edges": [{"source": "modules_ui_src_main_scala_de_nowchess_ui_utils_renderer_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/utils/Renderer.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_ui_src_main_scala_de_nowchess_ui_utils_renderer_scala", "target": "renderer_renderer", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/utils/Renderer.scala", "source_location": "L5", "weight": 1.0}, {"source": "renderer_renderer", "target": "renderer_renderer_render", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/ui/src/main/scala/de/nowchess/ui/utils/Renderer.scala", "source_location": "L13", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/ec8b17bc8c05ffb27c11731e7692ed2c2a593f3808cfb2031e9aa7f00964339a.json b/graphify-out/cache/ec8b17bc8c05ffb27c11731e7692ed2c2a593f3808cfb2031e9aa7f00964339a.json new file mode 100644 index 0000000..da180d8 --- /dev/null +++ b/graphify-out/cache/ec8b17bc8c05ffb27c11731e7692ed2c2a593f3808cfb2031e9aa7f00964339a.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnuebot_scala", "label": "NNUEBot.scala", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/NNUEBot.scala", "source_location": "L1"}, {"id": "nnuebot_nnuebot", "label": "NNUEBot", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/NNUEBot.scala", "source_location": "L12"}, {"id": "nnuebot_nnuebot_nextmove", "label": ".nextMove()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/NNUEBot.scala", "source_location": "L22"}, {"id": "nnuebot_nnuebot_allocatetime", "label": ".allocateTime()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/NNUEBot.scala", "source_location": "L28"}], "edges": [{"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnuebot_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/NNUEBot.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnuebot_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/NNUEBot.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnuebot_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/NNUEBot.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnuebot_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/NNUEBot.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnuebot_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/NNUEBot.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnuebot_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/NNUEBot.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnuebot_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/NNUEBot.scala", "source_location": "L9", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnuebot_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/NNUEBot.scala", "source_location": "L10", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnuebot_scala", "target": "nnuebot_nnuebot", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/NNUEBot.scala", "source_location": "L12", "weight": 1.0}, {"source": "nnuebot_nnuebot", "target": "nnuebot_nnuebot_nextmove", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/NNUEBot.scala", "source_location": "L22", "weight": 1.0}, {"source": "nnuebot_nnuebot", "target": "nnuebot_nnuebot_allocatetime", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/NNUEBot.scala", "source_location": "L28", "weight": 1.0}, {"source": "nnuebot_nnuebot_nextmove", "target": "nnuebot_nnuebot_allocatetime", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/NNUEBot.scala", "source_location": "L25", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/ee1c28f84c99746fe1c3774d84854b8ab7b9e45f6422dfed9fc070e6c38f3038.json b/graphify-out/cache/ee1c28f84c99746fe1c3774d84854b8ab7b9e45f6422dfed9fc070e6c38f3038.json new file mode 100644 index 0000000..1f8211c --- /dev/null +++ b/graphify-out/cache/ee1c28f84c99746fe1c3774d84854b8ab7b9e45f6422dfed9fc070e6c38f3038.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_python_src_tactical_positions_extractor_py", "label": "tactical_positions_extractor.py", "file_type": "code", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L1"}, {"id": "tactical_positions_extractor_download_and_extract_puzzle_db", "label": "download_and_extract_puzzle_db()", "file_type": "code", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L18"}, {"id": "tactical_positions_extractor_extract_puzzle_positions", "label": "extract_puzzle_positions()", "file_type": "code", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L56"}, {"id": "tactical_positions_extractor_load_positions_from_file", "label": "load_positions_from_file()", "file_type": "code", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L104"}, {"id": "tactical_positions_extractor_merge_positions", "label": "merge_positions()", "file_type": "code", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L120"}, {"id": "tactical_positions_extractor_interactive_merge_positions", "label": "interactive_merge_positions()", "file_type": "code", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L144"}, {"id": "tactical_positions_extractor_rationale_22", "label": "Download and extract the Lichess puzzle database.", "file_type": "rationale", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L22"}, {"id": "tactical_positions_extractor_rationale_60", "label": "Extract the position BEFORE the blunder from each puzzle. This is exactly th", "file_type": "rationale", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L60"}, {"id": "tactical_positions_extractor_rationale_105", "label": "Load positions from a text file (one FEN per line).", "file_type": "rationale", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L105"}, {"id": "tactical_positions_extractor_rationale_125", "label": "Merge two position sets and write to file.", "file_type": "rationale", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L125"}, {"id": "tactical_positions_extractor_rationale_149", "label": "Interactive workflow: extract tactical positions and merge with user selection.", "file_type": "rationale", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L149"}], "edges": [{"source": "modules_bot_python_src_tactical_positions_extractor_py", "target": "chess", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L1", "weight": 1.0}, {"source": "modules_bot_python_src_tactical_positions_extractor_py", "target": "csv", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L2", "weight": 1.0}, {"source": "modules_bot_python_src_tactical_positions_extractor_py", "target": "json", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L3", "weight": 1.0}, {"source": "modules_bot_python_src_tactical_positions_extractor_py", "target": "sys", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L4", "weight": 1.0}, {"source": "modules_bot_python_src_tactical_positions_extractor_py", "target": "urllib_request", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L5", "weight": 1.0}, {"source": "modules_bot_python_src_tactical_positions_extractor_py", "target": "pathlib", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L6", "weight": 1.0}, {"source": "modules_bot_python_src_tactical_positions_extractor_py", "target": "typing", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L7", "weight": 1.0}, {"source": "modules_bot_python_src_tactical_positions_extractor_py", "target": "zstandard", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L10", "weight": 1.0}, {"source": "modules_bot_python_src_tactical_positions_extractor_py", "target": "generate", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L15", "weight": 1.0}, {"source": "modules_bot_python_src_tactical_positions_extractor_py", "target": "tactical_positions_extractor_download_and_extract_puzzle_db", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L18", "weight": 1.0}, {"source": "modules_bot_python_src_tactical_positions_extractor_py", "target": "tactical_positions_extractor_extract_puzzle_positions", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L56", "weight": 1.0}, {"source": "modules_bot_python_src_tactical_positions_extractor_py", "target": "tactical_positions_extractor_load_positions_from_file", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L104", "weight": 1.0}, {"source": "modules_bot_python_src_tactical_positions_extractor_py", "target": "tactical_positions_extractor_merge_positions", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L120", "weight": 1.0}, {"source": "modules_bot_python_src_tactical_positions_extractor_py", "target": "tactical_positions_extractor_interactive_merge_positions", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L144", "weight": 1.0}, {"source": "modules_bot_python_src_tactical_positions_extractor_py", "target": "argparse", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L202", "weight": 1.0}, {"source": "tactical_positions_extractor_interactive_merge_positions", "target": "tactical_positions_extractor_extract_puzzle_positions", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L156", "weight": 1.0}, {"source": "tactical_positions_extractor_interactive_merge_positions", "target": "tactical_positions_extractor_load_positions_from_file", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L171", "weight": 1.0}, {"source": "tactical_positions_extractor_interactive_merge_positions", "target": "tactical_positions_extractor_merge_positions", "relation": "calls", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L198", "weight": 1.0}, {"source": "tactical_positions_extractor_rationale_22", "target": "tactical_positions_extractor_download_and_extract_puzzle_db", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L22", "weight": 1.0}, {"source": "tactical_positions_extractor_rationale_60", "target": "tactical_positions_extractor_extract_puzzle_positions", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L60", "weight": 1.0}, {"source": "tactical_positions_extractor_rationale_105", "target": "tactical_positions_extractor_load_positions_from_file", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L105", "weight": 1.0}, {"source": "tactical_positions_extractor_rationale_125", "target": "tactical_positions_extractor_merge_positions", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L125", "weight": 1.0}, {"source": "tactical_positions_extractor_rationale_149", "target": "tactical_positions_extractor_interactive_merge_positions", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "modules/bot/python/src/tactical_positions_extractor.py", "source_location": "L149", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/ef91d7d606a77e05ac3ea78836e16f85605d60d86dd3df0167e60383c8445099.json b/graphify-out/cache/ef91d7d606a77e05ac3ea78836e16f85605d60d86dd3df0167e60383c8445099.json new file mode 100644 index 0000000..00ae4a3 --- /dev/null +++ b/graphify-out/cache/ef91d7d606a77e05ac3ea78836e16f85605d60d86dd3df0167e60383c8445099.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_api_src_main_scala_de_nowchess_api_board_piece_scala", "label": "Piece.scala", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Piece.scala", "source_location": "L1"}, {"id": "piece_piece", "label": "Piece", "file_type": "code", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Piece.scala", "source_location": "L4"}], "edges": [{"source": "modules_api_src_main_scala_de_nowchess_api_board_piece_scala", "target": "piece_piece", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Piece.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_api_src_main_scala_de_nowchess_api_board_piece_scala", "target": "piece_piece", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Piece.scala", "source_location": "L6", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/f038ec326a63b49e83bb6f40e9fa1418851bd39fd6f2f13c1bfd63d86773a1e5.json b/graphify-out/cache/f038ec326a63b49e83bb6f40e9fa1418851bd39fd6f2f13c1bfd63d86773a1e5.json new file mode 100644 index 0000000..07a4834 --- /dev/null +++ b/graphify-out/cache/f038ec326a63b49e83bb6f40e9fa1418851bd39fd6f2f13c1bfd63d86773a1e5.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineloadgametest_scala", "label": "GameEngineLoadGameTest.scala", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineLoadGameTest.scala", "source_location": "L1"}, {"id": "gameengineloadgametest_gameengineloadgametest", "label": "GameEngineLoadGameTest", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineLoadGameTest.scala", "source_location": "L14"}, {"id": "gameengineloadgametest_mockobserver", "label": "MockObserver", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineLoadGameTest.scala", "source_location": "L40"}, {"id": "gameengineloadgametest_mockobserver_ongameevent", "label": ".onGameEvent()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineLoadGameTest.scala", "source_location": "L42"}], "edges": [{"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineloadgametest_scala", "target": "scala", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineLoadGameTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineloadgametest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineLoadGameTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineloadgametest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineLoadGameTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineloadgametest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineLoadGameTest.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineloadgametest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineLoadGameTest.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineloadgametest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineLoadGameTest.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineloadgametest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineLoadGameTest.scala", "source_location": "L9", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineloadgametest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineLoadGameTest.scala", "source_location": "L10", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineloadgametest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineLoadGameTest.scala", "source_location": "L11", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineloadgametest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineLoadGameTest.scala", "source_location": "L12", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineloadgametest_scala", "target": "gameengineloadgametest_gameengineloadgametest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineLoadGameTest.scala", "source_location": "L14", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineloadgametest_scala", "target": "gameengineloadgametest_mockobserver", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineLoadGameTest.scala", "source_location": "L40", "weight": 1.0}, {"source": "gameengineloadgametest_mockobserver", "target": "gameengineloadgametest_mockobserver_ongameevent", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineLoadGameTest.scala", "source_location": "L42", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/f4c04a14dad0a75414b6ded762c4d64f280e1c03f66f647356f2c5d92893c36c.json b/graphify-out/cache/f4c04a14dad0a75414b6ded762c4d64f280e1c03f66f647356f2c5d92893c36c.json new file mode 100644 index 0000000..1f9b168 --- /dev/null +++ b/graphify-out/cache/f4c04a14dad0a75414b6ded762c4d64f280e1c03f66f647356f2c5d92893c36c.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnue_evaluationnnue_scala", "label": "EvaluationNNUE.scala", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala", "source_location": "L1"}, {"id": "evaluationnnue_evaluationnnue", "label": "EvaluationNNUE", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala", "source_location": "L7"}, {"id": "evaluationnnue_evaluationnnue_evaluate", "label": ".evaluate()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala", "source_location": "L15"}, {"id": "evaluationnnue_evaluationnnue_initaccumulator", "label": ".initAccumulator()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala", "source_location": "L19"}, {"id": "evaluationnnue_evaluationnnue_copyaccumulator", "label": ".copyAccumulator()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala", "source_location": "L22"}, {"id": "evaluationnnue_evaluationnnue_pushaccumulator", "label": ".pushAccumulator()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala", "source_location": "L25"}, {"id": "evaluationnnue_evaluationnnue_evaluateaccumulator", "label": ".evaluateAccumulator()", "file_type": "code", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala", "source_location": "L28"}], "edges": [{"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnue_evaluationnnue_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnue_evaluationnnue_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnue_evaluationnnue_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnue_evaluationnnue_scala", "target": "evaluationnnue_evaluationnnue", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala", "source_location": "L7", "weight": 1.0}, {"source": "evaluationnnue_evaluationnnue", "target": "evaluationnnue_evaluationnnue_evaluate", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala", "source_location": "L15", "weight": 1.0}, {"source": "evaluationnnue_evaluationnnue", "target": "evaluationnnue_evaluationnnue_initaccumulator", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala", "source_location": "L19", "weight": 1.0}, {"source": "evaluationnnue_evaluationnnue", "target": "evaluationnnue_evaluationnnue_copyaccumulator", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala", "source_location": "L22", "weight": 1.0}, {"source": "evaluationnnue_evaluationnnue", "target": "evaluationnnue_evaluationnnue_pushaccumulator", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala", "source_location": "L25", "weight": 1.0}, {"source": "evaluationnnue_evaluationnnue", "target": "evaluationnnue_evaluationnnue_evaluateaccumulator", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala", "source_location": "L28", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/f5a36448c4369bbad285f79692cc76b970a1bae48c4b1999886dba5685b4b584.json b/graphify-out/cache/f5a36448c4369bbad285f79692cc76b970a1bae48c4b1999886dba5685b4b584.json new file mode 100644 index 0000000..0110e01 --- /dev/null +++ b/graphify-out/cache/f5a36448c4369bbad285f79692cc76b970a1bae48c4b1999886dba5685b4b584.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_core_build_gradle_kts", "label": "build.gradle.kts", "file_type": "code", "source_file": "modules/core/build.gradle.kts", "source_location": "L1"}], "edges": []} \ No newline at end of file diff --git a/graphify-out/cache/f78b2b378bea6e136c7fc8d6eec5907c03c106c2c91b6c4ddbb52c2fc49f3fd7.json b/graphify-out/cache/f78b2b378bea6e136c7fc8d6eec5907c03c106c2c91b6c4ddbb52c2fc49f3fd7.json new file mode 100644 index 0000000..ee4d894 --- /dev/null +++ b/graphify-out/cache/f78b2b378bea6e136c7fc8d6eec5907c03c106c2c91b6c4ddbb52c2fc49f3fd7.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_io_src_main_scala_de_nowchess_io_fen_fenparsersupport_scala", "label": "FenParserSupport.scala", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserSupport.scala", "source_location": "L1"}, {"id": "fenparsersupport_fenparsersupport", "label": "FenParserSupport", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserSupport.scala", "source_location": "L5"}, {"id": "fenparsersupport_piecetoken", "label": "PieceToken", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserSupport.scala", "source_location": "L8"}, {"id": "fenparsersupport_emptytoken", "label": "EmptyToken", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserSupport.scala", "source_location": "L9"}, {"id": "fenparsersupport_fenparsersupport_buildsquares", "label": ".buildSquares()", "file_type": "code", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserSupport.scala", "source_location": "L20"}], "edges": [{"source": "modules_io_src_main_scala_de_nowchess_io_fen_fenparsersupport_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserSupport.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_fen_fenparsersupport_scala", "target": "fenparsersupport_fenparsersupport", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserSupport.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_fen_fenparsersupport_scala", "target": "fenparsersupport_piecetoken", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserSupport.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_io_src_main_scala_de_nowchess_io_fen_fenparsersupport_scala", "target": "fenparsersupport_emptytoken", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserSupport.scala", "source_location": "L9", "weight": 1.0}, {"source": "fenparsersupport_fenparsersupport", "target": "fenparsersupport_fenparsersupport_buildsquares", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserSupport.scala", "source_location": "L20", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/fde583f16f45924b0de0fbc9fdc033b32d5701aaf76d7094d0dd63375fc3fe8d.json b/graphify-out/cache/fde583f16f45924b0de0fbc9fdc033b32d5701aaf76d7094d0dd63375fc3fe8d.json new file mode 100644 index 0000000..4080ffb --- /dev/null +++ b/graphify-out/cache/fde583f16f45924b0de0fbc9fdc033b32d5701aaf76d7094d0dd63375fc3fe8d.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_api_src_test_scala_de_nowchess_api_response_apiresponsetest_scala", "label": "ApiResponseTest.scala", "file_type": "code", "source_file": "modules/api/src/test/scala/de/nowchess/api/response/ApiResponseTest.scala", "source_location": "L1"}, {"id": "apiresponsetest_apiresponsetest", "label": "ApiResponseTest", "file_type": "code", "source_file": "modules/api/src/test/scala/de/nowchess/api/response/ApiResponseTest.scala", "source_location": "L6"}], "edges": [{"source": "modules_api_src_test_scala_de_nowchess_api_response_apiresponsetest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/response/ApiResponseTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_api_src_test_scala_de_nowchess_api_response_apiresponsetest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/response/ApiResponseTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_api_src_test_scala_de_nowchess_api_response_apiresponsetest_scala", "target": "apiresponsetest_apiresponsetest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/api/src/test/scala/de/nowchess/api/response/ApiResponseTest.scala", "source_location": "L6", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/ff1a939539a83742fb6124022f7a8cb29adb565bdca64082002af30f368d1e5f.json b/graphify-out/cache/ff1a939539a83742fb6124022f7a8cb29adb565bdca64082002af30f368d1e5f.json new file mode 100644 index 0000000..e8d1026 --- /dev/null +++ b/graphify-out/cache/ff1a939539a83742fb6124022f7a8cb29adb565bdca64082002af30f368d1e5f.json @@ -0,0 +1 @@ +{"nodes": [{"id": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginenotationtest_scala", "label": "GameEngineNotationTest.scala", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineNotationTest.scala", "source_location": "L1"}, {"id": "gameenginenotationtest_gameenginenotationtest", "label": "GameEngineNotationTest", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineNotationTest.scala", "source_location": "L17"}, {"id": "gameenginenotationtest_gameenginenotationtest_captureevents", "label": ".captureEvents()", "file_type": "code", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineNotationTest.scala", "source_location": "L19"}], "edges": [{"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginenotationtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineNotationTest.scala", "source_location": "L3", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginenotationtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineNotationTest.scala", "source_location": "L4", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginenotationtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineNotationTest.scala", "source_location": "L5", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginenotationtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineNotationTest.scala", "source_location": "L6", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginenotationtest_scala", "target": "de", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineNotationTest.scala", "source_location": "L7", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginenotationtest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineNotationTest.scala", "source_location": "L8", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginenotationtest_scala", "target": "org", "relation": "imports", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineNotationTest.scala", "source_location": "L9", "weight": 1.0}, {"source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginenotationtest_scala", "target": "gameenginenotationtest_gameenginenotationtest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineNotationTest.scala", "source_location": "L17", "weight": 1.0}, {"source": "gameenginenotationtest_gameenginenotationtest", "target": "gameenginenotationtest_gameenginenotationtest_captureevents", "relation": "method", "confidence": "EXTRACTED", "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineNotationTest.scala", "source_location": "L19", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/graph.json b/graphify-out/graph.json new file mode 100644 index 0000000..e3ebd87 --- /dev/null +++ b/graphify-out/graph.json @@ -0,0 +1,18602 @@ +{ + "directed": false, + "multigraph": false, + "graph": {}, + "nodes": [ + { + "label": "build.gradle.kts", + "file_type": "code", + "source_file": "build.gradle.kts", + "source_location": "L1", + "id": "build_gradle_kts", + "community": 111 + }, + { + "label": "settings.gradle.kts", + "file_type": "code", + "source_file": "settings.gradle.kts", + "source_location": "L1", + "id": "settings_gradle_kts", + "community": 112 + }, + { + "label": "scoverage_coverage_gaps.py", + "file_type": "code", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L1", + "id": "jacoco_reporter_scoverage_coverage_gaps_py", + "community": 2 + }, + { + "label": "Statement", + "file_type": "code", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L43", + "id": "scoverage_coverage_gaps_statement", + "community": 2 + }, + { + "label": "is_covered()", + "file_type": "code", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L51", + "id": "scoverage_coverage_gaps_is_covered", + "community": 2 + }, + { + "label": "is_uncovered()", + "file_type": "code", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L55", + "id": "scoverage_coverage_gaps_is_uncovered", + "community": 2 + }, + { + "label": "MethodGap", + "file_type": "code", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L60", + "id": "scoverage_coverage_gaps_methodgap", + "community": 2 + }, + { + "label": "short_name()", + "file_type": "code", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L70", + "id": "scoverage_coverage_gaps_short_name", + "community": 2 + }, + { + "label": "stmt_coverage_pct()", + "file_type": "code", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L75", + "id": "scoverage_coverage_gaps_stmt_coverage_pct", + "community": 2 + }, + { + "label": "branch_coverage_pct()", + "file_type": "code", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L79", + "id": "scoverage_coverage_gaps_branch_coverage_pct", + "community": 2 + }, + { + "label": "missed_branches()", + "file_type": "code", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L83", + "id": "scoverage_coverage_gaps_missed_branches", + "community": 2 + }, + { + "label": "has_gaps()", + "file_type": "code", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L87", + "id": "scoverage_coverage_gaps_has_gaps", + "community": 2 + }, + { + "label": "ClassGap", + "file_type": "code", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L92", + "id": "scoverage_coverage_gaps_classgap", + "community": 2 + }, + { + "label": "all_uncovered_lines()", + "file_type": "code", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L107", + "id": "scoverage_coverage_gaps_all_uncovered_lines", + "community": 2 + }, + { + "label": "uncovered_branch_lines()", + "file_type": "code", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L117", + "id": "scoverage_coverage_gaps_uncovered_branch_lines", + "community": 2 + }, + { + "label": "total_statements()", + "file_type": "code", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L131", + "id": "scoverage_coverage_gaps_total_statements", + "community": 2 + }, + { + "label": "covered_statements()", + "file_type": "code", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L135", + "id": "scoverage_coverage_gaps_covered_statements", + "community": 2 + }, + { + "label": "missed_statements()", + "file_type": "code", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L139", + "id": "scoverage_coverage_gaps_missed_statements", + "community": 2 + }, + { + "label": "total_branches()", + "file_type": "code", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L143", + "id": "scoverage_coverage_gaps_total_branches", + "community": 2 + }, + { + "label": "covered_branches()", + "file_type": "code", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L147", + "id": "scoverage_coverage_gaps_covered_branches", + "community": 2 + }, + { + "label": "_normalise_source()", + "file_type": "code", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L171", + "id": "scoverage_coverage_gaps_normalise_source", + "community": 2 + }, + { + "label": "parse_scoverage_xml()", + "file_type": "code", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L183", + "id": "scoverage_coverage_gaps_parse_scoverage_xml", + "community": 2 + }, + { + "label": "_compact_ranges()", + "file_type": "code", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L275", + "id": "scoverage_coverage_gaps_compact_ranges", + "community": 2 + }, + { + "label": "format_agent()", + "file_type": "code", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L295", + "id": "scoverage_coverage_gaps_format_agent", + "community": 2 + }, + { + "label": "format_json()", + "file_type": "code", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L353", + "id": "scoverage_coverage_gaps_format_json", + "community": 2 + }, + { + "label": "format_markdown()", + "file_type": "code", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L405", + "id": "scoverage_coverage_gaps_format_markdown", + "community": 2 + }, + { + "label": "_find_scoverage_xml()", + "file_type": "code", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L470", + "id": "scoverage_coverage_gaps_find_scoverage_xml", + "community": 2 + }, + { + "label": "format_module_gaps()", + "file_type": "code", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L479", + "id": "scoverage_coverage_gaps_format_module_gaps", + "community": 2 + }, + { + "label": "run_scan_modules()", + "file_type": "code", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L492", + "id": "scoverage_coverage_gaps_run_scan_modules", + "community": 2 + }, + { + "label": "main()", + "file_type": "code", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L538", + "id": "scoverage_coverage_gaps_main", + "community": 2 + }, + { + "label": "Strip the package prefix from the full method path.", + "file_type": "rationale", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L71", + "community": 113, + "id": "scoverage_coverage_gaps_rationale_71" + }, + { + "label": "Lines that are branch points and have at least one uncovered branch statement.", + "file_type": "rationale", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L118", + "community": 114, + "id": "scoverage_coverage_gaps_rationale_118" + }, + { + "label": "[1,2,3,5,7,8,9] \u2192 '1-3, 5, 7-9", + "file_type": "rationale", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L276", + "community": 2, + "id": "scoverage_coverage_gaps_rationale_276" + }, + { + "label": "Compact agent format \u2014 optimised for low token count. Emits only actionable", + "file_type": "rationale", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L296", + "community": 2, + "id": "scoverage_coverage_gaps_rationale_296" + }, + { + "label": "Return the first scoverage.xml found inside *module_dir*, or None.", + "file_type": "rationale", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L471", + "community": 2, + "id": "scoverage_coverage_gaps_rationale_471" + }, + { + "label": "One summary line per module. If coverage is not 100%, append an agent hint.", + "file_type": "rationale", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L480", + "community": 2, + "id": "scoverage_coverage_gaps_rationale_480" + }, + { + "label": "test_counter.py", + "file_type": "code", + "source_file": "jacoco-reporter/test_counter.py", + "source_location": "L1", + "id": "jacoco_reporter_test_counter_py", + "community": 115 + }, + { + "label": "test_gaps.py", + "file_type": "code", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L1", + "id": "jacoco_reporter_test_gaps_py", + "community": 8 + }, + { + "label": "TestCase", + "file_type": "code", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L28", + "id": "test_gaps_testcase", + "community": 8 + }, + { + "label": "short_class()", + "file_type": "code", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L37", + "id": "test_gaps_short_class", + "community": 8 + }, + { + "label": "status()", + "file_type": "code", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L41", + "id": "test_gaps_status", + "community": 8 + }, + { + "label": "SuiteResult", + "file_type": "code", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L52", + "id": "test_gaps_suiteresult", + "community": 8 + }, + { + "label": "passed()", + "file_type": "code", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L62", + "id": "test_gaps_passed", + "community": 8 + }, + { + "label": "is_clean()", + "file_type": "code", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L66", + "id": "test_gaps_is_clean", + "community": 8 + }, + { + "label": "bad_cases()", + "file_type": "code", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L70", + "id": "test_gaps_bad_cases", + "community": 8 + }, + { + "label": "skipped_cases()", + "file_type": "code", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L74", + "id": "test_gaps_skipped_cases", + "community": 8 + }, + { + "label": "ModuleResult", + "file_type": "code", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L79", + "id": "test_gaps_moduleresult", + "community": 8 + }, + { + "label": "total()", + "file_type": "code", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L84", + "id": "test_gaps_total", + "community": 8 + }, + { + "label": "failures()", + "file_type": "code", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L86", + "id": "test_gaps_failures", + "community": 8 + }, + { + "label": "errors()", + "file_type": "code", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L88", + "id": "test_gaps_errors", + "community": 8 + }, + { + "label": "skipped()", + "file_type": "code", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L90", + "id": "test_gaps_skipped", + "community": 8 + }, + { + "label": "parse_suite_xml()", + "file_type": "code", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L109", + "id": "test_gaps_parse_suite_xml", + "community": 8 + }, + { + "label": "load_module()", + "file_type": "code", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L150", + "id": "test_gaps_load_module", + "community": 8 + }, + { + "label": "_truncate()", + "file_type": "code", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L172", + "id": "test_gaps_truncate", + "community": 8 + }, + { + "label": "format_module()", + "file_type": "code", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L177", + "id": "test_gaps_format_module", + "community": 8 + }, + { + "label": "run()", + "file_type": "code", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L219", + "id": "test_gaps_run", + "community": 8 + }, + { + "label": "main()", + "file_type": "code", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L260", + "id": "test_gaps_main", + "community": 8 + }, + { + "label": "build.gradle.kts", + "file_type": "code", + "source_file": "modules/api/build.gradle.kts", + "source_location": "L1", + "id": "modules_api_build_gradle_kts", + "community": 116 + }, + { + "label": "Board.scala", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", + "source_location": "L1", + "id": "modules_api_src_main_scala_de_nowchess_api_board_board_scala", + "community": 29 + }, + { + "label": "Board", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", + "source_location": "L5", + "id": "board_board", + "community": 29 + }, + { + "label": ".apply()", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", + "source_location": "L7", + "id": "board_board_apply", + "community": 29 + }, + { + "label": "pieceAt()", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", + "source_location": "L10", + "id": "board_pieceat", + "community": 29 + }, + { + "label": "updated()", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", + "source_location": "L11", + "id": "board_updated", + "community": 29 + }, + { + "label": "removed()", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", + "source_location": "L12", + "id": "board_removed", + "community": 29 + }, + { + "label": "withMove()", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", + "source_location": "L13", + "id": "board_withmove", + "community": 29 + }, + { + "label": "applyMove()", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", + "source_location": "L17", + "id": "board_applymove", + "community": 29 + }, + { + "label": "pieces()", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", + "source_location": "L20", + "id": "board_pieces", + "community": 29 + }, + { + "label": "CastlingRights.scala", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala", + "source_location": "L1", + "id": "modules_api_src_main_scala_de_nowchess_api_board_castlingrights_scala", + "community": 34 + }, + { + "label": "CastlingRights", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala", + "source_location": "L15", + "id": "castlingrights_castlingrights", + "community": 34 + }, + { + "label": ".hasAnyRights()", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala", + "source_location": "L23", + "id": "castlingrights_castlingrights_hasanyrights", + "community": 34 + }, + { + "label": ".hasRights()", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala", + "source_location": "L28", + "id": "castlingrights_castlingrights_hasrights", + "community": 34 + }, + { + "label": ".revokeColor()", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala", + "source_location": "L34", + "id": "castlingrights_castlingrights_revokecolor", + "community": 34 + }, + { + "label": ".revokeKingSide()", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala", + "source_location": "L40", + "id": "castlingrights_castlingrights_revokekingside", + "community": 34 + }, + { + "label": ".revokeQueenSide()", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala", + "source_location": "L46", + "id": "castlingrights_castlingrights_revokequeenside", + "community": 34 + }, + { + "label": "Color.scala", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Color.scala", + "source_location": "L1", + "id": "modules_api_src_main_scala_de_nowchess_api_board_color_scala", + "community": 58 + }, + { + "label": "opposite()", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Color.scala", + "source_location": "L6", + "id": "color_opposite", + "community": 58 + }, + { + "label": "label()", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Color.scala", + "source_location": "L10", + "id": "color_label", + "community": 58 + }, + { + "label": "Piece.scala", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Piece.scala", + "source_location": "L1", + "id": "modules_api_src_main_scala_de_nowchess_api_board_piece_scala", + "community": 69 + }, + { + "label": "Piece", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Piece.scala", + "source_location": "L4", + "id": "piece_piece", + "community": 69 + }, + { + "label": "PieceType.scala", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/PieceType.scala", + "source_location": "L1", + "id": "modules_api_src_main_scala_de_nowchess_api_board_piecetype_scala", + "community": 70 + }, + { + "label": "label()", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/PieceType.scala", + "source_location": "L6", + "id": "piecetype_label", + "community": 70 + }, + { + "label": "Square.scala", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Square.scala", + "source_location": "L1", + "id": "modules_api_src_main_scala_de_nowchess_api_board_square_scala", + "community": 40 + }, + { + "label": "Square", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Square.scala", + "source_location": "L20", + "id": "square_square", + "community": 40 + }, + { + "label": ".toString()", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Square.scala", + "source_location": "L22", + "id": "square_square_tostring", + "community": 40 + }, + { + "label": ".fromAlgebraic()", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Square.scala", + "source_location": "L28", + "id": "square_square_fromalgebraic", + "community": 40 + }, + { + "label": "offset()", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Square.scala", + "source_location": "L48", + "id": "square_offset", + "community": 40 + }, + { + "label": "GameContext.scala", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", + "source_location": "L1", + "id": "modules_api_src_main_scala_de_nowchess_api_game_gamecontext_scala", + "community": 30 + }, + { + "label": "GameContext", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", + "source_location": "L8", + "id": "gamecontext_gamecontext", + "community": 30 + }, + { + "label": ".withBoard()", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", + "source_location": "L17", + "id": "gamecontext_gamecontext_withboard", + "community": 30 + }, + { + "label": ".withTurn()", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", + "source_location": "L20", + "id": "gamecontext_gamecontext_withturn", + "community": 30 + }, + { + "label": ".withCastlingRights()", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", + "source_location": "L23", + "id": "gamecontext_gamecontext_withcastlingrights", + "community": 30 + }, + { + "label": ".withEnPassantSquare()", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", + "source_location": "L26", + "id": "gamecontext_gamecontext_withenpassantsquare", + "community": 30 + }, + { + "label": ".withHalfMoveClock()", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", + "source_location": "L29", + "id": "gamecontext_gamecontext_withhalfmoveclock", + "community": 30 + }, + { + "label": ".withMove()", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", + "source_location": "L32", + "id": "gamecontext_gamecontext_withmove", + "community": 30 + }, + { + "label": ".initial()", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", + "source_location": "L36", + "id": "gamecontext_gamecontext_initial", + "community": 30 + }, + { + "label": "Move.scala", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/move/Move.scala", + "source_location": "L1", + "id": "modules_api_src_main_scala_de_nowchess_api_move_move_scala", + "community": 71 + }, + { + "label": "Move", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/move/Move.scala", + "source_location": "L35", + "id": "move_move", + "community": 71 + }, + { + "label": "PlayerInfo.scala", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/player/PlayerInfo.scala", + "source_location": "L1", + "id": "modules_api_src_main_scala_de_nowchess_api_player_playerinfo_scala", + "community": 41 + }, + { + "label": "PlayerId", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/player/PlayerInfo.scala", + "source_location": "L9", + "id": "playerinfo_playerid", + "community": 41 + }, + { + "label": ".apply()", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/player/PlayerInfo.scala", + "source_location": "L10", + "id": "playerinfo_playerid_apply", + "community": 41 + }, + { + "label": "value()", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/player/PlayerInfo.scala", + "source_location": "L11", + "id": "playerinfo_value", + "community": 41 + }, + { + "label": "PlayerInfo", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/player/PlayerInfo.scala", + "source_location": "L23", + "id": "playerinfo_playerinfo", + "community": 41 + }, + { + "label": "ApiResponse.scala", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", + "source_location": "L1", + "id": "modules_api_src_main_scala_de_nowchess_api_response_apiresponse_scala", + "community": 31 + }, + { + "label": "ApiResponse", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", + "source_location": "L12", + "id": "apiresponse_apiresponse", + "community": 31 + }, + { + "label": "Success", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", + "source_location": "L14", + "id": "apiresponse_success", + "community": 31 + }, + { + "label": "Failure", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", + "source_location": "L17", + "id": "apiresponse_failure", + "community": 31 + }, + { + "label": ".error()", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", + "source_location": "L20", + "id": "apiresponse_apiresponse_error", + "community": 31 + }, + { + "label": "ApiError", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", + "source_location": "L31", + "id": "apiresponse_apierror", + "community": 31 + }, + { + "label": "Pagination", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", + "source_location": "L46", + "id": "apiresponse_pagination", + "community": 31 + }, + { + "label": ".totalPages()", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", + "source_location": "L51", + "id": "apiresponse_pagination_totalpages", + "community": 31 + }, + { + "label": "PagedResponse", + "file_type": "code", + "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", + "source_location": "L64", + "id": "apiresponse_pagedresponse", + "community": 31 + }, + { + "label": "BoardTest.scala", + "file_type": "code", + "source_file": "modules/api/src/test/scala/de/nowchess/api/board/BoardTest.scala", + "source_location": "L1", + "id": "modules_api_src_test_scala_de_nowchess_api_board_boardtest_scala", + "community": 72 + }, + { + "label": "BoardTest", + "file_type": "code", + "source_file": "modules/api/src/test/scala/de/nowchess/api/board/BoardTest.scala", + "source_location": "L7", + "id": "boardtest_boardtest", + "community": 72 + }, + { + "label": "CastlingRightsTest.scala", + "file_type": "code", + "source_file": "modules/api/src/test/scala/de/nowchess/api/board/CastlingRightsTest.scala", + "source_location": "L1", + "id": "modules_api_src_test_scala_de_nowchess_api_board_castlingrightstest_scala", + "community": 73 + }, + { + "label": "CastlingRightsTest", + "file_type": "code", + "source_file": "modules/api/src/test/scala/de/nowchess/api/board/CastlingRightsTest.scala", + "source_location": "L6", + "id": "castlingrightstest_castlingrightstest", + "community": 73 + }, + { + "label": "ColorTest.scala", + "file_type": "code", + "source_file": "modules/api/src/test/scala/de/nowchess/api/board/ColorTest.scala", + "source_location": "L1", + "id": "modules_api_src_test_scala_de_nowchess_api_board_colortest_scala", + "community": 74 + }, + { + "label": "ColorTest", + "file_type": "code", + "source_file": "modules/api/src/test/scala/de/nowchess/api/board/ColorTest.scala", + "source_location": "L6", + "id": "colortest_colortest", + "community": 74 + }, + { + "label": "PieceTest.scala", + "file_type": "code", + "source_file": "modules/api/src/test/scala/de/nowchess/api/board/PieceTest.scala", + "source_location": "L1", + "id": "modules_api_src_test_scala_de_nowchess_api_board_piecetest_scala", + "community": 75 + }, + { + "label": "PieceTest", + "file_type": "code", + "source_file": "modules/api/src/test/scala/de/nowchess/api/board/PieceTest.scala", + "source_location": "L6", + "id": "piecetest_piecetest", + "community": 75 + }, + { + "label": "PieceTypeTest.scala", + "file_type": "code", + "source_file": "modules/api/src/test/scala/de/nowchess/api/board/PieceTypeTest.scala", + "source_location": "L1", + "id": "modules_api_src_test_scala_de_nowchess_api_board_piecetypetest_scala", + "community": 76 + }, + { + "label": "PieceTypeTest", + "file_type": "code", + "source_file": "modules/api/src/test/scala/de/nowchess/api/board/PieceTypeTest.scala", + "source_location": "L6", + "id": "piecetypetest_piecetypetest", + "community": 76 + }, + { + "label": "SquareTest.scala", + "file_type": "code", + "source_file": "modules/api/src/test/scala/de/nowchess/api/board/SquareTest.scala", + "source_location": "L1", + "id": "modules_api_src_test_scala_de_nowchess_api_board_squaretest_scala", + "community": 77 + }, + { + "label": "SquareTest", + "file_type": "code", + "source_file": "modules/api/src/test/scala/de/nowchess/api/board/SquareTest.scala", + "source_location": "L6", + "id": "squaretest_squaretest", + "community": 77 + }, + { + "label": "GameContextTest.scala", + "file_type": "code", + "source_file": "modules/api/src/test/scala/de/nowchess/api/game/GameContextTest.scala", + "source_location": "L1", + "id": "modules_api_src_test_scala_de_nowchess_api_game_gamecontexttest_scala", + "community": 78 + }, + { + "label": "GameContextTest", + "file_type": "code", + "source_file": "modules/api/src/test/scala/de/nowchess/api/game/GameContextTest.scala", + "source_location": "L8", + "id": "gamecontexttest_gamecontexttest", + "community": 78 + }, + { + "label": "MoveTest.scala", + "file_type": "code", + "source_file": "modules/api/src/test/scala/de/nowchess/api/move/MoveTest.scala", + "source_location": "L1", + "id": "modules_api_src_test_scala_de_nowchess_api_move_movetest_scala", + "community": 79 + }, + { + "label": "MoveTest", + "file_type": "code", + "source_file": "modules/api/src/test/scala/de/nowchess/api/move/MoveTest.scala", + "source_location": "L7", + "id": "movetest_movetest", + "community": 79 + }, + { + "label": "PlayerInfoTest.scala", + "file_type": "code", + "source_file": "modules/api/src/test/scala/de/nowchess/api/player/PlayerInfoTest.scala", + "source_location": "L1", + "id": "modules_api_src_test_scala_de_nowchess_api_player_playerinfotest_scala", + "community": 80 + }, + { + "label": "PlayerInfoTest", + "file_type": "code", + "source_file": "modules/api/src/test/scala/de/nowchess/api/player/PlayerInfoTest.scala", + "source_location": "L6", + "id": "playerinfotest_playerinfotest", + "community": 80 + }, + { + "label": "ApiResponseTest.scala", + "file_type": "code", + "source_file": "modules/api/src/test/scala/de/nowchess/api/response/ApiResponseTest.scala", + "source_location": "L1", + "id": "modules_api_src_test_scala_de_nowchess_api_response_apiresponsetest_scala", + "community": 81 + }, + { + "label": "ApiResponseTest", + "file_type": "code", + "source_file": "modules/api/src/test/scala/de/nowchess/api/response/ApiResponseTest.scala", + "source_location": "L6", + "id": "apiresponsetest_apiresponsetest", + "community": 81 + }, + { + "label": "build.gradle.kts", + "file_type": "code", + "source_file": "modules/bot/build.gradle.kts", + "source_location": "L1", + "id": "modules_bot_build_gradle_kts", + "community": 117 + }, + { + "label": "nnue.py", + "file_type": "code", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L1", + "id": "modules_bot_python_nnue_py", + "community": 5 + }, + { + "label": "get_data_dir()", + "file_type": "code", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L26", + "id": "nnue_get_data_dir", + "community": 5 + }, + { + "label": "get_tactical_data_dir()", + "file_type": "code", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L32", + "id": "nnue_get_tactical_data_dir", + "community": 5 + }, + { + "label": "get_weights_dir()", + "file_type": "code", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L38", + "id": "nnue_get_weights_dir", + "community": 5 + }, + { + "label": "list_checkpoints()", + "file_type": "code", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L44", + "id": "nnue_list_checkpoints", + "community": 5 + }, + { + "label": "show_header()", + "file_type": "code", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L52", + "id": "nnue_show_header", + "community": 5 + }, + { + "label": "show_checkpoints_table()", + "file_type": "code", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L65", + "id": "nnue_show_checkpoints_table", + "community": 5 + }, + { + "label": "show_main_menu()", + "file_type": "code", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L90", + "id": "nnue_show_main_menu", + "community": 5 + }, + { + "label": "train_interactive()", + "file_type": "code", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L124", + "id": "nnue_train_interactive", + "community": 5 + }, + { + "label": "burst_train_interactive()", + "file_type": "code", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L289", + "id": "nnue_burst_train_interactive", + "community": 5 + }, + { + "label": "export_interactive()", + "file_type": "code", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L365", + "id": "nnue_export_interactive", + "community": 5 + }, + { + "label": "extract_tactical_interactive()", + "file_type": "code", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L413", + "id": "nnue_extract_tactical_interactive", + "community": 5 + }, + { + "label": "main()", + "file_type": "code", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L473", + "id": "nnue_main", + "community": 5 + }, + { + "label": "Get/create data directory.", + "file_type": "rationale", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L27", + "id": "nnue_rationale_27", + "community": 5 + }, + { + "label": "Get/create data directory.", + "file_type": "rationale", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L33", + "id": "nnue_rationale_33", + "community": 5 + }, + { + "label": "Get/create weights directory.", + "file_type": "rationale", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L39", + "id": "nnue_rationale_39", + "community": 5 + }, + { + "label": "List available checkpoint versions.", + "file_type": "rationale", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L45", + "id": "nnue_rationale_45", + "community": 5 + }, + { + "label": "Display application header.", + "file_type": "rationale", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L53", + "id": "nnue_rationale_53", + "community": 5 + }, + { + "label": "Display available checkpoints in a table.", + "file_type": "rationale", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L66", + "id": "nnue_rationale_66", + "community": 5 + }, + { + "label": "Display and handle main menu.", + "file_type": "rationale", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L91", + "id": "nnue_rationale_91", + "community": 5 + }, + { + "label": "Interactive training menu.", + "file_type": "rationale", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L125", + "id": "nnue_rationale_125", + "community": 5 + }, + { + "label": "Interactive burst training menu.", + "file_type": "rationale", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L290", + "id": "nnue_rationale_290", + "community": 5 + }, + { + "label": "Interactive export menu.", + "file_type": "rationale", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L366", + "id": "nnue_rationale_366", + "community": 5 + }, + { + "label": "Interactive tactical positions extraction and merge menu.", + "file_type": "rationale", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L414", + "id": "nnue_rationale_414", + "community": 5 + }, + { + "label": "start.ps1", + "file_type": "code", + "source_file": "modules/bot/python/start.ps1", + "source_location": "L1", + "id": "modules_bot_python_start_ps1", + "community": 118 + }, + { + "label": "export.py", + "file_type": "code", + "source_file": "modules/bot/python/src/export.py", + "source_location": "L1", + "id": "modules_bot_python_src_export_py", + "community": 59 + }, + { + "label": "export_weights_to_binary()", + "file_type": "code", + "source_file": "modules/bot/python/src/export.py", + "source_location": "L9", + "id": "export_export_weights_to_binary", + "community": 59 + }, + { + "label": "Load PyTorch weights and export as binary file.", + "file_type": "rationale", + "source_file": "modules/bot/python/src/export.py", + "source_location": "L10", + "id": "export_rationale_10", + "community": 59 + }, + { + "label": "generate.py", + "file_type": "code", + "source_file": "modules/bot/python/src/generate.py", + "source_location": "L1", + "id": "modules_bot_python_src_generate_py", + "community": 42 + }, + { + "label": "_worker_generate_games()", + "file_type": "code", + "source_file": "modules/bot/python/src/generate.py", + "source_location": "L13", + "id": "generate_worker_generate_games", + "community": 42 + }, + { + "label": "play_random_game_and_collect_positions()", + "file_type": "code", + "source_file": "modules/bot/python/src/generate.py", + "source_location": "L64", + "id": "generate_play_random_game_and_collect_positions", + "community": 42 + }, + { + "label": "Generate games for one worker. Returns: list of FENs generated by t", + "file_type": "rationale", + "source_file": "modules/bot/python/src/generate.py", + "source_location": "L14", + "id": "generate_rationale_14", + "community": 42 + }, + { + "label": "Generate positions using multiprocessing with multiple workers. Args:", + "file_type": "rationale", + "source_file": "modules/bot/python/src/generate.py", + "source_location": "L72", + "id": "generate_rationale_72", + "community": 42 + }, + { + "label": "label.py", + "file_type": "code", + "source_file": "modules/bot/python/src/label.py", + "source_location": "L1", + "id": "modules_bot_python_src_label_py", + "community": 35 + }, + { + "label": "normalize_evaluation()", + "file_type": "code", + "source_file": "modules/bot/python/src/label.py", + "source_location": "L14", + "id": "label_normalize_evaluation", + "community": 35 + }, + { + "label": "_evaluate_fen_batch()", + "file_type": "code", + "source_file": "modules/bot/python/src/label.py", + "source_location": "L32", + "id": "label_evaluate_fen_batch", + "community": 35 + }, + { + "label": "label_positions_with_stockfish()", + "file_type": "code", + "source_file": "modules/bot/python/src/label.py", + "source_location": "L82", + "id": "label_label_positions_with_stockfish", + "community": 35 + }, + { + "label": "Normalize centipawn evaluation to a bounded range. Args: cp_value:", + "file_type": "rationale", + "source_file": "modules/bot/python/src/label.py", + "source_location": "L15", + "id": "label_rationale_15", + "community": 35 + }, + { + "label": "Worker function to evaluate a batch of FENs with Stockfish threading. Args:", + "file_type": "rationale", + "source_file": "modules/bot/python/src/label.py", + "source_location": "L33", + "id": "label_rationale_33", + "community": 35 + }, + { + "label": "Read positions and label them with Stockfish evaluations. Args: pos", + "file_type": "rationale", + "source_file": "modules/bot/python/src/label.py", + "source_location": "L83", + "id": "label_rationale_83", + "community": 35 + }, + { + "label": "tactical_positions_extractor.py", + "file_type": "code", + "source_file": "modules/bot/python/src/tactical_positions_extractor.py", + "source_location": "L1", + "id": "modules_bot_python_src_tactical_positions_extractor_py", + "community": 22 + }, + { + "label": "download_and_extract_puzzle_db()", + "file_type": "code", + "source_file": "modules/bot/python/src/tactical_positions_extractor.py", + "source_location": "L18", + "id": "tactical_positions_extractor_download_and_extract_puzzle_db", + "community": 22 + }, + { + "label": "extract_puzzle_positions()", + "file_type": "code", + "source_file": "modules/bot/python/src/tactical_positions_extractor.py", + "source_location": "L56", + "id": "tactical_positions_extractor_extract_puzzle_positions", + "community": 22 + }, + { + "label": "load_positions_from_file()", + "file_type": "code", + "source_file": "modules/bot/python/src/tactical_positions_extractor.py", + "source_location": "L104", + "id": "tactical_positions_extractor_load_positions_from_file", + "community": 22 + }, + { + "label": "merge_positions()", + "file_type": "code", + "source_file": "modules/bot/python/src/tactical_positions_extractor.py", + "source_location": "L120", + "id": "tactical_positions_extractor_merge_positions", + "community": 22 + }, + { + "label": "interactive_merge_positions()", + "file_type": "code", + "source_file": "modules/bot/python/src/tactical_positions_extractor.py", + "source_location": "L144", + "id": "tactical_positions_extractor_interactive_merge_positions", + "community": 22 + }, + { + "label": "Download and extract the Lichess puzzle database.", + "file_type": "rationale", + "source_file": "modules/bot/python/src/tactical_positions_extractor.py", + "source_location": "L22", + "id": "tactical_positions_extractor_rationale_22", + "community": 22 + }, + { + "label": "Extract the position BEFORE the blunder from each puzzle. This is exactly th", + "file_type": "rationale", + "source_file": "modules/bot/python/src/tactical_positions_extractor.py", + "source_location": "L60", + "id": "tactical_positions_extractor_rationale_60", + "community": 22 + }, + { + "label": "Load positions from a text file (one FEN per line).", + "file_type": "rationale", + "source_file": "modules/bot/python/src/tactical_positions_extractor.py", + "source_location": "L105", + "id": "tactical_positions_extractor_rationale_105", + "community": 22 + }, + { + "label": "Merge two position sets and write to file.", + "file_type": "rationale", + "source_file": "modules/bot/python/src/tactical_positions_extractor.py", + "source_location": "L125", + "id": "tactical_positions_extractor_rationale_125", + "community": 22 + }, + { + "label": "Interactive workflow: extract tactical positions and merge with user selection.", + "file_type": "rationale", + "source_file": "modules/bot/python/src/tactical_positions_extractor.py", + "source_location": "L149", + "id": "tactical_positions_extractor_rationale_149", + "community": 22 + }, + { + "label": "train.py", + "file_type": "code", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L1", + "id": "modules_bot_python_src_train_py", + "community": 4 + }, + { + "label": "NNUEDataset", + "file_type": "code", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L17", + "id": "train_nnuedataset", + "community": 4 + }, + { + "label": "Dataset", + "file_type": "code", + "source_file": "", + "source_location": "", + "id": "dataset", + "community": 4 + }, + { + "label": ".__init__()", + "file_type": "code", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L20", + "id": "train_nnuedataset_init", + "community": 4 + }, + { + "label": ".__len__()", + "file_type": "code", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L48", + "id": "train_nnuedataset_len", + "community": 4 + }, + { + "label": ".__getitem__()", + "file_type": "code", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L51", + "id": "train_nnuedataset_getitem", + "community": 4 + }, + { + "label": "fen_to_features()", + "file_type": "code", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L64", + "id": "train_fen_to_features", + "community": 4 + }, + { + "label": "NNUE", + "file_type": "code", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L89", + "id": "train_nnue", + "community": 4 + }, + { + "label": ".__init__()", + "file_type": "code", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L92", + "id": "train_nnue_init", + "community": 4 + }, + { + "label": ".forward()", + "file_type": "code", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L112", + "id": "train_nnue_forward", + "community": 4 + }, + { + "label": "find_next_version()", + "file_type": "code", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L119", + "id": "train_find_next_version", + "community": 4 + }, + { + "label": "save_metadata()", + "file_type": "code", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L141", + "id": "train_save_metadata", + "community": 4 + }, + { + "label": "_setup_training()", + "file_type": "code", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L155", + "id": "train_setup_training", + "community": 4 + }, + { + "label": "_run_training_season()", + "file_type": "code", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L218", + "id": "train_run_training_season", + "community": 4 + }, + { + "label": "_save_versioned_model()", + "file_type": "code", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L329", + "id": "train_save_versioned_model", + "community": 4 + }, + { + "label": "train_nnue()", + "file_type": "code", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L370", + "id": "train_train_nnue", + "community": 4 + }, + { + "label": "burst_train()", + "file_type": "code", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L448", + "id": "train_burst_train", + "community": 4 + }, + { + "label": "Dataset of chess positions with evaluations.", + "file_type": "rationale", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L18", + "id": "train_rationale_18", + "community": 4 + }, + { + "label": "Convert FEN to 768-dimensional binary feature vector.", + "file_type": "rationale", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L65", + "id": "train_rationale_65", + "community": 4 + }, + { + "label": "NNUE neural network architecture: 768\u21921536\u21921024\u2192512\u2192256\u21921 with dropout regulariz", + "file_type": "rationale", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L90", + "id": "train_rationale_90", + "community": 4 + }, + { + "label": "Find the next version number for model versioning. Looks for nnue_weights_v", + "file_type": "rationale", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L120", + "id": "train_rationale_120", + "community": 4 + }, + { + "label": "Save training metadata alongside the weights file. Args: weights_fi", + "file_type": "rationale", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L142", + "id": "train_rationale_142", + "community": 4 + }, + { + "label": "Set up device, dataset, and data loaders. Returns: (device, dataset", + "file_type": "rationale", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L156", + "id": "train_rationale_156", + "community": 4 + }, + { + "label": "Run one training season until epoch limit, early stopping, or deadline. Arg", + "file_type": "rationale", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L225", + "id": "train_rationale_225", + "community": 4 + }, + { + "label": "Save the best model with optional versioning and metadata.", + "file_type": "rationale", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L332", + "id": "train_rationale_332", + "community": 4 + }, + { + "label": "Train the NNUE model with GPU optimizations and automatic mixed precision.", + "file_type": "rationale", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L371", + "id": "train_rationale_371", + "community": 4 + }, + { + "label": "Train in burst mode: repeatedly restart from the best checkpoint until the time", + "file_type": "rationale", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L453", + "id": "train_rationale_453", + "community": 4 + }, + { + "label": "Bot.scala", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/Bot.scala", + "source_location": "L1", + "id": "modules_bot_src_main_scala_de_nowchess_bot_bot_scala", + "community": 119 + }, + { + "label": "BotController.scala", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/BotController.scala", + "source_location": "L1", + "id": "modules_bot_src_main_scala_de_nowchess_bot_botcontroller_scala", + "community": 48 + }, + { + "label": "BotController", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/BotController.scala", + "source_location": "L5", + "id": "botcontroller_botcontroller", + "community": 48 + }, + { + "label": ".getBot()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/BotController.scala", + "source_location": "L15", + "id": "botcontroller_botcontroller_getbot", + "community": 48 + }, + { + "label": ".listBots()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/BotController.scala", + "source_location": "L18", + "id": "botcontroller_botcontroller_listbots", + "community": 48 + }, + { + "label": "BotDifficulty.scala", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/BotDifficulty.scala", + "source_location": "L1", + "id": "modules_bot_src_main_scala_de_nowchess_bot_botdifficulty_scala", + "community": 120 + }, + { + "label": "Config.scala", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/Config.scala", + "source_location": "L1", + "id": "modules_bot_src_main_scala_de_nowchess_bot_config_scala", + "community": 82 + }, + { + "label": "Config", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/Config.scala", + "source_location": "L3", + "id": "config_config", + "community": 82 + }, + { + "label": "Evaluation.scala", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/ai/Evaluation.scala", + "source_location": "L1", + "id": "modules_bot_src_main_scala_de_nowchess_bot_ai_evaluation_scala", + "community": 43 + }, + { + "label": "initAccumulator()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/ai/Evaluation.scala", + "source_location": "L18", + "id": "evaluation_initaccumulator", + "community": 43 + }, + { + "label": "copyAccumulator()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/ai/Evaluation.scala", + "source_location": "L21", + "id": "evaluation_copyaccumulator", + "community": 43 + }, + { + "label": "pushAccumulator()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/ai/Evaluation.scala", + "source_location": "L24", + "id": "evaluation_pushaccumulator", + "community": 43 + }, + { + "label": "evaluateAccumulator()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/ai/Evaluation.scala", + "source_location": "L29", + "id": "evaluation_evaluateaccumulator", + "community": 43 + }, + { + "label": "ClassicalBot.scala", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala", + "source_location": "L1", + "id": "modules_bot_src_main_scala_de_nowchess_bot_bots_classicalbot_scala", + "community": 60 + }, + { + "label": "ClassicalBot", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala", + "source_location": "L12", + "id": "classicalbot_classicalbot", + "community": 60 + }, + { + "label": ".nextMove()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala", + "source_location": "L23", + "id": "classicalbot_classicalbot_nextmove", + "community": 60 + }, + { + "label": "HybridBot.scala", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala", + "source_location": "L1", + "id": "modules_bot_src_main_scala_de_nowchess_bot_bots_hybridbot_scala", + "community": 49 + }, + { + "label": "HybridBot", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala", + "source_location": "L13", + "id": "hybridbot_hybridbot", + "community": 49 + }, + { + "label": ".nextMove()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala", + "source_location": "L23", + "id": "hybridbot_hybridbot_nextmove", + "community": 49 + }, + { + "label": ".searchWithVeto()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala", + "source_location": "L26", + "id": "hybridbot_hybridbot_searchwithveto", + "community": 49 + }, + { + "label": "NNUEBot.scala", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/NNUEBot.scala", + "source_location": "L1", + "id": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnuebot_scala", + "community": 50 + }, + { + "label": "NNUEBot", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/NNUEBot.scala", + "source_location": "L12", + "id": "nnuebot_nnuebot", + "community": 50 + }, + { + "label": ".nextMove()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/NNUEBot.scala", + "source_location": "L22", + "id": "nnuebot_nnuebot_nextmove", + "community": 50 + }, + { + "label": ".allocateTime()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/NNUEBot.scala", + "source_location": "L28", + "id": "nnuebot_nnuebot_allocatetime", + "community": 50 + }, + { + "label": "EvaluationClassic.scala", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L1", + "id": "modules_bot_src_main_scala_de_nowchess_bot_bots_classic_evaluationclassic_scala", + "community": 7 + }, + { + "label": "EvaluationClassic", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L7", + "id": "evaluationclassic_evaluationclassic", + "community": 7 + }, + { + "label": ".evaluate()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L125", + "id": "evaluationclassic_evaluationclassic_evaluate", + "community": 7 + }, + { + "label": ".gamePhase()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L136", + "id": "evaluationclassic_evaluationclassic_gamephase", + "community": 7 + }, + { + "label": ".isEndgame()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L142", + "id": "evaluationclassic_evaluationclassic_isendgame", + "community": 7 + }, + { + "label": ".taper()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L145", + "id": "evaluationclassic_evaluationclassic_taper", + "community": 7 + }, + { + "label": ".materialAndPositional()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L148", + "id": "evaluationclassic_evaluationclassic_materialandpositional", + "community": 7 + }, + { + "label": ".squareBonus()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L158", + "id": "evaluationclassic_evaluationclassic_squarebonus", + "community": 7 + }, + { + "label": ".pawnStructure()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L171", + "id": "evaluationclassic_evaluationclassic_pawnstructure", + "community": 7 + }, + { + "label": ".structureScore()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L182", + "id": "evaluationclassic_evaluationclassic_structurescore", + "community": 7 + }, + { + "label": ".positionalBonuses()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L190", + "id": "evaluationclassic_evaluationclassic_positionalbonuses", + "community": 7 + }, + { + "label": ".isPassedPawn()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L203", + "id": "evaluationclassic_evaluationclassic_ispassedpawn", + "community": 7 + }, + { + "label": ".rookOpenFileBonus()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L216", + "id": "evaluationclassic_evaluationclassic_rookopenfilebonus", + "community": 7 + }, + { + "label": ".kingShieldBonus()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L227", + "id": "evaluationclassic_evaluationclassic_kingshieldbonus", + "community": 7 + }, + { + "label": ".slidingCount()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L242", + "id": "evaluationclassic_evaluationclassic_slidingcount", + "community": 7 + }, + { + "label": ".knightCount()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L261", + "id": "evaluationclassic_evaluationclassic_knightcount", + "community": 7 + }, + { + "label": ".mobilityScore()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L268", + "id": "evaluationclassic_evaluationclassic_mobilityscore", + "community": 7 + }, + { + "label": ".rookAndBishopBonuses()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L283", + "id": "evaluationclassic_evaluationclassic_rookandbishopbonuses", + "community": 7 + }, + { + "label": ".endgameBonus()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L309", + "id": "evaluationclassic_evaluationclassic_endgamebonus", + "community": 7 + }, + { + "label": ".kingCentralizationDistance()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L325", + "id": "evaluationclassic_evaluationclassic_kingcentralizationdistance", + "community": 7 + }, + { + "label": ".kingEdgeDistance()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L330", + "id": "evaluationclassic_evaluationclassic_kingedgedistance", + "community": 7 + }, + { + "label": ".materialCount()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L335", + "id": "evaluationclassic_evaluationclassic_materialcount", + "community": 7 + }, + { + "label": "EvaluationNNUE.scala", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala", + "source_location": "L1", + "id": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnue_evaluationnnue_scala", + "community": 36 + }, + { + "label": "EvaluationNNUE", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala", + "source_location": "L7", + "id": "evaluationnnue_evaluationnnue", + "community": 36 + }, + { + "label": ".evaluate()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala", + "source_location": "L15", + "id": "evaluationnnue_evaluationnnue_evaluate", + "community": 36 + }, + { + "label": ".initAccumulator()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala", + "source_location": "L19", + "id": "evaluationnnue_evaluationnnue_initaccumulator", + "community": 36 + }, + { + "label": ".copyAccumulator()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala", + "source_location": "L22", + "id": "evaluationnnue_evaluationnnue_copyaccumulator", + "community": 36 + }, + { + "label": ".pushAccumulator()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala", + "source_location": "L25", + "id": "evaluationnnue_evaluationnnue_pushaccumulator", + "community": 36 + }, + { + "label": ".evaluateAccumulator()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala", + "source_location": "L28", + "id": "evaluationnnue_evaluationnnue_evaluateaccumulator", + "community": 36 + }, + { + "label": "NNUE.scala", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L1", + "id": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnue_nnue_scala", + "community": 6 + }, + { + "label": "NNUE", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L9", + "id": "nnue_nnue", + "community": 6 + }, + { + "label": ".loadWeights()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L22", + "id": "nnue_nnue_loadweights", + "community": 6 + }, + { + "label": ".readTensor()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L61", + "id": "nnue_nnue_readtensor", + "community": 6 + }, + { + "label": ".squareNum()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L90", + "id": "nnue_nnue_squarenum", + "community": 6 + }, + { + "label": ".featureIndex()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L92", + "id": "nnue_nnue_featureindex", + "community": 6 + }, + { + "label": ".addColumn()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L96", + "id": "nnue_nnue_addcolumn", + "community": 6 + }, + { + "label": ".subtractColumn()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L100", + "id": "nnue_nnue_subtractcolumn", + "community": 6 + }, + { + "label": ".initAccumulator()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L107", + "id": "nnue_nnue_initaccumulator", + "community": 6 + }, + { + "label": ".pushAccumulator()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L114", + "id": "nnue_nnue_pushaccumulator", + "community": 6 + }, + { + "label": ".copyAccumulator()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L124", + "id": "nnue_nnue_copyaccumulator", + "community": 6 + }, + { + "label": ".applyNormalDelta()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L127", + "id": "nnue_nnue_applynormaldelta", + "community": 6 + }, + { + "label": ".applyEnPassantDelta()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L136", + "id": "nnue_nnue_applyenpassantdelta", + "community": 6 + }, + { + "label": ".applyCastleDelta()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L144", + "id": "nnue_nnue_applycastledelta", + "community": 6 + }, + { + "label": ".applyPromotionDelta()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L158", + "id": "nnue_nnue_applypromotiondelta", + "community": 6 + }, + { + "label": ".promotedType()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L166", + "id": "nnue_nnue_promotedtype", + "community": 6 + }, + { + "label": ".evaluateAtPly()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L177", + "id": "nnue_nnue_evaluateatply", + "community": 6 + }, + { + "label": ".runL2toOutput()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L186", + "id": "nnue_nnue_runl2tooutput", + "community": 6 + }, + { + "label": ".runDenseReLU()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L194", + "id": "nnue_nnue_rundenserelu", + "community": 6 + }, + { + "label": ".runOutputLayer()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L206", + "id": "nnue_nnue_runoutputlayer", + "community": 6 + }, + { + "label": ".scoreFromOutput()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L209", + "id": "nnue_nnue_scorefromoutput", + "community": 6 + }, + { + "label": ".evaluate()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L226", + "id": "nnue_nnue_evaluate", + "community": 6 + }, + { + "label": ".benchmark()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L233", + "id": "nnue_nnue_benchmark", + "community": 6 + }, + { + "label": "AlphaBetaSearch.scala", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L1", + "id": "modules_bot_src_main_scala_de_nowchess_bot_logic_alphabetasearch_scala", + "community": 18 + }, + { + "label": "AlphaBetaSearch", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L13", + "id": "alphabetasearch_alphabetasearch", + "community": 18 + }, + { + "label": ".bestMove()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L37", + "id": "alphabetasearch_alphabetasearch_bestmove", + "community": 18 + }, + { + "label": ".bestMoveWithTime()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L54", + "id": "alphabetasearch_alphabetasearch_bestmovewithtime", + "community": 18 + }, + { + "label": ".isOutOfTime()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L73", + "id": "alphabetasearch_alphabetasearch_isoutoftime", + "community": 18 + }, + { + "label": ".searchWithAspiration()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L76", + "id": "alphabetasearch_alphabetasearch_searchwithaspiration", + "community": 18 + }, + { + "label": ".hasNonPawnMaterial()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L100", + "id": "alphabetasearch_alphabetasearch_hasnonpawnmaterial", + "community": 18 + }, + { + "label": ".nullMoveContext()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L107", + "id": "alphabetasearch_alphabetasearch_nullmovecontext", + "community": 18 + }, + { + "label": ".tryNullMove()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L110", + "id": "alphabetasearch_alphabetasearch_trynullmove", + "community": 18 + }, + { + "label": ".search()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L129", + "id": "alphabetasearch_alphabetasearch_search", + "community": 18 + }, + { + "label": ".searchSequential()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L175", + "id": "alphabetasearch_alphabetasearch_searchsequential", + "community": 18 + }, + { + "label": ".quiescence()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L251", + "id": "alphabetasearch_alphabetasearch_quiescence", + "community": 18 + }, + { + "label": ".isCapture()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L289", + "id": "alphabetasearch_alphabetasearch_iscapture", + "community": 18 + }, + { + "label": "MoveOrdering.scala", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L1", + "id": "modules_bot_src_main_scala_de_nowchess_bot_logic_moveordering_scala", + "community": 3 + }, + { + "label": "MoveOrdering", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L10", + "id": "moveordering_moveordering", + "community": 3 + }, + { + "label": "OrderingContext", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L12", + "id": "moveordering_orderingcontext", + "community": 3 + }, + { + "label": ".addKillerMove()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L16", + "id": "moveordering_orderingcontext_addkillermove", + "community": 3 + }, + { + "label": ".getKillerMoves()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L21", + "id": "moveordering_orderingcontext_getkillermoves", + "community": 3 + }, + { + "label": ".addHistory()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L24", + "id": "moveordering_orderingcontext_addhistory", + "community": 3 + }, + { + "label": ".getHistory()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L28", + "id": "moveordering_orderingcontext_gethistory", + "community": 3 + }, + { + "label": ".clear()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L31", + "id": "moveordering_orderingcontext_clear", + "community": 3 + }, + { + "label": ".score()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L35", + "id": "moveordering_moveordering_score", + "community": 3 + }, + { + "label": ".sort()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L53", + "id": "moveordering_moveordering_sort", + "community": 3 + }, + { + "label": ".scoreQuietMove()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L62", + "id": "moveordering_moveordering_scorequietmove", + "community": 3 + }, + { + "label": ".promotionCaptureBonus()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L69", + "id": "moveordering_moveordering_promotioncapturebonus", + "community": 3 + }, + { + "label": ".captureScore()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L72", + "id": "moveordering_moveordering_capturescore", + "community": 3 + }, + { + "label": ".mvvLva()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L77", + "id": "moveordering_moveordering_mvvlva", + "community": 3 + }, + { + "label": ".attackerValue()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L80", + "id": "moveordering_moveordering_attackervalue", + "community": 3 + }, + { + "label": ".victimValue()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L83", + "id": "moveordering_moveordering_victimvalue", + "community": 3 + }, + { + "label": ".pieceValue()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L90", + "id": "moveordering_moveordering_piecevalue", + "community": 3 + }, + { + "label": ".isCapture()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L98", + "id": "moveordering_moveordering_iscapture", + "community": 3 + }, + { + "label": ".staticExchange()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L104", + "id": "moveordering_moveordering_staticexchange", + "community": 3 + }, + { + "label": ".movedPieceAfterMove()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L114", + "id": "moveordering_moveordering_movedpieceaftermove", + "community": 3 + }, + { + "label": ".exchangeGain()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L119", + "id": "moveordering_moveordering_exchangegain", + "community": 3 + }, + { + "label": ".resolveGain()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L128", + "id": "moveordering_moveordering_resolvegain", + "community": 3 + }, + { + "label": ".applySeeMove()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L135", + "id": "moveordering_moveordering_applyseemove", + "community": 3 + }, + { + "label": ".leastValuableAttacker()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L142", + "id": "moveordering_moveordering_leastvaluableattacker", + "community": 3 + }, + { + "label": ".attacksSquare()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L151", + "id": "moveordering_moveordering_attackssquare", + "community": 3 + }, + { + "label": ".clearLine()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L169", + "id": "moveordering_moveordering_clearline", + "community": 3 + }, + { + "label": ".pathClear()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L175", + "id": "moveordering_moveordering_pathclear", + "community": 3 + }, + { + "label": ".promotionPieceType()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L182", + "id": "moveordering_moveordering_promotionpiecetype", + "community": 3 + }, + { + "label": "TranspositionTable.scala", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/TranspositionTable.scala", + "source_location": "L1", + "id": "modules_bot_src_main_scala_de_nowchess_bot_logic_transpositiontable_scala", + "community": 37 + }, + { + "label": "TTEntry", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/TranspositionTable.scala", + "source_location": "L10", + "id": "transpositiontable_ttentry", + "community": 37 + }, + { + "label": "TranspositionTable", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/TranspositionTable.scala", + "source_location": "L18", + "id": "transpositiontable_transpositiontable", + "community": 37 + }, + { + "label": ".probe()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/TranspositionTable.scala", + "source_location": "L24", + "id": "transpositiontable_transpositiontable_probe", + "community": 37 + }, + { + "label": ".store()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/TranspositionTable.scala", + "source_location": "L30", + "id": "transpositiontable_transpositiontable_store", + "community": 37 + }, + { + "label": ".clear()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/TranspositionTable.scala", + "source_location": "L36", + "id": "transpositiontable_transpositiontable_clear", + "community": 37 + }, + { + "label": "PolyglotBook.scala", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", + "source_location": "L1", + "id": "modules_bot_src_main_scala_de_nowchess_bot_util_polyglotbook_scala", + "community": 25 + }, + { + "label": "PolyglotBook", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", + "source_location": "L19", + "id": "polyglotbook_polyglotbook", + "community": 25 + }, + { + "label": ".probe()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", + "source_location": "L34", + "id": "polyglotbook_polyglotbook_probe", + "community": 25 + }, + { + "label": ".loadBookFile()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", + "source_location": "L44", + "id": "polyglotbook_polyglotbook_loadbookfile", + "community": 25 + }, + { + "label": ".decodeMove()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", + "source_location": "L71", + "id": "polyglotbook_polyglotbook_decodemove", + "community": 25 + }, + { + "label": ".isKingMove()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", + "source_location": "L97", + "id": "polyglotbook_polyglotbook_iskingmove", + "community": 25 + }, + { + "label": ".isRookSquare()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", + "source_location": "L102", + "id": "polyglotbook_polyglotbook_isrooksquare", + "community": 25 + }, + { + "label": ".decodeCastling()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", + "source_location": "L115", + "id": "polyglotbook_polyglotbook_decodecastling", + "community": 25 + }, + { + "label": ".weightedRandom()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", + "source_location": "L123", + "id": "polyglotbook_polyglotbook_weightedrandom", + "community": 25 + }, + { + "label": "BookEntry", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", + "source_location": "L137", + "id": "polyglotbook_bookentry", + "community": 25 + }, + { + "label": "PolyglotHash.scala", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala", + "source_location": "L1", + "id": "modules_bot_src_main_scala_de_nowchess_bot_util_polyglothash_scala", + "community": 38 + }, + { + "label": "PolyglotHash", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala", + "source_location": "L6", + "id": "polyglothash_polyglothash", + "community": 38 + }, + { + "label": ".hash()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala", + "source_location": "L169", + "id": "polyglothash_polyglothash_hash", + "community": 38 + }, + { + "label": ".pieceIndex()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala", + "source_location": "L182", + "id": "polyglothash_polyglothash_pieceindex", + "community": 38 + }, + { + "label": ".squareIndex()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala", + "source_location": "L193", + "id": "polyglothash_polyglothash_squareindex", + "community": 38 + }, + { + "label": ".canCaptureEnPassant()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala", + "source_location": "L196", + "id": "polyglothash_polyglothash_cancaptureenpassant", + "community": 38 + }, + { + "label": "ZobristHash.scala", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L1", + "id": "modules_bot_src_main_scala_de_nowchess_bot_util_zobristhash_scala", + "community": 20 + }, + { + "label": "ZobristHash", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L9", + "id": "zobristhash_zobristhash", + "community": 20 + }, + { + "label": ".hash()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L31", + "id": "zobristhash_zobristhash_hash", + "community": 20 + }, + { + "label": ".nextHash()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L45", + "id": "zobristhash_zobristhash_nexthash", + "community": 20 + }, + { + "label": ".applyNormalDelta()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L59", + "id": "zobristhash_zobristhash_applynormaldelta", + "community": 20 + }, + { + "label": ".applyPromotionDelta()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L66", + "id": "zobristhash_zobristhash_applypromotiondelta", + "community": 20 + }, + { + "label": ".applyEnPassantDelta()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L73", + "id": "zobristhash_zobristhash_applyenpassantdelta", + "community": 20 + }, + { + "label": ".applyCastleDelta()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L81", + "id": "zobristhash_zobristhash_applycastledelta", + "community": 20 + }, + { + "label": ".promotedPieceType()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L102", + "id": "zobristhash_zobristhash_promotedpiecetype", + "community": 20 + }, + { + "label": ".toggleCastling()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L108", + "id": "zobristhash_zobristhash_togglecastling", + "community": 20 + }, + { + "label": ".toggleEnPassant()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L114", + "id": "zobristhash_zobristhash_toggleenpassant", + "community": 20 + }, + { + "label": ".pieceKey()", + "file_type": "code", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L118", + "id": "zobristhash_zobristhash_piecekey", + "community": 20 + }, + { + "label": "AlphaBetaSearchTest.scala", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", + "source_location": "L1", + "id": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", + "community": 23 + }, + { + "label": "AlphaBetaSearchTest", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", + "source_location": "L13", + "id": "alphabetasearchtest_alphabetasearchtest", + "community": 23 + }, + { + "label": "candidateMoves()", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", + "source_location": "L32", + "id": "alphabetasearchtest_candidatemoves", + "community": 23 + }, + { + "label": "legalMoves()", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", + "source_location": "L33", + "id": "alphabetasearchtest_legalmoves", + "community": 23 + }, + { + "label": "allLegalMoves()", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", + "source_location": "L34", + "id": "alphabetasearchtest_alllegalmoves", + "community": 23 + }, + { + "label": "isCheck()", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", + "source_location": "L35", + "id": "alphabetasearchtest_ischeck", + "community": 23 + }, + { + "label": "isCheckmate()", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", + "source_location": "L36", + "id": "alphabetasearchtest_ischeckmate", + "community": 23 + }, + { + "label": "isStalemate()", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", + "source_location": "L37", + "id": "alphabetasearchtest_isstalemate", + "community": 23 + }, + { + "label": "isInsufficientMaterial()", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", + "source_location": "L38", + "id": "alphabetasearchtest_isinsufficientmaterial", + "community": 23 + }, + { + "label": "isFiftyMoveRule()", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", + "source_location": "L39", + "id": "alphabetasearchtest_isfiftymoverule", + "community": 23 + }, + { + "label": "applyMove()", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", + "source_location": "L40", + "id": "alphabetasearchtest_applymove", + "community": 23 + }, + { + "label": "BotControllerTest.scala", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/BotControllerTest.scala", + "source_location": "L1", + "id": "modules_bot_src_test_scala_de_nowchess_bot_botcontrollertest_scala", + "community": 83 + }, + { + "label": "BotControllerTest", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/BotControllerTest.scala", + "source_location": "L6", + "id": "botcontrollertest_botcontrollertest", + "community": 83 + }, + { + "label": "BotDifficultyTest.scala", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/BotDifficultyTest.scala", + "source_location": "L1", + "id": "modules_bot_src_test_scala_de_nowchess_bot_botdifficultytest_scala", + "community": 84 + }, + { + "label": "BotDifficultyTest", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/BotDifficultyTest.scala", + "source_location": "L6", + "id": "botdifficultytest_botdifficultytest", + "community": 84 + }, + { + "label": "ClassicalBotTest.scala", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", + "source_location": "L1", + "id": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", + "community": 24 + }, + { + "label": "ClassicalBotTest", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", + "source_location": "L12", + "id": "classicalbottest_classicalbottest", + "community": 24 + }, + { + "label": "candidateMoves()", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", + "source_location": "L29", + "id": "classicalbottest_candidatemoves", + "community": 24 + }, + { + "label": "legalMoves()", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", + "source_location": "L30", + "id": "classicalbottest_legalmoves", + "community": 24 + }, + { + "label": "allLegalMoves()", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", + "source_location": "L31", + "id": "classicalbottest_alllegalmoves", + "community": 24 + }, + { + "label": "isCheck()", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", + "source_location": "L32", + "id": "classicalbottest_ischeck", + "community": 24 + }, + { + "label": "isCheckmate()", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", + "source_location": "L33", + "id": "classicalbottest_ischeckmate", + "community": 24 + }, + { + "label": "isStalemate()", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", + "source_location": "L34", + "id": "classicalbottest_isstalemate", + "community": 24 + }, + { + "label": "isInsufficientMaterial()", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", + "source_location": "L35", + "id": "classicalbottest_isinsufficientmaterial", + "community": 24 + }, + { + "label": "isFiftyMoveRule()", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", + "source_location": "L36", + "id": "classicalbottest_isfiftymoverule", + "community": 24 + }, + { + "label": "applyMove()", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", + "source_location": "L37", + "id": "classicalbottest_applymove", + "community": 24 + }, + { + "label": "EvaluationTest.scala", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/EvaluationTest.scala", + "source_location": "L1", + "id": "modules_bot_src_test_scala_de_nowchess_bot_evaluationtest_scala", + "community": 85 + }, + { + "label": "EvaluationTest", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/EvaluationTest.scala", + "source_location": "L10", + "id": "evaluationtest_evaluationtest", + "community": 85 + }, + { + "label": "MoveOrderingTest.scala", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/MoveOrderingTest.scala", + "source_location": "L1", + "id": "modules_bot_src_test_scala_de_nowchess_bot_moveorderingtest_scala", + "community": 86 + }, + { + "label": "MoveOrderingTest", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/MoveOrderingTest.scala", + "source_location": "L10", + "id": "moveorderingtest_moveorderingtest", + "community": 86 + }, + { + "label": "PolyglotBookTest.scala", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/PolyglotBookTest.scala", + "source_location": "L1", + "id": "modules_bot_src_test_scala_de_nowchess_bot_polyglotbooktest_scala", + "community": 87 + }, + { + "label": "PolyglotBookTest", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/PolyglotBookTest.scala", + "source_location": "L16", + "id": "polyglotbooktest_polyglotbooktest", + "community": 87 + }, + { + "label": "PolyglotHashTest.scala", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/PolyglotHashTest.scala", + "source_location": "L1", + "id": "modules_bot_src_test_scala_de_nowchess_bot_polyglothashtest_scala", + "community": 88 + }, + { + "label": "PolyglotHashTest", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/PolyglotHashTest.scala", + "source_location": "L10", + "id": "polyglothashtest_polyglothashtest", + "community": 88 + }, + { + "label": "TranspositionTableTest.scala", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/TranspositionTableTest.scala", + "source_location": "L1", + "id": "modules_bot_src_test_scala_de_nowchess_bot_transpositiontabletest_scala", + "community": 89 + }, + { + "label": "TranspositionTableTest", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/TranspositionTableTest.scala", + "source_location": "L9", + "id": "transpositiontabletest_transpositiontabletest", + "community": 89 + }, + { + "label": "ZobristHashTest.scala", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ZobristHashTest.scala", + "source_location": "L1", + "id": "modules_bot_src_test_scala_de_nowchess_bot_zobristhashtest_scala", + "community": 90 + }, + { + "label": "ZobristHashTest", + "file_type": "code", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ZobristHashTest.scala", + "source_location": "L11", + "id": "zobristhashtest_zobristhashtest", + "community": 90 + }, + { + "label": "build.gradle.kts", + "file_type": "code", + "source_file": "modules/core/build.gradle.kts", + "source_location": "L1", + "id": "modules_core_build_gradle_kts", + "community": 121 + }, + { + "label": "Command.scala", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L1", + "id": "modules_core_src_main_scala_de_nowchess_chess_command_command_scala", + "community": 11 + }, + { + "label": "MoveCommand", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L21", + "id": "command_movecommand", + "community": 11 + }, + { + "label": ".execute()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L29", + "id": "command_movecommand_execute", + "community": 11 + }, + { + "label": ".undo()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L32", + "id": "command_movecommand_undo", + "community": 11 + }, + { + "label": ".description()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L35", + "id": "command_movecommand_description", + "community": 11 + }, + { + "label": "MoveResult", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L39", + "id": "command_moveresult", + "community": 11 + }, + { + "label": "Successful", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L40", + "id": "command_successful", + "community": 11 + }, + { + "label": "InvalidFormat", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L41", + "id": "command_invalidformat", + "community": 11 + }, + { + "label": "InvalidMove", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L42", + "id": "command_invalidmove", + "community": 11 + }, + { + "label": "QuitCommand", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L45", + "id": "command_quitcommand", + "community": 11 + }, + { + "label": ".execute()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L46", + "id": "command_quitcommand_execute", + "community": 11 + }, + { + "label": ".undo()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L47", + "id": "command_quitcommand_undo", + "community": 11 + }, + { + "label": ".description()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L48", + "id": "command_quitcommand_description", + "community": 11 + }, + { + "label": "ResetCommand", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L51", + "id": "command_resetcommand", + "community": 11 + }, + { + "label": ".execute()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L55", + "id": "command_resetcommand_execute", + "community": 11 + }, + { + "label": ".undo()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L57", + "id": "command_resetcommand_undo", + "community": 11 + }, + { + "label": ".description()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L60", + "id": "command_resetcommand_description", + "community": 11 + }, + { + "label": "CommandInvoker.scala", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", + "source_location": "L1", + "id": "modules_core_src_main_scala_de_nowchess_chess_command_commandinvoker_scala", + "community": 26 + }, + { + "label": "CommandInvoker", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", + "source_location": "L4", + "id": "commandinvoker_commandinvoker", + "community": 26 + }, + { + "label": ".execute()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", + "source_location": "L11", + "id": "commandinvoker_commandinvoker_execute", + "community": 26 + }, + { + "label": ".undo()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", + "source_location": "L22", + "id": "commandinvoker_commandinvoker_undo", + "community": 26 + }, + { + "label": ".redo()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", + "source_location": "L33", + "id": "commandinvoker_commandinvoker_redo", + "community": 26 + }, + { + "label": ".history()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", + "source_location": "L44", + "id": "commandinvoker_commandinvoker_history", + "community": 26 + }, + { + "label": ".getCurrentIndex()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", + "source_location": "L49", + "id": "commandinvoker_commandinvoker_getcurrentindex", + "community": 26 + }, + { + "label": ".clear()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", + "source_location": "L54", + "id": "commandinvoker_commandinvoker_clear", + "community": 26 + }, + { + "label": ".canUndo()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", + "source_location": "L60", + "id": "commandinvoker_commandinvoker_canundo", + "community": 26 + }, + { + "label": ".canRedo()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", + "source_location": "L65", + "id": "commandinvoker_commandinvoker_canredo", + "community": 26 + }, + { + "label": "Parser.scala", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/controller/Parser.scala", + "source_location": "L1", + "id": "modules_core_src_main_scala_de_nowchess_chess_controller_parser_scala", + "community": 51 + }, + { + "label": "Parser", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/controller/Parser.scala", + "source_location": "L5", + "id": "parser_parser", + "community": 51 + }, + { + "label": ".parseMove()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/controller/Parser.scala", + "source_location": "L10", + "id": "parser_parser_parsemove", + "community": 51 + }, + { + "label": ".parseSquare()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/controller/Parser.scala", + "source_location": "L20", + "id": "parser_parser_parsesquare", + "community": 51 + }, + { + "label": "GameEngine.scala", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L1", + "id": "modules_core_src_main_scala_de_nowchess_chess_engine_gameengine_scala", + "community": 0 + }, + { + "label": "GameEngine", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L18", + "id": "gameengine_gameengine", + "community": 0 + }, + { + "label": "PendingPromotion", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L27", + "id": "gameengine_pendingpromotion", + "community": 0 + }, + { + "label": ".isPendingPromotion()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L37", + "id": "gameengine_gameengine_ispendingpromotion", + "community": 0 + }, + { + "label": ".setOpponentBot()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L42", + "id": "gameengine_gameengine_setopponentbot", + "community": 0 + }, + { + "label": ".clearOpponentBot()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L48", + "id": "gameengine_gameengine_clearopponentbot", + "community": 0 + }, + { + "label": ".board()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L54", + "id": "gameengine_gameengine_board", + "community": 0 + }, + { + "label": ".turn()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L55", + "id": "gameengine_gameengine_turn", + "community": 0 + }, + { + "label": ".context()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L56", + "id": "gameengine_gameengine_context", + "community": 0 + }, + { + "label": ".canUndo()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L59", + "id": "gameengine_gameengine_canundo", + "community": 0 + }, + { + "label": ".canRedo()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L62", + "id": "gameengine_gameengine_canredo", + "community": 0 + }, + { + "label": ".commandHistory()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L65", + "id": "gameengine_gameengine_commandhistory", + "community": 0 + }, + { + "label": ".processUserInput()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L70", + "id": "gameengine_gameengine_processuserinput", + "community": 0 + }, + { + "label": ".handleParsedMove()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L110", + "id": "gameengine_gameengine_handleparsedmove", + "community": 0 + }, + { + "label": ".isPromotionMove()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L131", + "id": "gameengine_gameengine_ispromotionmove", + "community": 0 + }, + { + "label": ".completePromotion()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L139", + "id": "gameengine_gameengine_completepromotion", + "community": 0 + }, + { + "label": ".undo()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L153", + "id": "gameengine_gameengine_undo", + "community": 0 + }, + { + "label": ".redo()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L156", + "id": "gameengine_gameengine_redo", + "community": 0 + }, + { + "label": ".loadGame()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L161", + "id": "gameengine_gameengine_loadgame", + "community": 0 + }, + { + "label": ".replayGame()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L170", + "id": "gameengine_gameengine_replaygame", + "community": 0 + }, + { + "label": ".replayMoves()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L181", + "id": "gameengine_gameengine_replaymoves", + "community": 0 + }, + { + "label": ".applyReplayMove()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L188", + "id": "gameengine_gameengine_applyreplaymove", + "community": 0 + }, + { + "label": ".exportGame()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L199", + "id": "gameengine_gameengine_exportgame", + "community": 0 + }, + { + "label": ".loadPosition()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L204", + "id": "gameengine_gameengine_loadposition", + "community": 0 + }, + { + "label": ".reset()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L212", + "id": "gameengine_gameengine_reset", + "community": 0 + }, + { + "label": ".executeMove()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L220", + "id": "gameengine_gameengine_executemove", + "community": 0 + }, + { + "label": ".translateMoveToNotation()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L263", + "id": "gameengine_gameengine_translatemovetonotation", + "community": 0 + }, + { + "label": ".enPassantNotation()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L271", + "id": "gameengine_gameengine_enpassantnotation", + "community": 0 + }, + { + "label": ".promotionNotation()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L274", + "id": "gameengine_gameengine_promotionnotation", + "community": 0 + }, + { + "label": ".normalMoveNotation()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L282", + "id": "gameengine_gameengine_normalmovenotation", + "community": 0 + }, + { + "label": ".pieceNotation()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L292", + "id": "gameengine_gameengine_piecenotation", + "community": 0 + }, + { + "label": ".computeCaptured()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L301", + "id": "gameengine_gameengine_computecaptured", + "community": 0 + }, + { + "label": ".requestBotMoveIfNeeded()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L315", + "id": "gameengine_gameengine_requestbotmoveifneeded", + "community": 0 + }, + { + "label": ".applyBotMove()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L325", + "id": "gameengine_gameengine_applybotmove", + "community": 0 + }, + { + "label": ".handleBotNoMove()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L350", + "id": "gameengine_gameengine_handlebotnomove", + "community": 0 + }, + { + "label": ".performUndo()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L359", + "id": "gameengine_gameengine_performundo", + "community": 0 + }, + { + "label": ".performRedo()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L369", + "id": "gameengine_gameengine_performredo", + "community": 0 + }, + { + "label": "Observer.scala", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L1", + "id": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "community": 12 + }, + { + "label": "MoveExecutedEvent", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L12", + "id": "observer_moveexecutedevent", + "community": 12 + }, + { + "label": "CheckDetectedEvent", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L20", + "id": "observer_checkdetectedevent", + "community": 12 + }, + { + "label": "CheckmateEvent", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L25", + "id": "observer_checkmateevent", + "community": 12 + }, + { + "label": "StalemateEvent", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L31", + "id": "observer_stalemateevent", + "community": 12 + }, + { + "label": "InvalidMoveEvent", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L36", + "id": "observer_invalidmoveevent", + "community": 12 + }, + { + "label": "PromotionRequiredEvent", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L42", + "id": "observer_promotionrequiredevent", + "community": 12 + }, + { + "label": "BoardResetEvent", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L49", + "id": "observer_boardresetevent", + "community": 12 + }, + { + "label": "FiftyMoveRuleAvailableEvent", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L54", + "id": "observer_fiftymoveruleavailableevent", + "community": 12 + }, + { + "label": "DrawClaimedEvent", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L59", + "id": "observer_drawclaimedevent", + "community": 12 + }, + { + "label": "MoveUndoneEvent", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L64", + "id": "observer_moveundoneevent", + "community": 12 + }, + { + "label": "MoveRedoneEvent", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L70", + "id": "observer_moveredoneevent", + "community": 12 + }, + { + "label": "PgnLoadedEvent", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L79", + "id": "observer_pgnloadedevent", + "community": 12 + }, + { + "label": "subscribe()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L92", + "id": "observer_subscribe", + "community": 12 + }, + { + "label": "unsubscribe()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L97", + "id": "observer_unsubscribe", + "community": 12 + }, + { + "label": "notifyObservers()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L102", + "id": "observer_notifyobservers", + "community": 12 + }, + { + "label": "observerCount()", + "file_type": "code", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L107", + "id": "observer_observercount", + "community": 12 + }, + { + "label": "CommandInvokerBranchTest.scala", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", + "source_location": "L1", + "id": "modules_core_src_test_scala_de_nowchess_chess_command_commandinvokerbranchtest_scala", + "community": 21 + }, + { + "label": "CommandInvokerBranchTest", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", + "source_location": "L8", + "id": "commandinvokerbranchtest_commandinvokerbranchtest", + "community": 21 + }, + { + "label": ".sq()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", + "source_location": "L10", + "id": "commandinvokerbranchtest_commandinvokerbranchtest_sq", + "community": 21 + }, + { + "label": "FailingCommand", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", + "source_location": "L12", + "id": "commandinvokerbranchtest_failingcommand", + "community": 21 + }, + { + "label": ".execute()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", + "source_location": "L13", + "id": "commandinvokerbranchtest_failingcommand_execute", + "community": 21 + }, + { + "label": ".undo()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", + "source_location": "L14", + "id": "commandinvokerbranchtest_failingcommand_undo", + "community": 21 + }, + { + "label": ".description()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", + "source_location": "L15", + "id": "commandinvokerbranchtest_failingcommand_description", + "community": 21 + }, + { + "label": "ConditionalFailCommand", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", + "source_location": "L17", + "id": "commandinvokerbranchtest_conditionalfailcommand", + "community": 21 + }, + { + "label": ".execute()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", + "source_location": "L21", + "id": "commandinvokerbranchtest_conditionalfailcommand_execute", + "community": 21 + }, + { + "label": ".undo()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", + "source_location": "L22", + "id": "commandinvokerbranchtest_conditionalfailcommand_undo", + "community": 21 + }, + { + "label": ".description()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", + "source_location": "L23", + "id": "commandinvokerbranchtest_conditionalfailcommand_description", + "community": 21 + }, + { + "label": ".createMoveCommand()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", + "source_location": "L25", + "id": "commandinvokerbranchtest_commandinvokerbranchtest_createmovecommand", + "community": 21 + }, + { + "label": "CommandInvokerTest.scala", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerTest.scala", + "source_location": "L1", + "id": "modules_core_src_test_scala_de_nowchess_chess_command_commandinvokertest_scala", + "community": 52 + }, + { + "label": "CommandInvokerTest", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerTest.scala", + "source_location": "L8", + "id": "commandinvokertest_commandinvokertest", + "community": 52 + }, + { + "label": ".sq()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerTest.scala", + "source_location": "L10", + "id": "commandinvokertest_commandinvokertest_sq", + "community": 52 + }, + { + "label": ".createMoveCommand()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerTest.scala", + "source_location": "L12", + "id": "commandinvokertest_commandinvokertest_createmovecommand", + "community": 52 + }, + { + "label": "CommandTest.scala", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandTest.scala", + "source_location": "L1", + "id": "modules_core_src_test_scala_de_nowchess_chess_command_commandtest_scala", + "community": 91 + }, + { + "label": "CommandTest", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandTest.scala", + "source_location": "L7", + "id": "commandtest_commandtest", + "community": 91 + }, + { + "label": "MoveCommandTest.scala", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/MoveCommandTest.scala", + "source_location": "L1", + "id": "modules_core_src_test_scala_de_nowchess_chess_command_movecommandtest_scala", + "community": 61 + }, + { + "label": "MoveCommandTest", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/MoveCommandTest.scala", + "source_location": "L8", + "id": "movecommandtest_movecommandtest", + "community": 61 + }, + { + "label": ".sq()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/MoveCommandTest.scala", + "source_location": "L10", + "id": "movecommandtest_movecommandtest_sq", + "community": 61 + }, + { + "label": "ParserTest.scala", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/controller/ParserTest.scala", + "source_location": "L1", + "id": "modules_core_src_test_scala_de_nowchess_chess_controller_parsertest_scala", + "community": 92 + }, + { + "label": "ParserTest", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/controller/ParserTest.scala", + "source_location": "L7", + "id": "parsertest_parsertest", + "community": 92 + }, + { + "label": "EngineTestHelpers.scala", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", + "source_location": "L1", + "id": "modules_core_src_test_scala_de_nowchess_chess_engine_enginetesthelpers_scala", + "community": 19 + }, + { + "label": "EngineTestHelpers", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", + "source_location": "L10", + "id": "enginetesthelpers_enginetesthelpers", + "community": 19 + }, + { + "label": ".makeEngine()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", + "source_location": "L12", + "id": "enginetesthelpers_enginetesthelpers_makeengine", + "community": 19 + }, + { + "label": ".makeEngineWithBoard()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", + "source_location": "L15", + "id": "enginetesthelpers_enginetesthelpers_makeenginewithboard", + "community": 19 + }, + { + "label": ".loadFen()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", + "source_location": "L18", + "id": "enginetesthelpers_enginetesthelpers_loadfen", + "community": 19 + }, + { + "label": ".captureEvents()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", + "source_location": "L21", + "id": "enginetesthelpers_enginetesthelpers_captureevents", + "community": 19 + }, + { + "label": "MockObserver", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", + "source_location": "L26", + "id": "enginetesthelpers_mockobserver", + "community": 19 + }, + { + "label": ".events()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", + "source_location": "L29", + "id": "enginetesthelpers_mockobserver_events", + "community": 19 + }, + { + "label": ".eventCount()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", + "source_location": "L30", + "id": "enginetesthelpers_mockobserver_eventcount", + "community": 19 + }, + { + "label": ".hasEvent()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", + "source_location": "L31", + "id": "enginetesthelpers_mockobserver_hasevent", + "community": 19 + }, + { + "label": ".getEvent()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", + "source_location": "L33", + "id": "enginetesthelpers_mockobserver_getevent", + "community": 19 + }, + { + "label": ".onGameEvent()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", + "source_location": "L36", + "id": "enginetesthelpers_mockobserver_ongameevent", + "community": 19 + }, + { + "label": ".clear()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", + "source_location": "L39", + "id": "enginetesthelpers_mockobserver_clear", + "community": 19 + }, + { + "label": "GameEngineGameEndingTest.scala", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineGameEndingTest.scala", + "source_location": "L1", + "id": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginegameendingtest_scala", + "community": 53 + }, + { + "label": "GameEngineGameEndingTest", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineGameEndingTest.scala", + "source_location": "L10", + "id": "gameenginegameendingtest_gameenginegameendingtest", + "community": 53 + }, + { + "label": "EndingMockObserver", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineGameEndingTest.scala", + "source_location": "L96", + "id": "gameenginegameendingtest_endingmockobserver", + "community": 53 + }, + { + "label": ".onGameEvent()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineGameEndingTest.scala", + "source_location": "L99", + "id": "gameenginegameendingtest_endingmockobserver_ongameevent", + "community": 53 + }, + { + "label": "GameEngineIntegrationTest.scala", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L1", + "id": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", + "community": 15 + }, + { + "label": "GameEngineIntegrationTest", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L13", + "id": "gameengineintegrationtest_gameengineintegrationtest", + "community": 15 + }, + { + "label": ".sq()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L15", + "id": "gameengineintegrationtest_gameengineintegrationtest_sq", + "community": 15 + }, + { + "label": ".captureEvents()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L18", + "id": "gameengineintegrationtest_gameengineintegrationtest_captureevents", + "community": 15 + }, + { + "label": "importGameContext()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L58", + "id": "gameengineintegrationtest_importgamecontext", + "community": 15 + }, + { + "label": "candidateMoves()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L92", + "id": "gameengineintegrationtest_candidatemoves", + "community": 15 + }, + { + "label": "legalMoves()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L93", + "id": "gameengineintegrationtest_legalmoves", + "community": 15 + }, + { + "label": "allLegalMoves()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L95", + "id": "gameengineintegrationtest_alllegalmoves", + "community": 15 + }, + { + "label": "isCheck()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L96", + "id": "gameengineintegrationtest_ischeck", + "community": 15 + }, + { + "label": "isCheckmate()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L97", + "id": "gameengineintegrationtest_ischeckmate", + "community": 15 + }, + { + "label": "isStalemate()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L98", + "id": "gameengineintegrationtest_isstalemate", + "community": 15 + }, + { + "label": "isInsufficientMaterial()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L99", + "id": "gameengineintegrationtest_isinsufficientmaterial", + "community": 15 + }, + { + "label": "isFiftyMoveRule()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L100", + "id": "gameengineintegrationtest_isfiftymoverule", + "community": 15 + }, + { + "label": "applyMove()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L101", + "id": "gameengineintegrationtest_applymove", + "community": 15 + }, + { + "label": "onGameEvent()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L169", + "id": "gameengineintegrationtest_ongameevent", + "community": 15 + }, + { + "label": "GameEngineLoadGameTest.scala", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineLoadGameTest.scala", + "source_location": "L1", + "id": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineloadgametest_scala", + "community": 54 + }, + { + "label": "GameEngineLoadGameTest", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineLoadGameTest.scala", + "source_location": "L14", + "id": "gameengineloadgametest_gameengineloadgametest", + "community": 54 + }, + { + "label": "MockObserver", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineLoadGameTest.scala", + "source_location": "L40", + "id": "gameengineloadgametest_mockobserver", + "community": 54 + }, + { + "label": ".onGameEvent()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineLoadGameTest.scala", + "source_location": "L42", + "id": "gameengineloadgametest_mockobserver_ongameevent", + "community": 54 + }, + { + "label": "GameEngineNotationTest.scala", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineNotationTest.scala", + "source_location": "L1", + "id": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginenotationtest_scala", + "community": 62 + }, + { + "label": "GameEngineNotationTest", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineNotationTest.scala", + "source_location": "L17", + "id": "gameenginenotationtest_gameenginenotationtest", + "community": 62 + }, + { + "label": ".captureEvents()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineNotationTest.scala", + "source_location": "L19", + "id": "gameenginenotationtest_gameenginenotationtest_captureevents", + "community": 62 + }, + { + "label": "GameEngineOutcomesTest.scala", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineOutcomesTest.scala", + "source_location": "L1", + "id": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineoutcomestest_scala", + "community": 93 + }, + { + "label": "GameEngineOutcomesTest", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineOutcomesTest.scala", + "source_location": "L8", + "id": "gameengineoutcomestest_gameengineoutcomestest", + "community": 93 + }, + { + "label": "GameEnginePromotionTest.scala", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", + "source_location": "L1", + "id": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", + "community": 16 + }, + { + "label": "GameEnginePromotionTest", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", + "source_location": "L13", + "id": "gameenginepromotiontest_gameenginepromotiontest", + "community": 16 + }, + { + "label": ".sq()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", + "source_location": "L15", + "id": "gameenginepromotiontest_gameenginepromotiontest_sq", + "community": 16 + }, + { + "label": ".captureEvents()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", + "source_location": "L17", + "id": "gameenginepromotiontest_gameenginepromotiontest_captureevents", + "community": 16 + }, + { + "label": ".engineWith()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", + "source_location": "L22", + "id": "gameenginepromotiontest_gameenginepromotiontest_enginewith", + "community": 16 + }, + { + "label": "candidateMoves()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", + "source_location": "L156", + "id": "gameenginepromotiontest_candidatemoves", + "community": 16 + }, + { + "label": "legalMoves()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", + "source_location": "L158", + "id": "gameenginepromotiontest_legalmoves", + "community": 16 + }, + { + "label": "allLegalMoves()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", + "source_location": "L164", + "id": "gameenginepromotiontest_alllegalmoves", + "community": 16 + }, + { + "label": "isCheck()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", + "source_location": "L166", + "id": "gameenginepromotiontest_ischeck", + "community": 16 + }, + { + "label": "isCheckmate()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", + "source_location": "L168", + "id": "gameenginepromotiontest_ischeckmate", + "community": 16 + }, + { + "label": "isStalemate()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", + "source_location": "L170", + "id": "gameenginepromotiontest_isstalemate", + "community": 16 + }, + { + "label": "isInsufficientMaterial()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", + "source_location": "L172", + "id": "gameenginepromotiontest_isinsufficientmaterial", + "community": 16 + }, + { + "label": "isFiftyMoveRule()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", + "source_location": "L174", + "id": "gameenginepromotiontest_isfiftymoverule", + "community": 16 + }, + { + "label": "applyMove()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", + "source_location": "L176", + "id": "gameenginepromotiontest_applymove", + "community": 16 + }, + { + "label": "GameEngineScenarioTest.scala", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineScenarioTest.scala", + "source_location": "L1", + "id": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginescenariotest_scala", + "community": 94 + }, + { + "label": "GameEngineScenarioTest", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineScenarioTest.scala", + "source_location": "L11", + "id": "gameenginescenariotest_gameenginescenariotest", + "community": 94 + }, + { + "label": "GameEngineSpecialMovesTest.scala", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineSpecialMovesTest.scala", + "source_location": "L1", + "id": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginespecialmovestest_scala", + "community": 95 + }, + { + "label": "GameEngineSpecialMovesTest", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineSpecialMovesTest.scala", + "source_location": "L9", + "id": "gameenginespecialmovestest_gameenginespecialmovestest", + "community": 95 + }, + { + "label": "GameEngineWithBotTest.scala", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineWithBotTest.scala", + "source_location": "L1", + "id": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginewithbottest_scala", + "community": 63 + }, + { + "label": "GameEngineWithBotTest", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineWithBotTest.scala", + "source_location": "L14", + "id": "gameenginewithbottest_gameenginewithbottest", + "community": 63 + }, + { + "label": "onGameEvent()", + "file_type": "code", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineWithBotTest.scala", + "source_location": "L29", + "id": "gameenginewithbottest_ongameevent", + "community": 63 + }, + { + "label": "build.gradle.kts", + "file_type": "code", + "source_file": "modules/io/build.gradle.kts", + "source_location": "L1", + "id": "modules_io_build_gradle_kts", + "community": 122 + }, + { + "label": "GameContextExport.scala", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/GameContextExport.scala", + "source_location": "L1", + "id": "modules_io_src_main_scala_de_nowchess_io_gamecontextexport_scala", + "community": 123 + }, + { + "label": "GameContextImport.scala", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/GameContextImport.scala", + "source_location": "L1", + "id": "modules_io_src_main_scala_de_nowchess_io_gamecontextimport_scala", + "community": 124 + }, + { + "label": "GameFileService.scala", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/GameFileService.scala", + "source_location": "L1", + "id": "modules_io_src_main_scala_de_nowchess_io_gamefileservice_scala", + "community": 55 + }, + { + "label": "FileSystemGameService", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/GameFileService.scala", + "source_location": "L17", + "id": "gamefileservice_filesystemgameservice", + "community": 55 + }, + { + "label": ".saveGameToFile()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/GameFileService.scala", + "source_location": "L20", + "id": "gamefileservice_filesystemgameservice_savegametofile", + "community": 55 + }, + { + "label": ".loadGameFromFile()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/GameFileService.scala", + "source_location": "L31", + "id": "gamefileservice_filesystemgameservice_loadgamefromfile", + "community": 55 + }, + { + "label": "FenExporter.scala", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", + "source_location": "L1", + "id": "modules_io_src_main_scala_de_nowchess_io_fen_fenexporter_scala", + "community": 33 + }, + { + "label": "FenExporter", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", + "source_location": "L7", + "id": "fenexporter_fenexporter", + "community": 33 + }, + { + "label": ".boardToFen()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", + "source_location": "L10", + "id": "fenexporter_fenexporter_boardtofen", + "community": 33 + }, + { + "label": ".buildRankString()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", + "source_location": "L16", + "id": "fenexporter_fenexporter_buildrankstring", + "community": 33 + }, + { + "label": ".gameContextToFen()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", + "source_location": "L29", + "id": "fenexporter_fenexporter_gamecontexttofen", + "community": 33 + }, + { + "label": ".exportGameContext()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", + "source_location": "L37", + "id": "fenexporter_fenexporter_exportgamecontext", + "community": 33 + }, + { + "label": ".castlingString()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", + "source_location": "L40", + "id": "fenexporter_fenexporter_castlingstring", + "community": 33 + }, + { + "label": ".pieceToFenChar()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", + "source_location": "L49", + "id": "fenexporter_fenexporter_piecetofenchar", + "community": 33 + }, + { + "label": "FenParser.scala", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", + "source_location": "L1", + "id": "modules_io_src_main_scala_de_nowchess_io_fen_fenparser_scala", + "community": 27 + }, + { + "label": "FenParser", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", + "source_location": "L7", + "id": "fenparser_fenparser", + "community": 27 + }, + { + "label": ".parseFen()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", + "source_location": "L11", + "id": "fenparser_fenparser_parsefen", + "community": 27 + }, + { + "label": ".importGameContext()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", + "source_location": "L32", + "id": "fenparser_fenparser_importgamecontext", + "community": 27 + }, + { + "label": ".parseColor()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", + "source_location": "L36", + "id": "fenparser_fenparser_parsecolor", + "community": 27 + }, + { + "label": ".parseCastling()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", + "source_location": "L42", + "id": "fenparser_fenparser_parsecastling", + "community": 27 + }, + { + "label": ".parseEnPassant()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", + "source_location": "L56", + "id": "fenparser_fenparser_parseenpassant", + "community": 27 + }, + { + "label": ".parseBoard()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", + "source_location": "L63", + "id": "fenparser_fenparser_parseboard", + "community": 27 + }, + { + "label": ".parsePieceRank()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", + "source_location": "L79", + "id": "fenparser_fenparser_parsepiecerank", + "community": 27 + }, + { + "label": ".charToPiece()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", + "source_location": "L94", + "id": "fenparser_fenparser_chartopiece", + "community": 27 + }, + { + "label": "FenParserCombinators.scala", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L1", + "id": "modules_io_src_main_scala_de_nowchess_io_fen_fenparsercombinators_scala", + "community": 13 + }, + { + "label": "FenParserCombinators", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L9", + "id": "fenparsercombinators_fenparsercombinators", + "community": 13 + }, + { + "label": ".pieceChar()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L15", + "id": "fenparsercombinators_fenparsercombinators_piecechar", + "community": 13 + }, + { + "label": ".emptyCount()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L22", + "id": "fenparsercombinators_fenparsercombinators_emptycount", + "community": 13 + }, + { + "label": ".rankToken()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L27", + "id": "fenparsercombinators_fenparsercombinators_ranktoken", + "community": 13 + }, + { + "label": ".rankTokens()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L30", + "id": "fenparsercombinators_fenparsercombinators_ranktokens", + "community": 13 + }, + { + "label": ".rankParser()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L35", + "id": "fenparsercombinators_fenparsercombinators_rankparser", + "community": 13 + }, + { + "label": ".rankSep()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L44", + "id": "fenparsercombinators_fenparsercombinators_ranksep", + "community": 13 + }, + { + "label": ".boardParser()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L47", + "id": "fenparsercombinators_fenparsercombinators_boardparser", + "community": 13 + }, + { + "label": ".colorParser()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L61", + "id": "fenparsercombinators_fenparsercombinators_colorparser", + "community": 13 + }, + { + "label": ".castlingParser()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L69", + "id": "fenparsercombinators_fenparsercombinators_castlingparser", + "community": 13 + }, + { + "label": ".enPassantParser()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L82", + "id": "fenparsercombinators_fenparsercombinators_enpassantparser", + "community": 13 + }, + { + "label": ".clockParser()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L88", + "id": "fenparsercombinators_fenparsercombinators_clockparser", + "community": 13 + }, + { + "label": ".fenParser()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L93", + "id": "fenparsercombinators_fenparsercombinators_fenparser", + "community": 13 + }, + { + "label": ".parseFen()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L109", + "id": "fenparsercombinators_fenparsercombinators_parsefen", + "community": 13 + }, + { + "label": ".parseBoard()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L114", + "id": "fenparsercombinators_fenparsercombinators_parseboard", + "community": 13 + }, + { + "label": ".importGameContext()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L119", + "id": "fenparsercombinators_fenparsercombinators_importgamecontext", + "community": 13 + }, + { + "label": "FenParserFastParse.scala", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L1", + "id": "modules_io_src_main_scala_de_nowchess_io_fen_fenparserfastparse_scala", + "community": 10 + }, + { + "label": "FenParserFastParse", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L10", + "id": "fenparserfastparse_fenparserfastparse", + "community": 10 + }, + { + "label": ".pieceChar()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L14", + "id": "fenparserfastparse_fenparserfastparse_piecechar", + "community": 10 + }, + { + "label": ".emptyCount()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L21", + "id": "fenparserfastparse_fenparserfastparse_emptycount", + "community": 10 + }, + { + "label": ".rankToken()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L24", + "id": "fenparserfastparse_fenparserfastparse_ranktoken", + "community": 10 + }, + { + "label": ".rankParser()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L29", + "id": "fenparserfastparse_fenparserfastparse_rankparser", + "community": 10 + }, + { + "label": ".sep()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L38", + "id": "fenparserfastparse_fenparserfastparse_sep", + "community": 10 + }, + { + "label": ".boardParser()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L40", + "id": "fenparserfastparse_fenparserfastparse_boardparser", + "community": 10 + }, + { + "label": ".colorParser()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L54", + "id": "fenparserfastparse_fenparserfastparse_colorparser", + "community": 10 + }, + { + "label": ".castlingParser()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L62", + "id": "fenparserfastparse_fenparserfastparse_castlingparser", + "community": 10 + }, + { + "label": ".enPassantParser()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L75", + "id": "fenparserfastparse_fenparserfastparse_enpassantparser", + "community": 10 + }, + { + "label": ".clockParser()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L81", + "id": "fenparserfastparse_fenparserfastparse_clockparser", + "community": 10 + }, + { + "label": ".sp()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L86", + "id": "fenparserfastparse_fenparserfastparse_sp", + "community": 10 + }, + { + "label": ".fenParser()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L90", + "id": "fenparserfastparse_fenparserfastparse_fenparser", + "community": 10 + }, + { + "label": ".parseFen()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L106", + "id": "fenparserfastparse_fenparserfastparse_parsefen", + "community": 10 + }, + { + "label": ".boardParserFull()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L111", + "id": "fenparserfastparse_fenparserfastparse_boardparserfull", + "community": 10 + }, + { + "label": ".parseBoard()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L114", + "id": "fenparserfastparse_fenparserfastparse_parseboard", + "community": 10 + }, + { + "label": ".importGameContext()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L119", + "id": "fenparserfastparse_fenparserfastparse_importgamecontext", + "community": 10 + }, + { + "label": "FenParserSupport.scala", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserSupport.scala", + "source_location": "L1", + "id": "modules_io_src_main_scala_de_nowchess_io_fen_fenparsersupport_scala", + "community": 44 + }, + { + "label": "FenParserSupport", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserSupport.scala", + "source_location": "L5", + "id": "fenparsersupport_fenparsersupport", + "community": 44 + }, + { + "label": "PieceToken", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserSupport.scala", + "source_location": "L8", + "id": "fenparsersupport_piecetoken", + "community": 44 + }, + { + "label": "EmptyToken", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserSupport.scala", + "source_location": "L9", + "id": "fenparsersupport_emptytoken", + "community": 44 + }, + { + "label": ".buildSquares()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserSupport.scala", + "source_location": "L20", + "id": "fenparsersupport_fenparsersupport_buildsquares", + "community": 44 + }, + { + "label": "JsonExporter.scala", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L1", + "id": "modules_io_src_main_scala_de_nowchess_io_json_jsonexporter_scala", + "community": 17 + }, + { + "label": "JsonExporter", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L23", + "id": "jsonexporter_jsonexporter", + "community": 17 + }, + { + "label": ".createMapper()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L26", + "id": "jsonexporter_jsonexporter_createmapper", + "community": 17 + }, + { + "label": ".exportGameContext()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L40", + "id": "jsonexporter_jsonexporter_exportgamecontext", + "community": 17 + }, + { + "label": ".buildGameRecord()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L44", + "id": "jsonexporter_jsonexporter_buildgamerecord", + "community": 17 + }, + { + "label": ".buildMetadata()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L60", + "id": "jsonexporter_jsonexporter_buildmetadata", + "community": 17 + }, + { + "label": ".buildGameState()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L68", + "id": "jsonexporter_jsonexporter_buildgamestate", + "community": 17 + }, + { + "label": ".buildBoardPieces()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L77", + "id": "jsonexporter_jsonexporter_buildboardpieces", + "community": 17 + }, + { + "label": ".buildCastlingRights()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L82", + "id": "jsonexporter_jsonexporter_buildcastlingrights", + "community": 17 + }, + { + "label": ".buildMoves()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L90", + "id": "jsonexporter_jsonexporter_buildmoves", + "community": 17 + }, + { + "label": ".convertMoveType()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L96", + "id": "jsonexporter_jsonexporter_convertmovetype", + "community": 17 + }, + { + "label": ".buildCapturedPieces()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L117", + "id": "jsonexporter_jsonexporter_buildcapturedpieces", + "community": 17 + }, + { + "label": ".formatJson()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L121", + "id": "jsonexporter_jsonexporter_formatjson", + "community": 17 + }, + { + "label": ".getCapturedPieces()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L127", + "id": "jsonexporter_jsonexporter_getcapturedpieces", + "community": 17 + }, + { + "label": "JsonModel.scala", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", + "source_location": "L1", + "id": "modules_io_src_main_scala_de_nowchess_io_json_jsonmodel_scala", + "community": 32 + }, + { + "label": "JsonMetadata", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", + "source_location": "L3", + "id": "jsonmodel_jsonmetadata", + "community": 32 + }, + { + "label": "JsonPiece", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", + "source_location": "L10", + "id": "jsonmodel_jsonpiece", + "community": 32 + }, + { + "label": "JsonCastlingRights", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", + "source_location": "L16", + "id": "jsonmodel_jsoncastlingrights", + "community": 32 + }, + { + "label": "JsonGameState", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", + "source_location": "L23", + "id": "jsonmodel_jsongamestate", + "community": 32 + }, + { + "label": "JsonCapturedPieces", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", + "source_location": "L31", + "id": "jsonmodel_jsoncapturedpieces", + "community": 32 + }, + { + "label": "JsonMoveType", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", + "source_location": "L36", + "id": "jsonmodel_jsonmovetype", + "community": 32 + }, + { + "label": "JsonMove", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", + "source_location": "L42", + "id": "jsonmodel_jsonmove", + "community": 32 + }, + { + "label": "JsonGameRecord", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", + "source_location": "L48", + "id": "jsonmodel_jsongamerecord", + "community": 32 + }, + { + "label": "JsonParser.scala", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", + "source_location": "L1", + "id": "modules_io_src_main_scala_de_nowchess_io_json_jsonparser_scala", + "community": 28 + }, + { + "label": "JsonParser", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", + "source_location": "L23", + "id": "jsonparser_jsonparser", + "community": 28 + }, + { + "label": ".importGameContext()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", + "source_location": "L29", + "id": "jsonparser_jsonparser_importgamecontext", + "community": 28 + }, + { + "label": ".parseBoard()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", + "source_location": "L56", + "id": "jsonparser_jsonparser_parseboard", + "community": 28 + }, + { + "label": ".parseTurn()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", + "source_location": "L66", + "id": "jsonparser_jsonparser_parseturn", + "community": 28 + }, + { + "label": ".parseColor()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", + "source_location": "L69", + "id": "jsonparser_jsonparser_parsecolor", + "community": 28 + }, + { + "label": ".parsePieceType()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", + "source_location": "L74", + "id": "jsonparser_jsonparser_parsepiecetype", + "community": 28 + }, + { + "label": ".parseCastlingRights()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", + "source_location": "L84", + "id": "jsonparser_jsonparser_parsecastlingrights", + "community": 28 + }, + { + "label": ".parseMoves()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", + "source_location": "L92", + "id": "jsonparser_jsonparser_parsemoves", + "community": 28 + }, + { + "label": ".parseMoveType()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", + "source_location": "L101", + "id": "jsonparser_jsonparser_parsemovetype", + "community": 28 + }, + { + "label": "PgnExporter.scala", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala", + "source_location": "L1", + "id": "modules_io_src_main_scala_de_nowchess_io_pgn_pgnexporter_scala", + "community": 45 + }, + { + "label": "PgnExporter", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala", + "source_location": "L9", + "id": "pgnexporter_pgnexporter", + "community": 45 + }, + { + "label": ".exportGameContext()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala", + "source_location": "L12", + "id": "pgnexporter_pgnexporter_exportgamecontext", + "community": 45 + }, + { + "label": ".exportGame()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala", + "source_location": "L23", + "id": "pgnexporter_pgnexporter_exportgame", + "community": 45 + }, + { + "label": ".moveToAlgebraic()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala", + "source_location": "L52", + "id": "pgnexporter_pgnexporter_movetoalgebraic", + "community": 45 + }, + { + "label": "PgnParser.scala", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L1", + "id": "modules_io_src_main_scala_de_nowchess_io_pgn_pgnparser_scala", + "community": 14 + }, + { + "label": "PgnGame", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L10", + "id": "pgnparser_pgngame", + "community": 14 + }, + { + "label": "PgnParser", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L15", + "id": "pgnparser_pgnparser", + "community": 14 + }, + { + "label": ".validatePgn()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L20", + "id": "pgnparser_pgnparser_validatepgn", + "community": 14 + }, + { + "label": ".importGameContext()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L31", + "id": "pgnparser_pgnparser_importgamecontext", + "community": 14 + }, + { + "label": ".parsePgn()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L39", + "id": "pgnparser_pgnparser_parsepgn", + "community": 14 + }, + { + "label": ".parseHeaders()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L48", + "id": "pgnparser_pgnparser_parseheaders", + "community": 14 + }, + { + "label": ".parseMovesText()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L53", + "id": "pgnparser_pgnparser_parsemovestext", + "community": 14 + }, + { + "label": ".isMoveNumberOrResult()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L69", + "id": "pgnparser_pgnparser_ismovenumberorresult", + "community": 14 + }, + { + "label": ".parseAlgebraicMove()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L77", + "id": "pgnparser_pgnparser_parsealgebraicmove", + "community": 14 + }, + { + "label": ".parseRegularMove()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L93", + "id": "pgnparser_pgnparser_parseregularmove", + "community": 14 + }, + { + "label": ".matchesHint()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L136", + "id": "pgnparser_pgnparser_matcheshint", + "community": 14 + }, + { + "label": ".promotionMatches()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L143", + "id": "pgnparser_pgnparser_promotionmatches", + "community": 14 + }, + { + "label": ".extractPromotion()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L152", + "id": "pgnparser_pgnparser_extractpromotion", + "community": 14 + }, + { + "label": ".charToPieceType()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L164", + "id": "pgnparser_pgnparser_chartopiecetype", + "community": 14 + }, + { + "label": ".validateMovesText()", + "file_type": "code", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L176", + "id": "pgnparser_pgnparser_validatemovestext", + "community": 14 + }, + { + "label": "GameFileServiceSuite.scala", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/GameFileServiceSuite.scala", + "source_location": "L1", + "id": "modules_io_src_test_scala_de_nowchess_io_gamefileservicesuite_scala", + "community": 64 + }, + { + "label": "GameFileServiceSuite", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/GameFileServiceSuite.scala", + "source_location": "L12", + "id": "gamefileservicesuite_gamefileservicesuite", + "community": 64 + }, + { + "label": "exportGameContext()", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/GameFileServiceSuite.scala", + "source_location": "L124", + "id": "gamefileservicesuite_exportgamecontext", + "community": 64 + }, + { + "label": "FenExporterTest.scala", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenExporterTest.scala", + "source_location": "L1", + "id": "modules_io_src_test_scala_de_nowchess_io_fen_fenexportertest_scala", + "community": 65 + }, + { + "label": "FenExporterTest", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenExporterTest.scala", + "source_location": "L9", + "id": "fenexportertest_fenexportertest", + "community": 65 + }, + { + "label": ".context()", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenExporterTest.scala", + "source_location": "L11", + "id": "fenexportertest_fenexportertest_context", + "community": 65 + }, + { + "label": "FenParserCombinatorsTest.scala", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenParserCombinatorsTest.scala", + "source_location": "L1", + "id": "modules_io_src_test_scala_de_nowchess_io_fen_fenparsercombinatorstest_scala", + "community": 96 + }, + { + "label": "FenParserCombinatorsTest", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenParserCombinatorsTest.scala", + "source_location": "L7", + "id": "fenparsercombinatorstest_fenparsercombinatorstest", + "community": 96 + }, + { + "label": "FenParserFastParseTest.scala", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenParserFastParseTest.scala", + "source_location": "L1", + "id": "modules_io_src_test_scala_de_nowchess_io_fen_fenparserfastparsetest_scala", + "community": 97 + }, + { + "label": "FenParserFastParseTest", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenParserFastParseTest.scala", + "source_location": "L7", + "id": "fenparserfastparsetest_fenparserfastparsetest", + "community": 97 + }, + { + "label": "FenParserTest.scala", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenParserTest.scala", + "source_location": "L1", + "id": "modules_io_src_test_scala_de_nowchess_io_fen_fenparsertest_scala", + "community": 98 + }, + { + "label": "FenParserTest", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenParserTest.scala", + "source_location": "L7", + "id": "fenparsertest_fenparsertest", + "community": 98 + }, + { + "label": "JsonExporterBranchCoverageSuite.scala", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonExporterBranchCoverageSuite.scala", + "source_location": "L1", + "id": "modules_io_src_test_scala_de_nowchess_io_json_jsonexporterbranchcoveragesuite_scala", + "community": 99 + }, + { + "label": "JsonExporterBranchCoverageSuite", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonExporterBranchCoverageSuite.scala", + "source_location": "L9", + "id": "jsonexporterbranchcoveragesuite_jsonexporterbranchcoveragesuite", + "community": 99 + }, + { + "label": "JsonExporterSuite.scala", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonExporterSuite.scala", + "source_location": "L1", + "id": "modules_io_src_test_scala_de_nowchess_io_json_jsonexportersuite_scala", + "community": 100 + }, + { + "label": "JsonExporterSuite", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonExporterSuite.scala", + "source_location": "L9", + "id": "jsonexportersuite_jsonexportersuite", + "community": 100 + }, + { + "label": "JsonModelExtraTestSuite.scala", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonModelExtraTestSuite.scala", + "source_location": "L1", + "id": "modules_io_src_test_scala_de_nowchess_io_json_jsonmodelextratestsuite_scala", + "community": 101 + }, + { + "label": "JsonModelExtraTestSuite", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonModelExtraTestSuite.scala", + "source_location": "L6", + "id": "jsonmodelextratestsuite_jsonmodelextratestsuite", + "community": 101 + }, + { + "label": "JsonParserEdgeCasesSuite.scala", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserEdgeCasesSuite.scala", + "source_location": "L1", + "id": "modules_io_src_test_scala_de_nowchess_io_json_jsonparseredgecasessuite_scala", + "community": 102 + }, + { + "label": "JsonParserEdgeCasesSuite", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserEdgeCasesSuite.scala", + "source_location": "L8", + "id": "jsonparseredgecasessuite_jsonparseredgecasessuite", + "community": 102 + }, + { + "label": "JsonParserErrorHandlingSuite.scala", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserErrorHandlingSuite.scala", + "source_location": "L1", + "id": "modules_io_src_test_scala_de_nowchess_io_json_jsonparsererrorhandlingsuite_scala", + "community": 103 + }, + { + "label": "JsonParserErrorHandlingSuite", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserErrorHandlingSuite.scala", + "source_location": "L7", + "id": "jsonparsererrorhandlingsuite_jsonparsererrorhandlingsuite", + "community": 103 + }, + { + "label": "JsonParserMoveTypeSuite.scala", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserMoveTypeSuite.scala", + "source_location": "L1", + "id": "modules_io_src_test_scala_de_nowchess_io_json_jsonparsermovetypesuite_scala", + "community": 104 + }, + { + "label": "JsonParserMoveTypeSuite", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserMoveTypeSuite.scala", + "source_location": "L9", + "id": "jsonparsermovetypesuite_jsonparsermovetypesuite", + "community": 104 + }, + { + "label": "JsonParserSuite.scala", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserSuite.scala", + "source_location": "L1", + "id": "modules_io_src_test_scala_de_nowchess_io_json_jsonparsersuite_scala", + "community": 105 + }, + { + "label": "JsonParserSuite", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserSuite.scala", + "source_location": "L9", + "id": "jsonparsersuite_jsonparsersuite", + "community": 105 + }, + { + "label": "PgnExporterTest.scala", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnExporterTest.scala", + "source_location": "L1", + "id": "modules_io_src_test_scala_de_nowchess_io_pgn_pgnexportertest_scala", + "community": 66 + }, + { + "label": "PgnExporterTest", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnExporterTest.scala", + "source_location": "L9", + "id": "pgnexportertest_pgnexportertest", + "community": 66 + }, + { + "label": ".sq()", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnExporterTest.scala", + "source_location": "L73", + "id": "pgnexportertest_pgnexportertest_sq", + "community": 66 + }, + { + "label": "PgnParserTest.scala", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnParserTest.scala", + "source_location": "L1", + "id": "modules_io_src_test_scala_de_nowchess_io_pgn_pgnparsertest_scala", + "community": 106 + }, + { + "label": "PgnParserTest", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnParserTest.scala", + "source_location": "L10", + "id": "pgnparsertest_pgnparsertest", + "community": 106 + }, + { + "label": "PgnValidatorTest.scala", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnValidatorTest.scala", + "source_location": "L1", + "id": "modules_io_src_test_scala_de_nowchess_io_pgn_pgnvalidatortest_scala", + "community": 107 + }, + { + "label": "PgnValidatorTest", + "file_type": "code", + "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnValidatorTest.scala", + "source_location": "L8", + "id": "pgnvalidatortest_pgnvalidatortest", + "community": 107 + }, + { + "label": "build.gradle.kts", + "file_type": "code", + "source_file": "modules/rule/build.gradle.kts", + "source_location": "L1", + "id": "modules_rule_build_gradle_kts", + "community": 125 + }, + { + "label": "RuleSet.scala", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/RuleSet.scala", + "source_location": "L1", + "id": "modules_rule_src_main_scala_de_nowchess_rules_ruleset_scala", + "community": 126 + }, + { + "label": "DefaultRules.scala", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L1", + "id": "modules_rule_src_main_scala_de_nowchess_rules_sets_defaultrules_scala", + "community": 1 + }, + { + "label": "DefaultRules", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L12", + "id": "defaultrules_defaultrules", + "community": 1 + }, + { + "label": ".pawnForward()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L22", + "id": "defaultrules_defaultrules_pawnforward", + "community": 1 + }, + { + "label": ".pawnStartRank()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L23", + "id": "defaultrules_defaultrules_pawnstartrank", + "community": 1 + }, + { + "label": ".pawnPromoRank()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L24", + "id": "defaultrules_defaultrules_pawnpromorank", + "community": 1 + }, + { + "label": ".candidateMoves()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L28", + "id": "defaultrules_defaultrules_candidatemoves", + "community": 1 + }, + { + "label": ".legalMoves()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L41", + "id": "defaultrules_defaultrules_legalmoves", + "community": 1 + }, + { + "label": ".allLegalMoves()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L46", + "id": "defaultrules_defaultrules_alllegalmoves", + "community": 1 + }, + { + "label": ".isCheck()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L49", + "id": "defaultrules_defaultrules_ischeck", + "community": 1 + }, + { + "label": ".isCheckmate()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L53", + "id": "defaultrules_defaultrules_ischeckmate", + "community": 1 + }, + { + "label": ".isStalemate()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L56", + "id": "defaultrules_defaultrules_isstalemate", + "community": 1 + }, + { + "label": ".isInsufficientMaterial()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L59", + "id": "defaultrules_defaultrules_isinsufficientmaterial", + "community": 1 + }, + { + "label": ".isFiftyMoveRule()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L62", + "id": "defaultrules_defaultrules_isfiftymoverule", + "community": 1 + }, + { + "label": ".slidingMoves()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L67", + "id": "defaultrules_defaultrules_slidingmoves", + "community": 1 + }, + { + "label": ".castRay()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L75", + "id": "defaultrules_defaultrules_castray", + "community": 1 + }, + { + "label": ".knightCandidates()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L94", + "id": "defaultrules_defaultrules_knightcandidates", + "community": 1 + }, + { + "label": ".kingCandidates()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L110", + "id": "defaultrules_defaultrules_kingcandidates", + "community": 1 + }, + { + "label": "CastlingMove", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L127", + "id": "defaultrules_castlingmove", + "community": 1 + }, + { + "label": ".castlingCandidates()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L135", + "id": "defaultrules_defaultrules_castlingcandidates", + "community": 1 + }, + { + "label": ".whiteCastles()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L144", + "id": "defaultrules_defaultrules_whitecastles", + "community": 1 + }, + { + "label": ".blackCastles()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L163", + "id": "defaultrules_defaultrules_blackcastles", + "community": 1 + }, + { + "label": ".queensideBSquare()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L182", + "id": "defaultrules_defaultrules_queensidebsquare", + "community": 1 + }, + { + "label": ".addCastleMove()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L188", + "id": "defaultrules_defaultrules_addcastlemove", + "community": 1 + }, + { + "label": ".squaresEmpty()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L214", + "id": "defaultrules_defaultrules_squaresempty", + "community": 1 + }, + { + "label": ".pawnCandidates()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L219", + "id": "defaultrules_defaultrules_pawncandidates", + "community": 1 + }, + { + "label": ".kingSquare()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L272", + "id": "defaultrules_defaultrules_kingsquare", + "community": 1 + }, + { + "label": ".isAttackedBy()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L275", + "id": "defaultrules_defaultrules_isattackedby", + "community": 1 + }, + { + "label": ".squareAttacks()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L282", + "id": "defaultrules_defaultrules_squareattacks", + "community": 1 + }, + { + "label": ".rayReaches()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L295", + "id": "defaultrules_defaultrules_rayreaches", + "community": 1 + }, + { + "label": ".leavesKingInCheck()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L306", + "id": "defaultrules_defaultrules_leaveskingincheck", + "community": 1 + }, + { + "label": ".applyMove()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L313", + "id": "defaultrules_defaultrules_applymove", + "community": 1 + }, + { + "label": ".applyCastle()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L341", + "id": "defaultrules_defaultrules_applycastle", + "community": 1 + }, + { + "label": ".applyEnPassant()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L354", + "id": "defaultrules_defaultrules_applyenpassant", + "community": 1 + }, + { + "label": ".applyPromotion()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L359", + "id": "defaultrules_defaultrules_applypromotion", + "community": 1 + }, + { + "label": ".updateCastlingRights()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L367", + "id": "defaultrules_defaultrules_updatecastlingrights", + "community": 1 + }, + { + "label": ".computeEnPassantSquare()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L392", + "id": "defaultrules_defaultrules_computeenpassantsquare", + "community": 1 + }, + { + "label": ".insufficientMaterial()", + "file_type": "code", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L404", + "id": "defaultrules_defaultrules_insufficientmaterial", + "community": 1 + }, + { + "label": "DefaultRulesStateTransitionsTest.scala", + "file_type": "code", + "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesStateTransitionsTest.scala", + "source_location": "L1", + "id": "modules_rule_src_test_scala_de_nowchess_rule_defaultrulesstatetransitionstest_scala", + "community": 56 + }, + { + "label": "DefaultRulesStateTransitionsTest", + "file_type": "code", + "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesStateTransitionsTest.scala", + "source_location": "L11", + "id": "defaultrulesstatetransitionstest_defaultrulesstatetransitionstest", + "community": 56 + }, + { + "label": ".contextFromFen()", + "file_type": "code", + "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesStateTransitionsTest.scala", + "source_location": "L13", + "id": "defaultrulesstatetransitionstest_defaultrulesstatetransitionstest_contextfromfen", + "community": 56 + }, + { + "label": ".sq()", + "file_type": "code", + "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesStateTransitionsTest.scala", + "source_location": "L16", + "id": "defaultrulesstatetransitionstest_defaultrulesstatetransitionstest_sq", + "community": 56 + }, + { + "label": "DefaultRulesTest.scala", + "file_type": "code", + "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesTest.scala", + "source_location": "L1", + "id": "modules_rule_src_test_scala_de_nowchess_rule_defaultrulestest_scala", + "community": 108 + }, + { + "label": "DefaultRulesTest", + "file_type": "code", + "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesTest.scala", + "source_location": "L11", + "id": "defaultrulestest_defaultrulestest", + "community": 108 + }, + { + "label": "build.gradle.kts", + "file_type": "code", + "source_file": "modules/ui/build.gradle.kts", + "source_location": "L1", + "id": "modules_ui_build_gradle_kts", + "community": 127 + }, + { + "label": "Main.scala", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/Main.scala", + "source_location": "L1", + "id": "modules_ui_src_main_scala_de_nowchess_ui_main_scala", + "community": 67 + }, + { + "label": "Main", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/Main.scala", + "source_location": "L14", + "id": "main_main", + "community": 67 + }, + { + "label": ".main()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/Main.scala", + "source_location": "L15", + "id": "main_main_main", + "community": 67 + }, + { + "label": "ChessBoardView.scala", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L1", + "id": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessboardview_scala", + "community": 9 + }, + { + "label": "ChessBoardView", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L28", + "id": "chessboardview_chessboardview", + "community": 9 + }, + { + "label": ".initializeBoard()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L149", + "id": "chessboardview_chessboardview_initializeboard", + "community": 9 + }, + { + "label": ".createSquare()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L165", + "id": "chessboardview_chessboardview_createsquare", + "community": 9 + }, + { + "label": ".handleSquareClick()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L185", + "id": "chessboardview_chessboardview_handlesquareclick", + "community": 9 + }, + { + "label": ".updateBoard()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L218", + "id": "chessboardview_chessboardview_updateboard", + "community": 9 + }, + { + "label": ".updateUndoRedoButtons()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L254", + "id": "chessboardview_chessboardview_updateundoredobuttons", + "community": 9 + }, + { + "label": ".highlightSquare()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L258", + "id": "chessboardview_chessboardview_highlightsquare", + "community": 9 + }, + { + "label": ".showMessage()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L278", + "id": "chessboardview_chessboardview_showmessage", + "community": 9 + }, + { + "label": ".showPromotionDialog()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L281", + "id": "chessboardview_chessboardview_showpromotiondialog", + "community": 9 + }, + { + "label": ".doFenExport()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L298", + "id": "chessboardview_chessboardview_dofenexport", + "community": 9 + }, + { + "label": ".doFenImport()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L301", + "id": "chessboardview_chessboardview_dofenimport", + "community": 9 + }, + { + "label": ".doPgnExport()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L304", + "id": "chessboardview_chessboardview_dopgnexport", + "community": 9 + }, + { + "label": ".doPgnImport()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L307", + "id": "chessboardview_chessboardview_dopgnimport", + "community": 9 + }, + { + "label": ".doJsonExport()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L310", + "id": "chessboardview_chessboardview_dojsonexport", + "community": 9 + }, + { + "label": ".doJsonImport()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L329", + "id": "chessboardview_chessboardview_dojsonimport", + "community": 9 + }, + { + "label": ".doExport()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L349", + "id": "chessboardview_chessboardview_doexport", + "community": 9 + }, + { + "label": ".doImport()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L354", + "id": "chessboardview_chessboardview_doimport", + "community": 9 + }, + { + "label": ".showCopyDialog()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L364", + "id": "chessboardview_chessboardview_showcopydialog", + "community": 9 + }, + { + "label": ".showInputDialog()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L377", + "id": "chessboardview_chessboardview_showinputdialog", + "community": 9 + }, + { + "label": "ChessGUI.scala", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessGUI.scala", + "source_location": "L1", + "id": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessgui_scala", + "community": 39 + }, + { + "label": "ChessGUIApp", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessGUI.scala", + "source_location": "L13", + "id": "chessgui_chessguiapp", + "community": 39 + }, + { + "label": ".start()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessGUI.scala", + "source_location": "L15", + "id": "chessgui_chessguiapp_start", + "community": 39 + }, + { + "label": "ChessGUILauncher", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessGUI.scala", + "source_location": "L48", + "id": "chessgui_chessguilauncher", + "community": 39 + }, + { + "label": ".getEngine()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessGUI.scala", + "source_location": "L51", + "id": "chessgui_chessguilauncher_getengine", + "community": 39 + }, + { + "label": ".launch()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessGUI.scala", + "source_location": "L53", + "id": "chessgui_chessguilauncher_launch", + "community": 39 + }, + { + "label": "GUIObserver.scala", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/GUIObserver.scala", + "source_location": "L1", + "id": "modules_ui_src_main_scala_de_nowchess_ui_gui_guiobserver_scala", + "community": 57 + }, + { + "label": "GUIObserver", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/GUIObserver.scala", + "source_location": "L12", + "id": "guiobserver_guiobserver", + "community": 57 + }, + { + "label": ".onGameEvent()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/GUIObserver.scala", + "source_location": "L14", + "id": "guiobserver_guiobserver_ongameevent", + "community": 57 + }, + { + "label": ".showAlert()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/GUIObserver.scala", + "source_location": "L71", + "id": "guiobserver_guiobserver_showalert", + "community": 57 + }, + { + "label": "PieceSprites.scala", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/PieceSprites.scala", + "source_location": "L1", + "id": "modules_ui_src_main_scala_de_nowchess_ui_gui_piecesprites_scala", + "community": 46 + }, + { + "label": "PieceSprites", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/PieceSprites.scala", + "source_location": "L7", + "id": "piecesprites_piecesprites", + "community": 46 + }, + { + "label": ".loadPieceImage()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/PieceSprites.scala", + "source_location": "L13", + "id": "piecesprites_piecesprites_loadpieceimage", + "community": 46 + }, + { + "label": ".loadImage()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/PieceSprites.scala", + "source_location": "L24", + "id": "piecesprites_piecesprites_loadimage", + "community": 46 + }, + { + "label": "SquareColors", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/PieceSprites.scala", + "source_location": "L31", + "id": "piecesprites_squarecolors", + "community": 46 + }, + { + "label": "TerminalUI.scala", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/terminal/TerminalUI.scala", + "source_location": "L1", + "id": "modules_ui_src_main_scala_de_nowchess_ui_terminal_terminalui_scala", + "community": 47 + }, + { + "label": "TerminalUI", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/terminal/TerminalUI.scala", + "source_location": "L12", + "id": "terminalui_terminalui", + "community": 47 + }, + { + "label": ".onGameEvent()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/terminal/TerminalUI.scala", + "source_location": "L17", + "id": "terminalui_terminalui_ongameevent", + "community": 47 + }, + { + "label": ".start()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/terminal/TerminalUI.scala", + "source_location": "L77", + "id": "terminalui_terminalui_start", + "community": 47 + }, + { + "label": ".printPrompt()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/terminal/TerminalUI.scala", + "source_location": "L113", + "id": "terminalui_terminalui_printprompt", + "community": 47 + }, + { + "label": "PieceUnicode.scala", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/utils/PieceUnicode.scala", + "source_location": "L1", + "id": "modules_ui_src_main_scala_de_nowchess_ui_utils_pieceunicode_scala", + "community": 109 + }, + { + "label": "unicode()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/utils/PieceUnicode.scala", + "source_location": "L6", + "id": "pieceunicode_unicode", + "community": 109 + }, + { + "label": "Renderer.scala", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/utils/Renderer.scala", + "source_location": "L1", + "id": "modules_ui_src_main_scala_de_nowchess_ui_utils_renderer_scala", + "community": 68 + }, + { + "label": "Renderer", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/utils/Renderer.scala", + "source_location": "L5", + "id": "renderer_renderer", + "community": 68 + }, + { + "label": ".render()", + "file_type": "code", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/utils/Renderer.scala", + "source_location": "L13", + "id": "renderer_renderer_render", + "community": 68 + }, + { + "label": "RendererAndUnicodeTest.scala", + "file_type": "code", + "source_file": "modules/ui/src/test/scala/de/nowchess/ui/utils/RendererAndUnicodeTest.scala", + "source_location": "L1", + "id": "modules_ui_src_test_scala_de_nowchess_ui_utils_rendererandunicodetest_scala", + "community": 110 + }, + { + "label": "RendererAndUnicodeTest", + "file_type": "code", + "source_file": "modules/ui/src/test/scala/de/nowchess/ui/utils/RendererAndUnicodeTest.scala", + "source_location": "L7", + "id": "rendererandunicodetest_rendererandunicodetest", + "community": 110 + } + ], + "links": [ + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L43", + "weight": 1.0, + "_src": "jacoco_reporter_scoverage_coverage_gaps_py", + "_tgt": "scoverage_coverage_gaps_statement", + "source": "jacoco_reporter_scoverage_coverage_gaps_py", + "target": "scoverage_coverage_gaps_statement", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L51", + "weight": 1.0, + "_src": "jacoco_reporter_scoverage_coverage_gaps_py", + "_tgt": "scoverage_coverage_gaps_is_covered", + "source": "jacoco_reporter_scoverage_coverage_gaps_py", + "target": "scoverage_coverage_gaps_is_covered", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L55", + "weight": 1.0, + "_src": "jacoco_reporter_scoverage_coverage_gaps_py", + "_tgt": "scoverage_coverage_gaps_is_uncovered", + "source": "jacoco_reporter_scoverage_coverage_gaps_py", + "target": "scoverage_coverage_gaps_is_uncovered", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L60", + "weight": 1.0, + "_src": "jacoco_reporter_scoverage_coverage_gaps_py", + "_tgt": "scoverage_coverage_gaps_methodgap", + "source": "jacoco_reporter_scoverage_coverage_gaps_py", + "target": "scoverage_coverage_gaps_methodgap", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L70", + "weight": 1.0, + "_src": "jacoco_reporter_scoverage_coverage_gaps_py", + "_tgt": "scoverage_coverage_gaps_short_name", + "source": "jacoco_reporter_scoverage_coverage_gaps_py", + "target": "scoverage_coverage_gaps_short_name", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L155", + "weight": 1.0, + "_src": "jacoco_reporter_scoverage_coverage_gaps_py", + "_tgt": "scoverage_coverage_gaps_stmt_coverage_pct", + "source": "jacoco_reporter_scoverage_coverage_gaps_py", + "target": "scoverage_coverage_gaps_stmt_coverage_pct", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L159", + "weight": 1.0, + "_src": "jacoco_reporter_scoverage_coverage_gaps_py", + "_tgt": "scoverage_coverage_gaps_branch_coverage_pct", + "source": "jacoco_reporter_scoverage_coverage_gaps_py", + "target": "scoverage_coverage_gaps_branch_coverage_pct", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L151", + "weight": 1.0, + "_src": "jacoco_reporter_scoverage_coverage_gaps_py", + "_tgt": "scoverage_coverage_gaps_missed_branches", + "source": "jacoco_reporter_scoverage_coverage_gaps_py", + "target": "scoverage_coverage_gaps_missed_branches", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L163", + "weight": 1.0, + "_src": "jacoco_reporter_scoverage_coverage_gaps_py", + "_tgt": "scoverage_coverage_gaps_has_gaps", + "source": "jacoco_reporter_scoverage_coverage_gaps_py", + "target": "scoverage_coverage_gaps_has_gaps", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L92", + "weight": 1.0, + "_src": "jacoco_reporter_scoverage_coverage_gaps_py", + "_tgt": "scoverage_coverage_gaps_classgap", + "source": "jacoco_reporter_scoverage_coverage_gaps_py", + "target": "scoverage_coverage_gaps_classgap", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L107", + "weight": 1.0, + "_src": "jacoco_reporter_scoverage_coverage_gaps_py", + "_tgt": "scoverage_coverage_gaps_all_uncovered_lines", + "source": "jacoco_reporter_scoverage_coverage_gaps_py", + "target": "scoverage_coverage_gaps_all_uncovered_lines", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L117", + "weight": 1.0, + "_src": "jacoco_reporter_scoverage_coverage_gaps_py", + "_tgt": "scoverage_coverage_gaps_uncovered_branch_lines", + "source": "jacoco_reporter_scoverage_coverage_gaps_py", + "target": "scoverage_coverage_gaps_uncovered_branch_lines", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L131", + "weight": 1.0, + "_src": "jacoco_reporter_scoverage_coverage_gaps_py", + "_tgt": "scoverage_coverage_gaps_total_statements", + "source": "jacoco_reporter_scoverage_coverage_gaps_py", + "target": "scoverage_coverage_gaps_total_statements", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L135", + "weight": 1.0, + "_src": "jacoco_reporter_scoverage_coverage_gaps_py", + "_tgt": "scoverage_coverage_gaps_covered_statements", + "source": "jacoco_reporter_scoverage_coverage_gaps_py", + "target": "scoverage_coverage_gaps_covered_statements", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L139", + "weight": 1.0, + "_src": "jacoco_reporter_scoverage_coverage_gaps_py", + "_tgt": "scoverage_coverage_gaps_missed_statements", + "source": "jacoco_reporter_scoverage_coverage_gaps_py", + "target": "scoverage_coverage_gaps_missed_statements", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L143", + "weight": 1.0, + "_src": "jacoco_reporter_scoverage_coverage_gaps_py", + "_tgt": "scoverage_coverage_gaps_total_branches", + "source": "jacoco_reporter_scoverage_coverage_gaps_py", + "target": "scoverage_coverage_gaps_total_branches", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L147", + "weight": 1.0, + "_src": "jacoco_reporter_scoverage_coverage_gaps_py", + "_tgt": "scoverage_coverage_gaps_covered_branches", + "source": "jacoco_reporter_scoverage_coverage_gaps_py", + "target": "scoverage_coverage_gaps_covered_branches", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L171", + "weight": 1.0, + "_src": "jacoco_reporter_scoverage_coverage_gaps_py", + "_tgt": "scoverage_coverage_gaps_normalise_source", + "source": "jacoco_reporter_scoverage_coverage_gaps_py", + "target": "scoverage_coverage_gaps_normalise_source", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L183", + "weight": 1.0, + "_src": "jacoco_reporter_scoverage_coverage_gaps_py", + "_tgt": "scoverage_coverage_gaps_parse_scoverage_xml", + "source": "jacoco_reporter_scoverage_coverage_gaps_py", + "target": "scoverage_coverage_gaps_parse_scoverage_xml", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L275", + "weight": 1.0, + "_src": "jacoco_reporter_scoverage_coverage_gaps_py", + "_tgt": "scoverage_coverage_gaps_compact_ranges", + "source": "jacoco_reporter_scoverage_coverage_gaps_py", + "target": "scoverage_coverage_gaps_compact_ranges", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L295", + "weight": 1.0, + "_src": "jacoco_reporter_scoverage_coverage_gaps_py", + "_tgt": "scoverage_coverage_gaps_format_agent", + "source": "jacoco_reporter_scoverage_coverage_gaps_py", + "target": "scoverage_coverage_gaps_format_agent", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L353", + "weight": 1.0, + "_src": "jacoco_reporter_scoverage_coverage_gaps_py", + "_tgt": "scoverage_coverage_gaps_format_json", + "source": "jacoco_reporter_scoverage_coverage_gaps_py", + "target": "scoverage_coverage_gaps_format_json", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L405", + "weight": 1.0, + "_src": "jacoco_reporter_scoverage_coverage_gaps_py", + "_tgt": "scoverage_coverage_gaps_format_markdown", + "source": "jacoco_reporter_scoverage_coverage_gaps_py", + "target": "scoverage_coverage_gaps_format_markdown", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L470", + "weight": 1.0, + "_src": "jacoco_reporter_scoverage_coverage_gaps_py", + "_tgt": "scoverage_coverage_gaps_find_scoverage_xml", + "source": "jacoco_reporter_scoverage_coverage_gaps_py", + "target": "scoverage_coverage_gaps_find_scoverage_xml", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L479", + "weight": 1.0, + "_src": "jacoco_reporter_scoverage_coverage_gaps_py", + "_tgt": "scoverage_coverage_gaps_format_module_gaps", + "source": "jacoco_reporter_scoverage_coverage_gaps_py", + "target": "scoverage_coverage_gaps_format_module_gaps", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L492", + "weight": 1.0, + "_src": "jacoco_reporter_scoverage_coverage_gaps_py", + "_tgt": "scoverage_coverage_gaps_run_scan_modules", + "source": "jacoco_reporter_scoverage_coverage_gaps_py", + "target": "scoverage_coverage_gaps_run_scan_modules", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L538", + "weight": 1.0, + "_src": "jacoco_reporter_scoverage_coverage_gaps_py", + "_tgt": "scoverage_coverage_gaps_main", + "source": "jacoco_reporter_scoverage_coverage_gaps_py", + "target": "scoverage_coverage_gaps_main", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L237", + "weight": 1.0, + "_src": "scoverage_coverage_gaps_parse_scoverage_xml", + "_tgt": "scoverage_coverage_gaps_statement", + "source": "scoverage_coverage_gaps_statement", + "target": "scoverage_coverage_gaps_parse_scoverage_xml", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L257", + "weight": 1.0, + "_src": "scoverage_coverage_gaps_parse_scoverage_xml", + "_tgt": "scoverage_coverage_gaps_methodgap", + "source": "scoverage_coverage_gaps_methodgap", + "target": "scoverage_coverage_gaps_parse_scoverage_xml", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L220", + "weight": 1.0, + "_src": "scoverage_coverage_gaps_parse_scoverage_xml", + "_tgt": "scoverage_coverage_gaps_classgap", + "source": "scoverage_coverage_gaps_classgap", + "target": "scoverage_coverage_gaps_parse_scoverage_xml", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L222", + "weight": 1.0, + "_src": "scoverage_coverage_gaps_parse_scoverage_xml", + "_tgt": "scoverage_coverage_gaps_normalise_source", + "source": "scoverage_coverage_gaps_normalise_source", + "target": "scoverage_coverage_gaps_parse_scoverage_xml", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L514", + "weight": 1.0, + "_src": "scoverage_coverage_gaps_run_scan_modules", + "_tgt": "scoverage_coverage_gaps_parse_scoverage_xml", + "source": "scoverage_coverage_gaps_parse_scoverage_xml", + "target": "scoverage_coverage_gaps_run_scan_modules", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L595", + "weight": 1.0, + "_src": "scoverage_coverage_gaps_main", + "_tgt": "scoverage_coverage_gaps_parse_scoverage_xml", + "source": "scoverage_coverage_gaps_parse_scoverage_xml", + "target": "scoverage_coverage_gaps_main", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L333", + "weight": 1.0, + "_src": "scoverage_coverage_gaps_format_agent", + "_tgt": "scoverage_coverage_gaps_compact_ranges", + "source": "scoverage_coverage_gaps_compact_ranges", + "target": "scoverage_coverage_gaps_format_agent", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L436", + "weight": 1.0, + "_src": "scoverage_coverage_gaps_format_markdown", + "_tgt": "scoverage_coverage_gaps_compact_ranges", + "source": "scoverage_coverage_gaps_compact_ranges", + "target": "scoverage_coverage_gaps_format_markdown", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L276", + "weight": 1.0, + "_src": "scoverage_coverage_gaps_rationale_276", + "_tgt": "scoverage_coverage_gaps_compact_ranges", + "source": "scoverage_coverage_gaps_compact_ranges", + "target": "scoverage_coverage_gaps_rationale_276", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L608", + "weight": 1.0, + "_src": "scoverage_coverage_gaps_main", + "_tgt": "scoverage_coverage_gaps_format_agent", + "source": "scoverage_coverage_gaps_format_agent", + "target": "scoverage_coverage_gaps_main", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L296", + "weight": 1.0, + "_src": "scoverage_coverage_gaps_rationale_296", + "_tgt": "scoverage_coverage_gaps_format_agent", + "source": "scoverage_coverage_gaps_format_agent", + "target": "scoverage_coverage_gaps_rationale_296", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L610", + "weight": 1.0, + "_src": "scoverage_coverage_gaps_main", + "_tgt": "scoverage_coverage_gaps_format_json", + "source": "scoverage_coverage_gaps_format_json", + "target": "scoverage_coverage_gaps_main", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L612", + "weight": 1.0, + "_src": "scoverage_coverage_gaps_main", + "_tgt": "scoverage_coverage_gaps_format_markdown", + "source": "scoverage_coverage_gaps_format_markdown", + "target": "scoverage_coverage_gaps_main", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L509", + "weight": 1.0, + "_src": "scoverage_coverage_gaps_run_scan_modules", + "_tgt": "scoverage_coverage_gaps_find_scoverage_xml", + "source": "scoverage_coverage_gaps_find_scoverage_xml", + "target": "scoverage_coverage_gaps_run_scan_modules", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L471", + "weight": 1.0, + "_src": "scoverage_coverage_gaps_rationale_471", + "_tgt": "scoverage_coverage_gaps_find_scoverage_xml", + "source": "scoverage_coverage_gaps_find_scoverage_xml", + "target": "scoverage_coverage_gaps_rationale_471", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L522", + "weight": 1.0, + "_src": "scoverage_coverage_gaps_run_scan_modules", + "_tgt": "scoverage_coverage_gaps_format_module_gaps", + "source": "scoverage_coverage_gaps_format_module_gaps", + "target": "scoverage_coverage_gaps_run_scan_modules", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L480", + "weight": 1.0, + "_src": "scoverage_coverage_gaps_rationale_480", + "_tgt": "scoverage_coverage_gaps_format_module_gaps", + "source": "scoverage_coverage_gaps_format_module_gaps", + "target": "scoverage_coverage_gaps_rationale_480", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/scoverage_coverage_gaps.py", + "source_location": "L585", + "weight": 1.0, + "_src": "scoverage_coverage_gaps_main", + "_tgt": "scoverage_coverage_gaps_run_scan_modules", + "source": "scoverage_coverage_gaps_run_scan_modules", + "target": "scoverage_coverage_gaps_main", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L28", + "weight": 1.0, + "_src": "jacoco_reporter_test_gaps_py", + "_tgt": "test_gaps_testcase", + "source": "jacoco_reporter_test_gaps_py", + "target": "test_gaps_testcase", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L37", + "weight": 1.0, + "_src": "jacoco_reporter_test_gaps_py", + "_tgt": "test_gaps_short_class", + "source": "jacoco_reporter_test_gaps_py", + "target": "test_gaps_short_class", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L41", + "weight": 1.0, + "_src": "jacoco_reporter_test_gaps_py", + "_tgt": "test_gaps_status", + "source": "jacoco_reporter_test_gaps_py", + "target": "test_gaps_status", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L52", + "weight": 1.0, + "_src": "jacoco_reporter_test_gaps_py", + "_tgt": "test_gaps_suiteresult", + "source": "jacoco_reporter_test_gaps_py", + "target": "test_gaps_suiteresult", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L92", + "weight": 1.0, + "_src": "jacoco_reporter_test_gaps_py", + "_tgt": "test_gaps_passed", + "source": "jacoco_reporter_test_gaps_py", + "target": "test_gaps_passed", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L94", + "weight": 1.0, + "_src": "jacoco_reporter_test_gaps_py", + "_tgt": "test_gaps_is_clean", + "source": "jacoco_reporter_test_gaps_py", + "target": "test_gaps_is_clean", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L97", + "weight": 1.0, + "_src": "jacoco_reporter_test_gaps_py", + "_tgt": "test_gaps_bad_cases", + "source": "jacoco_reporter_test_gaps_py", + "target": "test_gaps_bad_cases", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L101", + "weight": 1.0, + "_src": "jacoco_reporter_test_gaps_py", + "_tgt": "test_gaps_skipped_cases", + "source": "jacoco_reporter_test_gaps_py", + "target": "test_gaps_skipped_cases", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L79", + "weight": 1.0, + "_src": "jacoco_reporter_test_gaps_py", + "_tgt": "test_gaps_moduleresult", + "source": "jacoco_reporter_test_gaps_py", + "target": "test_gaps_moduleresult", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L84", + "weight": 1.0, + "_src": "jacoco_reporter_test_gaps_py", + "_tgt": "test_gaps_total", + "source": "jacoco_reporter_test_gaps_py", + "target": "test_gaps_total", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L86", + "weight": 1.0, + "_src": "jacoco_reporter_test_gaps_py", + "_tgt": "test_gaps_failures", + "source": "jacoco_reporter_test_gaps_py", + "target": "test_gaps_failures", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L88", + "weight": 1.0, + "_src": "jacoco_reporter_test_gaps_py", + "_tgt": "test_gaps_errors", + "source": "jacoco_reporter_test_gaps_py", + "target": "test_gaps_errors", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L90", + "weight": 1.0, + "_src": "jacoco_reporter_test_gaps_py", + "_tgt": "test_gaps_skipped", + "source": "jacoco_reporter_test_gaps_py", + "target": "test_gaps_skipped", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L109", + "weight": 1.0, + "_src": "jacoco_reporter_test_gaps_py", + "_tgt": "test_gaps_parse_suite_xml", + "source": "jacoco_reporter_test_gaps_py", + "target": "test_gaps_parse_suite_xml", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L150", + "weight": 1.0, + "_src": "jacoco_reporter_test_gaps_py", + "_tgt": "test_gaps_load_module", + "source": "jacoco_reporter_test_gaps_py", + "target": "test_gaps_load_module", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L172", + "weight": 1.0, + "_src": "jacoco_reporter_test_gaps_py", + "_tgt": "test_gaps_truncate", + "source": "jacoco_reporter_test_gaps_py", + "target": "test_gaps_truncate", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L177", + "weight": 1.0, + "_src": "jacoco_reporter_test_gaps_py", + "_tgt": "test_gaps_format_module", + "source": "jacoco_reporter_test_gaps_py", + "target": "test_gaps_format_module", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L219", + "weight": 1.0, + "_src": "jacoco_reporter_test_gaps_py", + "_tgt": "test_gaps_run", + "source": "jacoco_reporter_test_gaps_py", + "target": "test_gaps_run", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L260", + "weight": 1.0, + "_src": "jacoco_reporter_test_gaps_py", + "_tgt": "test_gaps_main", + "source": "jacoco_reporter_test_gaps_py", + "target": "test_gaps_main", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L135", + "weight": 1.0, + "_src": "test_gaps_parse_suite_xml", + "_tgt": "test_gaps_testcase", + "source": "test_gaps_testcase", + "target": "test_gaps_parse_suite_xml", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L144", + "weight": 1.0, + "_src": "test_gaps_parse_suite_xml", + "_tgt": "test_gaps_suiteresult", + "source": "test_gaps_suiteresult", + "target": "test_gaps_parse_suite_xml", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L159", + "weight": 1.0, + "_src": "test_gaps_load_module", + "_tgt": "test_gaps_moduleresult", + "source": "test_gaps_moduleresult", + "target": "test_gaps_load_module", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L162", + "weight": 1.0, + "_src": "test_gaps_load_module", + "_tgt": "test_gaps_parse_suite_xml", + "source": "test_gaps_parse_suite_xml", + "target": "test_gaps_load_module", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L241", + "weight": 1.0, + "_src": "test_gaps_run", + "_tgt": "test_gaps_load_module", + "source": "test_gaps_load_module", + "target": "test_gaps_run", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L200", + "weight": 1.0, + "_src": "test_gaps_format_module", + "_tgt": "test_gaps_truncate", + "source": "test_gaps_truncate", + "target": "test_gaps_format_module", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L245", + "weight": 1.0, + "_src": "test_gaps_run", + "_tgt": "test_gaps_format_module", + "source": "test_gaps_format_module", + "target": "test_gaps_run", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "jacoco-reporter/test_gaps.py", + "source_location": "L284", + "weight": 1.0, + "_src": "test_gaps_main", + "_tgt": "test_gaps_run", + "source": "test_gaps_run", + "target": "test_gaps_main", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", + "source_location": "L5", + "weight": 1.0, + "_src": "modules_api_src_main_scala_de_nowchess_api_board_board_scala", + "_tgt": "board_board", + "source": "modules_api_src_main_scala_de_nowchess_api_board_board_scala", + "target": "board_board", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", + "source_location": "L10", + "weight": 1.0, + "_src": "modules_api_src_main_scala_de_nowchess_api_board_board_scala", + "_tgt": "board_pieceat", + "source": "modules_api_src_main_scala_de_nowchess_api_board_board_scala", + "target": "board_pieceat", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", + "source_location": "L11", + "weight": 1.0, + "_src": "modules_api_src_main_scala_de_nowchess_api_board_board_scala", + "_tgt": "board_updated", + "source": "modules_api_src_main_scala_de_nowchess_api_board_board_scala", + "target": "board_updated", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", + "source_location": "L12", + "weight": 1.0, + "_src": "modules_api_src_main_scala_de_nowchess_api_board_board_scala", + "_tgt": "board_removed", + "source": "modules_api_src_main_scala_de_nowchess_api_board_board_scala", + "target": "board_removed", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", + "source_location": "L13", + "weight": 1.0, + "_src": "modules_api_src_main_scala_de_nowchess_api_board_board_scala", + "_tgt": "board_withmove", + "source": "modules_api_src_main_scala_de_nowchess_api_board_board_scala", + "target": "board_withmove", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", + "source_location": "L17", + "weight": 1.0, + "_src": "modules_api_src_main_scala_de_nowchess_api_board_board_scala", + "_tgt": "board_applymove", + "source": "modules_api_src_main_scala_de_nowchess_api_board_board_scala", + "target": "board_applymove", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", + "source_location": "L20", + "weight": 1.0, + "_src": "modules_api_src_main_scala_de_nowchess_api_board_board_scala", + "_tgt": "board_pieces", + "source": "modules_api_src_main_scala_de_nowchess_api_board_board_scala", + "target": "board_pieces", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", + "source_location": "L7", + "weight": 1.0, + "_src": "board_board", + "_tgt": "board_board_apply", + "source": "board_board", + "target": "board_board_apply", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", + "source_location": "L15", + "weight": 1.0, + "_src": "board_withmove", + "_tgt": "board_updated", + "source": "board_updated", + "target": "board_withmove", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", + "source_location": "L15", + "weight": 1.0, + "_src": "board_withmove", + "_tgt": "board_removed", + "source": "board_removed", + "target": "board_withmove", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Board.scala", + "source_location": "L18", + "weight": 1.0, + "_src": "board_applymove", + "_tgt": "board_withmove", + "source": "board_withmove", + "target": "board_applymove", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala", + "source_location": "L50", + "weight": 1.0, + "_src": "modules_api_src_main_scala_de_nowchess_api_board_castlingrights_scala", + "_tgt": "castlingrights_castlingrights", + "source": "modules_api_src_main_scala_de_nowchess_api_board_castlingrights_scala", + "target": "castlingrights_castlingrights", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala", + "source_location": "L23", + "weight": 1.0, + "_src": "castlingrights_castlingrights", + "_tgt": "castlingrights_castlingrights_hasanyrights", + "source": "castlingrights_castlingrights", + "target": "castlingrights_castlingrights_hasanyrights", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala", + "source_location": "L28", + "weight": 1.0, + "_src": "castlingrights_castlingrights", + "_tgt": "castlingrights_castlingrights_hasrights", + "source": "castlingrights_castlingrights", + "target": "castlingrights_castlingrights_hasrights", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala", + "source_location": "L34", + "weight": 1.0, + "_src": "castlingrights_castlingrights", + "_tgt": "castlingrights_castlingrights_revokecolor", + "source": "castlingrights_castlingrights", + "target": "castlingrights_castlingrights_revokecolor", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala", + "source_location": "L40", + "weight": 1.0, + "_src": "castlingrights_castlingrights", + "_tgt": "castlingrights_castlingrights_revokekingside", + "source": "castlingrights_castlingrights", + "target": "castlingrights_castlingrights_revokekingside", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/CastlingRights.scala", + "source_location": "L46", + "weight": 1.0, + "_src": "castlingrights_castlingrights", + "_tgt": "castlingrights_castlingrights_revokequeenside", + "source": "castlingrights_castlingrights", + "target": "castlingrights_castlingrights_revokequeenside", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Color.scala", + "source_location": "L6", + "weight": 1.0, + "_src": "modules_api_src_main_scala_de_nowchess_api_board_color_scala", + "_tgt": "color_opposite", + "source": "modules_api_src_main_scala_de_nowchess_api_board_color_scala", + "target": "color_opposite", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Color.scala", + "source_location": "L10", + "weight": 1.0, + "_src": "modules_api_src_main_scala_de_nowchess_api_board_color_scala", + "_tgt": "color_label", + "source": "modules_api_src_main_scala_de_nowchess_api_board_color_scala", + "target": "color_label", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Piece.scala", + "source_location": "L6", + "weight": 1.0, + "_src": "modules_api_src_main_scala_de_nowchess_api_board_piece_scala", + "_tgt": "piece_piece", + "source": "modules_api_src_main_scala_de_nowchess_api_board_piece_scala", + "target": "piece_piece", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/PieceType.scala", + "source_location": "L6", + "weight": 1.0, + "_src": "modules_api_src_main_scala_de_nowchess_api_board_piecetype_scala", + "_tgt": "piecetype_label", + "source": "modules_api_src_main_scala_de_nowchess_api_board_piecetype_scala", + "target": "piecetype_label", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Square.scala", + "source_location": "L25", + "weight": 1.0, + "_src": "modules_api_src_main_scala_de_nowchess_api_board_square_scala", + "_tgt": "square_square", + "source": "modules_api_src_main_scala_de_nowchess_api_board_square_scala", + "target": "square_square", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Square.scala", + "source_location": "L48", + "weight": 1.0, + "_src": "modules_api_src_main_scala_de_nowchess_api_board_square_scala", + "_tgt": "square_offset", + "source": "modules_api_src_main_scala_de_nowchess_api_board_square_scala", + "target": "square_offset", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Square.scala", + "source_location": "L22", + "weight": 1.0, + "_src": "square_square", + "_tgt": "square_square_tostring", + "source": "square_square", + "target": "square_square_tostring", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Square.scala", + "source_location": "L36", + "weight": 1.0, + "_src": "square_square_fromalgebraic", + "_tgt": "square_square", + "source": "square_square", + "target": "square_square_fromalgebraic", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/board/Square.scala", + "source_location": "L52", + "weight": 1.0, + "_src": "square_offset", + "_tgt": "square_square", + "source": "square_square", + "target": "square_offset", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", + "source_location": "L34", + "weight": 1.0, + "_src": "modules_api_src_main_scala_de_nowchess_api_game_gamecontext_scala", + "_tgt": "gamecontext_gamecontext", + "source": "modules_api_src_main_scala_de_nowchess_api_game_gamecontext_scala", + "target": "gamecontext_gamecontext", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", + "source_location": "L17", + "weight": 1.0, + "_src": "gamecontext_gamecontext", + "_tgt": "gamecontext_gamecontext_withboard", + "source": "gamecontext_gamecontext", + "target": "gamecontext_gamecontext_withboard", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", + "source_location": "L20", + "weight": 1.0, + "_src": "gamecontext_gamecontext", + "_tgt": "gamecontext_gamecontext_withturn", + "source": "gamecontext_gamecontext", + "target": "gamecontext_gamecontext_withturn", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", + "source_location": "L23", + "weight": 1.0, + "_src": "gamecontext_gamecontext", + "_tgt": "gamecontext_gamecontext_withcastlingrights", + "source": "gamecontext_gamecontext", + "target": "gamecontext_gamecontext_withcastlingrights", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", + "source_location": "L26", + "weight": 1.0, + "_src": "gamecontext_gamecontext", + "_tgt": "gamecontext_gamecontext_withenpassantsquare", + "source": "gamecontext_gamecontext", + "target": "gamecontext_gamecontext_withenpassantsquare", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", + "source_location": "L29", + "weight": 1.0, + "_src": "gamecontext_gamecontext", + "_tgt": "gamecontext_gamecontext_withhalfmoveclock", + "source": "gamecontext_gamecontext", + "target": "gamecontext_gamecontext_withhalfmoveclock", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", + "source_location": "L32", + "weight": 1.0, + "_src": "gamecontext_gamecontext", + "_tgt": "gamecontext_gamecontext_withmove", + "source": "gamecontext_gamecontext", + "target": "gamecontext_gamecontext_withmove", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/game/GameContext.scala", + "source_location": "L36", + "weight": 1.0, + "_src": "gamecontext_gamecontext_initial", + "_tgt": "gamecontext_gamecontext", + "source": "gamecontext_gamecontext", + "target": "gamecontext_gamecontext_initial", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/move/Move.scala", + "source_location": "L35", + "weight": 1.0, + "_src": "modules_api_src_main_scala_de_nowchess_api_move_move_scala", + "_tgt": "move_move", + "source": "modules_api_src_main_scala_de_nowchess_api_move_move_scala", + "target": "move_move", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/player/PlayerInfo.scala", + "source_location": "L9", + "weight": 1.0, + "_src": "modules_api_src_main_scala_de_nowchess_api_player_playerinfo_scala", + "_tgt": "playerinfo_playerid", + "source": "modules_api_src_main_scala_de_nowchess_api_player_playerinfo_scala", + "target": "playerinfo_playerid", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/player/PlayerInfo.scala", + "source_location": "L11", + "weight": 1.0, + "_src": "modules_api_src_main_scala_de_nowchess_api_player_playerinfo_scala", + "_tgt": "playerinfo_value", + "source": "modules_api_src_main_scala_de_nowchess_api_player_playerinfo_scala", + "target": "playerinfo_value", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/player/PlayerInfo.scala", + "source_location": "L23", + "weight": 1.0, + "_src": "modules_api_src_main_scala_de_nowchess_api_player_playerinfo_scala", + "_tgt": "playerinfo_playerinfo", + "source": "modules_api_src_main_scala_de_nowchess_api_player_playerinfo_scala", + "target": "playerinfo_playerinfo", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/player/PlayerInfo.scala", + "source_location": "L10", + "weight": 1.0, + "_src": "playerinfo_playerid", + "_tgt": "playerinfo_playerid_apply", + "source": "playerinfo_playerid", + "target": "playerinfo_playerid_apply", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", + "source_location": "L12", + "weight": 1.0, + "_src": "modules_api_src_main_scala_de_nowchess_api_response_apiresponse_scala", + "_tgt": "apiresponse_apiresponse", + "source": "modules_api_src_main_scala_de_nowchess_api_response_apiresponse_scala", + "target": "apiresponse_apiresponse", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", + "source_location": "L14", + "weight": 1.0, + "_src": "modules_api_src_main_scala_de_nowchess_api_response_apiresponse_scala", + "_tgt": "apiresponse_success", + "source": "modules_api_src_main_scala_de_nowchess_api_response_apiresponse_scala", + "target": "apiresponse_success", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", + "source_location": "L17", + "weight": 1.0, + "_src": "modules_api_src_main_scala_de_nowchess_api_response_apiresponse_scala", + "_tgt": "apiresponse_failure", + "source": "modules_api_src_main_scala_de_nowchess_api_response_apiresponse_scala", + "target": "apiresponse_failure", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", + "source_location": "L31", + "weight": 1.0, + "_src": "modules_api_src_main_scala_de_nowchess_api_response_apiresponse_scala", + "_tgt": "apiresponse_apierror", + "source": "modules_api_src_main_scala_de_nowchess_api_response_apiresponse_scala", + "target": "apiresponse_apierror", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", + "source_location": "L46", + "weight": 1.0, + "_src": "modules_api_src_main_scala_de_nowchess_api_response_apiresponse_scala", + "_tgt": "apiresponse_pagination", + "source": "modules_api_src_main_scala_de_nowchess_api_response_apiresponse_scala", + "target": "apiresponse_pagination", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", + "source_location": "L64", + "weight": 1.0, + "_src": "modules_api_src_main_scala_de_nowchess_api_response_apiresponse_scala", + "_tgt": "apiresponse_pagedresponse", + "source": "modules_api_src_main_scala_de_nowchess_api_response_apiresponse_scala", + "target": "apiresponse_pagedresponse", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", + "source_location": "L20", + "weight": 1.0, + "_src": "apiresponse_apiresponse", + "_tgt": "apiresponse_apiresponse_error", + "source": "apiresponse_apiresponse", + "target": "apiresponse_apiresponse_error", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", + "source_location": "L20", + "weight": 1.0, + "_src": "apiresponse_apiresponse_error", + "_tgt": "apiresponse_failure", + "source": "apiresponse_failure", + "target": "apiresponse_apiresponse_error", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/main/scala/de/nowchess/api/response/ApiResponse.scala", + "source_location": "L51", + "weight": 1.0, + "_src": "apiresponse_pagination", + "_tgt": "apiresponse_pagination_totalpages", + "source": "apiresponse_pagination", + "target": "apiresponse_pagination_totalpages", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/test/scala/de/nowchess/api/board/BoardTest.scala", + "source_location": "L7", + "weight": 1.0, + "_src": "modules_api_src_test_scala_de_nowchess_api_board_boardtest_scala", + "_tgt": "boardtest_boardtest", + "source": "modules_api_src_test_scala_de_nowchess_api_board_boardtest_scala", + "target": "boardtest_boardtest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/test/scala/de/nowchess/api/board/CastlingRightsTest.scala", + "source_location": "L6", + "weight": 1.0, + "_src": "modules_api_src_test_scala_de_nowchess_api_board_castlingrightstest_scala", + "_tgt": "castlingrightstest_castlingrightstest", + "source": "modules_api_src_test_scala_de_nowchess_api_board_castlingrightstest_scala", + "target": "castlingrightstest_castlingrightstest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/test/scala/de/nowchess/api/board/ColorTest.scala", + "source_location": "L6", + "weight": 1.0, + "_src": "modules_api_src_test_scala_de_nowchess_api_board_colortest_scala", + "_tgt": "colortest_colortest", + "source": "modules_api_src_test_scala_de_nowchess_api_board_colortest_scala", + "target": "colortest_colortest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/test/scala/de/nowchess/api/board/PieceTest.scala", + "source_location": "L6", + "weight": 1.0, + "_src": "modules_api_src_test_scala_de_nowchess_api_board_piecetest_scala", + "_tgt": "piecetest_piecetest", + "source": "modules_api_src_test_scala_de_nowchess_api_board_piecetest_scala", + "target": "piecetest_piecetest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/test/scala/de/nowchess/api/board/PieceTypeTest.scala", + "source_location": "L6", + "weight": 1.0, + "_src": "modules_api_src_test_scala_de_nowchess_api_board_piecetypetest_scala", + "_tgt": "piecetypetest_piecetypetest", + "source": "modules_api_src_test_scala_de_nowchess_api_board_piecetypetest_scala", + "target": "piecetypetest_piecetypetest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/test/scala/de/nowchess/api/board/SquareTest.scala", + "source_location": "L6", + "weight": 1.0, + "_src": "modules_api_src_test_scala_de_nowchess_api_board_squaretest_scala", + "_tgt": "squaretest_squaretest", + "source": "modules_api_src_test_scala_de_nowchess_api_board_squaretest_scala", + "target": "squaretest_squaretest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/test/scala/de/nowchess/api/game/GameContextTest.scala", + "source_location": "L8", + "weight": 1.0, + "_src": "modules_api_src_test_scala_de_nowchess_api_game_gamecontexttest_scala", + "_tgt": "gamecontexttest_gamecontexttest", + "source": "modules_api_src_test_scala_de_nowchess_api_game_gamecontexttest_scala", + "target": "gamecontexttest_gamecontexttest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/test/scala/de/nowchess/api/move/MoveTest.scala", + "source_location": "L7", + "weight": 1.0, + "_src": "modules_api_src_test_scala_de_nowchess_api_move_movetest_scala", + "_tgt": "movetest_movetest", + "source": "modules_api_src_test_scala_de_nowchess_api_move_movetest_scala", + "target": "movetest_movetest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/test/scala/de/nowchess/api/player/PlayerInfoTest.scala", + "source_location": "L6", + "weight": 1.0, + "_src": "modules_api_src_test_scala_de_nowchess_api_player_playerinfotest_scala", + "_tgt": "playerinfotest_playerinfotest", + "source": "modules_api_src_test_scala_de_nowchess_api_player_playerinfotest_scala", + "target": "playerinfotest_playerinfotest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/api/src/test/scala/de/nowchess/api/response/ApiResponseTest.scala", + "source_location": "L6", + "weight": 1.0, + "_src": "modules_api_src_test_scala_de_nowchess_api_response_apiresponsetest_scala", + "_tgt": "apiresponsetest_apiresponsetest", + "source": "modules_api_src_test_scala_de_nowchess_api_response_apiresponsetest_scala", + "target": "apiresponsetest_apiresponsetest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L26", + "weight": 1.0, + "_src": "modules_bot_python_nnue_py", + "_tgt": "nnue_get_data_dir", + "source": "modules_bot_python_nnue_py", + "target": "nnue_get_data_dir", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L32", + "weight": 1.0, + "_src": "modules_bot_python_nnue_py", + "_tgt": "nnue_get_tactical_data_dir", + "source": "modules_bot_python_nnue_py", + "target": "nnue_get_tactical_data_dir", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L38", + "weight": 1.0, + "_src": "modules_bot_python_nnue_py", + "_tgt": "nnue_get_weights_dir", + "source": "modules_bot_python_nnue_py", + "target": "nnue_get_weights_dir", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L44", + "weight": 1.0, + "_src": "modules_bot_python_nnue_py", + "_tgt": "nnue_list_checkpoints", + "source": "modules_bot_python_nnue_py", + "target": "nnue_list_checkpoints", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L52", + "weight": 1.0, + "_src": "modules_bot_python_nnue_py", + "_tgt": "nnue_show_header", + "source": "modules_bot_python_nnue_py", + "target": "nnue_show_header", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L65", + "weight": 1.0, + "_src": "modules_bot_python_nnue_py", + "_tgt": "nnue_show_checkpoints_table", + "source": "modules_bot_python_nnue_py", + "target": "nnue_show_checkpoints_table", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L90", + "weight": 1.0, + "_src": "modules_bot_python_nnue_py", + "_tgt": "nnue_show_main_menu", + "source": "modules_bot_python_nnue_py", + "target": "nnue_show_main_menu", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L124", + "weight": 1.0, + "_src": "modules_bot_python_nnue_py", + "_tgt": "nnue_train_interactive", + "source": "modules_bot_python_nnue_py", + "target": "nnue_train_interactive", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L289", + "weight": 1.0, + "_src": "modules_bot_python_nnue_py", + "_tgt": "nnue_burst_train_interactive", + "source": "modules_bot_python_nnue_py", + "target": "nnue_burst_train_interactive", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L365", + "weight": 1.0, + "_src": "modules_bot_python_nnue_py", + "_tgt": "nnue_export_interactive", + "source": "modules_bot_python_nnue_py", + "target": "nnue_export_interactive", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L413", + "weight": 1.0, + "_src": "modules_bot_python_nnue_py", + "_tgt": "nnue_extract_tactical_interactive", + "source": "modules_bot_python_nnue_py", + "target": "nnue_extract_tactical_interactive", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L473", + "weight": 1.0, + "_src": "modules_bot_python_nnue_py", + "_tgt": "nnue_main", + "source": "modules_bot_python_nnue_py", + "target": "nnue_main", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L154", + "weight": 1.0, + "_src": "nnue_train_interactive", + "_tgt": "nnue_get_data_dir", + "source": "nnue_get_data_dir", + "target": "nnue_train_interactive", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L302", + "weight": 1.0, + "_src": "nnue_burst_train_interactive", + "_tgt": "nnue_get_data_dir", + "source": "nnue_get_data_dir", + "target": "nnue_burst_train_interactive", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L27", + "weight": 1.0, + "_src": "nnue_rationale_27", + "_tgt": "nnue_get_data_dir", + "source": "nnue_get_data_dir", + "target": "nnue_rationale_27", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L33", + "weight": 1.0, + "_src": "nnue_rationale_33", + "_tgt": "nnue_get_tactical_data_dir", + "source": "nnue_get_tactical_data_dir", + "target": "nnue_rationale_33", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L46", + "weight": 1.0, + "_src": "nnue_list_checkpoints", + "_tgt": "nnue_get_weights_dir", + "source": "nnue_get_weights_dir", + "target": "nnue_list_checkpoints", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L79", + "weight": 1.0, + "_src": "nnue_show_checkpoints_table", + "_tgt": "nnue_get_weights_dir", + "source": "nnue_get_weights_dir", + "target": "nnue_show_checkpoints_table", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L213", + "weight": 1.0, + "_src": "nnue_train_interactive", + "_tgt": "nnue_get_weights_dir", + "source": "nnue_get_weights_dir", + "target": "nnue_train_interactive", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L312", + "weight": 1.0, + "_src": "nnue_burst_train_interactive", + "_tgt": "nnue_get_weights_dir", + "source": "nnue_get_weights_dir", + "target": "nnue_burst_train_interactive", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L394", + "weight": 1.0, + "_src": "nnue_export_interactive", + "_tgt": "nnue_get_weights_dir", + "source": "nnue_get_weights_dir", + "target": "nnue_export_interactive", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L39", + "weight": 1.0, + "_src": "nnue_rationale_39", + "_tgt": "nnue_get_weights_dir", + "source": "nnue_get_weights_dir", + "target": "nnue_rationale_39", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L68", + "weight": 1.0, + "_src": "nnue_show_checkpoints_table", + "_tgt": "nnue_list_checkpoints", + "source": "nnue_list_checkpoints", + "target": "nnue_show_checkpoints_table", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L132", + "weight": 1.0, + "_src": "nnue_train_interactive", + "_tgt": "nnue_list_checkpoints", + "source": "nnue_list_checkpoints", + "target": "nnue_train_interactive", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L306", + "weight": 1.0, + "_src": "nnue_burst_train_interactive", + "_tgt": "nnue_list_checkpoints", + "source": "nnue_list_checkpoints", + "target": "nnue_burst_train_interactive", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L373", + "weight": 1.0, + "_src": "nnue_export_interactive", + "_tgt": "nnue_list_checkpoints", + "source": "nnue_list_checkpoints", + "target": "nnue_export_interactive", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L45", + "weight": 1.0, + "_src": "nnue_rationale_45", + "_tgt": "nnue_list_checkpoints", + "source": "nnue_list_checkpoints", + "target": "nnue_rationale_45", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L95", + "weight": 1.0, + "_src": "nnue_show_main_menu", + "_tgt": "nnue_show_header", + "source": "nnue_show_header", + "target": "nnue_show_main_menu", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L127", + "weight": 1.0, + "_src": "nnue_train_interactive", + "_tgt": "nnue_show_header", + "source": "nnue_show_header", + "target": "nnue_train_interactive", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L292", + "weight": 1.0, + "_src": "nnue_burst_train_interactive", + "_tgt": "nnue_show_header", + "source": "nnue_show_header", + "target": "nnue_burst_train_interactive", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L368", + "weight": 1.0, + "_src": "nnue_export_interactive", + "_tgt": "nnue_show_header", + "source": "nnue_show_header", + "target": "nnue_export_interactive", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L416", + "weight": 1.0, + "_src": "nnue_extract_tactical_interactive", + "_tgt": "nnue_show_header", + "source": "nnue_show_header", + "target": "nnue_extract_tactical_interactive", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L53", + "weight": 1.0, + "_src": "nnue_rationale_53", + "_tgt": "nnue_show_header", + "source": "nnue_show_header", + "target": "nnue_rationale_53", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L96", + "weight": 1.0, + "_src": "nnue_show_main_menu", + "_tgt": "nnue_show_checkpoints_table", + "source": "nnue_show_checkpoints_table", + "target": "nnue_show_main_menu", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L66", + "weight": 1.0, + "_src": "nnue_rationale_66", + "_tgt": "nnue_show_checkpoints_table", + "source": "nnue_show_checkpoints_table", + "target": "nnue_rationale_66", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L109", + "weight": 1.0, + "_src": "nnue_show_main_menu", + "_tgt": "nnue_train_interactive", + "source": "nnue_show_main_menu", + "target": "nnue_train_interactive", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L111", + "weight": 1.0, + "_src": "nnue_show_main_menu", + "_tgt": "nnue_burst_train_interactive", + "source": "nnue_show_main_menu", + "target": "nnue_burst_train_interactive", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L113", + "weight": 1.0, + "_src": "nnue_show_main_menu", + "_tgt": "nnue_export_interactive", + "source": "nnue_show_main_menu", + "target": "nnue_export_interactive", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L115", + "weight": 1.0, + "_src": "nnue_show_main_menu", + "_tgt": "nnue_extract_tactical_interactive", + "source": "nnue_show_main_menu", + "target": "nnue_extract_tactical_interactive", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L475", + "weight": 1.0, + "_src": "nnue_main", + "_tgt": "nnue_show_main_menu", + "source": "nnue_show_main_menu", + "target": "nnue_main", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L91", + "weight": 1.0, + "_src": "nnue_rationale_91", + "_tgt": "nnue_show_main_menu", + "source": "nnue_show_main_menu", + "target": "nnue_rationale_91", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L125", + "weight": 1.0, + "_src": "nnue_rationale_125", + "_tgt": "nnue_train_interactive", + "source": "nnue_train_interactive", + "target": "nnue_rationale_125", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L290", + "weight": 1.0, + "_src": "nnue_rationale_290", + "_tgt": "nnue_burst_train_interactive", + "source": "nnue_burst_train_interactive", + "target": "nnue_rationale_290", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L366", + "weight": 1.0, + "_src": "nnue_rationale_366", + "_tgt": "nnue_export_interactive", + "source": "nnue_export_interactive", + "target": "nnue_rationale_366", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/nnue.py", + "source_location": "L414", + "weight": 1.0, + "_src": "nnue_rationale_414", + "_tgt": "nnue_extract_tactical_interactive", + "source": "nnue_extract_tactical_interactive", + "target": "nnue_rationale_414", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/export.py", + "source_location": "L9", + "weight": 1.0, + "_src": "modules_bot_python_src_export_py", + "_tgt": "export_export_weights_to_binary", + "source": "modules_bot_python_src_export_py", + "target": "export_export_weights_to_binary", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/export.py", + "source_location": "L10", + "weight": 1.0, + "_src": "export_rationale_10", + "_tgt": "export_export_weights_to_binary", + "source": "export_export_weights_to_binary", + "target": "export_rationale_10", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/generate.py", + "source_location": "L13", + "weight": 1.0, + "_src": "modules_bot_python_src_generate_py", + "_tgt": "generate_worker_generate_games", + "source": "modules_bot_python_src_generate_py", + "target": "generate_worker_generate_games", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/generate.py", + "source_location": "L64", + "weight": 1.0, + "_src": "modules_bot_python_src_generate_py", + "_tgt": "generate_play_random_game_and_collect_positions", + "source": "modules_bot_python_src_generate_py", + "target": "generate_play_random_game_and_collect_positions", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/generate.py", + "source_location": "L14", + "weight": 1.0, + "_src": "generate_rationale_14", + "_tgt": "generate_worker_generate_games", + "source": "generate_worker_generate_games", + "target": "generate_rationale_14", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/generate.py", + "source_location": "L72", + "weight": 1.0, + "_src": "generate_rationale_72", + "_tgt": "generate_play_random_game_and_collect_positions", + "source": "generate_play_random_game_and_collect_positions", + "target": "generate_rationale_72", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/label.py", + "source_location": "L14", + "weight": 1.0, + "_src": "modules_bot_python_src_label_py", + "_tgt": "label_normalize_evaluation", + "source": "modules_bot_python_src_label_py", + "target": "label_normalize_evaluation", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/label.py", + "source_location": "L32", + "weight": 1.0, + "_src": "modules_bot_python_src_label_py", + "_tgt": "label_evaluate_fen_batch", + "source": "modules_bot_python_src_label_py", + "target": "label_evaluate_fen_batch", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/label.py", + "source_location": "L82", + "weight": 1.0, + "_src": "modules_bot_python_src_label_py", + "_tgt": "label_label_positions_with_stockfish", + "source": "modules_bot_python_src_label_py", + "target": "label_label_positions_with_stockfish", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/label.py", + "source_location": "L70", + "weight": 1.0, + "_src": "label_evaluate_fen_batch", + "_tgt": "label_normalize_evaluation", + "source": "label_normalize_evaluation", + "target": "label_evaluate_fen_batch", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/label.py", + "source_location": "L15", + "weight": 1.0, + "_src": "label_rationale_15", + "_tgt": "label_normalize_evaluation", + "source": "label_normalize_evaluation", + "target": "label_rationale_15", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/label.py", + "source_location": "L33", + "weight": 1.0, + "_src": "label_rationale_33", + "_tgt": "label_evaluate_fen_batch", + "source": "label_evaluate_fen_batch", + "target": "label_rationale_33", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/label.py", + "source_location": "L83", + "weight": 1.0, + "_src": "label_rationale_83", + "_tgt": "label_label_positions_with_stockfish", + "source": "label_label_positions_with_stockfish", + "target": "label_rationale_83", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/tactical_positions_extractor.py", + "source_location": "L18", + "weight": 1.0, + "_src": "modules_bot_python_src_tactical_positions_extractor_py", + "_tgt": "tactical_positions_extractor_download_and_extract_puzzle_db", + "source": "modules_bot_python_src_tactical_positions_extractor_py", + "target": "tactical_positions_extractor_download_and_extract_puzzle_db", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/tactical_positions_extractor.py", + "source_location": "L56", + "weight": 1.0, + "_src": "modules_bot_python_src_tactical_positions_extractor_py", + "_tgt": "tactical_positions_extractor_extract_puzzle_positions", + "source": "modules_bot_python_src_tactical_positions_extractor_py", + "target": "tactical_positions_extractor_extract_puzzle_positions", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/tactical_positions_extractor.py", + "source_location": "L104", + "weight": 1.0, + "_src": "modules_bot_python_src_tactical_positions_extractor_py", + "_tgt": "tactical_positions_extractor_load_positions_from_file", + "source": "modules_bot_python_src_tactical_positions_extractor_py", + "target": "tactical_positions_extractor_load_positions_from_file", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/tactical_positions_extractor.py", + "source_location": "L120", + "weight": 1.0, + "_src": "modules_bot_python_src_tactical_positions_extractor_py", + "_tgt": "tactical_positions_extractor_merge_positions", + "source": "modules_bot_python_src_tactical_positions_extractor_py", + "target": "tactical_positions_extractor_merge_positions", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/tactical_positions_extractor.py", + "source_location": "L144", + "weight": 1.0, + "_src": "modules_bot_python_src_tactical_positions_extractor_py", + "_tgt": "tactical_positions_extractor_interactive_merge_positions", + "source": "modules_bot_python_src_tactical_positions_extractor_py", + "target": "tactical_positions_extractor_interactive_merge_positions", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/tactical_positions_extractor.py", + "source_location": "L22", + "weight": 1.0, + "_src": "tactical_positions_extractor_rationale_22", + "_tgt": "tactical_positions_extractor_download_and_extract_puzzle_db", + "source": "tactical_positions_extractor_download_and_extract_puzzle_db", + "target": "tactical_positions_extractor_rationale_22", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/tactical_positions_extractor.py", + "source_location": "L156", + "weight": 1.0, + "_src": "tactical_positions_extractor_interactive_merge_positions", + "_tgt": "tactical_positions_extractor_extract_puzzle_positions", + "source": "tactical_positions_extractor_extract_puzzle_positions", + "target": "tactical_positions_extractor_interactive_merge_positions", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/tactical_positions_extractor.py", + "source_location": "L60", + "weight": 1.0, + "_src": "tactical_positions_extractor_rationale_60", + "_tgt": "tactical_positions_extractor_extract_puzzle_positions", + "source": "tactical_positions_extractor_extract_puzzle_positions", + "target": "tactical_positions_extractor_rationale_60", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/tactical_positions_extractor.py", + "source_location": "L171", + "weight": 1.0, + "_src": "tactical_positions_extractor_interactive_merge_positions", + "_tgt": "tactical_positions_extractor_load_positions_from_file", + "source": "tactical_positions_extractor_load_positions_from_file", + "target": "tactical_positions_extractor_interactive_merge_positions", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/tactical_positions_extractor.py", + "source_location": "L105", + "weight": 1.0, + "_src": "tactical_positions_extractor_rationale_105", + "_tgt": "tactical_positions_extractor_load_positions_from_file", + "source": "tactical_positions_extractor_load_positions_from_file", + "target": "tactical_positions_extractor_rationale_105", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/tactical_positions_extractor.py", + "source_location": "L198", + "weight": 1.0, + "_src": "tactical_positions_extractor_interactive_merge_positions", + "_tgt": "tactical_positions_extractor_merge_positions", + "source": "tactical_positions_extractor_merge_positions", + "target": "tactical_positions_extractor_interactive_merge_positions", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/tactical_positions_extractor.py", + "source_location": "L125", + "weight": 1.0, + "_src": "tactical_positions_extractor_rationale_125", + "_tgt": "tactical_positions_extractor_merge_positions", + "source": "tactical_positions_extractor_merge_positions", + "target": "tactical_positions_extractor_rationale_125", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/tactical_positions_extractor.py", + "source_location": "L149", + "weight": 1.0, + "_src": "tactical_positions_extractor_rationale_149", + "_tgt": "tactical_positions_extractor_interactive_merge_positions", + "source": "tactical_positions_extractor_interactive_merge_positions", + "target": "tactical_positions_extractor_rationale_149", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L17", + "weight": 1.0, + "_src": "modules_bot_python_src_train_py", + "_tgt": "train_nnuedataset", + "source": "modules_bot_python_src_train_py", + "target": "train_nnuedataset", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L64", + "weight": 1.0, + "_src": "modules_bot_python_src_train_py", + "_tgt": "train_fen_to_features", + "source": "modules_bot_python_src_train_py", + "target": "train_fen_to_features", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L89", + "weight": 1.0, + "_src": "modules_bot_python_src_train_py", + "_tgt": "train_nnue", + "source": "modules_bot_python_src_train_py", + "target": "train_nnue", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L119", + "weight": 1.0, + "_src": "modules_bot_python_src_train_py", + "_tgt": "train_find_next_version", + "source": "modules_bot_python_src_train_py", + "target": "train_find_next_version", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L141", + "weight": 1.0, + "_src": "modules_bot_python_src_train_py", + "_tgt": "train_save_metadata", + "source": "modules_bot_python_src_train_py", + "target": "train_save_metadata", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L155", + "weight": 1.0, + "_src": "modules_bot_python_src_train_py", + "_tgt": "train_setup_training", + "source": "modules_bot_python_src_train_py", + "target": "train_setup_training", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L218", + "weight": 1.0, + "_src": "modules_bot_python_src_train_py", + "_tgt": "train_run_training_season", + "source": "modules_bot_python_src_train_py", + "target": "train_run_training_season", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L329", + "weight": 1.0, + "_src": "modules_bot_python_src_train_py", + "_tgt": "train_save_versioned_model", + "source": "modules_bot_python_src_train_py", + "target": "train_save_versioned_model", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L370", + "weight": 1.0, + "_src": "modules_bot_python_src_train_py", + "_tgt": "train_train_nnue", + "source": "modules_bot_python_src_train_py", + "target": "train_train_nnue", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L448", + "weight": 1.0, + "_src": "modules_bot_python_src_train_py", + "_tgt": "train_burst_train", + "source": "modules_bot_python_src_train_py", + "target": "train_burst_train", + "confidence_score": 1.0 + }, + { + "relation": "inherits", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L17", + "weight": 1.0, + "_src": "train_nnuedataset", + "_tgt": "dataset", + "source": "train_nnuedataset", + "target": "dataset", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L20", + "weight": 1.0, + "_src": "train_nnuedataset", + "_tgt": "train_nnuedataset_init", + "source": "train_nnuedataset", + "target": "train_nnuedataset_init", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L48", + "weight": 1.0, + "_src": "train_nnuedataset", + "_tgt": "train_nnuedataset_len", + "source": "train_nnuedataset", + "target": "train_nnuedataset_len", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L51", + "weight": 1.0, + "_src": "train_nnuedataset", + "_tgt": "train_nnuedataset_getitem", + "source": "train_nnuedataset", + "target": "train_nnuedataset_getitem", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L172", + "weight": 1.0, + "_src": "train_setup_training", + "_tgt": "train_nnuedataset", + "source": "train_nnuedataset", + "target": "train_setup_training", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L18", + "weight": 1.0, + "_src": "train_rationale_18", + "_tgt": "train_nnuedataset", + "source": "train_nnuedataset", + "target": "train_rationale_18", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L54", + "weight": 1.0, + "_src": "train_nnuedataset_getitem", + "_tgt": "train_fen_to_features", + "source": "train_nnuedataset_getitem", + "target": "train_fen_to_features", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L65", + "weight": 1.0, + "_src": "train_rationale_65", + "_tgt": "train_fen_to_features", + "source": "train_fen_to_features", + "target": "train_rationale_65", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L92", + "weight": 1.0, + "_src": "train_nnue", + "_tgt": "train_nnue_init", + "source": "train_nnue", + "target": "train_nnue_init", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L112", + "weight": 1.0, + "_src": "train_nnue", + "_tgt": "train_nnue_forward", + "source": "train_nnue", + "target": "train_nnue_forward", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L389", + "weight": 1.0, + "_src": "train_train_nnue", + "_tgt": "train_nnue", + "source": "train_nnue", + "target": "train_train_nnue", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L478", + "weight": 1.0, + "_src": "train_burst_train", + "_tgt": "train_nnue", + "source": "train_nnue", + "target": "train_burst_train", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L90", + "weight": 1.0, + "_src": "train_rationale_90", + "_tgt": "train_nnue", + "source": "train_nnue", + "target": "train_rationale_90", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L338", + "weight": 1.0, + "_src": "train_save_versioned_model", + "_tgt": "train_find_next_version", + "source": "train_find_next_version", + "target": "train_save_versioned_model", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L120", + "weight": 1.0, + "_src": "train_rationale_120", + "_tgt": "train_find_next_version", + "source": "train_find_next_version", + "target": "train_rationale_120", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L364", + "weight": 1.0, + "_src": "train_save_versioned_model", + "_tgt": "train_save_metadata", + "source": "train_save_metadata", + "target": "train_save_versioned_model", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L142", + "weight": 1.0, + "_src": "train_rationale_142", + "_tgt": "train_save_metadata", + "source": "train_save_metadata", + "target": "train_rationale_142", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L387", + "weight": 1.0, + "_src": "train_train_nnue", + "_tgt": "train_setup_training", + "source": "train_setup_training", + "target": "train_train_nnue", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L476", + "weight": 1.0, + "_src": "train_burst_train", + "_tgt": "train_setup_training", + "source": "train_setup_training", + "target": "train_burst_train", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L156", + "weight": 1.0, + "_src": "train_rationale_156", + "_tgt": "train_setup_training", + "source": "train_setup_training", + "target": "train_rationale_156", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L427", + "weight": 1.0, + "_src": "train_train_nnue", + "_tgt": "train_run_training_season", + "source": "train_run_training_season", + "target": "train_train_nnue", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L522", + "weight": 1.0, + "_src": "train_burst_train", + "_tgt": "train_run_training_season", + "source": "train_run_training_season", + "target": "train_burst_train", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L225", + "weight": 1.0, + "_src": "train_rationale_225", + "_tgt": "train_run_training_season", + "source": "train_run_training_season", + "target": "train_rationale_225", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L440", + "weight": 1.0, + "_src": "train_train_nnue", + "_tgt": "train_save_versioned_model", + "source": "train_save_versioned_model", + "target": "train_train_nnue", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L554", + "weight": 1.0, + "_src": "train_burst_train", + "_tgt": "train_save_versioned_model", + "source": "train_save_versioned_model", + "target": "train_burst_train", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L332", + "weight": 1.0, + "_src": "train_rationale_332", + "_tgt": "train_save_versioned_model", + "source": "train_save_versioned_model", + "target": "train_rationale_332", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L371", + "weight": 1.0, + "_src": "train_rationale_371", + "_tgt": "train_train_nnue", + "source": "train_train_nnue", + "target": "train_rationale_371", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "modules/bot/python/src/train.py", + "source_location": "L453", + "weight": 1.0, + "_src": "train_rationale_453", + "_tgt": "train_burst_train", + "source": "train_burst_train", + "target": "train_rationale_453", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/BotController.scala", + "source_location": "L5", + "weight": 1.0, + "_src": "modules_bot_src_main_scala_de_nowchess_bot_botcontroller_scala", + "_tgt": "botcontroller_botcontroller", + "source": "modules_bot_src_main_scala_de_nowchess_bot_botcontroller_scala", + "target": "botcontroller_botcontroller", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/BotController.scala", + "source_location": "L15", + "weight": 1.0, + "_src": "botcontroller_botcontroller", + "_tgt": "botcontroller_botcontroller_getbot", + "source": "botcontroller_botcontroller", + "target": "botcontroller_botcontroller_getbot", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/BotController.scala", + "source_location": "L18", + "weight": 1.0, + "_src": "botcontroller_botcontroller", + "_tgt": "botcontroller_botcontroller_listbots", + "source": "botcontroller_botcontroller", + "target": "botcontroller_botcontroller_listbots", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/Config.scala", + "source_location": "L3", + "weight": 1.0, + "_src": "modules_bot_src_main_scala_de_nowchess_bot_config_scala", + "_tgt": "config_config", + "source": "modules_bot_src_main_scala_de_nowchess_bot_config_scala", + "target": "config_config", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/ai/Evaluation.scala", + "source_location": "L18", + "weight": 1.0, + "_src": "modules_bot_src_main_scala_de_nowchess_bot_ai_evaluation_scala", + "_tgt": "evaluation_initaccumulator", + "source": "modules_bot_src_main_scala_de_nowchess_bot_ai_evaluation_scala", + "target": "evaluation_initaccumulator", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/ai/Evaluation.scala", + "source_location": "L21", + "weight": 1.0, + "_src": "modules_bot_src_main_scala_de_nowchess_bot_ai_evaluation_scala", + "_tgt": "evaluation_copyaccumulator", + "source": "modules_bot_src_main_scala_de_nowchess_bot_ai_evaluation_scala", + "target": "evaluation_copyaccumulator", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/ai/Evaluation.scala", + "source_location": "L24", + "weight": 1.0, + "_src": "modules_bot_src_main_scala_de_nowchess_bot_ai_evaluation_scala", + "_tgt": "evaluation_pushaccumulator", + "source": "modules_bot_src_main_scala_de_nowchess_bot_ai_evaluation_scala", + "target": "evaluation_pushaccumulator", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/ai/Evaluation.scala", + "source_location": "L29", + "weight": 1.0, + "_src": "modules_bot_src_main_scala_de_nowchess_bot_ai_evaluation_scala", + "_tgt": "evaluation_evaluateaccumulator", + "source": "modules_bot_src_main_scala_de_nowchess_bot_ai_evaluation_scala", + "target": "evaluation_evaluateaccumulator", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala", + "source_location": "L12", + "weight": 1.0, + "_src": "modules_bot_src_main_scala_de_nowchess_bot_bots_classicalbot_scala", + "_tgt": "classicalbot_classicalbot", + "source": "modules_bot_src_main_scala_de_nowchess_bot_bots_classicalbot_scala", + "target": "classicalbot_classicalbot", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala", + "source_location": "L23", + "weight": 1.0, + "_src": "classicalbot_classicalbot", + "_tgt": "classicalbot_classicalbot_nextmove", + "source": "classicalbot_classicalbot", + "target": "classicalbot_classicalbot_nextmove", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala", + "source_location": "L13", + "weight": 1.0, + "_src": "modules_bot_src_main_scala_de_nowchess_bot_bots_hybridbot_scala", + "_tgt": "hybridbot_hybridbot", + "source": "modules_bot_src_main_scala_de_nowchess_bot_bots_hybridbot_scala", + "target": "hybridbot_hybridbot", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala", + "source_location": "L23", + "weight": 1.0, + "_src": "hybridbot_hybridbot", + "_tgt": "hybridbot_hybridbot_nextmove", + "source": "hybridbot_hybridbot", + "target": "hybridbot_hybridbot_nextmove", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala", + "source_location": "L26", + "weight": 1.0, + "_src": "hybridbot_hybridbot", + "_tgt": "hybridbot_hybridbot_searchwithveto", + "source": "hybridbot_hybridbot", + "target": "hybridbot_hybridbot_searchwithveto", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala", + "source_location": "L24", + "weight": 1.0, + "_src": "hybridbot_hybridbot_nextmove", + "_tgt": "hybridbot_hybridbot_searchwithveto", + "source": "hybridbot_hybridbot_nextmove", + "target": "hybridbot_hybridbot_searchwithveto", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/NNUEBot.scala", + "source_location": "L12", + "weight": 1.0, + "_src": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnuebot_scala", + "_tgt": "nnuebot_nnuebot", + "source": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnuebot_scala", + "target": "nnuebot_nnuebot", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/NNUEBot.scala", + "source_location": "L22", + "weight": 1.0, + "_src": "nnuebot_nnuebot", + "_tgt": "nnuebot_nnuebot_nextmove", + "source": "nnuebot_nnuebot", + "target": "nnuebot_nnuebot_nextmove", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/NNUEBot.scala", + "source_location": "L28", + "weight": 1.0, + "_src": "nnuebot_nnuebot", + "_tgt": "nnuebot_nnuebot_allocatetime", + "source": "nnuebot_nnuebot", + "target": "nnuebot_nnuebot_allocatetime", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/NNUEBot.scala", + "source_location": "L25", + "weight": 1.0, + "_src": "nnuebot_nnuebot_nextmove", + "_tgt": "nnuebot_nnuebot_allocatetime", + "source": "nnuebot_nnuebot_nextmove", + "target": "nnuebot_nnuebot_allocatetime", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L7", + "weight": 1.0, + "_src": "modules_bot_src_main_scala_de_nowchess_bot_bots_classic_evaluationclassic_scala", + "_tgt": "evaluationclassic_evaluationclassic", + "source": "modules_bot_src_main_scala_de_nowchess_bot_bots_classic_evaluationclassic_scala", + "target": "evaluationclassic_evaluationclassic", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L125", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic", + "_tgt": "evaluationclassic_evaluationclassic_evaluate", + "source": "evaluationclassic_evaluationclassic", + "target": "evaluationclassic_evaluationclassic_evaluate", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L136", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic", + "_tgt": "evaluationclassic_evaluationclassic_gamephase", + "source": "evaluationclassic_evaluationclassic", + "target": "evaluationclassic_evaluationclassic_gamephase", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L142", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic", + "_tgt": "evaluationclassic_evaluationclassic_isendgame", + "source": "evaluationclassic_evaluationclassic", + "target": "evaluationclassic_evaluationclassic_isendgame", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L145", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic", + "_tgt": "evaluationclassic_evaluationclassic_taper", + "source": "evaluationclassic_evaluationclassic", + "target": "evaluationclassic_evaluationclassic_taper", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L148", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic", + "_tgt": "evaluationclassic_evaluationclassic_materialandpositional", + "source": "evaluationclassic_evaluationclassic", + "target": "evaluationclassic_evaluationclassic_materialandpositional", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L158", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic", + "_tgt": "evaluationclassic_evaluationclassic_squarebonus", + "source": "evaluationclassic_evaluationclassic", + "target": "evaluationclassic_evaluationclassic_squarebonus", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L171", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic", + "_tgt": "evaluationclassic_evaluationclassic_pawnstructure", + "source": "evaluationclassic_evaluationclassic", + "target": "evaluationclassic_evaluationclassic_pawnstructure", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L182", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic", + "_tgt": "evaluationclassic_evaluationclassic_structurescore", + "source": "evaluationclassic_evaluationclassic", + "target": "evaluationclassic_evaluationclassic_structurescore", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L190", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic", + "_tgt": "evaluationclassic_evaluationclassic_positionalbonuses", + "source": "evaluationclassic_evaluationclassic", + "target": "evaluationclassic_evaluationclassic_positionalbonuses", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L203", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic", + "_tgt": "evaluationclassic_evaluationclassic_ispassedpawn", + "source": "evaluationclassic_evaluationclassic", + "target": "evaluationclassic_evaluationclassic_ispassedpawn", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L216", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic", + "_tgt": "evaluationclassic_evaluationclassic_rookopenfilebonus", + "source": "evaluationclassic_evaluationclassic", + "target": "evaluationclassic_evaluationclassic_rookopenfilebonus", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L227", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic", + "_tgt": "evaluationclassic_evaluationclassic_kingshieldbonus", + "source": "evaluationclassic_evaluationclassic", + "target": "evaluationclassic_evaluationclassic_kingshieldbonus", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L242", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic", + "_tgt": "evaluationclassic_evaluationclassic_slidingcount", + "source": "evaluationclassic_evaluationclassic", + "target": "evaluationclassic_evaluationclassic_slidingcount", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L261", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic", + "_tgt": "evaluationclassic_evaluationclassic_knightcount", + "source": "evaluationclassic_evaluationclassic", + "target": "evaluationclassic_evaluationclassic_knightcount", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L268", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic", + "_tgt": "evaluationclassic_evaluationclassic_mobilityscore", + "source": "evaluationclassic_evaluationclassic", + "target": "evaluationclassic_evaluationclassic_mobilityscore", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L283", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic", + "_tgt": "evaluationclassic_evaluationclassic_rookandbishopbonuses", + "source": "evaluationclassic_evaluationclassic", + "target": "evaluationclassic_evaluationclassic_rookandbishopbonuses", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L309", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic", + "_tgt": "evaluationclassic_evaluationclassic_endgamebonus", + "source": "evaluationclassic_evaluationclassic", + "target": "evaluationclassic_evaluationclassic_endgamebonus", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L325", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic", + "_tgt": "evaluationclassic_evaluationclassic_kingcentralizationdistance", + "source": "evaluationclassic_evaluationclassic", + "target": "evaluationclassic_evaluationclassic_kingcentralizationdistance", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L330", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic", + "_tgt": "evaluationclassic_evaluationclassic_kingedgedistance", + "source": "evaluationclassic_evaluationclassic", + "target": "evaluationclassic_evaluationclassic_kingedgedistance", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L335", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic", + "_tgt": "evaluationclassic_evaluationclassic_materialcount", + "source": "evaluationclassic_evaluationclassic", + "target": "evaluationclassic_evaluationclassic_materialcount", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L126", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic_evaluate", + "_tgt": "evaluationclassic_evaluationclassic_gamephase", + "source": "evaluationclassic_evaluationclassic_evaluate", + "target": "evaluationclassic_evaluationclassic_gamephase", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L127", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic_evaluate", + "_tgt": "evaluationclassic_evaluationclassic_isendgame", + "source": "evaluationclassic_evaluationclassic_evaluate", + "target": "evaluationclassic_evaluationclassic_isendgame", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L128", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic_evaluate", + "_tgt": "evaluationclassic_evaluationclassic_materialandpositional", + "source": "evaluationclassic_evaluationclassic_evaluate", + "target": "evaluationclassic_evaluationclassic_materialandpositional", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L129", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic_evaluate", + "_tgt": "evaluationclassic_evaluationclassic_pawnstructure", + "source": "evaluationclassic_evaluationclassic_evaluate", + "target": "evaluationclassic_evaluationclassic_pawnstructure", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L130", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic_evaluate", + "_tgt": "evaluationclassic_evaluationclassic_mobilityscore", + "source": "evaluationclassic_evaluationclassic_evaluate", + "target": "evaluationclassic_evaluationclassic_mobilityscore", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L131", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic_evaluate", + "_tgt": "evaluationclassic_evaluationclassic_rookandbishopbonuses", + "source": "evaluationclassic_evaluationclassic_evaluate", + "target": "evaluationclassic_evaluationclassic_rookandbishopbonuses", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L132", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic_evaluate", + "_tgt": "evaluationclassic_evaluationclassic_positionalbonuses", + "source": "evaluationclassic_evaluationclassic_evaluate", + "target": "evaluationclassic_evaluationclassic_positionalbonuses", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L133", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic_evaluate", + "_tgt": "evaluationclassic_evaluationclassic_endgamebonus", + "source": "evaluationclassic_evaluationclassic_evaluate", + "target": "evaluationclassic_evaluationclassic_endgamebonus", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L156", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic_materialandpositional", + "_tgt": "evaluationclassic_evaluationclassic_taper", + "source": "evaluationclassic_evaluationclassic_taper", + "target": "evaluationclassic_evaluationclassic_materialandpositional", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L180", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic_pawnstructure", + "_tgt": "evaluationclassic_evaluationclassic_taper", + "source": "evaluationclassic_evaluationclassic_taper", + "target": "evaluationclassic_evaluationclassic_pawnstructure", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L281", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic_mobilityscore", + "_tgt": "evaluationclassic_evaluationclassic_taper", + "source": "evaluationclassic_evaluationclassic_taper", + "target": "evaluationclassic_evaluationclassic_mobilityscore", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L307", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic_rookandbishopbonuses", + "_tgt": "evaluationclassic_evaluationclassic_taper", + "source": "evaluationclassic_evaluationclassic_taper", + "target": "evaluationclassic_evaluationclassic_rookandbishopbonuses", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L150", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic_materialandpositional", + "_tgt": "evaluationclassic_evaluationclassic_squarebonus", + "source": "evaluationclassic_evaluationclassic_materialandpositional", + "target": "evaluationclassic_evaluationclassic_squarebonus", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L178", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic_pawnstructure", + "_tgt": "evaluationclassic_evaluationclassic_structurescore", + "source": "evaluationclassic_evaluationclassic_pawnstructure", + "target": "evaluationclassic_evaluationclassic_structurescore", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L194", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic_positionalbonuses", + "_tgt": "evaluationclassic_evaluationclassic_ispassedpawn", + "source": "evaluationclassic_evaluationclassic_positionalbonuses", + "target": "evaluationclassic_evaluationclassic_ispassedpawn", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L197", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic_positionalbonuses", + "_tgt": "evaluationclassic_evaluationclassic_rookopenfilebonus", + "source": "evaluationclassic_evaluationclassic_positionalbonuses", + "target": "evaluationclassic_evaluationclassic_rookopenfilebonus", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L198", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic_positionalbonuses", + "_tgt": "evaluationclassic_evaluationclassic_kingshieldbonus", + "source": "evaluationclassic_evaluationclassic_positionalbonuses", + "target": "evaluationclassic_evaluationclassic_kingshieldbonus", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L272", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic_mobilityscore", + "_tgt": "evaluationclassic_evaluationclassic_slidingcount", + "source": "evaluationclassic_evaluationclassic_slidingcount", + "target": "evaluationclassic_evaluationclassic_mobilityscore", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L271", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic_mobilityscore", + "_tgt": "evaluationclassic_evaluationclassic_knightcount", + "source": "evaluationclassic_evaluationclassic_knightcount", + "target": "evaluationclassic_evaluationclassic_mobilityscore", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L314", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic_endgamebonus", + "_tgt": "evaluationclassic_evaluationclassic_kingcentralizationdistance", + "source": "evaluationclassic_evaluationclassic_endgamebonus", + "target": "evaluationclassic_evaluationclassic_kingcentralizationdistance", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L317", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic_endgamebonus", + "_tgt": "evaluationclassic_evaluationclassic_materialcount", + "source": "evaluationclassic_evaluationclassic_endgamebonus", + "target": "evaluationclassic_evaluationclassic_materialcount", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala", + "source_location": "L320", + "weight": 1.0, + "_src": "evaluationclassic_evaluationclassic_endgamebonus", + "_tgt": "evaluationclassic_evaluationclassic_kingedgedistance", + "source": "evaluationclassic_evaluationclassic_endgamebonus", + "target": "evaluationclassic_evaluationclassic_kingedgedistance", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala", + "source_location": "L7", + "weight": 1.0, + "_src": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnue_evaluationnnue_scala", + "_tgt": "evaluationnnue_evaluationnnue", + "source": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnue_evaluationnnue_scala", + "target": "evaluationnnue_evaluationnnue", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala", + "source_location": "L15", + "weight": 1.0, + "_src": "evaluationnnue_evaluationnnue", + "_tgt": "evaluationnnue_evaluationnnue_evaluate", + "source": "evaluationnnue_evaluationnnue", + "target": "evaluationnnue_evaluationnnue_evaluate", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala", + "source_location": "L19", + "weight": 1.0, + "_src": "evaluationnnue_evaluationnnue", + "_tgt": "evaluationnnue_evaluationnnue_initaccumulator", + "source": "evaluationnnue_evaluationnnue", + "target": "evaluationnnue_evaluationnnue_initaccumulator", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala", + "source_location": "L22", + "weight": 1.0, + "_src": "evaluationnnue_evaluationnnue", + "_tgt": "evaluationnnue_evaluationnnue_copyaccumulator", + "source": "evaluationnnue_evaluationnnue", + "target": "evaluationnnue_evaluationnnue_copyaccumulator", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala", + "source_location": "L25", + "weight": 1.0, + "_src": "evaluationnnue_evaluationnnue", + "_tgt": "evaluationnnue_evaluationnnue_pushaccumulator", + "source": "evaluationnnue_evaluationnnue", + "target": "evaluationnnue_evaluationnnue_pushaccumulator", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/EvaluationNNUE.scala", + "source_location": "L28", + "weight": 1.0, + "_src": "evaluationnnue_evaluationnnue", + "_tgt": "evaluationnnue_evaluationnnue_evaluateaccumulator", + "source": "evaluationnnue_evaluationnnue", + "target": "evaluationnnue_evaluationnnue_evaluateaccumulator", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L9", + "weight": 1.0, + "_src": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnue_nnue_scala", + "_tgt": "nnue_nnue", + "source": "modules_bot_src_main_scala_de_nowchess_bot_bots_nnue_nnue_scala", + "target": "nnue_nnue", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L22", + "weight": 1.0, + "_src": "nnue_nnue", + "_tgt": "nnue_nnue_loadweights", + "source": "nnue_nnue", + "target": "nnue_nnue_loadweights", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L61", + "weight": 1.0, + "_src": "nnue_nnue", + "_tgt": "nnue_nnue_readtensor", + "source": "nnue_nnue", + "target": "nnue_nnue_readtensor", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L90", + "weight": 1.0, + "_src": "nnue_nnue", + "_tgt": "nnue_nnue_squarenum", + "source": "nnue_nnue", + "target": "nnue_nnue_squarenum", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L92", + "weight": 1.0, + "_src": "nnue_nnue", + "_tgt": "nnue_nnue_featureindex", + "source": "nnue_nnue", + "target": "nnue_nnue_featureindex", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L96", + "weight": 1.0, + "_src": "nnue_nnue", + "_tgt": "nnue_nnue_addcolumn", + "source": "nnue_nnue", + "target": "nnue_nnue_addcolumn", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L100", + "weight": 1.0, + "_src": "nnue_nnue", + "_tgt": "nnue_nnue_subtractcolumn", + "source": "nnue_nnue", + "target": "nnue_nnue_subtractcolumn", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L107", + "weight": 1.0, + "_src": "nnue_nnue", + "_tgt": "nnue_nnue_initaccumulator", + "source": "nnue_nnue", + "target": "nnue_nnue_initaccumulator", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L114", + "weight": 1.0, + "_src": "nnue_nnue", + "_tgt": "nnue_nnue_pushaccumulator", + "source": "nnue_nnue", + "target": "nnue_nnue_pushaccumulator", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L124", + "weight": 1.0, + "_src": "nnue_nnue", + "_tgt": "nnue_nnue_copyaccumulator", + "source": "nnue_nnue", + "target": "nnue_nnue_copyaccumulator", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L127", + "weight": 1.0, + "_src": "nnue_nnue", + "_tgt": "nnue_nnue_applynormaldelta", + "source": "nnue_nnue", + "target": "nnue_nnue_applynormaldelta", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L136", + "weight": 1.0, + "_src": "nnue_nnue", + "_tgt": "nnue_nnue_applyenpassantdelta", + "source": "nnue_nnue", + "target": "nnue_nnue_applyenpassantdelta", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L144", + "weight": 1.0, + "_src": "nnue_nnue", + "_tgt": "nnue_nnue_applycastledelta", + "source": "nnue_nnue", + "target": "nnue_nnue_applycastledelta", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L158", + "weight": 1.0, + "_src": "nnue_nnue", + "_tgt": "nnue_nnue_applypromotiondelta", + "source": "nnue_nnue", + "target": "nnue_nnue_applypromotiondelta", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L166", + "weight": 1.0, + "_src": "nnue_nnue", + "_tgt": "nnue_nnue_promotedtype", + "source": "nnue_nnue", + "target": "nnue_nnue_promotedtype", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L177", + "weight": 1.0, + "_src": "nnue_nnue", + "_tgt": "nnue_nnue_evaluateatply", + "source": "nnue_nnue", + "target": "nnue_nnue_evaluateatply", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L186", + "weight": 1.0, + "_src": "nnue_nnue", + "_tgt": "nnue_nnue_runl2tooutput", + "source": "nnue_nnue", + "target": "nnue_nnue_runl2tooutput", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L194", + "weight": 1.0, + "_src": "nnue_nnue", + "_tgt": "nnue_nnue_rundenserelu", + "source": "nnue_nnue", + "target": "nnue_nnue_rundenserelu", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L206", + "weight": 1.0, + "_src": "nnue_nnue", + "_tgt": "nnue_nnue_runoutputlayer", + "source": "nnue_nnue", + "target": "nnue_nnue_runoutputlayer", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L209", + "weight": 1.0, + "_src": "nnue_nnue", + "_tgt": "nnue_nnue_scorefromoutput", + "source": "nnue_nnue", + "target": "nnue_nnue_scorefromoutput", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L226", + "weight": 1.0, + "_src": "nnue_nnue", + "_tgt": "nnue_nnue_evaluate", + "source": "nnue_nnue", + "target": "nnue_nnue_evaluate", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L233", + "weight": 1.0, + "_src": "nnue_nnue", + "_tgt": "nnue_nnue_benchmark", + "source": "nnue_nnue", + "target": "nnue_nnue_benchmark", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L47", + "weight": 1.0, + "_src": "nnue_nnue_loadweights", + "_tgt": "nnue_nnue_readtensor", + "source": "nnue_nnue_loadweights", + "target": "nnue_nnue_readtensor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L109", + "weight": 1.0, + "_src": "nnue_nnue_initaccumulator", + "_tgt": "nnue_nnue_squarenum", + "source": "nnue_nnue_squarenum", + "target": "nnue_nnue_initaccumulator", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L129", + "weight": 1.0, + "_src": "nnue_nnue_applynormaldelta", + "_tgt": "nnue_nnue_squarenum", + "source": "nnue_nnue_squarenum", + "target": "nnue_nnue_applynormaldelta", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L139", + "weight": 1.0, + "_src": "nnue_nnue_applyenpassantdelta", + "_tgt": "nnue_nnue_squarenum", + "source": "nnue_nnue_squarenum", + "target": "nnue_nnue_applyenpassantdelta", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L152", + "weight": 1.0, + "_src": "nnue_nnue_applycastledelta", + "_tgt": "nnue_nnue_squarenum", + "source": "nnue_nnue_squarenum", + "target": "nnue_nnue_applycastledelta", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L160", + "weight": 1.0, + "_src": "nnue_nnue_applypromotiondelta", + "_tgt": "nnue_nnue_squarenum", + "source": "nnue_nnue_squarenum", + "target": "nnue_nnue_applypromotiondelta", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L229", + "weight": 1.0, + "_src": "nnue_nnue_evaluate", + "_tgt": "nnue_nnue_squarenum", + "source": "nnue_nnue_squarenum", + "target": "nnue_nnue_evaluate", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L109", + "weight": 1.0, + "_src": "nnue_nnue_initaccumulator", + "_tgt": "nnue_nnue_featureindex", + "source": "nnue_nnue_featureindex", + "target": "nnue_nnue_initaccumulator", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L131", + "weight": 1.0, + "_src": "nnue_nnue_applynormaldelta", + "_tgt": "nnue_nnue_featureindex", + "source": "nnue_nnue_featureindex", + "target": "nnue_nnue_applynormaldelta", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L139", + "weight": 1.0, + "_src": "nnue_nnue_applyenpassantdelta", + "_tgt": "nnue_nnue_featureindex", + "source": "nnue_nnue_featureindex", + "target": "nnue_nnue_applyenpassantdelta", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L152", + "weight": 1.0, + "_src": "nnue_nnue_applycastledelta", + "_tgt": "nnue_nnue_featureindex", + "source": "nnue_nnue_featureindex", + "target": "nnue_nnue_applycastledelta", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L161", + "weight": 1.0, + "_src": "nnue_nnue_applypromotiondelta", + "_tgt": "nnue_nnue_featureindex", + "source": "nnue_nnue_featureindex", + "target": "nnue_nnue_applypromotiondelta", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L229", + "weight": 1.0, + "_src": "nnue_nnue_evaluate", + "_tgt": "nnue_nnue_featureindex", + "source": "nnue_nnue_featureindex", + "target": "nnue_nnue_evaluate", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L109", + "weight": 1.0, + "_src": "nnue_nnue_initaccumulator", + "_tgt": "nnue_nnue_addcolumn", + "source": "nnue_nnue_addcolumn", + "target": "nnue_nnue_initaccumulator", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L133", + "weight": 1.0, + "_src": "nnue_nnue_applynormaldelta", + "_tgt": "nnue_nnue_addcolumn", + "source": "nnue_nnue_addcolumn", + "target": "nnue_nnue_applynormaldelta", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L141", + "weight": 1.0, + "_src": "nnue_nnue_applyenpassantdelta", + "_tgt": "nnue_nnue_addcolumn", + "source": "nnue_nnue_addcolumn", + "target": "nnue_nnue_applyenpassantdelta", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L153", + "weight": 1.0, + "_src": "nnue_nnue_applycastledelta", + "_tgt": "nnue_nnue_addcolumn", + "source": "nnue_nnue_addcolumn", + "target": "nnue_nnue_applycastledelta", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L163", + "weight": 1.0, + "_src": "nnue_nnue_applypromotiondelta", + "_tgt": "nnue_nnue_addcolumn", + "source": "nnue_nnue_addcolumn", + "target": "nnue_nnue_applypromotiondelta", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L229", + "weight": 1.0, + "_src": "nnue_nnue_evaluate", + "_tgt": "nnue_nnue_addcolumn", + "source": "nnue_nnue_addcolumn", + "target": "nnue_nnue_evaluate", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L131", + "weight": 1.0, + "_src": "nnue_nnue_applynormaldelta", + "_tgt": "nnue_nnue_subtractcolumn", + "source": "nnue_nnue_subtractcolumn", + "target": "nnue_nnue_applynormaldelta", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L139", + "weight": 1.0, + "_src": "nnue_nnue_applyenpassantdelta", + "_tgt": "nnue_nnue_subtractcolumn", + "source": "nnue_nnue_subtractcolumn", + "target": "nnue_nnue_applyenpassantdelta", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L152", + "weight": 1.0, + "_src": "nnue_nnue_applycastledelta", + "_tgt": "nnue_nnue_subtractcolumn", + "source": "nnue_nnue_subtractcolumn", + "target": "nnue_nnue_applycastledelta", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L161", + "weight": 1.0, + "_src": "nnue_nnue_applypromotiondelta", + "_tgt": "nnue_nnue_subtractcolumn", + "source": "nnue_nnue_subtractcolumn", + "target": "nnue_nnue_applypromotiondelta", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L118", + "weight": 1.0, + "_src": "nnue_nnue_pushaccumulator", + "_tgt": "nnue_nnue_applynormaldelta", + "source": "nnue_nnue_pushaccumulator", + "target": "nnue_nnue_applynormaldelta", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L119", + "weight": 1.0, + "_src": "nnue_nnue_pushaccumulator", + "_tgt": "nnue_nnue_applyenpassantdelta", + "source": "nnue_nnue_pushaccumulator", + "target": "nnue_nnue_applyenpassantdelta", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L120", + "weight": 1.0, + "_src": "nnue_nnue_pushaccumulator", + "_tgt": "nnue_nnue_applycastledelta", + "source": "nnue_nnue_pushaccumulator", + "target": "nnue_nnue_applycastledelta", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L121", + "weight": 1.0, + "_src": "nnue_nnue_pushaccumulator", + "_tgt": "nnue_nnue_applypromotiondelta", + "source": "nnue_nnue_pushaccumulator", + "target": "nnue_nnue_applypromotiondelta", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L163", + "weight": 1.0, + "_src": "nnue_nnue_applypromotiondelta", + "_tgt": "nnue_nnue_promotedtype", + "source": "nnue_nnue_applypromotiondelta", + "target": "nnue_nnue_promotedtype", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L181", + "weight": 1.0, + "_src": "nnue_nnue_evaluateatply", + "_tgt": "nnue_nnue_runl2tooutput", + "source": "nnue_nnue_evaluateatply", + "target": "nnue_nnue_runl2tooutput", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L188", + "weight": 1.0, + "_src": "nnue_nnue_runl2tooutput", + "_tgt": "nnue_nnue_rundenserelu", + "source": "nnue_nnue_runl2tooutput", + "target": "nnue_nnue_rundenserelu", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L191", + "weight": 1.0, + "_src": "nnue_nnue_runl2tooutput", + "_tgt": "nnue_nnue_runoutputlayer", + "source": "nnue_nnue_runl2tooutput", + "target": "nnue_nnue_runoutputlayer", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L192", + "weight": 1.0, + "_src": "nnue_nnue_runl2tooutput", + "_tgt": "nnue_nnue_scorefromoutput", + "source": "nnue_nnue_runl2tooutput", + "target": "nnue_nnue_scorefromoutput", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L230", + "weight": 1.0, + "_src": "nnue_nnue_evaluate", + "_tgt": "nnue_nnue_runl2tooutput", + "source": "nnue_nnue_runl2tooutput", + "target": "nnue_nnue_evaluate", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/bots/nnue/NNUE.scala", + "source_location": "L236", + "weight": 1.0, + "_src": "nnue_nnue_benchmark", + "_tgt": "nnue_nnue_evaluate", + "source": "nnue_nnue_evaluate", + "target": "nnue_nnue_benchmark", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L13", + "weight": 1.0, + "_src": "modules_bot_src_main_scala_de_nowchess_bot_logic_alphabetasearch_scala", + "_tgt": "alphabetasearch_alphabetasearch", + "source": "modules_bot_src_main_scala_de_nowchess_bot_logic_alphabetasearch_scala", + "target": "alphabetasearch_alphabetasearch", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L37", + "weight": 1.0, + "_src": "alphabetasearch_alphabetasearch", + "_tgt": "alphabetasearch_alphabetasearch_bestmove", + "source": "alphabetasearch_alphabetasearch", + "target": "alphabetasearch_alphabetasearch_bestmove", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L54", + "weight": 1.0, + "_src": "alphabetasearch_alphabetasearch", + "_tgt": "alphabetasearch_alphabetasearch_bestmovewithtime", + "source": "alphabetasearch_alphabetasearch", + "target": "alphabetasearch_alphabetasearch_bestmovewithtime", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L73", + "weight": 1.0, + "_src": "alphabetasearch_alphabetasearch", + "_tgt": "alphabetasearch_alphabetasearch_isoutoftime", + "source": "alphabetasearch_alphabetasearch", + "target": "alphabetasearch_alphabetasearch_isoutoftime", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L76", + "weight": 1.0, + "_src": "alphabetasearch_alphabetasearch", + "_tgt": "alphabetasearch_alphabetasearch_searchwithaspiration", + "source": "alphabetasearch_alphabetasearch", + "target": "alphabetasearch_alphabetasearch_searchwithaspiration", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L100", + "weight": 1.0, + "_src": "alphabetasearch_alphabetasearch", + "_tgt": "alphabetasearch_alphabetasearch_hasnonpawnmaterial", + "source": "alphabetasearch_alphabetasearch", + "target": "alphabetasearch_alphabetasearch_hasnonpawnmaterial", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L107", + "weight": 1.0, + "_src": "alphabetasearch_alphabetasearch", + "_tgt": "alphabetasearch_alphabetasearch_nullmovecontext", + "source": "alphabetasearch_alphabetasearch", + "target": "alphabetasearch_alphabetasearch_nullmovecontext", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L110", + "weight": 1.0, + "_src": "alphabetasearch_alphabetasearch", + "_tgt": "alphabetasearch_alphabetasearch_trynullmove", + "source": "alphabetasearch_alphabetasearch", + "target": "alphabetasearch_alphabetasearch_trynullmove", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L129", + "weight": 1.0, + "_src": "alphabetasearch_alphabetasearch", + "_tgt": "alphabetasearch_alphabetasearch_search", + "source": "alphabetasearch_alphabetasearch", + "target": "alphabetasearch_alphabetasearch_search", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L175", + "weight": 1.0, + "_src": "alphabetasearch_alphabetasearch", + "_tgt": "alphabetasearch_alphabetasearch_searchsequential", + "source": "alphabetasearch_alphabetasearch", + "target": "alphabetasearch_alphabetasearch_searchsequential", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L251", + "weight": 1.0, + "_src": "alphabetasearch_alphabetasearch", + "_tgt": "alphabetasearch_alphabetasearch_quiescence", + "source": "alphabetasearch_alphabetasearch", + "target": "alphabetasearch_alphabetasearch_quiescence", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L289", + "weight": 1.0, + "_src": "alphabetasearch_alphabetasearch", + "_tgt": "alphabetasearch_alphabetasearch_iscapture", + "source": "alphabetasearch_alphabetasearch", + "target": "alphabetasearch_alphabetasearch_iscapture", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L47", + "weight": 1.0, + "_src": "alphabetasearch_alphabetasearch_bestmove", + "_tgt": "alphabetasearch_alphabetasearch_searchwithaspiration", + "source": "alphabetasearch_alphabetasearch_bestmove", + "target": "alphabetasearch_alphabetasearch_searchwithaspiration", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L164", + "weight": 1.0, + "_src": "alphabetasearch_alphabetasearch_search", + "_tgt": "alphabetasearch_alphabetasearch_hasnonpawnmaterial", + "source": "alphabetasearch_alphabetasearch_hasnonpawnmaterial", + "target": "alphabetasearch_alphabetasearch_search", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L117", + "weight": 1.0, + "_src": "alphabetasearch_alphabetasearch_trynullmove", + "_tgt": "alphabetasearch_alphabetasearch_nullmovecontext", + "source": "alphabetasearch_alphabetasearch_nullmovecontext", + "target": "alphabetasearch_alphabetasearch_trynullmove", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L165", + "weight": 1.0, + "_src": "alphabetasearch_alphabetasearch_search", + "_tgt": "alphabetasearch_alphabetasearch_trynullmove", + "source": "alphabetasearch_alphabetasearch_trynullmove", + "target": "alphabetasearch_alphabetasearch_search", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L161", + "weight": 1.0, + "_src": "alphabetasearch_alphabetasearch_search", + "_tgt": "alphabetasearch_alphabetasearch_quiescence", + "source": "alphabetasearch_alphabetasearch_search", + "target": "alphabetasearch_alphabetasearch_quiescence", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L171", + "weight": 1.0, + "_src": "alphabetasearch_alphabetasearch_search", + "_tgt": "alphabetasearch_alphabetasearch_searchsequential", + "source": "alphabetasearch_alphabetasearch_search", + "target": "alphabetasearch_alphabetasearch_searchsequential", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/AlphaBetaSearch.scala", + "source_location": "L269", + "weight": 1.0, + "_src": "alphabetasearch_alphabetasearch_quiescence", + "_tgt": "alphabetasearch_alphabetasearch_iscapture", + "source": "alphabetasearch_alphabetasearch_quiescence", + "target": "alphabetasearch_alphabetasearch_iscapture", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L10", + "weight": 1.0, + "_src": "modules_bot_src_main_scala_de_nowchess_bot_logic_moveordering_scala", + "_tgt": "moveordering_moveordering", + "source": "modules_bot_src_main_scala_de_nowchess_bot_logic_moveordering_scala", + "target": "moveordering_moveordering", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L12", + "weight": 1.0, + "_src": "modules_bot_src_main_scala_de_nowchess_bot_logic_moveordering_scala", + "_tgt": "moveordering_orderingcontext", + "source": "modules_bot_src_main_scala_de_nowchess_bot_logic_moveordering_scala", + "target": "moveordering_orderingcontext", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L35", + "weight": 1.0, + "_src": "moveordering_moveordering", + "_tgt": "moveordering_moveordering_score", + "source": "moveordering_moveordering", + "target": "moveordering_moveordering_score", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L53", + "weight": 1.0, + "_src": "moveordering_moveordering", + "_tgt": "moveordering_moveordering_sort", + "source": "moveordering_moveordering", + "target": "moveordering_moveordering_sort", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L62", + "weight": 1.0, + "_src": "moveordering_moveordering", + "_tgt": "moveordering_moveordering_scorequietmove", + "source": "moveordering_moveordering", + "target": "moveordering_moveordering_scorequietmove", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L69", + "weight": 1.0, + "_src": "moveordering_moveordering", + "_tgt": "moveordering_moveordering_promotioncapturebonus", + "source": "moveordering_moveordering", + "target": "moveordering_moveordering_promotioncapturebonus", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L72", + "weight": 1.0, + "_src": "moveordering_moveordering", + "_tgt": "moveordering_moveordering_capturescore", + "source": "moveordering_moveordering", + "target": "moveordering_moveordering_capturescore", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L77", + "weight": 1.0, + "_src": "moveordering_moveordering", + "_tgt": "moveordering_moveordering_mvvlva", + "source": "moveordering_moveordering", + "target": "moveordering_moveordering_mvvlva", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L80", + "weight": 1.0, + "_src": "moveordering_moveordering", + "_tgt": "moveordering_moveordering_attackervalue", + "source": "moveordering_moveordering", + "target": "moveordering_moveordering_attackervalue", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L83", + "weight": 1.0, + "_src": "moveordering_moveordering", + "_tgt": "moveordering_moveordering_victimvalue", + "source": "moveordering_moveordering", + "target": "moveordering_moveordering_victimvalue", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L90", + "weight": 1.0, + "_src": "moveordering_moveordering", + "_tgt": "moveordering_moveordering_piecevalue", + "source": "moveordering_moveordering", + "target": "moveordering_moveordering_piecevalue", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L98", + "weight": 1.0, + "_src": "moveordering_moveordering", + "_tgt": "moveordering_moveordering_iscapture", + "source": "moveordering_moveordering", + "target": "moveordering_moveordering_iscapture", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L104", + "weight": 1.0, + "_src": "moveordering_moveordering", + "_tgt": "moveordering_moveordering_staticexchange", + "source": "moveordering_moveordering", + "target": "moveordering_moveordering_staticexchange", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L114", + "weight": 1.0, + "_src": "moveordering_moveordering", + "_tgt": "moveordering_moveordering_movedpieceaftermove", + "source": "moveordering_moveordering", + "target": "moveordering_moveordering_movedpieceaftermove", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L119", + "weight": 1.0, + "_src": "moveordering_moveordering", + "_tgt": "moveordering_moveordering_exchangegain", + "source": "moveordering_moveordering", + "target": "moveordering_moveordering_exchangegain", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L128", + "weight": 1.0, + "_src": "moveordering_moveordering", + "_tgt": "moveordering_moveordering_resolvegain", + "source": "moveordering_moveordering", + "target": "moveordering_moveordering_resolvegain", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L135", + "weight": 1.0, + "_src": "moveordering_moveordering", + "_tgt": "moveordering_moveordering_applyseemove", + "source": "moveordering_moveordering", + "target": "moveordering_moveordering_applyseemove", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L142", + "weight": 1.0, + "_src": "moveordering_moveordering", + "_tgt": "moveordering_moveordering_leastvaluableattacker", + "source": "moveordering_moveordering", + "target": "moveordering_moveordering_leastvaluableattacker", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L151", + "weight": 1.0, + "_src": "moveordering_moveordering", + "_tgt": "moveordering_moveordering_attackssquare", + "source": "moveordering_moveordering", + "target": "moveordering_moveordering_attackssquare", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L169", + "weight": 1.0, + "_src": "moveordering_moveordering", + "_tgt": "moveordering_moveordering_clearline", + "source": "moveordering_moveordering", + "target": "moveordering_moveordering_clearline", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L175", + "weight": 1.0, + "_src": "moveordering_moveordering", + "_tgt": "moveordering_moveordering_pathclear", + "source": "moveordering_moveordering", + "target": "moveordering_moveordering_pathclear", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L182", + "weight": 1.0, + "_src": "moveordering_moveordering", + "_tgt": "moveordering_moveordering_promotionpiecetype", + "source": "moveordering_moveordering", + "target": "moveordering_moveordering_promotionpiecetype", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L16", + "weight": 1.0, + "_src": "moveordering_orderingcontext", + "_tgt": "moveordering_orderingcontext_addkillermove", + "source": "moveordering_orderingcontext", + "target": "moveordering_orderingcontext_addkillermove", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L21", + "weight": 1.0, + "_src": "moveordering_orderingcontext", + "_tgt": "moveordering_orderingcontext_getkillermoves", + "source": "moveordering_orderingcontext", + "target": "moveordering_orderingcontext_getkillermoves", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L24", + "weight": 1.0, + "_src": "moveordering_orderingcontext", + "_tgt": "moveordering_orderingcontext_addhistory", + "source": "moveordering_orderingcontext", + "target": "moveordering_orderingcontext_addhistory", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L28", + "weight": 1.0, + "_src": "moveordering_orderingcontext", + "_tgt": "moveordering_orderingcontext_gethistory", + "source": "moveordering_orderingcontext", + "target": "moveordering_orderingcontext_gethistory", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L31", + "weight": 1.0, + "_src": "moveordering_orderingcontext", + "_tgt": "moveordering_orderingcontext_clear", + "source": "moveordering_orderingcontext", + "target": "moveordering_orderingcontext_clear", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L63", + "weight": 1.0, + "_src": "moveordering_moveordering_scorequietmove", + "_tgt": "moveordering_orderingcontext_getkillermoves", + "source": "moveordering_orderingcontext_getkillermoves", + "target": "moveordering_moveordering_scorequietmove", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L66", + "weight": 1.0, + "_src": "moveordering_moveordering_scorequietmove", + "_tgt": "moveordering_orderingcontext_gethistory", + "source": "moveordering_orderingcontext_gethistory", + "target": "moveordering_moveordering_scorequietmove", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L46", + "weight": 1.0, + "_src": "moveordering_moveordering_score", + "_tgt": "moveordering_moveordering_promotioncapturebonus", + "source": "moveordering_moveordering_score", + "target": "moveordering_moveordering_promotioncapturebonus", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L48", + "weight": 1.0, + "_src": "moveordering_moveordering_score", + "_tgt": "moveordering_moveordering_capturescore", + "source": "moveordering_moveordering_score", + "target": "moveordering_moveordering_capturescore", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L51", + "weight": 1.0, + "_src": "moveordering_moveordering_score", + "_tgt": "moveordering_moveordering_scorequietmove", + "source": "moveordering_moveordering_score", + "target": "moveordering_moveordering_scorequietmove", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L60", + "weight": 1.0, + "_src": "moveordering_moveordering_sort", + "_tgt": "moveordering_moveordering_score", + "source": "moveordering_moveordering_score", + "target": "moveordering_moveordering_sort", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L70", + "weight": 1.0, + "_src": "moveordering_moveordering_promotioncapturebonus", + "_tgt": "moveordering_moveordering_iscapture", + "source": "moveordering_moveordering_promotioncapturebonus", + "target": "moveordering_moveordering_iscapture", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L70", + "weight": 1.0, + "_src": "moveordering_moveordering_promotioncapturebonus", + "_tgt": "moveordering_moveordering_capturescore", + "source": "moveordering_moveordering_promotioncapturebonus", + "target": "moveordering_moveordering_capturescore", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L73", + "weight": 1.0, + "_src": "moveordering_moveordering_capturescore", + "_tgt": "moveordering_moveordering_staticexchange", + "source": "moveordering_moveordering_capturescore", + "target": "moveordering_moveordering_staticexchange", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L75", + "weight": 1.0, + "_src": "moveordering_moveordering_capturescore", + "_tgt": "moveordering_moveordering_mvvlva", + "source": "moveordering_moveordering_capturescore", + "target": "moveordering_moveordering_mvvlva", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L78", + "weight": 1.0, + "_src": "moveordering_moveordering_mvvlva", + "_tgt": "moveordering_moveordering_victimvalue", + "source": "moveordering_moveordering_mvvlva", + "target": "moveordering_moveordering_victimvalue", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L78", + "weight": 1.0, + "_src": "moveordering_moveordering_mvvlva", + "_tgt": "moveordering_moveordering_attackervalue", + "source": "moveordering_moveordering_mvvlva", + "target": "moveordering_moveordering_attackervalue", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L108", + "weight": 1.0, + "_src": "moveordering_moveordering_staticexchange", + "_tgt": "moveordering_moveordering_victimvalue", + "source": "moveordering_moveordering_victimvalue", + "target": "moveordering_moveordering_staticexchange", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L111", + "weight": 1.0, + "_src": "moveordering_moveordering_staticexchange", + "_tgt": "moveordering_moveordering_piecevalue", + "source": "moveordering_moveordering_piecevalue", + "target": "moveordering_moveordering_staticexchange", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L126", + "weight": 1.0, + "_src": "moveordering_moveordering_exchangegain", + "_tgt": "moveordering_moveordering_piecevalue", + "source": "moveordering_moveordering_piecevalue", + "target": "moveordering_moveordering_exchangegain", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L148", + "weight": 1.0, + "_src": "moveordering_moveordering_leastvaluableattacker", + "_tgt": "moveordering_moveordering_piecevalue", + "source": "moveordering_moveordering_piecevalue", + "target": "moveordering_moveordering_leastvaluableattacker", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L105", + "weight": 1.0, + "_src": "moveordering_moveordering_staticexchange", + "_tgt": "moveordering_moveordering_iscapture", + "source": "moveordering_moveordering_iscapture", + "target": "moveordering_moveordering_staticexchange", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L109", + "weight": 1.0, + "_src": "moveordering_moveordering_staticexchange", + "_tgt": "moveordering_moveordering_movedpieceaftermove", + "source": "moveordering_moveordering_staticexchange", + "target": "moveordering_moveordering_movedpieceaftermove", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L110", + "weight": 1.0, + "_src": "moveordering_moveordering_staticexchange", + "_tgt": "moveordering_moveordering_applyseemove", + "source": "moveordering_moveordering_staticexchange", + "target": "moveordering_moveordering_applyseemove", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L111", + "weight": 1.0, + "_src": "moveordering_moveordering_staticexchange", + "_tgt": "moveordering_moveordering_exchangegain", + "source": "moveordering_moveordering_staticexchange", + "target": "moveordering_moveordering_exchangegain", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L116", + "weight": 1.0, + "_src": "moveordering_moveordering_movedpieceaftermove", + "_tgt": "moveordering_moveordering_promotionpiecetype", + "source": "moveordering_moveordering_movedpieceaftermove", + "target": "moveordering_moveordering_promotionpiecetype", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L121", + "weight": 1.0, + "_src": "moveordering_moveordering_exchangegain", + "_tgt": "moveordering_moveordering_leastvaluableattacker", + "source": "moveordering_moveordering_exchangegain", + "target": "moveordering_moveordering_leastvaluableattacker", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L122", + "weight": 1.0, + "_src": "moveordering_moveordering_exchangegain", + "_tgt": "moveordering_moveordering_resolvegain", + "source": "moveordering_moveordering_exchangegain", + "target": "moveordering_moveordering_resolvegain", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L145", + "weight": 1.0, + "_src": "moveordering_moveordering_leastvaluableattacker", + "_tgt": "moveordering_moveordering_attackssquare", + "source": "moveordering_moveordering_leastvaluableattacker", + "target": "moveordering_moveordering_attackssquare", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L162", + "weight": 1.0, + "_src": "moveordering_moveordering_attackssquare", + "_tgt": "moveordering_moveordering_clearline", + "source": "moveordering_moveordering_attackssquare", + "target": "moveordering_moveordering_clearline", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala", + "source_location": "L173", + "weight": 1.0, + "_src": "moveordering_moveordering_clearline", + "_tgt": "moveordering_moveordering_pathclear", + "source": "moveordering_moveordering_clearline", + "target": "moveordering_moveordering_pathclear", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/TranspositionTable.scala", + "source_location": "L10", + "weight": 1.0, + "_src": "modules_bot_src_main_scala_de_nowchess_bot_logic_transpositiontable_scala", + "_tgt": "transpositiontable_ttentry", + "source": "modules_bot_src_main_scala_de_nowchess_bot_logic_transpositiontable_scala", + "target": "transpositiontable_ttentry", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/TranspositionTable.scala", + "source_location": "L18", + "weight": 1.0, + "_src": "modules_bot_src_main_scala_de_nowchess_bot_logic_transpositiontable_scala", + "_tgt": "transpositiontable_transpositiontable", + "source": "modules_bot_src_main_scala_de_nowchess_bot_logic_transpositiontable_scala", + "target": "transpositiontable_transpositiontable", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/TranspositionTable.scala", + "source_location": "L24", + "weight": 1.0, + "_src": "transpositiontable_transpositiontable", + "_tgt": "transpositiontable_transpositiontable_probe", + "source": "transpositiontable_transpositiontable", + "target": "transpositiontable_transpositiontable_probe", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/TranspositionTable.scala", + "source_location": "L30", + "weight": 1.0, + "_src": "transpositiontable_transpositiontable", + "_tgt": "transpositiontable_transpositiontable_store", + "source": "transpositiontable_transpositiontable", + "target": "transpositiontable_transpositiontable_store", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/logic/TranspositionTable.scala", + "source_location": "L36", + "weight": 1.0, + "_src": "transpositiontable_transpositiontable", + "_tgt": "transpositiontable_transpositiontable_clear", + "source": "transpositiontable_transpositiontable", + "target": "transpositiontable_transpositiontable_clear", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", + "source_location": "L19", + "weight": 1.0, + "_src": "modules_bot_src_main_scala_de_nowchess_bot_util_polyglotbook_scala", + "_tgt": "polyglotbook_polyglotbook", + "source": "modules_bot_src_main_scala_de_nowchess_bot_util_polyglotbook_scala", + "target": "polyglotbook_polyglotbook", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", + "source_location": "L137", + "weight": 1.0, + "_src": "modules_bot_src_main_scala_de_nowchess_bot_util_polyglotbook_scala", + "_tgt": "polyglotbook_bookentry", + "source": "modules_bot_src_main_scala_de_nowchess_bot_util_polyglotbook_scala", + "target": "polyglotbook_bookentry", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", + "source_location": "L34", + "weight": 1.0, + "_src": "polyglotbook_polyglotbook", + "_tgt": "polyglotbook_polyglotbook_probe", + "source": "polyglotbook_polyglotbook", + "target": "polyglotbook_polyglotbook_probe", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", + "source_location": "L44", + "weight": 1.0, + "_src": "polyglotbook_polyglotbook", + "_tgt": "polyglotbook_polyglotbook_loadbookfile", + "source": "polyglotbook_polyglotbook", + "target": "polyglotbook_polyglotbook_loadbookfile", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", + "source_location": "L71", + "weight": 1.0, + "_src": "polyglotbook_polyglotbook", + "_tgt": "polyglotbook_polyglotbook_decodemove", + "source": "polyglotbook_polyglotbook", + "target": "polyglotbook_polyglotbook_decodemove", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", + "source_location": "L97", + "weight": 1.0, + "_src": "polyglotbook_polyglotbook", + "_tgt": "polyglotbook_polyglotbook_iskingmove", + "source": "polyglotbook_polyglotbook", + "target": "polyglotbook_polyglotbook_iskingmove", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", + "source_location": "L102", + "weight": 1.0, + "_src": "polyglotbook_polyglotbook", + "_tgt": "polyglotbook_polyglotbook_isrooksquare", + "source": "polyglotbook_polyglotbook", + "target": "polyglotbook_polyglotbook_isrooksquare", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", + "source_location": "L115", + "weight": 1.0, + "_src": "polyglotbook_polyglotbook", + "_tgt": "polyglotbook_polyglotbook_decodecastling", + "source": "polyglotbook_polyglotbook", + "target": "polyglotbook_polyglotbook_decodecastling", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", + "source_location": "L123", + "weight": 1.0, + "_src": "polyglotbook_polyglotbook", + "_tgt": "polyglotbook_polyglotbook_weightedrandom", + "source": "polyglotbook_polyglotbook", + "target": "polyglotbook_polyglotbook_weightedrandom", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", + "source_location": "L40", + "weight": 1.0, + "_src": "polyglotbook_polyglotbook_probe", + "_tgt": "polyglotbook_polyglotbook_weightedrandom", + "source": "polyglotbook_polyglotbook_probe", + "target": "polyglotbook_polyglotbook_weightedrandom", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", + "source_location": "L41", + "weight": 1.0, + "_src": "polyglotbook_polyglotbook_probe", + "_tgt": "polyglotbook_polyglotbook_decodemove", + "source": "polyglotbook_polyglotbook_probe", + "target": "polyglotbook_polyglotbook_decodemove", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", + "source_location": "L54", + "weight": 1.0, + "_src": "polyglotbook_polyglotbook_loadbookfile", + "_tgt": "polyglotbook_bookentry", + "source": "polyglotbook_polyglotbook_loadbookfile", + "target": "polyglotbook_bookentry", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", + "source_location": "L83", + "weight": 1.0, + "_src": "polyglotbook_polyglotbook_decodemove", + "_tgt": "polyglotbook_polyglotbook_iskingmove", + "source": "polyglotbook_polyglotbook_decodemove", + "target": "polyglotbook_polyglotbook_iskingmove", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", + "source_location": "L83", + "weight": 1.0, + "_src": "polyglotbook_polyglotbook_decodemove", + "_tgt": "polyglotbook_polyglotbook_isrooksquare", + "source": "polyglotbook_polyglotbook_decodemove", + "target": "polyglotbook_polyglotbook_isrooksquare", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala", + "source_location": "L83", + "weight": 1.0, + "_src": "polyglotbook_polyglotbook_decodemove", + "_tgt": "polyglotbook_polyglotbook_decodecastling", + "source": "polyglotbook_polyglotbook_decodemove", + "target": "polyglotbook_polyglotbook_decodecastling", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala", + "source_location": "L6", + "weight": 1.0, + "_src": "modules_bot_src_main_scala_de_nowchess_bot_util_polyglothash_scala", + "_tgt": "polyglothash_polyglothash", + "source": "modules_bot_src_main_scala_de_nowchess_bot_util_polyglothash_scala", + "target": "polyglothash_polyglothash", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala", + "source_location": "L169", + "weight": 1.0, + "_src": "polyglothash_polyglothash", + "_tgt": "polyglothash_polyglothash_hash", + "source": "polyglothash_polyglothash", + "target": "polyglothash_polyglothash_hash", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala", + "source_location": "L182", + "weight": 1.0, + "_src": "polyglothash_polyglothash", + "_tgt": "polyglothash_polyglothash_pieceindex", + "source": "polyglothash_polyglothash", + "target": "polyglothash_polyglothash_pieceindex", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala", + "source_location": "L193", + "weight": 1.0, + "_src": "polyglothash_polyglothash", + "_tgt": "polyglothash_polyglothash_squareindex", + "source": "polyglothash_polyglothash", + "target": "polyglothash_polyglothash_squareindex", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala", + "source_location": "L196", + "weight": 1.0, + "_src": "polyglothash_polyglothash", + "_tgt": "polyglothash_polyglothash_cancaptureenpassant", + "source": "polyglothash_polyglothash", + "target": "polyglothash_polyglothash_cancaptureenpassant", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala", + "source_location": "L171", + "weight": 1.0, + "_src": "polyglothash_polyglothash_hash", + "_tgt": "polyglothash_polyglothash_pieceindex", + "source": "polyglothash_polyglothash_hash", + "target": "polyglothash_polyglothash_pieceindex", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala", + "source_location": "L171", + "weight": 1.0, + "_src": "polyglothash_polyglothash_hash", + "_tgt": "polyglothash_polyglothash_squareindex", + "source": "polyglothash_polyglothash_hash", + "target": "polyglothash_polyglothash_squareindex", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala", + "source_location": "L178", + "weight": 1.0, + "_src": "polyglothash_polyglothash_hash", + "_tgt": "polyglothash_polyglothash_cancaptureenpassant", + "source": "polyglothash_polyglothash_hash", + "target": "polyglothash_polyglothash_cancaptureenpassant", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L9", + "weight": 1.0, + "_src": "modules_bot_src_main_scala_de_nowchess_bot_util_zobristhash_scala", + "_tgt": "zobristhash_zobristhash", + "source": "modules_bot_src_main_scala_de_nowchess_bot_util_zobristhash_scala", + "target": "zobristhash_zobristhash", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L31", + "weight": 1.0, + "_src": "zobristhash_zobristhash", + "_tgt": "zobristhash_zobristhash_hash", + "source": "zobristhash_zobristhash", + "target": "zobristhash_zobristhash_hash", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L45", + "weight": 1.0, + "_src": "zobristhash_zobristhash", + "_tgt": "zobristhash_zobristhash_nexthash", + "source": "zobristhash_zobristhash", + "target": "zobristhash_zobristhash_nexthash", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L59", + "weight": 1.0, + "_src": "zobristhash_zobristhash", + "_tgt": "zobristhash_zobristhash_applynormaldelta", + "source": "zobristhash_zobristhash", + "target": "zobristhash_zobristhash_applynormaldelta", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L66", + "weight": 1.0, + "_src": "zobristhash_zobristhash", + "_tgt": "zobristhash_zobristhash_applypromotiondelta", + "source": "zobristhash_zobristhash", + "target": "zobristhash_zobristhash_applypromotiondelta", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L73", + "weight": 1.0, + "_src": "zobristhash_zobristhash", + "_tgt": "zobristhash_zobristhash_applyenpassantdelta", + "source": "zobristhash_zobristhash", + "target": "zobristhash_zobristhash_applyenpassantdelta", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L81", + "weight": 1.0, + "_src": "zobristhash_zobristhash", + "_tgt": "zobristhash_zobristhash_applycastledelta", + "source": "zobristhash_zobristhash", + "target": "zobristhash_zobristhash_applycastledelta", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L102", + "weight": 1.0, + "_src": "zobristhash_zobristhash", + "_tgt": "zobristhash_zobristhash_promotedpiecetype", + "source": "zobristhash_zobristhash", + "target": "zobristhash_zobristhash_promotedpiecetype", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L108", + "weight": 1.0, + "_src": "zobristhash_zobristhash", + "_tgt": "zobristhash_zobristhash_togglecastling", + "source": "zobristhash_zobristhash", + "target": "zobristhash_zobristhash_togglecastling", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L114", + "weight": 1.0, + "_src": "zobristhash_zobristhash", + "_tgt": "zobristhash_zobristhash_toggleenpassant", + "source": "zobristhash_zobristhash", + "target": "zobristhash_zobristhash_toggleenpassant", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L118", + "weight": 1.0, + "_src": "zobristhash_zobristhash", + "_tgt": "zobristhash_zobristhash_piecekey", + "source": "zobristhash_zobristhash", + "target": "zobristhash_zobristhash_piecekey", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L47", + "weight": 1.0, + "_src": "zobristhash_zobristhash_nexthash", + "_tgt": "zobristhash_zobristhash_togglecastling", + "source": "zobristhash_zobristhash_nexthash", + "target": "zobristhash_zobristhash_togglecastling", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L48", + "weight": 1.0, + "_src": "zobristhash_zobristhash_nexthash", + "_tgt": "zobristhash_zobristhash_toggleenpassant", + "source": "zobristhash_zobristhash_nexthash", + "target": "zobristhash_zobristhash_toggleenpassant", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L51", + "weight": 1.0, + "_src": "zobristhash_zobristhash_nexthash", + "_tgt": "zobristhash_zobristhash_applycastledelta", + "source": "zobristhash_zobristhash_nexthash", + "target": "zobristhash_zobristhash_applycastledelta", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L53", + "weight": 1.0, + "_src": "zobristhash_zobristhash_nexthash", + "_tgt": "zobristhash_zobristhash_applyenpassantdelta", + "source": "zobristhash_zobristhash_nexthash", + "target": "zobristhash_zobristhash_applyenpassantdelta", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L55", + "weight": 1.0, + "_src": "zobristhash_zobristhash_nexthash", + "_tgt": "zobristhash_zobristhash_applypromotiondelta", + "source": "zobristhash_zobristhash_nexthash", + "target": "zobristhash_zobristhash_applypromotiondelta", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L57", + "weight": 1.0, + "_src": "zobristhash_zobristhash_nexthash", + "_tgt": "zobristhash_zobristhash_applynormaldelta", + "source": "zobristhash_zobristhash_nexthash", + "target": "zobristhash_zobristhash_applynormaldelta", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L61", + "weight": 1.0, + "_src": "zobristhash_zobristhash_applynormaldelta", + "_tgt": "zobristhash_zobristhash_piecekey", + "source": "zobristhash_zobristhash_applynormaldelta", + "target": "zobristhash_zobristhash_piecekey", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L68", + "weight": 1.0, + "_src": "zobristhash_zobristhash_applypromotiondelta", + "_tgt": "zobristhash_zobristhash_piecekey", + "source": "zobristhash_zobristhash_applypromotiondelta", + "target": "zobristhash_zobristhash_piecekey", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L70", + "weight": 1.0, + "_src": "zobristhash_zobristhash_applypromotiondelta", + "_tgt": "zobristhash_zobristhash_promotedpiecetype", + "source": "zobristhash_zobristhash_applypromotiondelta", + "target": "zobristhash_zobristhash_promotedpiecetype", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L76", + "weight": 1.0, + "_src": "zobristhash_zobristhash_applyenpassantdelta", + "_tgt": "zobristhash_zobristhash_piecekey", + "source": "zobristhash_zobristhash_applyenpassantdelta", + "target": "zobristhash_zobristhash_piecekey", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala", + "source_location": "L100", + "weight": 1.0, + "_src": "zobristhash_zobristhash_applycastledelta", + "_tgt": "zobristhash_zobristhash_piecekey", + "source": "zobristhash_zobristhash_applycastledelta", + "target": "zobristhash_zobristhash_piecekey", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", + "source_location": "L13", + "weight": 1.0, + "_src": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", + "_tgt": "alphabetasearchtest_alphabetasearchtest", + "source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", + "target": "alphabetasearchtest_alphabetasearchtest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", + "source_location": "L154", + "weight": 1.0, + "_src": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", + "_tgt": "alphabetasearchtest_candidatemoves", + "source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", + "target": "alphabetasearchtest_candidatemoves", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", + "source_location": "L155", + "weight": 1.0, + "_src": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", + "_tgt": "alphabetasearchtest_legalmoves", + "source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", + "target": "alphabetasearchtest_legalmoves", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", + "source_location": "L156", + "weight": 1.0, + "_src": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", + "_tgt": "alphabetasearchtest_alllegalmoves", + "source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", + "target": "alphabetasearchtest_alllegalmoves", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", + "source_location": "L157", + "weight": 1.0, + "_src": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", + "_tgt": "alphabetasearchtest_ischeck", + "source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", + "target": "alphabetasearchtest_ischeck", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", + "source_location": "L158", + "weight": 1.0, + "_src": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", + "_tgt": "alphabetasearchtest_ischeckmate", + "source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", + "target": "alphabetasearchtest_ischeckmate", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", + "source_location": "L159", + "weight": 1.0, + "_src": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", + "_tgt": "alphabetasearchtest_isstalemate", + "source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", + "target": "alphabetasearchtest_isstalemate", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", + "source_location": "L160", + "weight": 1.0, + "_src": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", + "_tgt": "alphabetasearchtest_isinsufficientmaterial", + "source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", + "target": "alphabetasearchtest_isinsufficientmaterial", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", + "source_location": "L161", + "weight": 1.0, + "_src": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", + "_tgt": "alphabetasearchtest_isfiftymoverule", + "source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", + "target": "alphabetasearchtest_isfiftymoverule", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala", + "source_location": "L162", + "weight": 1.0, + "_src": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", + "_tgt": "alphabetasearchtest_applymove", + "source": "modules_bot_src_test_scala_de_nowchess_bot_alphabetasearchtest_scala", + "target": "alphabetasearchtest_applymove", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/BotControllerTest.scala", + "source_location": "L6", + "weight": 1.0, + "_src": "modules_bot_src_test_scala_de_nowchess_bot_botcontrollertest_scala", + "_tgt": "botcontrollertest_botcontrollertest", + "source": "modules_bot_src_test_scala_de_nowchess_bot_botcontrollertest_scala", + "target": "botcontrollertest_botcontrollertest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/BotDifficultyTest.scala", + "source_location": "L6", + "weight": 1.0, + "_src": "modules_bot_src_test_scala_de_nowchess_bot_botdifficultytest_scala", + "_tgt": "botdifficultytest_botdifficultytest", + "source": "modules_bot_src_test_scala_de_nowchess_bot_botdifficultytest_scala", + "target": "botdifficultytest_botdifficultytest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", + "source_location": "L12", + "weight": 1.0, + "_src": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", + "_tgt": "classicalbottest_classicalbottest", + "source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", + "target": "classicalbottest_classicalbottest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", + "source_location": "L59", + "weight": 1.0, + "_src": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", + "_tgt": "classicalbottest_candidatemoves", + "source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", + "target": "classicalbottest_candidatemoves", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", + "source_location": "L60", + "weight": 1.0, + "_src": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", + "_tgt": "classicalbottest_legalmoves", + "source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", + "target": "classicalbottest_legalmoves", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", + "source_location": "L61", + "weight": 1.0, + "_src": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", + "_tgt": "classicalbottest_alllegalmoves", + "source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", + "target": "classicalbottest_alllegalmoves", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", + "source_location": "L62", + "weight": 1.0, + "_src": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", + "_tgt": "classicalbottest_ischeck", + "source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", + "target": "classicalbottest_ischeck", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", + "source_location": "L63", + "weight": 1.0, + "_src": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", + "_tgt": "classicalbottest_ischeckmate", + "source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", + "target": "classicalbottest_ischeckmate", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", + "source_location": "L64", + "weight": 1.0, + "_src": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", + "_tgt": "classicalbottest_isstalemate", + "source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", + "target": "classicalbottest_isstalemate", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", + "source_location": "L65", + "weight": 1.0, + "_src": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", + "_tgt": "classicalbottest_isinsufficientmaterial", + "source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", + "target": "classicalbottest_isinsufficientmaterial", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", + "source_location": "L66", + "weight": 1.0, + "_src": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", + "_tgt": "classicalbottest_isfiftymoverule", + "source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", + "target": "classicalbottest_isfiftymoverule", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala", + "source_location": "L67", + "weight": 1.0, + "_src": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", + "_tgt": "classicalbottest_applymove", + "source": "modules_bot_src_test_scala_de_nowchess_bot_classicalbottest_scala", + "target": "classicalbottest_applymove", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/EvaluationTest.scala", + "source_location": "L10", + "weight": 1.0, + "_src": "modules_bot_src_test_scala_de_nowchess_bot_evaluationtest_scala", + "_tgt": "evaluationtest_evaluationtest", + "source": "modules_bot_src_test_scala_de_nowchess_bot_evaluationtest_scala", + "target": "evaluationtest_evaluationtest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/MoveOrderingTest.scala", + "source_location": "L10", + "weight": 1.0, + "_src": "modules_bot_src_test_scala_de_nowchess_bot_moveorderingtest_scala", + "_tgt": "moveorderingtest_moveorderingtest", + "source": "modules_bot_src_test_scala_de_nowchess_bot_moveorderingtest_scala", + "target": "moveorderingtest_moveorderingtest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/PolyglotBookTest.scala", + "source_location": "L16", + "weight": 1.0, + "_src": "modules_bot_src_test_scala_de_nowchess_bot_polyglotbooktest_scala", + "_tgt": "polyglotbooktest_polyglotbooktest", + "source": "modules_bot_src_test_scala_de_nowchess_bot_polyglotbooktest_scala", + "target": "polyglotbooktest_polyglotbooktest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/PolyglotHashTest.scala", + "source_location": "L10", + "weight": 1.0, + "_src": "modules_bot_src_test_scala_de_nowchess_bot_polyglothashtest_scala", + "_tgt": "polyglothashtest_polyglothashtest", + "source": "modules_bot_src_test_scala_de_nowchess_bot_polyglothashtest_scala", + "target": "polyglothashtest_polyglothashtest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/TranspositionTableTest.scala", + "source_location": "L9", + "weight": 1.0, + "_src": "modules_bot_src_test_scala_de_nowchess_bot_transpositiontabletest_scala", + "_tgt": "transpositiontabletest_transpositiontabletest", + "source": "modules_bot_src_test_scala_de_nowchess_bot_transpositiontabletest_scala", + "target": "transpositiontabletest_transpositiontabletest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/bot/src/test/scala/de/nowchess/bot/ZobristHashTest.scala", + "source_location": "L11", + "weight": 1.0, + "_src": "modules_bot_src_test_scala_de_nowchess_bot_zobristhashtest_scala", + "_tgt": "zobristhashtest_zobristhashtest", + "source": "modules_bot_src_test_scala_de_nowchess_bot_zobristhashtest_scala", + "target": "zobristhashtest_zobristhashtest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L21", + "weight": 1.0, + "_src": "modules_core_src_main_scala_de_nowchess_chess_command_command_scala", + "_tgt": "command_movecommand", + "source": "modules_core_src_main_scala_de_nowchess_chess_command_command_scala", + "target": "command_movecommand", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L39", + "weight": 1.0, + "_src": "modules_core_src_main_scala_de_nowchess_chess_command_command_scala", + "_tgt": "command_moveresult", + "source": "modules_core_src_main_scala_de_nowchess_chess_command_command_scala", + "target": "command_moveresult", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L40", + "weight": 1.0, + "_src": "modules_core_src_main_scala_de_nowchess_chess_command_command_scala", + "_tgt": "command_successful", + "source": "modules_core_src_main_scala_de_nowchess_chess_command_command_scala", + "target": "command_successful", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L41", + "weight": 1.0, + "_src": "modules_core_src_main_scala_de_nowchess_chess_command_command_scala", + "_tgt": "command_invalidformat", + "source": "modules_core_src_main_scala_de_nowchess_chess_command_command_scala", + "target": "command_invalidformat", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L42", + "weight": 1.0, + "_src": "modules_core_src_main_scala_de_nowchess_chess_command_command_scala", + "_tgt": "command_invalidmove", + "source": "modules_core_src_main_scala_de_nowchess_chess_command_command_scala", + "target": "command_invalidmove", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L45", + "weight": 1.0, + "_src": "modules_core_src_main_scala_de_nowchess_chess_command_command_scala", + "_tgt": "command_quitcommand", + "source": "modules_core_src_main_scala_de_nowchess_chess_command_command_scala", + "target": "command_quitcommand", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L51", + "weight": 1.0, + "_src": "modules_core_src_main_scala_de_nowchess_chess_command_command_scala", + "_tgt": "command_resetcommand", + "source": "modules_core_src_main_scala_de_nowchess_chess_command_command_scala", + "target": "command_resetcommand", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L29", + "weight": 1.0, + "_src": "command_movecommand", + "_tgt": "command_movecommand_execute", + "source": "command_movecommand", + "target": "command_movecommand_execute", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L32", + "weight": 1.0, + "_src": "command_movecommand", + "_tgt": "command_movecommand_undo", + "source": "command_movecommand", + "target": "command_movecommand_undo", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L35", + "weight": 1.0, + "_src": "command_movecommand", + "_tgt": "command_movecommand_description", + "source": "command_movecommand", + "target": "command_movecommand_description", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L46", + "weight": 1.0, + "_src": "command_quitcommand", + "_tgt": "command_quitcommand_execute", + "source": "command_quitcommand", + "target": "command_quitcommand_execute", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L47", + "weight": 1.0, + "_src": "command_quitcommand", + "_tgt": "command_quitcommand_undo", + "source": "command_quitcommand", + "target": "command_quitcommand_undo", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L48", + "weight": 1.0, + "_src": "command_quitcommand", + "_tgt": "command_quitcommand_description", + "source": "command_quitcommand", + "target": "command_quitcommand_description", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L55", + "weight": 1.0, + "_src": "command_resetcommand", + "_tgt": "command_resetcommand_execute", + "source": "command_resetcommand", + "target": "command_resetcommand_execute", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L57", + "weight": 1.0, + "_src": "command_resetcommand", + "_tgt": "command_resetcommand_undo", + "source": "command_resetcommand", + "target": "command_resetcommand_undo", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/Command.scala", + "source_location": "L60", + "weight": 1.0, + "_src": "command_resetcommand", + "_tgt": "command_resetcommand_description", + "source": "command_resetcommand", + "target": "command_resetcommand_description", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", + "source_location": "L4", + "weight": 1.0, + "_src": "modules_core_src_main_scala_de_nowchess_chess_command_commandinvoker_scala", + "_tgt": "commandinvoker_commandinvoker", + "source": "modules_core_src_main_scala_de_nowchess_chess_command_commandinvoker_scala", + "target": "commandinvoker_commandinvoker", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", + "source_location": "L11", + "weight": 1.0, + "_src": "commandinvoker_commandinvoker", + "_tgt": "commandinvoker_commandinvoker_execute", + "source": "commandinvoker_commandinvoker", + "target": "commandinvoker_commandinvoker_execute", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", + "source_location": "L22", + "weight": 1.0, + "_src": "commandinvoker_commandinvoker", + "_tgt": "commandinvoker_commandinvoker_undo", + "source": "commandinvoker_commandinvoker", + "target": "commandinvoker_commandinvoker_undo", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", + "source_location": "L33", + "weight": 1.0, + "_src": "commandinvoker_commandinvoker", + "_tgt": "commandinvoker_commandinvoker_redo", + "source": "commandinvoker_commandinvoker", + "target": "commandinvoker_commandinvoker_redo", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", + "source_location": "L44", + "weight": 1.0, + "_src": "commandinvoker_commandinvoker", + "_tgt": "commandinvoker_commandinvoker_history", + "source": "commandinvoker_commandinvoker", + "target": "commandinvoker_commandinvoker_history", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", + "source_location": "L49", + "weight": 1.0, + "_src": "commandinvoker_commandinvoker", + "_tgt": "commandinvoker_commandinvoker_getcurrentindex", + "source": "commandinvoker_commandinvoker", + "target": "commandinvoker_commandinvoker_getcurrentindex", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", + "source_location": "L54", + "weight": 1.0, + "_src": "commandinvoker_commandinvoker", + "_tgt": "commandinvoker_commandinvoker_clear", + "source": "commandinvoker_commandinvoker", + "target": "commandinvoker_commandinvoker_clear", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", + "source_location": "L60", + "weight": 1.0, + "_src": "commandinvoker_commandinvoker", + "_tgt": "commandinvoker_commandinvoker_canundo", + "source": "commandinvoker_commandinvoker", + "target": "commandinvoker_commandinvoker_canundo", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", + "source_location": "L65", + "weight": 1.0, + "_src": "commandinvoker_commandinvoker", + "_tgt": "commandinvoker_commandinvoker_canredo", + "source": "commandinvoker_commandinvoker", + "target": "commandinvoker_commandinvoker_canredo", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/command/CommandInvoker.scala", + "source_location": "L36", + "weight": 1.0, + "_src": "commandinvoker_commandinvoker_redo", + "_tgt": "commandinvoker_commandinvoker_execute", + "source": "commandinvoker_commandinvoker_execute", + "target": "commandinvoker_commandinvoker_redo", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/controller/Parser.scala", + "source_location": "L5", + "weight": 1.0, + "_src": "modules_core_src_main_scala_de_nowchess_chess_controller_parser_scala", + "_tgt": "parser_parser", + "source": "modules_core_src_main_scala_de_nowchess_chess_controller_parser_scala", + "target": "parser_parser", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/controller/Parser.scala", + "source_location": "L10", + "weight": 1.0, + "_src": "parser_parser", + "_tgt": "parser_parser_parsemove", + "source": "parser_parser", + "target": "parser_parser_parsemove", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/controller/Parser.scala", + "source_location": "L20", + "weight": 1.0, + "_src": "parser_parser", + "_tgt": "parser_parser_parsesquare", + "source": "parser_parser", + "target": "parser_parser_parsesquare", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/controller/Parser.scala", + "source_location": "L16", + "weight": 1.0, + "_src": "parser_parser_parsemove", + "_tgt": "parser_parser_parsesquare", + "source": "parser_parser_parsemove", + "target": "parser_parser_parsesquare", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L18", + "weight": 1.0, + "_src": "modules_core_src_main_scala_de_nowchess_chess_engine_gameengine_scala", + "_tgt": "gameengine_gameengine", + "source": "modules_core_src_main_scala_de_nowchess_chess_engine_gameengine_scala", + "target": "gameengine_gameengine", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L27", + "weight": 1.0, + "_src": "modules_core_src_main_scala_de_nowchess_chess_engine_gameengine_scala", + "_tgt": "gameengine_pendingpromotion", + "source": "modules_core_src_main_scala_de_nowchess_chess_engine_gameengine_scala", + "target": "gameengine_pendingpromotion", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L37", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_ispendingpromotion", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_ispendingpromotion", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L42", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_setopponentbot", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_setopponentbot", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L48", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_clearopponentbot", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_clearopponentbot", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L54", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_board", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_board", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L55", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_turn", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_turn", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L56", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_context", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_context", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L59", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_canundo", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_canundo", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L62", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_canredo", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_canredo", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L65", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_commandhistory", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_commandhistory", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L70", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_processuserinput", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_processuserinput", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L110", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_handleparsedmove", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_handleparsedmove", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L131", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_ispromotionmove", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_ispromotionmove", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L139", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_completepromotion", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_completepromotion", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L153", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_undo", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_undo", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L156", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_redo", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_redo", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L161", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_loadgame", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_loadgame", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L170", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_replaygame", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_replaygame", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L181", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_replaymoves", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_replaymoves", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L188", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_applyreplaymove", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_applyreplaymove", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L199", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_exportgame", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_exportgame", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L204", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_loadposition", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_loadposition", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L212", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_reset", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_reset", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L220", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_executemove", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_executemove", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L263", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_translatemovetonotation", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_translatemovetonotation", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L271", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_enpassantnotation", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_enpassantnotation", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L274", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_promotionnotation", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_promotionnotation", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L282", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_normalmovenotation", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_normalmovenotation", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L292", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_piecenotation", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_piecenotation", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L301", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_computecaptured", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_computecaptured", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L315", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_requestbotmoveifneeded", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_requestbotmoveifneeded", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L325", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_applybotmove", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_applybotmove", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L350", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_handlebotnomove", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_handlebotnomove", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L359", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_performundo", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_performundo", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L369", + "weight": 1.0, + "_src": "gameengine_gameengine", + "_tgt": "gameengine_gameengine_performredo", + "source": "gameengine_gameengine", + "target": "gameengine_gameengine_performredo", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L126", + "weight": 1.0, + "_src": "gameengine_gameengine_handleparsedmove", + "_tgt": "gameengine_pendingpromotion", + "source": "gameengine_pendingpromotion", + "target": "gameengine_gameengine_handleparsedmove", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L77", + "weight": 1.0, + "_src": "gameengine_gameengine_processuserinput", + "_tgt": "gameengine_gameengine_performundo", + "source": "gameengine_gameengine_processuserinput", + "target": "gameengine_gameengine_performundo", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L80", + "weight": 1.0, + "_src": "gameengine_gameengine_processuserinput", + "_tgt": "gameengine_gameengine_performredo", + "source": "gameengine_gameengine_processuserinput", + "target": "gameengine_gameengine_performredo", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L107", + "weight": 1.0, + "_src": "gameengine_gameengine_processuserinput", + "_tgt": "gameengine_gameengine_handleparsedmove", + "source": "gameengine_gameengine_processuserinput", + "target": "gameengine_gameengine_handleparsedmove", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L123", + "weight": 1.0, + "_src": "gameengine_gameengine_handleparsedmove", + "_tgt": "gameengine_gameengine_ispromotionmove", + "source": "gameengine_gameengine_handleparsedmove", + "target": "gameengine_gameengine_ispromotionmove", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L129", + "weight": 1.0, + "_src": "gameengine_gameengine_handleparsedmove", + "_tgt": "gameengine_gameengine_executemove", + "source": "gameengine_gameengine_handleparsedmove", + "target": "gameengine_gameengine_executemove", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L189", + "weight": 1.0, + "_src": "gameengine_gameengine_applyreplaymove", + "_tgt": "gameengine_gameengine_handleparsedmove", + "source": "gameengine_gameengine_handleparsedmove", + "target": "gameengine_gameengine_applyreplaymove", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L148", + "weight": 1.0, + "_src": "gameengine_gameengine_completepromotion", + "_tgt": "gameengine_gameengine_executemove", + "source": "gameengine_gameengine_completepromotion", + "target": "gameengine_gameengine_executemove", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L192", + "weight": 1.0, + "_src": "gameengine_gameengine_applyreplaymove", + "_tgt": "gameengine_gameengine_completepromotion", + "source": "gameengine_gameengine_completepromotion", + "target": "gameengine_gameengine_applyreplaymove", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L340", + "weight": 1.0, + "_src": "gameengine_gameengine_applybotmove", + "_tgt": "gameengine_gameengine_completepromotion", + "source": "gameengine_gameengine_completepromotion", + "target": "gameengine_gameengine_applybotmove", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L365", + "weight": 1.0, + "_src": "gameengine_gameengine_performundo", + "_tgt": "gameengine_gameengine_undo", + "source": "gameengine_gameengine_undo", + "target": "gameengine_gameengine_performundo", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L376", + "weight": 1.0, + "_src": "gameengine_gameengine_performredo", + "_tgt": "gameengine_gameengine_redo", + "source": "gameengine_gameengine_redo", + "target": "gameengine_gameengine_performredo", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L165", + "weight": 1.0, + "_src": "gameengine_gameengine_loadgame", + "_tgt": "gameengine_gameengine_replaygame", + "source": "gameengine_gameengine_loadgame", + "target": "gameengine_gameengine_replaygame", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L179", + "weight": 1.0, + "_src": "gameengine_gameengine_replaygame", + "_tgt": "gameengine_gameengine_replaymoves", + "source": "gameengine_gameengine_replaygame", + "target": "gameengine_gameengine_replaymoves", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L183", + "weight": 1.0, + "_src": "gameengine_gameengine_replaymoves", + "_tgt": "gameengine_gameengine_applyreplaymove", + "source": "gameengine_gameengine_replaymoves", + "target": "gameengine_gameengine_applyreplaymove", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L223", + "weight": 1.0, + "_src": "gameengine_gameengine_executemove", + "_tgt": "gameengine_gameengine_computecaptured", + "source": "gameengine_gameengine_executemove", + "target": "gameengine_gameengine_computecaptured", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L230", + "weight": 1.0, + "_src": "gameengine_gameengine_executemove", + "_tgt": "gameengine_gameengine_translatemovetonotation", + "source": "gameengine_gameengine_executemove", + "target": "gameengine_gameengine_translatemovetonotation", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L261", + "weight": 1.0, + "_src": "gameengine_gameengine_executemove", + "_tgt": "gameengine_gameengine_requestbotmoveifneeded", + "source": "gameengine_gameengine_executemove", + "target": "gameengine_gameengine_requestbotmoveifneeded", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L343", + "weight": 1.0, + "_src": "gameengine_gameengine_applybotmove", + "_tgt": "gameengine_gameengine_executemove", + "source": "gameengine_gameengine_executemove", + "target": "gameengine_gameengine_applybotmove", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L267", + "weight": 1.0, + "_src": "gameengine_gameengine_translatemovetonotation", + "_tgt": "gameengine_gameengine_enpassantnotation", + "source": "gameengine_gameengine_translatemovetonotation", + "target": "gameengine_gameengine_enpassantnotation", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L268", + "weight": 1.0, + "_src": "gameengine_gameengine_translatemovetonotation", + "_tgt": "gameengine_gameengine_promotionnotation", + "source": "gameengine_gameengine_translatemovetonotation", + "target": "gameengine_gameengine_promotionnotation", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L269", + "weight": 1.0, + "_src": "gameengine_gameengine_translatemovetonotation", + "_tgt": "gameengine_gameengine_normalmovenotation", + "source": "gameengine_gameengine_translatemovetonotation", + "target": "gameengine_gameengine_normalmovenotation", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L288", + "weight": 1.0, + "_src": "gameengine_gameengine_normalmovenotation", + "_tgt": "gameengine_gameengine_piecenotation", + "source": "gameengine_gameengine_normalmovenotation", + "target": "gameengine_gameengine_piecenotation", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L320", + "weight": 1.0, + "_src": "gameengine_gameengine_requestbotmoveifneeded", + "_tgt": "gameengine_gameengine_applybotmove", + "source": "gameengine_gameengine_requestbotmoveifneeded", + "target": "gameengine_gameengine_applybotmove", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/engine/GameEngine.scala", + "source_location": "L321", + "weight": 1.0, + "_src": "gameengine_gameengine_requestbotmoveifneeded", + "_tgt": "gameengine_gameengine_handlebotnomove", + "source": "gameengine_gameengine_requestbotmoveifneeded", + "target": "gameengine_gameengine_handlebotnomove", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L12", + "weight": 1.0, + "_src": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "_tgt": "observer_moveexecutedevent", + "source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "target": "observer_moveexecutedevent", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L20", + "weight": 1.0, + "_src": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "_tgt": "observer_checkdetectedevent", + "source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "target": "observer_checkdetectedevent", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L25", + "weight": 1.0, + "_src": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "_tgt": "observer_checkmateevent", + "source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "target": "observer_checkmateevent", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L31", + "weight": 1.0, + "_src": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "_tgt": "observer_stalemateevent", + "source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "target": "observer_stalemateevent", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L36", + "weight": 1.0, + "_src": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "_tgt": "observer_invalidmoveevent", + "source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "target": "observer_invalidmoveevent", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L42", + "weight": 1.0, + "_src": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "_tgt": "observer_promotionrequiredevent", + "source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "target": "observer_promotionrequiredevent", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L49", + "weight": 1.0, + "_src": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "_tgt": "observer_boardresetevent", + "source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "target": "observer_boardresetevent", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L54", + "weight": 1.0, + "_src": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "_tgt": "observer_fiftymoveruleavailableevent", + "source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "target": "observer_fiftymoveruleavailableevent", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L59", + "weight": 1.0, + "_src": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "_tgt": "observer_drawclaimedevent", + "source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "target": "observer_drawclaimedevent", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L64", + "weight": 1.0, + "_src": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "_tgt": "observer_moveundoneevent", + "source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "target": "observer_moveundoneevent", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L70", + "weight": 1.0, + "_src": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "_tgt": "observer_moveredoneevent", + "source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "target": "observer_moveredoneevent", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L79", + "weight": 1.0, + "_src": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "_tgt": "observer_pgnloadedevent", + "source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "target": "observer_pgnloadedevent", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L92", + "weight": 1.0, + "_src": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "_tgt": "observer_subscribe", + "source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "target": "observer_subscribe", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L97", + "weight": 1.0, + "_src": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "_tgt": "observer_unsubscribe", + "source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "target": "observer_unsubscribe", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L102", + "weight": 1.0, + "_src": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "_tgt": "observer_notifyobservers", + "source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "target": "observer_notifyobservers", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/main/scala/de/nowchess/chess/observer/Observer.scala", + "source_location": "L107", + "weight": 1.0, + "_src": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "_tgt": "observer_observercount", + "source": "modules_core_src_main_scala_de_nowchess_chess_observer_observer_scala", + "target": "observer_observercount", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", + "source_location": "L8", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_command_commandinvokerbranchtest_scala", + "_tgt": "commandinvokerbranchtest_commandinvokerbranchtest", + "source": "modules_core_src_test_scala_de_nowchess_chess_command_commandinvokerbranchtest_scala", + "target": "commandinvokerbranchtest_commandinvokerbranchtest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", + "source_location": "L12", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_command_commandinvokerbranchtest_scala", + "_tgt": "commandinvokerbranchtest_failingcommand", + "source": "modules_core_src_test_scala_de_nowchess_chess_command_commandinvokerbranchtest_scala", + "target": "commandinvokerbranchtest_failingcommand", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", + "source_location": "L17", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_command_commandinvokerbranchtest_scala", + "_tgt": "commandinvokerbranchtest_conditionalfailcommand", + "source": "modules_core_src_test_scala_de_nowchess_chess_command_commandinvokerbranchtest_scala", + "target": "commandinvokerbranchtest_conditionalfailcommand", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", + "source_location": "L10", + "weight": 1.0, + "_src": "commandinvokerbranchtest_commandinvokerbranchtest", + "_tgt": "commandinvokerbranchtest_commandinvokerbranchtest_sq", + "source": "commandinvokerbranchtest_commandinvokerbranchtest", + "target": "commandinvokerbranchtest_commandinvokerbranchtest_sq", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", + "source_location": "L25", + "weight": 1.0, + "_src": "commandinvokerbranchtest_commandinvokerbranchtest", + "_tgt": "commandinvokerbranchtest_commandinvokerbranchtest_createmovecommand", + "source": "commandinvokerbranchtest_commandinvokerbranchtest", + "target": "commandinvokerbranchtest_commandinvokerbranchtest_createmovecommand", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", + "source_location": "L13", + "weight": 1.0, + "_src": "commandinvokerbranchtest_failingcommand", + "_tgt": "commandinvokerbranchtest_failingcommand_execute", + "source": "commandinvokerbranchtest_failingcommand", + "target": "commandinvokerbranchtest_failingcommand_execute", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", + "source_location": "L14", + "weight": 1.0, + "_src": "commandinvokerbranchtest_failingcommand", + "_tgt": "commandinvokerbranchtest_failingcommand_undo", + "source": "commandinvokerbranchtest_failingcommand", + "target": "commandinvokerbranchtest_failingcommand_undo", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", + "source_location": "L15", + "weight": 1.0, + "_src": "commandinvokerbranchtest_failingcommand", + "_tgt": "commandinvokerbranchtest_failingcommand_description", + "source": "commandinvokerbranchtest_failingcommand", + "target": "commandinvokerbranchtest_failingcommand_description", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", + "source_location": "L21", + "weight": 1.0, + "_src": "commandinvokerbranchtest_conditionalfailcommand", + "_tgt": "commandinvokerbranchtest_conditionalfailcommand_execute", + "source": "commandinvokerbranchtest_conditionalfailcommand", + "target": "commandinvokerbranchtest_conditionalfailcommand_execute", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", + "source_location": "L22", + "weight": 1.0, + "_src": "commandinvokerbranchtest_conditionalfailcommand", + "_tgt": "commandinvokerbranchtest_conditionalfailcommand_undo", + "source": "commandinvokerbranchtest_conditionalfailcommand", + "target": "commandinvokerbranchtest_conditionalfailcommand_undo", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerBranchTest.scala", + "source_location": "L23", + "weight": 1.0, + "_src": "commandinvokerbranchtest_conditionalfailcommand", + "_tgt": "commandinvokerbranchtest_conditionalfailcommand_description", + "source": "commandinvokerbranchtest_conditionalfailcommand", + "target": "commandinvokerbranchtest_conditionalfailcommand_description", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerTest.scala", + "source_location": "L8", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_command_commandinvokertest_scala", + "_tgt": "commandinvokertest_commandinvokertest", + "source": "modules_core_src_test_scala_de_nowchess_chess_command_commandinvokertest_scala", + "target": "commandinvokertest_commandinvokertest", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerTest.scala", + "source_location": "L10", + "weight": 1.0, + "_src": "commandinvokertest_commandinvokertest", + "_tgt": "commandinvokertest_commandinvokertest_sq", + "source": "commandinvokertest_commandinvokertest", + "target": "commandinvokertest_commandinvokertest_sq", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandInvokerTest.scala", + "source_location": "L12", + "weight": 1.0, + "_src": "commandinvokertest_commandinvokertest", + "_tgt": "commandinvokertest_commandinvokertest_createmovecommand", + "source": "commandinvokertest_commandinvokertest", + "target": "commandinvokertest_commandinvokertest_createmovecommand", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/CommandTest.scala", + "source_location": "L7", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_command_commandtest_scala", + "_tgt": "commandtest_commandtest", + "source": "modules_core_src_test_scala_de_nowchess_chess_command_commandtest_scala", + "target": "commandtest_commandtest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/MoveCommandTest.scala", + "source_location": "L8", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_command_movecommandtest_scala", + "_tgt": "movecommandtest_movecommandtest", + "source": "modules_core_src_test_scala_de_nowchess_chess_command_movecommandtest_scala", + "target": "movecommandtest_movecommandtest", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/command/MoveCommandTest.scala", + "source_location": "L10", + "weight": 1.0, + "_src": "movecommandtest_movecommandtest", + "_tgt": "movecommandtest_movecommandtest_sq", + "source": "movecommandtest_movecommandtest", + "target": "movecommandtest_movecommandtest_sq", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/controller/ParserTest.scala", + "source_location": "L7", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_controller_parsertest_scala", + "_tgt": "parsertest_parsertest", + "source": "modules_core_src_test_scala_de_nowchess_chess_controller_parsertest_scala", + "target": "parsertest_parsertest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", + "source_location": "L10", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_enginetesthelpers_scala", + "_tgt": "enginetesthelpers_enginetesthelpers", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_enginetesthelpers_scala", + "target": "enginetesthelpers_enginetesthelpers", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", + "source_location": "L26", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_enginetesthelpers_scala", + "_tgt": "enginetesthelpers_mockobserver", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_enginetesthelpers_scala", + "target": "enginetesthelpers_mockobserver", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", + "source_location": "L12", + "weight": 1.0, + "_src": "enginetesthelpers_enginetesthelpers", + "_tgt": "enginetesthelpers_enginetesthelpers_makeengine", + "source": "enginetesthelpers_enginetesthelpers", + "target": "enginetesthelpers_enginetesthelpers_makeengine", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", + "source_location": "L15", + "weight": 1.0, + "_src": "enginetesthelpers_enginetesthelpers", + "_tgt": "enginetesthelpers_enginetesthelpers_makeenginewithboard", + "source": "enginetesthelpers_enginetesthelpers", + "target": "enginetesthelpers_enginetesthelpers_makeenginewithboard", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", + "source_location": "L18", + "weight": 1.0, + "_src": "enginetesthelpers_enginetesthelpers", + "_tgt": "enginetesthelpers_enginetesthelpers_loadfen", + "source": "enginetesthelpers_enginetesthelpers", + "target": "enginetesthelpers_enginetesthelpers_loadfen", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", + "source_location": "L21", + "weight": 1.0, + "_src": "enginetesthelpers_enginetesthelpers", + "_tgt": "enginetesthelpers_enginetesthelpers_captureevents", + "source": "enginetesthelpers_enginetesthelpers", + "target": "enginetesthelpers_enginetesthelpers_captureevents", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", + "source_location": "L29", + "weight": 1.0, + "_src": "enginetesthelpers_mockobserver", + "_tgt": "enginetesthelpers_mockobserver_events", + "source": "enginetesthelpers_mockobserver", + "target": "enginetesthelpers_mockobserver_events", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", + "source_location": "L30", + "weight": 1.0, + "_src": "enginetesthelpers_mockobserver", + "_tgt": "enginetesthelpers_mockobserver_eventcount", + "source": "enginetesthelpers_mockobserver", + "target": "enginetesthelpers_mockobserver_eventcount", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", + "source_location": "L31", + "weight": 1.0, + "_src": "enginetesthelpers_mockobserver", + "_tgt": "enginetesthelpers_mockobserver_hasevent", + "source": "enginetesthelpers_mockobserver", + "target": "enginetesthelpers_mockobserver_hasevent", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", + "source_location": "L33", + "weight": 1.0, + "_src": "enginetesthelpers_mockobserver", + "_tgt": "enginetesthelpers_mockobserver_getevent", + "source": "enginetesthelpers_mockobserver", + "target": "enginetesthelpers_mockobserver_getevent", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", + "source_location": "L36", + "weight": 1.0, + "_src": "enginetesthelpers_mockobserver", + "_tgt": "enginetesthelpers_mockobserver_ongameevent", + "source": "enginetesthelpers_mockobserver", + "target": "enginetesthelpers_mockobserver_ongameevent", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/EngineTestHelpers.scala", + "source_location": "L39", + "weight": 1.0, + "_src": "enginetesthelpers_mockobserver", + "_tgt": "enginetesthelpers_mockobserver_clear", + "source": "enginetesthelpers_mockobserver", + "target": "enginetesthelpers_mockobserver_clear", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineGameEndingTest.scala", + "source_location": "L10", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginegameendingtest_scala", + "_tgt": "gameenginegameendingtest_gameenginegameendingtest", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginegameendingtest_scala", + "target": "gameenginegameendingtest_gameenginegameendingtest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineGameEndingTest.scala", + "source_location": "L96", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginegameendingtest_scala", + "_tgt": "gameenginegameendingtest_endingmockobserver", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginegameendingtest_scala", + "target": "gameenginegameendingtest_endingmockobserver", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineGameEndingTest.scala", + "source_location": "L99", + "weight": 1.0, + "_src": "gameenginegameendingtest_endingmockobserver", + "_tgt": "gameenginegameendingtest_endingmockobserver_ongameevent", + "source": "gameenginegameendingtest_endingmockobserver", + "target": "gameenginegameendingtest_endingmockobserver_ongameevent", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L13", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", + "_tgt": "gameengineintegrationtest_gameengineintegrationtest", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", + "target": "gameengineintegrationtest_gameengineintegrationtest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L129", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", + "_tgt": "gameengineintegrationtest_importgamecontext", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", + "target": "gameengineintegrationtest_importgamecontext", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L114", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", + "_tgt": "gameengineintegrationtest_candidatemoves", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", + "target": "gameengineintegrationtest_candidatemoves", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L115", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", + "_tgt": "gameengineintegrationtest_legalmoves", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", + "target": "gameengineintegrationtest_legalmoves", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L116", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", + "_tgt": "gameengineintegrationtest_alllegalmoves", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", + "target": "gameengineintegrationtest_alllegalmoves", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L117", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", + "_tgt": "gameengineintegrationtest_ischeck", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", + "target": "gameengineintegrationtest_ischeck", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L118", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", + "_tgt": "gameengineintegrationtest_ischeckmate", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", + "target": "gameengineintegrationtest_ischeckmate", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L119", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", + "_tgt": "gameengineintegrationtest_isstalemate", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", + "target": "gameengineintegrationtest_isstalemate", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L120", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", + "_tgt": "gameengineintegrationtest_isinsufficientmaterial", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", + "target": "gameengineintegrationtest_isinsufficientmaterial", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L121", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", + "_tgt": "gameengineintegrationtest_isfiftymoverule", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", + "target": "gameengineintegrationtest_isfiftymoverule", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L122", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", + "_tgt": "gameengineintegrationtest_applymove", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", + "target": "gameengineintegrationtest_applymove", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L169", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", + "_tgt": "gameengineintegrationtest_ongameevent", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineintegrationtest_scala", + "target": "gameengineintegrationtest_ongameevent", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L15", + "weight": 1.0, + "_src": "gameengineintegrationtest_gameengineintegrationtest", + "_tgt": "gameengineintegrationtest_gameengineintegrationtest_sq", + "source": "gameengineintegrationtest_gameengineintegrationtest", + "target": "gameengineintegrationtest_gameengineintegrationtest_sq", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L18", + "weight": 1.0, + "_src": "gameengineintegrationtest_gameengineintegrationtest", + "_tgt": "gameengineintegrationtest_gameengineintegrationtest_captureevents", + "source": "gameengineintegrationtest_gameengineintegrationtest", + "target": "gameengineintegrationtest_gameengineintegrationtest_captureevents", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L94", + "weight": 1.0, + "_src": "gameengineintegrationtest_legalmoves", + "_tgt": "gameengineintegrationtest_gameengineintegrationtest_sq", + "source": "gameengineintegrationtest_gameengineintegrationtest_sq", + "target": "gameengineintegrationtest_legalmoves", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineIntegrationTest.scala", + "source_location": "L92", + "weight": 1.0, + "_src": "gameengineintegrationtest_candidatemoves", + "_tgt": "gameengineintegrationtest_legalmoves", + "source": "gameengineintegrationtest_candidatemoves", + "target": "gameengineintegrationtest_legalmoves", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineLoadGameTest.scala", + "source_location": "L14", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineloadgametest_scala", + "_tgt": "gameengineloadgametest_gameengineloadgametest", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineloadgametest_scala", + "target": "gameengineloadgametest_gameengineloadgametest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineLoadGameTest.scala", + "source_location": "L40", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineloadgametest_scala", + "_tgt": "gameengineloadgametest_mockobserver", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineloadgametest_scala", + "target": "gameengineloadgametest_mockobserver", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineLoadGameTest.scala", + "source_location": "L42", + "weight": 1.0, + "_src": "gameengineloadgametest_mockobserver", + "_tgt": "gameengineloadgametest_mockobserver_ongameevent", + "source": "gameengineloadgametest_mockobserver", + "target": "gameengineloadgametest_mockobserver_ongameevent", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineNotationTest.scala", + "source_location": "L17", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginenotationtest_scala", + "_tgt": "gameenginenotationtest_gameenginenotationtest", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginenotationtest_scala", + "target": "gameenginenotationtest_gameenginenotationtest", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineNotationTest.scala", + "source_location": "L19", + "weight": 1.0, + "_src": "gameenginenotationtest_gameenginenotationtest", + "_tgt": "gameenginenotationtest_gameenginenotationtest_captureevents", + "source": "gameenginenotationtest_gameenginenotationtest", + "target": "gameenginenotationtest_gameenginenotationtest_captureevents", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineOutcomesTest.scala", + "source_location": "L8", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineoutcomestest_scala", + "_tgt": "gameengineoutcomestest_gameengineoutcomestest", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameengineoutcomestest_scala", + "target": "gameengineoutcomestest_gameengineoutcomestest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", + "source_location": "L13", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", + "_tgt": "gameenginepromotiontest_gameenginepromotiontest", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", + "target": "gameenginepromotiontest_gameenginepromotiontest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", + "source_location": "L156", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", + "_tgt": "gameenginepromotiontest_candidatemoves", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", + "target": "gameenginepromotiontest_candidatemoves", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", + "source_location": "L158", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", + "_tgt": "gameenginepromotiontest_legalmoves", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", + "target": "gameenginepromotiontest_legalmoves", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", + "source_location": "L164", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", + "_tgt": "gameenginepromotiontest_alllegalmoves", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", + "target": "gameenginepromotiontest_alllegalmoves", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", + "source_location": "L166", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", + "_tgt": "gameenginepromotiontest_ischeck", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", + "target": "gameenginepromotiontest_ischeck", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", + "source_location": "L168", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", + "_tgt": "gameenginepromotiontest_ischeckmate", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", + "target": "gameenginepromotiontest_ischeckmate", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", + "source_location": "L170", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", + "_tgt": "gameenginepromotiontest_isstalemate", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", + "target": "gameenginepromotiontest_isstalemate", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", + "source_location": "L172", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", + "_tgt": "gameenginepromotiontest_isinsufficientmaterial", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", + "target": "gameenginepromotiontest_isinsufficientmaterial", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", + "source_location": "L174", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", + "_tgt": "gameenginepromotiontest_isfiftymoverule", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", + "target": "gameenginepromotiontest_isfiftymoverule", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", + "source_location": "L176", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", + "_tgt": "gameenginepromotiontest_applymove", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginepromotiontest_scala", + "target": "gameenginepromotiontest_applymove", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", + "source_location": "L15", + "weight": 1.0, + "_src": "gameenginepromotiontest_gameenginepromotiontest", + "_tgt": "gameenginepromotiontest_gameenginepromotiontest_sq", + "source": "gameenginepromotiontest_gameenginepromotiontest", + "target": "gameenginepromotiontest_gameenginepromotiontest_sq", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", + "source_location": "L17", + "weight": 1.0, + "_src": "gameenginepromotiontest_gameenginepromotiontest", + "_tgt": "gameenginepromotiontest_gameenginepromotiontest_captureevents", + "source": "gameenginepromotiontest_gameenginepromotiontest", + "target": "gameenginepromotiontest_gameenginepromotiontest_captureevents", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEnginePromotionTest.scala", + "source_location": "L22", + "weight": 1.0, + "_src": "gameenginepromotiontest_gameenginepromotiontest", + "_tgt": "gameenginepromotiontest_gameenginepromotiontest_enginewith", + "source": "gameenginepromotiontest_gameenginepromotiontest", + "target": "gameenginepromotiontest_gameenginepromotiontest_enginewith", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineScenarioTest.scala", + "source_location": "L11", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginescenariotest_scala", + "_tgt": "gameenginescenariotest_gameenginescenariotest", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginescenariotest_scala", + "target": "gameenginescenariotest_gameenginescenariotest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineSpecialMovesTest.scala", + "source_location": "L9", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginespecialmovestest_scala", + "_tgt": "gameenginespecialmovestest_gameenginespecialmovestest", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginespecialmovestest_scala", + "target": "gameenginespecialmovestest_gameenginespecialmovestest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineWithBotTest.scala", + "source_location": "L14", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginewithbottest_scala", + "_tgt": "gameenginewithbottest_gameenginewithbottest", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginewithbottest_scala", + "target": "gameenginewithbottest_gameenginewithbottest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/core/src/test/scala/de/nowchess/chess/engine/GameEngineWithBotTest.scala", + "source_location": "L99", + "weight": 1.0, + "_src": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginewithbottest_scala", + "_tgt": "gameenginewithbottest_ongameevent", + "source": "modules_core_src_test_scala_de_nowchess_chess_engine_gameenginewithbottest_scala", + "target": "gameenginewithbottest_ongameevent", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/GameFileService.scala", + "source_location": "L17", + "weight": 1.0, + "_src": "modules_io_src_main_scala_de_nowchess_io_gamefileservice_scala", + "_tgt": "gamefileservice_filesystemgameservice", + "source": "modules_io_src_main_scala_de_nowchess_io_gamefileservice_scala", + "target": "gamefileservice_filesystemgameservice", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/GameFileService.scala", + "source_location": "L20", + "weight": 1.0, + "_src": "gamefileservice_filesystemgameservice", + "_tgt": "gamefileservice_filesystemgameservice_savegametofile", + "source": "gamefileservice_filesystemgameservice", + "target": "gamefileservice_filesystemgameservice_savegametofile", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/GameFileService.scala", + "source_location": "L31", + "weight": 1.0, + "_src": "gamefileservice_filesystemgameservice", + "_tgt": "gamefileservice_filesystemgameservice_loadgamefromfile", + "source": "gamefileservice_filesystemgameservice", + "target": "gamefileservice_filesystemgameservice_loadgamefromfile", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", + "source_location": "L7", + "weight": 1.0, + "_src": "modules_io_src_main_scala_de_nowchess_io_fen_fenexporter_scala", + "_tgt": "fenexporter_fenexporter", + "source": "modules_io_src_main_scala_de_nowchess_io_fen_fenexporter_scala", + "target": "fenexporter_fenexporter", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", + "source_location": "L10", + "weight": 1.0, + "_src": "fenexporter_fenexporter", + "_tgt": "fenexporter_fenexporter_boardtofen", + "source": "fenexporter_fenexporter", + "target": "fenexporter_fenexporter_boardtofen", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", + "source_location": "L16", + "weight": 1.0, + "_src": "fenexporter_fenexporter", + "_tgt": "fenexporter_fenexporter_buildrankstring", + "source": "fenexporter_fenexporter", + "target": "fenexporter_fenexporter_buildrankstring", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", + "source_location": "L29", + "weight": 1.0, + "_src": "fenexporter_fenexporter", + "_tgt": "fenexporter_fenexporter_gamecontexttofen", + "source": "fenexporter_fenexporter", + "target": "fenexporter_fenexporter_gamecontexttofen", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", + "source_location": "L37", + "weight": 1.0, + "_src": "fenexporter_fenexporter", + "_tgt": "fenexporter_fenexporter_exportgamecontext", + "source": "fenexporter_fenexporter", + "target": "fenexporter_fenexporter_exportgamecontext", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", + "source_location": "L40", + "weight": 1.0, + "_src": "fenexporter_fenexporter", + "_tgt": "fenexporter_fenexporter_castlingstring", + "source": "fenexporter_fenexporter", + "target": "fenexporter_fenexporter_castlingstring", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", + "source_location": "L49", + "weight": 1.0, + "_src": "fenexporter_fenexporter", + "_tgt": "fenexporter_fenexporter_piecetofenchar", + "source": "fenexporter_fenexporter", + "target": "fenexporter_fenexporter_piecetofenchar", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", + "source_location": "L12", + "weight": 1.0, + "_src": "fenexporter_fenexporter_boardtofen", + "_tgt": "fenexporter_fenexporter_buildrankstring", + "source": "fenexporter_fenexporter_boardtofen", + "target": "fenexporter_fenexporter_buildrankstring", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", + "source_location": "L30", + "weight": 1.0, + "_src": "fenexporter_fenexporter_gamecontexttofen", + "_tgt": "fenexporter_fenexporter_boardtofen", + "source": "fenexporter_fenexporter_boardtofen", + "target": "fenexporter_fenexporter_gamecontexttofen", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", + "source_location": "L23", + "weight": 1.0, + "_src": "fenexporter_fenexporter_buildrankstring", + "_tgt": "fenexporter_fenexporter_piecetofenchar", + "source": "fenexporter_fenexporter_buildrankstring", + "target": "fenexporter_fenexporter_piecetofenchar", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", + "source_location": "L32", + "weight": 1.0, + "_src": "fenexporter_fenexporter_gamecontexttofen", + "_tgt": "fenexporter_fenexporter_castlingstring", + "source": "fenexporter_fenexporter_gamecontexttofen", + "target": "fenexporter_fenexporter_castlingstring", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenExporter.scala", + "source_location": "L37", + "weight": 1.0, + "_src": "fenexporter_fenexporter_exportgamecontext", + "_tgt": "fenexporter_fenexporter_gamecontexttofen", + "source": "fenexporter_fenexporter_gamecontexttofen", + "target": "fenexporter_fenexporter_exportgamecontext", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", + "source_location": "L7", + "weight": 1.0, + "_src": "modules_io_src_main_scala_de_nowchess_io_fen_fenparser_scala", + "_tgt": "fenparser_fenparser", + "source": "modules_io_src_main_scala_de_nowchess_io_fen_fenparser_scala", + "target": "fenparser_fenparser", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", + "source_location": "L11", + "weight": 1.0, + "_src": "fenparser_fenparser", + "_tgt": "fenparser_fenparser_parsefen", + "source": "fenparser_fenparser", + "target": "fenparser_fenparser_parsefen", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", + "source_location": "L32", + "weight": 1.0, + "_src": "fenparser_fenparser", + "_tgt": "fenparser_fenparser_importgamecontext", + "source": "fenparser_fenparser", + "target": "fenparser_fenparser_importgamecontext", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", + "source_location": "L36", + "weight": 1.0, + "_src": "fenparser_fenparser", + "_tgt": "fenparser_fenparser_parsecolor", + "source": "fenparser_fenparser", + "target": "fenparser_fenparser_parsecolor", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", + "source_location": "L42", + "weight": 1.0, + "_src": "fenparser_fenparser", + "_tgt": "fenparser_fenparser_parsecastling", + "source": "fenparser_fenparser", + "target": "fenparser_fenparser_parsecastling", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", + "source_location": "L56", + "weight": 1.0, + "_src": "fenparser_fenparser", + "_tgt": "fenparser_fenparser_parseenpassant", + "source": "fenparser_fenparser", + "target": "fenparser_fenparser_parseenpassant", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", + "source_location": "L63", + "weight": 1.0, + "_src": "fenparser_fenparser", + "_tgt": "fenparser_fenparser_parseboard", + "source": "fenparser_fenparser", + "target": "fenparser_fenparser_parseboard", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", + "source_location": "L79", + "weight": 1.0, + "_src": "fenparser_fenparser", + "_tgt": "fenparser_fenparser_parsepiecerank", + "source": "fenparser_fenparser", + "target": "fenparser_fenparser_parsepiecerank", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", + "source_location": "L94", + "weight": 1.0, + "_src": "fenparser_fenparser", + "_tgt": "fenparser_fenparser_chartopiece", + "source": "fenparser_fenparser", + "target": "fenparser_fenparser_chartopiece", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", + "source_location": "L16", + "weight": 1.0, + "_src": "fenparser_fenparser_parsefen", + "_tgt": "fenparser_fenparser_parseboard", + "source": "fenparser_fenparser_parsefen", + "target": "fenparser_fenparser_parseboard", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", + "source_location": "L17", + "weight": 1.0, + "_src": "fenparser_fenparser_parsefen", + "_tgt": "fenparser_fenparser_parsecolor", + "source": "fenparser_fenparser_parsefen", + "target": "fenparser_fenparser_parsecolor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", + "source_location": "L18", + "weight": 1.0, + "_src": "fenparser_fenparser_parsefen", + "_tgt": "fenparser_fenparser_parsecastling", + "source": "fenparser_fenparser_parsefen", + "target": "fenparser_fenparser_parsecastling", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", + "source_location": "L19", + "weight": 1.0, + "_src": "fenparser_fenparser_parsefen", + "_tgt": "fenparser_fenparser_parseenpassant", + "source": "fenparser_fenparser_parsefen", + "target": "fenparser_fenparser_parseenpassant", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", + "source_location": "L33", + "weight": 1.0, + "_src": "fenparser_fenparser_importgamecontext", + "_tgt": "fenparser_fenparser_parsefen", + "source": "fenparser_fenparser_parsefen", + "target": "fenparser_fenparser_importgamecontext", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", + "source_location": "L73", + "weight": 1.0, + "_src": "fenparser_fenparser_parseboard", + "_tgt": "fenparser_fenparser_parsepiecerank", + "source": "fenparser_fenparser_parseboard", + "target": "fenparser_fenparser_parsepiecerank", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParser.scala", + "source_location": "L86", + "weight": 1.0, + "_src": "fenparser_fenparser_parsepiecerank", + "_tgt": "fenparser_fenparser_chartopiece", + "source": "fenparser_fenparser_parsepiecerank", + "target": "fenparser_fenparser_chartopiece", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L9", + "weight": 1.0, + "_src": "modules_io_src_main_scala_de_nowchess_io_fen_fenparsercombinators_scala", + "_tgt": "fenparsercombinators_fenparsercombinators", + "source": "modules_io_src_main_scala_de_nowchess_io_fen_fenparsercombinators_scala", + "target": "fenparsercombinators_fenparsercombinators", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L15", + "weight": 1.0, + "_src": "fenparsercombinators_fenparsercombinators", + "_tgt": "fenparsercombinators_fenparsercombinators_piecechar", + "source": "fenparsercombinators_fenparsercombinators", + "target": "fenparsercombinators_fenparsercombinators_piecechar", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L22", + "weight": 1.0, + "_src": "fenparsercombinators_fenparsercombinators", + "_tgt": "fenparsercombinators_fenparsercombinators_emptycount", + "source": "fenparsercombinators_fenparsercombinators", + "target": "fenparsercombinators_fenparsercombinators_emptycount", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L27", + "weight": 1.0, + "_src": "fenparsercombinators_fenparsercombinators", + "_tgt": "fenparsercombinators_fenparsercombinators_ranktoken", + "source": "fenparsercombinators_fenparsercombinators", + "target": "fenparsercombinators_fenparsercombinators_ranktoken", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L30", + "weight": 1.0, + "_src": "fenparsercombinators_fenparsercombinators", + "_tgt": "fenparsercombinators_fenparsercombinators_ranktokens", + "source": "fenparsercombinators_fenparsercombinators", + "target": "fenparsercombinators_fenparsercombinators_ranktokens", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L35", + "weight": 1.0, + "_src": "fenparsercombinators_fenparsercombinators", + "_tgt": "fenparsercombinators_fenparsercombinators_rankparser", + "source": "fenparsercombinators_fenparsercombinators", + "target": "fenparsercombinators_fenparsercombinators_rankparser", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L44", + "weight": 1.0, + "_src": "fenparsercombinators_fenparsercombinators", + "_tgt": "fenparsercombinators_fenparsercombinators_ranksep", + "source": "fenparsercombinators_fenparsercombinators", + "target": "fenparsercombinators_fenparsercombinators_ranksep", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L47", + "weight": 1.0, + "_src": "fenparsercombinators_fenparsercombinators", + "_tgt": "fenparsercombinators_fenparsercombinators_boardparser", + "source": "fenparsercombinators_fenparsercombinators", + "target": "fenparsercombinators_fenparsercombinators_boardparser", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L61", + "weight": 1.0, + "_src": "fenparsercombinators_fenparsercombinators", + "_tgt": "fenparsercombinators_fenparsercombinators_colorparser", + "source": "fenparsercombinators_fenparsercombinators", + "target": "fenparsercombinators_fenparsercombinators_colorparser", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L69", + "weight": 1.0, + "_src": "fenparsercombinators_fenparsercombinators", + "_tgt": "fenparsercombinators_fenparsercombinators_castlingparser", + "source": "fenparsercombinators_fenparsercombinators", + "target": "fenparsercombinators_fenparsercombinators_castlingparser", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L82", + "weight": 1.0, + "_src": "fenparsercombinators_fenparsercombinators", + "_tgt": "fenparsercombinators_fenparsercombinators_enpassantparser", + "source": "fenparsercombinators_fenparsercombinators", + "target": "fenparsercombinators_fenparsercombinators_enpassantparser", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L88", + "weight": 1.0, + "_src": "fenparsercombinators_fenparsercombinators", + "_tgt": "fenparsercombinators_fenparsercombinators_clockparser", + "source": "fenparsercombinators_fenparsercombinators", + "target": "fenparsercombinators_fenparsercombinators_clockparser", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L93", + "weight": 1.0, + "_src": "fenparsercombinators_fenparsercombinators", + "_tgt": "fenparsercombinators_fenparsercombinators_fenparser", + "source": "fenparsercombinators_fenparsercombinators", + "target": "fenparsercombinators_fenparsercombinators_fenparser", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L109", + "weight": 1.0, + "_src": "fenparsercombinators_fenparsercombinators", + "_tgt": "fenparsercombinators_fenparsercombinators_parsefen", + "source": "fenparsercombinators_fenparsercombinators", + "target": "fenparsercombinators_fenparsercombinators_parsefen", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L114", + "weight": 1.0, + "_src": "fenparsercombinators_fenparsercombinators", + "_tgt": "fenparsercombinators_fenparsercombinators_parseboard", + "source": "fenparsercombinators_fenparsercombinators", + "target": "fenparsercombinators_fenparsercombinators_parseboard", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L119", + "weight": 1.0, + "_src": "fenparsercombinators_fenparsercombinators", + "_tgt": "fenparsercombinators_fenparsercombinators_importgamecontext", + "source": "fenparsercombinators_fenparsercombinators", + "target": "fenparsercombinators_fenparsercombinators_importgamecontext", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L48", + "weight": 1.0, + "_src": "fenparsercombinators_fenparsercombinators_boardparser", + "_tgt": "fenparsercombinators_fenparsercombinators_rankparser", + "source": "fenparsercombinators_fenparsercombinators_rankparser", + "target": "fenparsercombinators_fenparsercombinators_boardparser", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserCombinators.scala", + "source_location": "L120", + "weight": 1.0, + "_src": "fenparsercombinators_fenparsercombinators_importgamecontext", + "_tgt": "fenparsercombinators_fenparsercombinators_parsefen", + "source": "fenparsercombinators_fenparsercombinators_parsefen", + "target": "fenparsercombinators_fenparsercombinators_importgamecontext", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L10", + "weight": 1.0, + "_src": "modules_io_src_main_scala_de_nowchess_io_fen_fenparserfastparse_scala", + "_tgt": "fenparserfastparse_fenparserfastparse", + "source": "modules_io_src_main_scala_de_nowchess_io_fen_fenparserfastparse_scala", + "target": "fenparserfastparse_fenparserfastparse", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L14", + "weight": 1.0, + "_src": "fenparserfastparse_fenparserfastparse", + "_tgt": "fenparserfastparse_fenparserfastparse_piecechar", + "source": "fenparserfastparse_fenparserfastparse", + "target": "fenparserfastparse_fenparserfastparse_piecechar", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L21", + "weight": 1.0, + "_src": "fenparserfastparse_fenparserfastparse", + "_tgt": "fenparserfastparse_fenparserfastparse_emptycount", + "source": "fenparserfastparse_fenparserfastparse", + "target": "fenparserfastparse_fenparserfastparse_emptycount", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L24", + "weight": 1.0, + "_src": "fenparserfastparse_fenparserfastparse", + "_tgt": "fenparserfastparse_fenparserfastparse_ranktoken", + "source": "fenparserfastparse_fenparserfastparse", + "target": "fenparserfastparse_fenparserfastparse_ranktoken", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L29", + "weight": 1.0, + "_src": "fenparserfastparse_fenparserfastparse", + "_tgt": "fenparserfastparse_fenparserfastparse_rankparser", + "source": "fenparserfastparse_fenparserfastparse", + "target": "fenparserfastparse_fenparserfastparse_rankparser", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L38", + "weight": 1.0, + "_src": "fenparserfastparse_fenparserfastparse", + "_tgt": "fenparserfastparse_fenparserfastparse_sep", + "source": "fenparserfastparse_fenparserfastparse", + "target": "fenparserfastparse_fenparserfastparse_sep", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L40", + "weight": 1.0, + "_src": "fenparserfastparse_fenparserfastparse", + "_tgt": "fenparserfastparse_fenparserfastparse_boardparser", + "source": "fenparserfastparse_fenparserfastparse", + "target": "fenparserfastparse_fenparserfastparse_boardparser", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L54", + "weight": 1.0, + "_src": "fenparserfastparse_fenparserfastparse", + "_tgt": "fenparserfastparse_fenparserfastparse_colorparser", + "source": "fenparserfastparse_fenparserfastparse", + "target": "fenparserfastparse_fenparserfastparse_colorparser", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L62", + "weight": 1.0, + "_src": "fenparserfastparse_fenparserfastparse", + "_tgt": "fenparserfastparse_fenparserfastparse_castlingparser", + "source": "fenparserfastparse_fenparserfastparse", + "target": "fenparserfastparse_fenparserfastparse_castlingparser", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L75", + "weight": 1.0, + "_src": "fenparserfastparse_fenparserfastparse", + "_tgt": "fenparserfastparse_fenparserfastparse_enpassantparser", + "source": "fenparserfastparse_fenparserfastparse", + "target": "fenparserfastparse_fenparserfastparse_enpassantparser", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L81", + "weight": 1.0, + "_src": "fenparserfastparse_fenparserfastparse", + "_tgt": "fenparserfastparse_fenparserfastparse_clockparser", + "source": "fenparserfastparse_fenparserfastparse", + "target": "fenparserfastparse_fenparserfastparse_clockparser", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L86", + "weight": 1.0, + "_src": "fenparserfastparse_fenparserfastparse", + "_tgt": "fenparserfastparse_fenparserfastparse_sp", + "source": "fenparserfastparse_fenparserfastparse", + "target": "fenparserfastparse_fenparserfastparse_sp", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L90", + "weight": 1.0, + "_src": "fenparserfastparse_fenparserfastparse", + "_tgt": "fenparserfastparse_fenparserfastparse_fenparser", + "source": "fenparserfastparse_fenparserfastparse", + "target": "fenparserfastparse_fenparserfastparse_fenparser", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L106", + "weight": 1.0, + "_src": "fenparserfastparse_fenparserfastparse", + "_tgt": "fenparserfastparse_fenparserfastparse_parsefen", + "source": "fenparserfastparse_fenparserfastparse", + "target": "fenparserfastparse_fenparserfastparse_parsefen", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L111", + "weight": 1.0, + "_src": "fenparserfastparse_fenparserfastparse", + "_tgt": "fenparserfastparse_fenparserfastparse_boardparserfull", + "source": "fenparserfastparse_fenparserfastparse", + "target": "fenparserfastparse_fenparserfastparse_boardparserfull", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L114", + "weight": 1.0, + "_src": "fenparserfastparse_fenparserfastparse", + "_tgt": "fenparserfastparse_fenparserfastparse_parseboard", + "source": "fenparserfastparse_fenparserfastparse", + "target": "fenparserfastparse_fenparserfastparse_parseboard", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L119", + "weight": 1.0, + "_src": "fenparserfastparse_fenparserfastparse", + "_tgt": "fenparserfastparse_fenparserfastparse_importgamecontext", + "source": "fenparserfastparse_fenparserfastparse", + "target": "fenparserfastparse_fenparserfastparse_importgamecontext", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L41", + "weight": 1.0, + "_src": "fenparserfastparse_fenparserfastparse_boardparser", + "_tgt": "fenparserfastparse_fenparserfastparse_rankparser", + "source": "fenparserfastparse_fenparserfastparse_rankparser", + "target": "fenparserfastparse_fenparserfastparse_boardparser", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L107", + "weight": 1.0, + "_src": "fenparserfastparse_fenparserfastparse_parsefen", + "_tgt": "fenparserfastparse_fenparserfastparse_fenparser", + "source": "fenparserfastparse_fenparserfastparse_fenparser", + "target": "fenparserfastparse_fenparserfastparse_parsefen", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L120", + "weight": 1.0, + "_src": "fenparserfastparse_fenparserfastparse_importgamecontext", + "_tgt": "fenparserfastparse_fenparserfastparse_parsefen", + "source": "fenparserfastparse_fenparserfastparse_parsefen", + "target": "fenparserfastparse_fenparserfastparse_importgamecontext", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserFastParse.scala", + "source_location": "L115", + "weight": 1.0, + "_src": "fenparserfastparse_fenparserfastparse_parseboard", + "_tgt": "fenparserfastparse_fenparserfastparse_boardparserfull", + "source": "fenparserfastparse_fenparserfastparse_boardparserfull", + "target": "fenparserfastparse_fenparserfastparse_parseboard", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserSupport.scala", + "source_location": "L5", + "weight": 1.0, + "_src": "modules_io_src_main_scala_de_nowchess_io_fen_fenparsersupport_scala", + "_tgt": "fenparsersupport_fenparsersupport", + "source": "modules_io_src_main_scala_de_nowchess_io_fen_fenparsersupport_scala", + "target": "fenparsersupport_fenparsersupport", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserSupport.scala", + "source_location": "L8", + "weight": 1.0, + "_src": "modules_io_src_main_scala_de_nowchess_io_fen_fenparsersupport_scala", + "_tgt": "fenparsersupport_piecetoken", + "source": "modules_io_src_main_scala_de_nowchess_io_fen_fenparsersupport_scala", + "target": "fenparsersupport_piecetoken", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserSupport.scala", + "source_location": "L9", + "weight": 1.0, + "_src": "modules_io_src_main_scala_de_nowchess_io_fen_fenparsersupport_scala", + "_tgt": "fenparsersupport_emptytoken", + "source": "modules_io_src_main_scala_de_nowchess_io_fen_fenparsersupport_scala", + "target": "fenparsersupport_emptytoken", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/fen/FenParserSupport.scala", + "source_location": "L20", + "weight": 1.0, + "_src": "fenparsersupport_fenparsersupport", + "_tgt": "fenparsersupport_fenparsersupport_buildsquares", + "source": "fenparsersupport_fenparsersupport", + "target": "fenparsersupport_fenparsersupport_buildsquares", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L23", + "weight": 1.0, + "_src": "modules_io_src_main_scala_de_nowchess_io_json_jsonexporter_scala", + "_tgt": "jsonexporter_jsonexporter", + "source": "modules_io_src_main_scala_de_nowchess_io_json_jsonexporter_scala", + "target": "jsonexporter_jsonexporter", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L26", + "weight": 1.0, + "_src": "jsonexporter_jsonexporter", + "_tgt": "jsonexporter_jsonexporter_createmapper", + "source": "jsonexporter_jsonexporter", + "target": "jsonexporter_jsonexporter_createmapper", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L40", + "weight": 1.0, + "_src": "jsonexporter_jsonexporter", + "_tgt": "jsonexporter_jsonexporter_exportgamecontext", + "source": "jsonexporter_jsonexporter", + "target": "jsonexporter_jsonexporter_exportgamecontext", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L44", + "weight": 1.0, + "_src": "jsonexporter_jsonexporter", + "_tgt": "jsonexporter_jsonexporter_buildgamerecord", + "source": "jsonexporter_jsonexporter", + "target": "jsonexporter_jsonexporter_buildgamerecord", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L60", + "weight": 1.0, + "_src": "jsonexporter_jsonexporter", + "_tgt": "jsonexporter_jsonexporter_buildmetadata", + "source": "jsonexporter_jsonexporter", + "target": "jsonexporter_jsonexporter_buildmetadata", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L68", + "weight": 1.0, + "_src": "jsonexporter_jsonexporter", + "_tgt": "jsonexporter_jsonexporter_buildgamestate", + "source": "jsonexporter_jsonexporter", + "target": "jsonexporter_jsonexporter_buildgamestate", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L77", + "weight": 1.0, + "_src": "jsonexporter_jsonexporter", + "_tgt": "jsonexporter_jsonexporter_buildboardpieces", + "source": "jsonexporter_jsonexporter", + "target": "jsonexporter_jsonexporter_buildboardpieces", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L82", + "weight": 1.0, + "_src": "jsonexporter_jsonexporter", + "_tgt": "jsonexporter_jsonexporter_buildcastlingrights", + "source": "jsonexporter_jsonexporter", + "target": "jsonexporter_jsonexporter_buildcastlingrights", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L90", + "weight": 1.0, + "_src": "jsonexporter_jsonexporter", + "_tgt": "jsonexporter_jsonexporter_buildmoves", + "source": "jsonexporter_jsonexporter", + "target": "jsonexporter_jsonexporter_buildmoves", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L96", + "weight": 1.0, + "_src": "jsonexporter_jsonexporter", + "_tgt": "jsonexporter_jsonexporter_convertmovetype", + "source": "jsonexporter_jsonexporter", + "target": "jsonexporter_jsonexporter_convertmovetype", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L117", + "weight": 1.0, + "_src": "jsonexporter_jsonexporter", + "_tgt": "jsonexporter_jsonexporter_buildcapturedpieces", + "source": "jsonexporter_jsonexporter", + "target": "jsonexporter_jsonexporter_buildcapturedpieces", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L121", + "weight": 1.0, + "_src": "jsonexporter_jsonexporter", + "_tgt": "jsonexporter_jsonexporter_formatjson", + "source": "jsonexporter_jsonexporter", + "target": "jsonexporter_jsonexporter_formatjson", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L127", + "weight": 1.0, + "_src": "jsonexporter_jsonexporter", + "_tgt": "jsonexporter_jsonexporter_getcapturedpieces", + "source": "jsonexporter_jsonexporter", + "target": "jsonexporter_jsonexporter_getcapturedpieces", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L47", + "weight": 1.0, + "_src": "jsonexporter_jsonexporter_buildgamerecord", + "_tgt": "jsonexporter_jsonexporter_exportgamecontext", + "source": "jsonexporter_jsonexporter_exportgamecontext", + "target": "jsonexporter_jsonexporter_buildgamerecord", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L42", + "weight": 1.0, + "_src": "jsonexporter_jsonexporter_exportgamecontext", + "_tgt": "jsonexporter_jsonexporter_formatjson", + "source": "jsonexporter_jsonexporter_exportgamecontext", + "target": "jsonexporter_jsonexporter_formatjson", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L52", + "weight": 1.0, + "_src": "jsonexporter_jsonexporter_buildgamerecord", + "_tgt": "jsonexporter_jsonexporter_buildmetadata", + "source": "jsonexporter_jsonexporter_buildgamerecord", + "target": "jsonexporter_jsonexporter_buildmetadata", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L53", + "weight": 1.0, + "_src": "jsonexporter_jsonexporter_buildgamerecord", + "_tgt": "jsonexporter_jsonexporter_buildgamestate", + "source": "jsonexporter_jsonexporter_buildgamerecord", + "target": "jsonexporter_jsonexporter_buildgamestate", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L55", + "weight": 1.0, + "_src": "jsonexporter_jsonexporter_buildgamerecord", + "_tgt": "jsonexporter_jsonexporter_buildmoves", + "source": "jsonexporter_jsonexporter_buildgamerecord", + "target": "jsonexporter_jsonexporter_buildmoves", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L56", + "weight": 1.0, + "_src": "jsonexporter_jsonexporter_buildgamerecord", + "_tgt": "jsonexporter_jsonexporter_buildcapturedpieces", + "source": "jsonexporter_jsonexporter_buildgamerecord", + "target": "jsonexporter_jsonexporter_buildcapturedpieces", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L70", + "weight": 1.0, + "_src": "jsonexporter_jsonexporter_buildgamestate", + "_tgt": "jsonexporter_jsonexporter_buildboardpieces", + "source": "jsonexporter_jsonexporter_buildgamestate", + "target": "jsonexporter_jsonexporter_buildboardpieces", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L72", + "weight": 1.0, + "_src": "jsonexporter_jsonexporter_buildgamestate", + "_tgt": "jsonexporter_jsonexporter_buildcastlingrights", + "source": "jsonexporter_jsonexporter_buildgamestate", + "target": "jsonexporter_jsonexporter_buildcastlingrights", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L92", + "weight": 1.0, + "_src": "jsonexporter_jsonexporter_buildmoves", + "_tgt": "jsonexporter_jsonexporter_convertmovetype", + "source": "jsonexporter_jsonexporter_buildmoves", + "target": "jsonexporter_jsonexporter_convertmovetype", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonExporter.scala", + "source_location": "L118", + "weight": 1.0, + "_src": "jsonexporter_jsonexporter_buildcapturedpieces", + "_tgt": "jsonexporter_jsonexporter_getcapturedpieces", + "source": "jsonexporter_jsonexporter_buildcapturedpieces", + "target": "jsonexporter_jsonexporter_getcapturedpieces", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", + "source_location": "L3", + "weight": 1.0, + "_src": "modules_io_src_main_scala_de_nowchess_io_json_jsonmodel_scala", + "_tgt": "jsonmodel_jsonmetadata", + "source": "modules_io_src_main_scala_de_nowchess_io_json_jsonmodel_scala", + "target": "jsonmodel_jsonmetadata", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", + "source_location": "L10", + "weight": 1.0, + "_src": "modules_io_src_main_scala_de_nowchess_io_json_jsonmodel_scala", + "_tgt": "jsonmodel_jsonpiece", + "source": "modules_io_src_main_scala_de_nowchess_io_json_jsonmodel_scala", + "target": "jsonmodel_jsonpiece", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", + "source_location": "L16", + "weight": 1.0, + "_src": "modules_io_src_main_scala_de_nowchess_io_json_jsonmodel_scala", + "_tgt": "jsonmodel_jsoncastlingrights", + "source": "modules_io_src_main_scala_de_nowchess_io_json_jsonmodel_scala", + "target": "jsonmodel_jsoncastlingrights", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", + "source_location": "L23", + "weight": 1.0, + "_src": "modules_io_src_main_scala_de_nowchess_io_json_jsonmodel_scala", + "_tgt": "jsonmodel_jsongamestate", + "source": "modules_io_src_main_scala_de_nowchess_io_json_jsonmodel_scala", + "target": "jsonmodel_jsongamestate", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", + "source_location": "L31", + "weight": 1.0, + "_src": "modules_io_src_main_scala_de_nowchess_io_json_jsonmodel_scala", + "_tgt": "jsonmodel_jsoncapturedpieces", + "source": "modules_io_src_main_scala_de_nowchess_io_json_jsonmodel_scala", + "target": "jsonmodel_jsoncapturedpieces", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", + "source_location": "L36", + "weight": 1.0, + "_src": "modules_io_src_main_scala_de_nowchess_io_json_jsonmodel_scala", + "_tgt": "jsonmodel_jsonmovetype", + "source": "modules_io_src_main_scala_de_nowchess_io_json_jsonmodel_scala", + "target": "jsonmodel_jsonmovetype", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", + "source_location": "L42", + "weight": 1.0, + "_src": "modules_io_src_main_scala_de_nowchess_io_json_jsonmodel_scala", + "_tgt": "jsonmodel_jsonmove", + "source": "modules_io_src_main_scala_de_nowchess_io_json_jsonmodel_scala", + "target": "jsonmodel_jsonmove", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonModel.scala", + "source_location": "L48", + "weight": 1.0, + "_src": "modules_io_src_main_scala_de_nowchess_io_json_jsonmodel_scala", + "_tgt": "jsonmodel_jsongamerecord", + "source": "modules_io_src_main_scala_de_nowchess_io_json_jsonmodel_scala", + "target": "jsonmodel_jsongamerecord", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", + "source_location": "L23", + "weight": 1.0, + "_src": "modules_io_src_main_scala_de_nowchess_io_json_jsonparser_scala", + "_tgt": "jsonparser_jsonparser", + "source": "modules_io_src_main_scala_de_nowchess_io_json_jsonparser_scala", + "target": "jsonparser_jsonparser", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", + "source_location": "L29", + "weight": 1.0, + "_src": "jsonparser_jsonparser", + "_tgt": "jsonparser_jsonparser_importgamecontext", + "source": "jsonparser_jsonparser", + "target": "jsonparser_jsonparser_importgamecontext", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", + "source_location": "L56", + "weight": 1.0, + "_src": "jsonparser_jsonparser", + "_tgt": "jsonparser_jsonparser_parseboard", + "source": "jsonparser_jsonparser", + "target": "jsonparser_jsonparser_parseboard", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", + "source_location": "L66", + "weight": 1.0, + "_src": "jsonparser_jsonparser", + "_tgt": "jsonparser_jsonparser_parseturn", + "source": "jsonparser_jsonparser", + "target": "jsonparser_jsonparser_parseturn", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", + "source_location": "L69", + "weight": 1.0, + "_src": "jsonparser_jsonparser", + "_tgt": "jsonparser_jsonparser_parsecolor", + "source": "jsonparser_jsonparser", + "target": "jsonparser_jsonparser_parsecolor", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", + "source_location": "L74", + "weight": 1.0, + "_src": "jsonparser_jsonparser", + "_tgt": "jsonparser_jsonparser_parsepiecetype", + "source": "jsonparser_jsonparser", + "target": "jsonparser_jsonparser_parsepiecetype", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", + "source_location": "L84", + "weight": 1.0, + "_src": "jsonparser_jsonparser", + "_tgt": "jsonparser_jsonparser_parsecastlingrights", + "source": "jsonparser_jsonparser", + "target": "jsonparser_jsonparser_parsecastlingrights", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", + "source_location": "L92", + "weight": 1.0, + "_src": "jsonparser_jsonparser", + "_tgt": "jsonparser_jsonparser_parsemoves", + "source": "jsonparser_jsonparser", + "target": "jsonparser_jsonparser_parsemoves", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", + "source_location": "L101", + "weight": 1.0, + "_src": "jsonparser_jsonparser", + "_tgt": "jsonparser_jsonparser_parsemovetype", + "source": "jsonparser_jsonparser", + "target": "jsonparser_jsonparser_parsemovetype", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", + "source_location": "L41", + "weight": 1.0, + "_src": "jsonparser_jsonparser_importgamecontext", + "_tgt": "jsonparser_jsonparser_parseboard", + "source": "jsonparser_jsonparser_importgamecontext", + "target": "jsonparser_jsonparser_parseboard", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", + "source_location": "L42", + "weight": 1.0, + "_src": "jsonparser_jsonparser_importgamecontext", + "_tgt": "jsonparser_jsonparser_parseturn", + "source": "jsonparser_jsonparser_importgamecontext", + "target": "jsonparser_jsonparser_parseturn", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", + "source_location": "L43", + "weight": 1.0, + "_src": "jsonparser_jsonparser_importgamecontext", + "_tgt": "jsonparser_jsonparser_parsecastlingrights", + "source": "jsonparser_jsonparser_importgamecontext", + "target": "jsonparser_jsonparser_parsecastlingrights", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", + "source_location": "L45", + "weight": 1.0, + "_src": "jsonparser_jsonparser_importgamecontext", + "_tgt": "jsonparser_jsonparser_parsemoves", + "source": "jsonparser_jsonparser_importgamecontext", + "target": "jsonparser_jsonparser_parsemoves", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/json/JsonParser.scala", + "source_location": "L67", + "weight": 1.0, + "_src": "jsonparser_jsonparser_parseturn", + "_tgt": "jsonparser_jsonparser_parsecolor", + "source": "jsonparser_jsonparser_parseturn", + "target": "jsonparser_jsonparser_parsecolor", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala", + "source_location": "L9", + "weight": 1.0, + "_src": "modules_io_src_main_scala_de_nowchess_io_pgn_pgnexporter_scala", + "_tgt": "pgnexporter_pgnexporter", + "source": "modules_io_src_main_scala_de_nowchess_io_pgn_pgnexporter_scala", + "target": "pgnexporter_pgnexporter", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala", + "source_location": "L12", + "weight": 1.0, + "_src": "pgnexporter_pgnexporter", + "_tgt": "pgnexporter_pgnexporter_exportgamecontext", + "source": "pgnexporter_pgnexporter", + "target": "pgnexporter_pgnexporter_exportgamecontext", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala", + "source_location": "L23", + "weight": 1.0, + "_src": "pgnexporter_pgnexporter", + "_tgt": "pgnexporter_pgnexporter_exportgame", + "source": "pgnexporter_pgnexporter", + "target": "pgnexporter_pgnexporter_exportgame", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala", + "source_location": "L52", + "weight": 1.0, + "_src": "pgnexporter_pgnexporter", + "_tgt": "pgnexporter_pgnexporter_movetoalgebraic", + "source": "pgnexporter_pgnexporter", + "target": "pgnexporter_pgnexporter_movetoalgebraic", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala", + "source_location": "L20", + "weight": 1.0, + "_src": "pgnexporter_pgnexporter_exportgamecontext", + "_tgt": "pgnexporter_pgnexporter_exportgame", + "source": "pgnexporter_pgnexporter_exportgamecontext", + "target": "pgnexporter_pgnexporter_exportgame", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnExporter.scala", + "source_location": "L34", + "weight": 1.0, + "_src": "pgnexporter_pgnexporter_exportgame", + "_tgt": "pgnexporter_pgnexporter_movetoalgebraic", + "source": "pgnexporter_pgnexporter_exportgame", + "target": "pgnexporter_pgnexporter_movetoalgebraic", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L10", + "weight": 1.0, + "_src": "modules_io_src_main_scala_de_nowchess_io_pgn_pgnparser_scala", + "_tgt": "pgnparser_pgngame", + "source": "modules_io_src_main_scala_de_nowchess_io_pgn_pgnparser_scala", + "target": "pgnparser_pgngame", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L15", + "weight": 1.0, + "_src": "modules_io_src_main_scala_de_nowchess_io_pgn_pgnparser_scala", + "_tgt": "pgnparser_pgnparser", + "source": "modules_io_src_main_scala_de_nowchess_io_pgn_pgnparser_scala", + "target": "pgnparser_pgnparser", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L25", + "weight": 1.0, + "_src": "pgnparser_pgnparser_validatepgn", + "_tgt": "pgnparser_pgngame", + "source": "pgnparser_pgngame", + "target": "pgnparser_pgnparser_validatepgn", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L45", + "weight": 1.0, + "_src": "pgnparser_pgnparser_parsepgn", + "_tgt": "pgnparser_pgngame", + "source": "pgnparser_pgngame", + "target": "pgnparser_pgnparser_parsepgn", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L20", + "weight": 1.0, + "_src": "pgnparser_pgnparser", + "_tgt": "pgnparser_pgnparser_validatepgn", + "source": "pgnparser_pgnparser", + "target": "pgnparser_pgnparser_validatepgn", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L31", + "weight": 1.0, + "_src": "pgnparser_pgnparser", + "_tgt": "pgnparser_pgnparser_importgamecontext", + "source": "pgnparser_pgnparser", + "target": "pgnparser_pgnparser_importgamecontext", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L39", + "weight": 1.0, + "_src": "pgnparser_pgnparser", + "_tgt": "pgnparser_pgnparser_parsepgn", + "source": "pgnparser_pgnparser", + "target": "pgnparser_pgnparser_parsepgn", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L48", + "weight": 1.0, + "_src": "pgnparser_pgnparser", + "_tgt": "pgnparser_pgnparser_parseheaders", + "source": "pgnparser_pgnparser", + "target": "pgnparser_pgnparser_parseheaders", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L53", + "weight": 1.0, + "_src": "pgnparser_pgnparser", + "_tgt": "pgnparser_pgnparser_parsemovestext", + "source": "pgnparser_pgnparser", + "target": "pgnparser_pgnparser_parsemovestext", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L69", + "weight": 1.0, + "_src": "pgnparser_pgnparser", + "_tgt": "pgnparser_pgnparser_ismovenumberorresult", + "source": "pgnparser_pgnparser", + "target": "pgnparser_pgnparser_ismovenumberorresult", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L77", + "weight": 1.0, + "_src": "pgnparser_pgnparser", + "_tgt": "pgnparser_pgnparser_parsealgebraicmove", + "source": "pgnparser_pgnparser", + "target": "pgnparser_pgnparser_parsealgebraicmove", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L93", + "weight": 1.0, + "_src": "pgnparser_pgnparser", + "_tgt": "pgnparser_pgnparser_parseregularmove", + "source": "pgnparser_pgnparser", + "target": "pgnparser_pgnparser_parseregularmove", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L136", + "weight": 1.0, + "_src": "pgnparser_pgnparser", + "_tgt": "pgnparser_pgnparser_matcheshint", + "source": "pgnparser_pgnparser", + "target": "pgnparser_pgnparser_matcheshint", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L143", + "weight": 1.0, + "_src": "pgnparser_pgnparser", + "_tgt": "pgnparser_pgnparser_promotionmatches", + "source": "pgnparser_pgnparser", + "target": "pgnparser_pgnparser_promotionmatches", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L152", + "weight": 1.0, + "_src": "pgnparser_pgnparser", + "_tgt": "pgnparser_pgnparser_extractpromotion", + "source": "pgnparser_pgnparser", + "target": "pgnparser_pgnparser_extractpromotion", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L164", + "weight": 1.0, + "_src": "pgnparser_pgnparser", + "_tgt": "pgnparser_pgnparser_chartopiecetype", + "source": "pgnparser_pgnparser", + "target": "pgnparser_pgnparser_chartopiecetype", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L176", + "weight": 1.0, + "_src": "pgnparser_pgnparser", + "_tgt": "pgnparser_pgnparser_validatemovestext", + "source": "pgnparser_pgnparser", + "target": "pgnparser_pgnparser_validatemovestext", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L23", + "weight": 1.0, + "_src": "pgnparser_pgnparser_validatepgn", + "_tgt": "pgnparser_pgnparser_parseheaders", + "source": "pgnparser_pgnparser_validatepgn", + "target": "pgnparser_pgnparser_parseheaders", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L25", + "weight": 1.0, + "_src": "pgnparser_pgnparser_validatepgn", + "_tgt": "pgnparser_pgnparser_validatemovestext", + "source": "pgnparser_pgnparser_validatepgn", + "target": "pgnparser_pgnparser_validatemovestext", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L32", + "weight": 1.0, + "_src": "pgnparser_pgnparser_importgamecontext", + "_tgt": "pgnparser_pgnparser_validatepgn", + "source": "pgnparser_pgnparser_validatepgn", + "target": "pgnparser_pgnparser_importgamecontext", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L42", + "weight": 1.0, + "_src": "pgnparser_pgnparser_parsepgn", + "_tgt": "pgnparser_pgnparser_parseheaders", + "source": "pgnparser_pgnparser_parsepgn", + "target": "pgnparser_pgnparser_parseheaders", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L44", + "weight": 1.0, + "_src": "pgnparser_pgnparser_parsepgn", + "_tgt": "pgnparser_pgnparser_parsemovestext", + "source": "pgnparser_pgnparser_parsepgn", + "target": "pgnparser_pgnparser_parsemovestext", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L59", + "weight": 1.0, + "_src": "pgnparser_pgnparser_parsemovestext", + "_tgt": "pgnparser_pgnparser_ismovenumberorresult", + "source": "pgnparser_pgnparser_parsemovestext", + "target": "pgnparser_pgnparser_ismovenumberorresult", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L61", + "weight": 1.0, + "_src": "pgnparser_pgnparser_parsemovestext", + "_tgt": "pgnparser_pgnparser_parsealgebraicmove", + "source": "pgnparser_pgnparser_parsemovestext", + "target": "pgnparser_pgnparser_parsealgebraicmove", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L183", + "weight": 1.0, + "_src": "pgnparser_pgnparser_validatemovestext", + "_tgt": "pgnparser_pgnparser_ismovenumberorresult", + "source": "pgnparser_pgnparser_ismovenumberorresult", + "target": "pgnparser_pgnparser_validatemovestext", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L90", + "weight": 1.0, + "_src": "pgnparser_pgnparser_parsealgebraicmove", + "_tgt": "pgnparser_pgnparser_parseregularmove", + "source": "pgnparser_pgnparser_parsealgebraicmove", + "target": "pgnparser_pgnparser_parseregularmove", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L185", + "weight": 1.0, + "_src": "pgnparser_pgnparser_validatemovestext", + "_tgt": "pgnparser_pgnparser_parsealgebraicmove", + "source": "pgnparser_pgnparser_parsealgebraicmove", + "target": "pgnparser_pgnparser_validatemovestext", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L109", + "weight": 1.0, + "_src": "pgnparser_pgnparser_parseregularmove", + "_tgt": "pgnparser_pgnparser_chartopiecetype", + "source": "pgnparser_pgnparser_parseregularmove", + "target": "pgnparser_pgnparser_chartopiecetype", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L117", + "weight": 1.0, + "_src": "pgnparser_pgnparser_parseregularmove", + "_tgt": "pgnparser_pgnparser_extractpromotion", + "source": "pgnparser_pgnparser_parseregularmove", + "target": "pgnparser_pgnparser_extractpromotion", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L129", + "weight": 1.0, + "_src": "pgnparser_pgnparser_parseregularmove", + "_tgt": "pgnparser_pgnparser_matcheshint", + "source": "pgnparser_pgnparser_parseregularmove", + "target": "pgnparser_pgnparser_matcheshint", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/main/scala/de/nowchess/io/pgn/PgnParser.scala", + "source_location": "L130", + "weight": 1.0, + "_src": "pgnparser_pgnparser_parseregularmove", + "_tgt": "pgnparser_pgnparser_promotionmatches", + "source": "pgnparser_pgnparser_parseregularmove", + "target": "pgnparser_pgnparser_promotionmatches", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/test/scala/de/nowchess/io/GameFileServiceSuite.scala", + "source_location": "L12", + "weight": 1.0, + "_src": "modules_io_src_test_scala_de_nowchess_io_gamefileservicesuite_scala", + "_tgt": "gamefileservicesuite_gamefileservicesuite", + "source": "modules_io_src_test_scala_de_nowchess_io_gamefileservicesuite_scala", + "target": "gamefileservicesuite_gamefileservicesuite", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/test/scala/de/nowchess/io/GameFileServiceSuite.scala", + "source_location": "L124", + "weight": 1.0, + "_src": "modules_io_src_test_scala_de_nowchess_io_gamefileservicesuite_scala", + "_tgt": "gamefileservicesuite_exportgamecontext", + "source": "modules_io_src_test_scala_de_nowchess_io_gamefileservicesuite_scala", + "target": "gamefileservicesuite_exportgamecontext", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenExporterTest.scala", + "source_location": "L9", + "weight": 1.0, + "_src": "modules_io_src_test_scala_de_nowchess_io_fen_fenexportertest_scala", + "_tgt": "fenexportertest_fenexportertest", + "source": "modules_io_src_test_scala_de_nowchess_io_fen_fenexportertest_scala", + "target": "fenexportertest_fenexportertest", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenExporterTest.scala", + "source_location": "L11", + "weight": 1.0, + "_src": "fenexportertest_fenexportertest", + "_tgt": "fenexportertest_fenexportertest_context", + "source": "fenexportertest_fenexportertest", + "target": "fenexportertest_fenexportertest_context", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenParserCombinatorsTest.scala", + "source_location": "L7", + "weight": 1.0, + "_src": "modules_io_src_test_scala_de_nowchess_io_fen_fenparsercombinatorstest_scala", + "_tgt": "fenparsercombinatorstest_fenparsercombinatorstest", + "source": "modules_io_src_test_scala_de_nowchess_io_fen_fenparsercombinatorstest_scala", + "target": "fenparsercombinatorstest_fenparsercombinatorstest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenParserFastParseTest.scala", + "source_location": "L7", + "weight": 1.0, + "_src": "modules_io_src_test_scala_de_nowchess_io_fen_fenparserfastparsetest_scala", + "_tgt": "fenparserfastparsetest_fenparserfastparsetest", + "source": "modules_io_src_test_scala_de_nowchess_io_fen_fenparserfastparsetest_scala", + "target": "fenparserfastparsetest_fenparserfastparsetest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/test/scala/de/nowchess/io/fen/FenParserTest.scala", + "source_location": "L7", + "weight": 1.0, + "_src": "modules_io_src_test_scala_de_nowchess_io_fen_fenparsertest_scala", + "_tgt": "fenparsertest_fenparsertest", + "source": "modules_io_src_test_scala_de_nowchess_io_fen_fenparsertest_scala", + "target": "fenparsertest_fenparsertest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonExporterBranchCoverageSuite.scala", + "source_location": "L9", + "weight": 1.0, + "_src": "modules_io_src_test_scala_de_nowchess_io_json_jsonexporterbranchcoveragesuite_scala", + "_tgt": "jsonexporterbranchcoveragesuite_jsonexporterbranchcoveragesuite", + "source": "modules_io_src_test_scala_de_nowchess_io_json_jsonexporterbranchcoveragesuite_scala", + "target": "jsonexporterbranchcoveragesuite_jsonexporterbranchcoveragesuite", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonExporterSuite.scala", + "source_location": "L9", + "weight": 1.0, + "_src": "modules_io_src_test_scala_de_nowchess_io_json_jsonexportersuite_scala", + "_tgt": "jsonexportersuite_jsonexportersuite", + "source": "modules_io_src_test_scala_de_nowchess_io_json_jsonexportersuite_scala", + "target": "jsonexportersuite_jsonexportersuite", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonModelExtraTestSuite.scala", + "source_location": "L6", + "weight": 1.0, + "_src": "modules_io_src_test_scala_de_nowchess_io_json_jsonmodelextratestsuite_scala", + "_tgt": "jsonmodelextratestsuite_jsonmodelextratestsuite", + "source": "modules_io_src_test_scala_de_nowchess_io_json_jsonmodelextratestsuite_scala", + "target": "jsonmodelextratestsuite_jsonmodelextratestsuite", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserEdgeCasesSuite.scala", + "source_location": "L8", + "weight": 1.0, + "_src": "modules_io_src_test_scala_de_nowchess_io_json_jsonparseredgecasessuite_scala", + "_tgt": "jsonparseredgecasessuite_jsonparseredgecasessuite", + "source": "modules_io_src_test_scala_de_nowchess_io_json_jsonparseredgecasessuite_scala", + "target": "jsonparseredgecasessuite_jsonparseredgecasessuite", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserErrorHandlingSuite.scala", + "source_location": "L7", + "weight": 1.0, + "_src": "modules_io_src_test_scala_de_nowchess_io_json_jsonparsererrorhandlingsuite_scala", + "_tgt": "jsonparsererrorhandlingsuite_jsonparsererrorhandlingsuite", + "source": "modules_io_src_test_scala_de_nowchess_io_json_jsonparsererrorhandlingsuite_scala", + "target": "jsonparsererrorhandlingsuite_jsonparsererrorhandlingsuite", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserMoveTypeSuite.scala", + "source_location": "L9", + "weight": 1.0, + "_src": "modules_io_src_test_scala_de_nowchess_io_json_jsonparsermovetypesuite_scala", + "_tgt": "jsonparsermovetypesuite_jsonparsermovetypesuite", + "source": "modules_io_src_test_scala_de_nowchess_io_json_jsonparsermovetypesuite_scala", + "target": "jsonparsermovetypesuite_jsonparsermovetypesuite", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/test/scala/de/nowchess/io/json/JsonParserSuite.scala", + "source_location": "L9", + "weight": 1.0, + "_src": "modules_io_src_test_scala_de_nowchess_io_json_jsonparsersuite_scala", + "_tgt": "jsonparsersuite_jsonparsersuite", + "source": "modules_io_src_test_scala_de_nowchess_io_json_jsonparsersuite_scala", + "target": "jsonparsersuite_jsonparsersuite", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnExporterTest.scala", + "source_location": "L9", + "weight": 1.0, + "_src": "modules_io_src_test_scala_de_nowchess_io_pgn_pgnexportertest_scala", + "_tgt": "pgnexportertest_pgnexportertest", + "source": "modules_io_src_test_scala_de_nowchess_io_pgn_pgnexportertest_scala", + "target": "pgnexportertest_pgnexportertest", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnExporterTest.scala", + "source_location": "L73", + "weight": 1.0, + "_src": "pgnexportertest_pgnexportertest", + "_tgt": "pgnexportertest_pgnexportertest_sq", + "source": "pgnexportertest_pgnexportertest", + "target": "pgnexportertest_pgnexportertest_sq", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnParserTest.scala", + "source_location": "L10", + "weight": 1.0, + "_src": "modules_io_src_test_scala_de_nowchess_io_pgn_pgnparsertest_scala", + "_tgt": "pgnparsertest_pgnparsertest", + "source": "modules_io_src_test_scala_de_nowchess_io_pgn_pgnparsertest_scala", + "target": "pgnparsertest_pgnparsertest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/io/src/test/scala/de/nowchess/io/pgn/PgnValidatorTest.scala", + "source_location": "L8", + "weight": 1.0, + "_src": "modules_io_src_test_scala_de_nowchess_io_pgn_pgnvalidatortest_scala", + "_tgt": "pgnvalidatortest_pgnvalidatortest", + "source": "modules_io_src_test_scala_de_nowchess_io_pgn_pgnvalidatortest_scala", + "target": "pgnvalidatortest_pgnvalidatortest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L12", + "weight": 1.0, + "_src": "modules_rule_src_main_scala_de_nowchess_rules_sets_defaultrules_scala", + "_tgt": "defaultrules_defaultrules", + "source": "modules_rule_src_main_scala_de_nowchess_rules_sets_defaultrules_scala", + "target": "defaultrules_defaultrules", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L127", + "weight": 1.0, + "_src": "modules_rule_src_main_scala_de_nowchess_rules_sets_defaultrules_scala", + "_tgt": "defaultrules_castlingmove", + "source": "modules_rule_src_main_scala_de_nowchess_rules_sets_defaultrules_scala", + "target": "defaultrules_castlingmove", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L22", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_pawnforward", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_pawnforward", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L23", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_pawnstartrank", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_pawnstartrank", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L24", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_pawnpromorank", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_pawnpromorank", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L28", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_candidatemoves", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_candidatemoves", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L41", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_legalmoves", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_legalmoves", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L46", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_alllegalmoves", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_alllegalmoves", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L49", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_ischeck", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_ischeck", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L53", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_ischeckmate", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_ischeckmate", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L56", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_isstalemate", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_isstalemate", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L59", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_isinsufficientmaterial", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_isinsufficientmaterial", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L62", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_isfiftymoverule", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_isfiftymoverule", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L67", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_slidingmoves", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_slidingmoves", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L75", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_castray", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_castray", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L94", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_knightcandidates", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_knightcandidates", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L110", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_kingcandidates", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_kingcandidates", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L135", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_castlingcandidates", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_castlingcandidates", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L144", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_whitecastles", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_whitecastles", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L163", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_blackcastles", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_blackcastles", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L182", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_queensidebsquare", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_queensidebsquare", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L188", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_addcastlemove", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_addcastlemove", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L214", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_squaresempty", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_squaresempty", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L219", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_pawncandidates", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_pawncandidates", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L272", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_kingsquare", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_kingsquare", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L275", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_isattackedby", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_isattackedby", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L282", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_squareattacks", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_squareattacks", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L295", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_rayreaches", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_rayreaches", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L306", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_leaveskingincheck", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_leaveskingincheck", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L313", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_applymove", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_applymove", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L341", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_applycastle", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_applycastle", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L354", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_applyenpassant", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_applyenpassant", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L359", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_applypromotion", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_applypromotion", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L367", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_updatecastlingrights", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_updatecastlingrights", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L392", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_computeenpassantsquare", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_computeenpassantsquare", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L404", + "weight": 1.0, + "_src": "defaultrules_defaultrules", + "_tgt": "defaultrules_defaultrules_insufficientmaterial", + "source": "defaultrules_defaultrules", + "target": "defaultrules_defaultrules_insufficientmaterial", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L224", + "weight": 1.0, + "_src": "defaultrules_defaultrules_pawncandidates", + "_tgt": "defaultrules_defaultrules_pawnforward", + "source": "defaultrules_defaultrules_pawnforward", + "target": "defaultrules_defaultrules_pawncandidates", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L283", + "weight": 1.0, + "_src": "defaultrules_defaultrules_squareattacks", + "_tgt": "defaultrules_defaultrules_pawnforward", + "source": "defaultrules_defaultrules_pawnforward", + "target": "defaultrules_defaultrules_squareattacks", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L225", + "weight": 1.0, + "_src": "defaultrules_defaultrules_pawncandidates", + "_tgt": "defaultrules_defaultrules_pawnstartrank", + "source": "defaultrules_defaultrules_pawnstartrank", + "target": "defaultrules_defaultrules_pawncandidates", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L226", + "weight": 1.0, + "_src": "defaultrules_defaultrules_pawncandidates", + "_tgt": "defaultrules_defaultrules_pawnpromorank", + "source": "defaultrules_defaultrules_pawnpromorank", + "target": "defaultrules_defaultrules_pawncandidates", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L33", + "weight": 1.0, + "_src": "defaultrules_defaultrules_candidatemoves", + "_tgt": "defaultrules_defaultrules_pawncandidates", + "source": "defaultrules_defaultrules_candidatemoves", + "target": "defaultrules_defaultrules_pawncandidates", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L34", + "weight": 1.0, + "_src": "defaultrules_defaultrules_candidatemoves", + "_tgt": "defaultrules_defaultrules_knightcandidates", + "source": "defaultrules_defaultrules_candidatemoves", + "target": "defaultrules_defaultrules_knightcandidates", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L35", + "weight": 1.0, + "_src": "defaultrules_defaultrules_candidatemoves", + "_tgt": "defaultrules_defaultrules_slidingmoves", + "source": "defaultrules_defaultrules_candidatemoves", + "target": "defaultrules_defaultrules_slidingmoves", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L38", + "weight": 1.0, + "_src": "defaultrules_defaultrules_candidatemoves", + "_tgt": "defaultrules_defaultrules_kingcandidates", + "source": "defaultrules_defaultrules_candidatemoves", + "target": "defaultrules_defaultrules_kingcandidates", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L42", + "weight": 1.0, + "_src": "defaultrules_defaultrules_legalmoves", + "_tgt": "defaultrules_defaultrules_candidatemoves", + "source": "defaultrules_defaultrules_candidatemoves", + "target": "defaultrules_defaultrules_legalmoves", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L43", + "weight": 1.0, + "_src": "defaultrules_defaultrules_legalmoves", + "_tgt": "defaultrules_defaultrules_leaveskingincheck", + "source": "defaultrules_defaultrules_legalmoves", + "target": "defaultrules_defaultrules_leaveskingincheck", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L47", + "weight": 1.0, + "_src": "defaultrules_defaultrules_alllegalmoves", + "_tgt": "defaultrules_defaultrules_legalmoves", + "source": "defaultrules_defaultrules_legalmoves", + "target": "defaultrules_defaultrules_alllegalmoves", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L54", + "weight": 1.0, + "_src": "defaultrules_defaultrules_ischeckmate", + "_tgt": "defaultrules_defaultrules_alllegalmoves", + "source": "defaultrules_defaultrules_alllegalmoves", + "target": "defaultrules_defaultrules_ischeckmate", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L57", + "weight": 1.0, + "_src": "defaultrules_defaultrules_isstalemate", + "_tgt": "defaultrules_defaultrules_alllegalmoves", + "source": "defaultrules_defaultrules_alllegalmoves", + "target": "defaultrules_defaultrules_isstalemate", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L50", + "weight": 1.0, + "_src": "defaultrules_defaultrules_ischeck", + "_tgt": "defaultrules_defaultrules_kingsquare", + "source": "defaultrules_defaultrules_ischeck", + "target": "defaultrules_defaultrules_kingsquare", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L51", + "weight": 1.0, + "_src": "defaultrules_defaultrules_ischeck", + "_tgt": "defaultrules_defaultrules_isattackedby", + "source": "defaultrules_defaultrules_ischeck", + "target": "defaultrules_defaultrules_isattackedby", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L54", + "weight": 1.0, + "_src": "defaultrules_defaultrules_ischeckmate", + "_tgt": "defaultrules_defaultrules_ischeck", + "source": "defaultrules_defaultrules_ischeck", + "target": "defaultrules_defaultrules_ischeckmate", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L57", + "weight": 1.0, + "_src": "defaultrules_defaultrules_isstalemate", + "_tgt": "defaultrules_defaultrules_ischeck", + "source": "defaultrules_defaultrules_ischeck", + "target": "defaultrules_defaultrules_isstalemate", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L309", + "weight": 1.0, + "_src": "defaultrules_defaultrules_leaveskingincheck", + "_tgt": "defaultrules_defaultrules_ischeck", + "source": "defaultrules_defaultrules_ischeck", + "target": "defaultrules_defaultrules_leaveskingincheck", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L60", + "weight": 1.0, + "_src": "defaultrules_defaultrules_isinsufficientmaterial", + "_tgt": "defaultrules_defaultrules_insufficientmaterial", + "source": "defaultrules_defaultrules_isinsufficientmaterial", + "target": "defaultrules_defaultrules_insufficientmaterial", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L73", + "weight": 1.0, + "_src": "defaultrules_defaultrules_slidingmoves", + "_tgt": "defaultrules_defaultrules_castray", + "source": "defaultrules_defaultrules_slidingmoves", + "target": "defaultrules_defaultrules_castray", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L123", + "weight": 1.0, + "_src": "defaultrules_defaultrules_kingcandidates", + "_tgt": "defaultrules_defaultrules_castlingcandidates", + "source": "defaultrules_defaultrules_kingcandidates", + "target": "defaultrules_defaultrules_castlingcandidates", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L153", + "weight": 1.0, + "_src": "defaultrules_defaultrules_whitecastles", + "_tgt": "defaultrules_castlingmove", + "source": "defaultrules_castlingmove", + "target": "defaultrules_defaultrules_whitecastles", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L172", + "weight": 1.0, + "_src": "defaultrules_defaultrules_blackcastles", + "_tgt": "defaultrules_castlingmove", + "source": "defaultrules_castlingmove", + "target": "defaultrules_defaultrules_blackcastles", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L141", + "weight": 1.0, + "_src": "defaultrules_defaultrules_castlingcandidates", + "_tgt": "defaultrules_defaultrules_whitecastles", + "source": "defaultrules_defaultrules_castlingcandidates", + "target": "defaultrules_defaultrules_whitecastles", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L142", + "weight": 1.0, + "_src": "defaultrules_defaultrules_castlingcandidates", + "_tgt": "defaultrules_defaultrules_blackcastles", + "source": "defaultrules_defaultrules_castlingcandidates", + "target": "defaultrules_defaultrules_blackcastles", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L149", + "weight": 1.0, + "_src": "defaultrules_defaultrules_whitecastles", + "_tgt": "defaultrules_defaultrules_addcastlemove", + "source": "defaultrules_defaultrules_whitecastles", + "target": "defaultrules_defaultrules_addcastlemove", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L168", + "weight": 1.0, + "_src": "defaultrules_defaultrules_blackcastles", + "_tgt": "defaultrules_defaultrules_addcastlemove", + "source": "defaultrules_defaultrules_blackcastles", + "target": "defaultrules_defaultrules_addcastlemove", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L195", + "weight": 1.0, + "_src": "defaultrules_defaultrules_addcastlemove", + "_tgt": "defaultrules_defaultrules_queensidebsquare", + "source": "defaultrules_defaultrules_queensidebsquare", + "target": "defaultrules_defaultrules_addcastlemove", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L197", + "weight": 1.0, + "_src": "defaultrules_defaultrules_addcastlemove", + "_tgt": "defaultrules_defaultrules_squaresempty", + "source": "defaultrules_defaultrules_addcastlemove", + "target": "defaultrules_defaultrules_squaresempty", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L208", + "weight": 1.0, + "_src": "defaultrules_defaultrules_addcastlemove", + "_tgt": "defaultrules_defaultrules_isattackedby", + "source": "defaultrules_defaultrules_addcastlemove", + "target": "defaultrules_defaultrules_isattackedby", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L278", + "weight": 1.0, + "_src": "defaultrules_defaultrules_isattackedby", + "_tgt": "defaultrules_defaultrules_squareattacks", + "source": "defaultrules_defaultrules_isattackedby", + "target": "defaultrules_defaultrules_squareattacks", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L289", + "weight": 1.0, + "_src": "defaultrules_defaultrules_squareattacks", + "_tgt": "defaultrules_defaultrules_rayreaches", + "source": "defaultrules_defaultrules_squareattacks", + "target": "defaultrules_defaultrules_rayreaches", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L307", + "weight": 1.0, + "_src": "defaultrules_defaultrules_leaveskingincheck", + "_tgt": "defaultrules_defaultrules_applymove", + "source": "defaultrules_defaultrules_leaveskingincheck", + "target": "defaultrules_defaultrules_applymove", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L318", + "weight": 1.0, + "_src": "defaultrules_defaultrules_applymove", + "_tgt": "defaultrules_defaultrules_applycastle", + "source": "defaultrules_defaultrules_applymove", + "target": "defaultrules_defaultrules_applycastle", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L357", + "weight": 1.0, + "_src": "defaultrules_defaultrules_applyenpassant", + "_tgt": "defaultrules_defaultrules_applymove", + "source": "defaultrules_defaultrules_applymove", + "target": "defaultrules_defaultrules_applyenpassant", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L321", + "weight": 1.0, + "_src": "defaultrules_defaultrules_applymove", + "_tgt": "defaultrules_defaultrules_applypromotion", + "source": "defaultrules_defaultrules_applymove", + "target": "defaultrules_defaultrules_applypromotion", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L324", + "weight": 1.0, + "_src": "defaultrules_defaultrules_applymove", + "_tgt": "defaultrules_defaultrules_updatecastlingrights", + "source": "defaultrules_defaultrules_applymove", + "target": "defaultrules_defaultrules_updatecastlingrights", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/main/scala/de/nowchess/rules/sets/DefaultRules.scala", + "source_location": "L325", + "weight": 1.0, + "_src": "defaultrules_defaultrules_applymove", + "_tgt": "defaultrules_defaultrules_computeenpassantsquare", + "source": "defaultrules_defaultrules_applymove", + "target": "defaultrules_defaultrules_computeenpassantsquare", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesStateTransitionsTest.scala", + "source_location": "L11", + "weight": 1.0, + "_src": "modules_rule_src_test_scala_de_nowchess_rule_defaultrulesstatetransitionstest_scala", + "_tgt": "defaultrulesstatetransitionstest_defaultrulesstatetransitionstest", + "source": "modules_rule_src_test_scala_de_nowchess_rule_defaultrulesstatetransitionstest_scala", + "target": "defaultrulesstatetransitionstest_defaultrulesstatetransitionstest", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesStateTransitionsTest.scala", + "source_location": "L13", + "weight": 1.0, + "_src": "defaultrulesstatetransitionstest_defaultrulesstatetransitionstest", + "_tgt": "defaultrulesstatetransitionstest_defaultrulesstatetransitionstest_contextfromfen", + "source": "defaultrulesstatetransitionstest_defaultrulesstatetransitionstest", + "target": "defaultrulesstatetransitionstest_defaultrulesstatetransitionstest_contextfromfen", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesStateTransitionsTest.scala", + "source_location": "L16", + "weight": 1.0, + "_src": "defaultrulesstatetransitionstest_defaultrulesstatetransitionstest", + "_tgt": "defaultrulesstatetransitionstest_defaultrulesstatetransitionstest_sq", + "source": "defaultrulesstatetransitionstest_defaultrulesstatetransitionstest", + "target": "defaultrulesstatetransitionstest_defaultrulesstatetransitionstest_sq", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/rule/src/test/scala/de/nowchess/rule/DefaultRulesTest.scala", + "source_location": "L11", + "weight": 1.0, + "_src": "modules_rule_src_test_scala_de_nowchess_rule_defaultrulestest_scala", + "_tgt": "defaultrulestest_defaultrulestest", + "source": "modules_rule_src_test_scala_de_nowchess_rule_defaultrulestest_scala", + "target": "defaultrulestest_defaultrulestest", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/Main.scala", + "source_location": "L14", + "weight": 1.0, + "_src": "modules_ui_src_main_scala_de_nowchess_ui_main_scala", + "_tgt": "main_main", + "source": "modules_ui_src_main_scala_de_nowchess_ui_main_scala", + "target": "main_main", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/Main.scala", + "source_location": "L15", + "weight": 1.0, + "_src": "main_main", + "_tgt": "main_main_main", + "source": "main_main", + "target": "main_main_main", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L28", + "weight": 1.0, + "_src": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessboardview_scala", + "_tgt": "chessboardview_chessboardview", + "source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessboardview_scala", + "target": "chessboardview_chessboardview", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L149", + "weight": 1.0, + "_src": "chessboardview_chessboardview", + "_tgt": "chessboardview_chessboardview_initializeboard", + "source": "chessboardview_chessboardview", + "target": "chessboardview_chessboardview_initializeboard", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L165", + "weight": 1.0, + "_src": "chessboardview_chessboardview", + "_tgt": "chessboardview_chessboardview_createsquare", + "source": "chessboardview_chessboardview", + "target": "chessboardview_chessboardview_createsquare", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L185", + "weight": 1.0, + "_src": "chessboardview_chessboardview", + "_tgt": "chessboardview_chessboardview_handlesquareclick", + "source": "chessboardview_chessboardview", + "target": "chessboardview_chessboardview_handlesquareclick", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L218", + "weight": 1.0, + "_src": "chessboardview_chessboardview", + "_tgt": "chessboardview_chessboardview_updateboard", + "source": "chessboardview_chessboardview", + "target": "chessboardview_chessboardview_updateboard", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L254", + "weight": 1.0, + "_src": "chessboardview_chessboardview", + "_tgt": "chessboardview_chessboardview_updateundoredobuttons", + "source": "chessboardview_chessboardview", + "target": "chessboardview_chessboardview_updateundoredobuttons", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L258", + "weight": 1.0, + "_src": "chessboardview_chessboardview", + "_tgt": "chessboardview_chessboardview_highlightsquare", + "source": "chessboardview_chessboardview", + "target": "chessboardview_chessboardview_highlightsquare", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L278", + "weight": 1.0, + "_src": "chessboardview_chessboardview", + "_tgt": "chessboardview_chessboardview_showmessage", + "source": "chessboardview_chessboardview", + "target": "chessboardview_chessboardview_showmessage", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L281", + "weight": 1.0, + "_src": "chessboardview_chessboardview", + "_tgt": "chessboardview_chessboardview_showpromotiondialog", + "source": "chessboardview_chessboardview", + "target": "chessboardview_chessboardview_showpromotiondialog", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L298", + "weight": 1.0, + "_src": "chessboardview_chessboardview", + "_tgt": "chessboardview_chessboardview_dofenexport", + "source": "chessboardview_chessboardview", + "target": "chessboardview_chessboardview_dofenexport", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L301", + "weight": 1.0, + "_src": "chessboardview_chessboardview", + "_tgt": "chessboardview_chessboardview_dofenimport", + "source": "chessboardview_chessboardview", + "target": "chessboardview_chessboardview_dofenimport", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L304", + "weight": 1.0, + "_src": "chessboardview_chessboardview", + "_tgt": "chessboardview_chessboardview_dopgnexport", + "source": "chessboardview_chessboardview", + "target": "chessboardview_chessboardview_dopgnexport", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L307", + "weight": 1.0, + "_src": "chessboardview_chessboardview", + "_tgt": "chessboardview_chessboardview_dopgnimport", + "source": "chessboardview_chessboardview", + "target": "chessboardview_chessboardview_dopgnimport", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L310", + "weight": 1.0, + "_src": "chessboardview_chessboardview", + "_tgt": "chessboardview_chessboardview_dojsonexport", + "source": "chessboardview_chessboardview", + "target": "chessboardview_chessboardview_dojsonexport", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L329", + "weight": 1.0, + "_src": "chessboardview_chessboardview", + "_tgt": "chessboardview_chessboardview_dojsonimport", + "source": "chessboardview_chessboardview", + "target": "chessboardview_chessboardview_dojsonimport", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L349", + "weight": 1.0, + "_src": "chessboardview_chessboardview", + "_tgt": "chessboardview_chessboardview_doexport", + "source": "chessboardview_chessboardview", + "target": "chessboardview_chessboardview_doexport", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L354", + "weight": 1.0, + "_src": "chessboardview_chessboardview", + "_tgt": "chessboardview_chessboardview_doimport", + "source": "chessboardview_chessboardview", + "target": "chessboardview_chessboardview_doimport", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L364", + "weight": 1.0, + "_src": "chessboardview_chessboardview", + "_tgt": "chessboardview_chessboardview_showcopydialog", + "source": "chessboardview_chessboardview", + "target": "chessboardview_chessboardview_showcopydialog", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L377", + "weight": 1.0, + "_src": "chessboardview_chessboardview", + "_tgt": "chessboardview_chessboardview_showinputdialog", + "source": "chessboardview_chessboardview", + "target": "chessboardview_chessboardview_showinputdialog", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L159", + "weight": 1.0, + "_src": "chessboardview_chessboardview_initializeboard", + "_tgt": "chessboardview_chessboardview_createsquare", + "source": "chessboardview_chessboardview_initializeboard", + "target": "chessboardview_chessboardview_createsquare", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L163", + "weight": 1.0, + "_src": "chessboardview_chessboardview_initializeboard", + "_tgt": "chessboardview_chessboardview_updateboard", + "source": "chessboardview_chessboardview_initializeboard", + "target": "chessboardview_chessboardview_updateboard", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L179", + "weight": 1.0, + "_src": "chessboardview_chessboardview_createsquare", + "_tgt": "chessboardview_chessboardview_handlesquareclick", + "source": "chessboardview_chessboardview_createsquare", + "target": "chessboardview_chessboardview_handlesquareclick", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L196", + "weight": 1.0, + "_src": "chessboardview_chessboardview_handlesquareclick", + "_tgt": "chessboardview_chessboardview_highlightsquare", + "source": "chessboardview_chessboardview_handlesquareclick", + "target": "chessboardview_chessboardview_highlightsquare", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L211", + "weight": 1.0, + "_src": "chessboardview_chessboardview_handlesquareclick", + "_tgt": "chessboardview_chessboardview_updateboard", + "source": "chessboardview_chessboardview_handlesquareclick", + "target": "chessboardview_chessboardview_updateboard", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L252", + "weight": 1.0, + "_src": "chessboardview_chessboardview_updateboard", + "_tgt": "chessboardview_chessboardview_updateundoredobuttons", + "source": "chessboardview_chessboardview_updateboard", + "target": "chessboardview_chessboardview_updateundoredobuttons", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L326", + "weight": 1.0, + "_src": "chessboardview_chessboardview_dojsonexport", + "_tgt": "chessboardview_chessboardview_showmessage", + "source": "chessboardview_chessboardview_showmessage", + "target": "chessboardview_chessboardview_dojsonexport", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L345", + "weight": 1.0, + "_src": "chessboardview_chessboardview_dojsonimport", + "_tgt": "chessboardview_chessboardview_showmessage", + "source": "chessboardview_chessboardview_showmessage", + "target": "chessboardview_chessboardview_dojsonimport", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L359", + "weight": 1.0, + "_src": "chessboardview_chessboardview_doimport", + "_tgt": "chessboardview_chessboardview_showmessage", + "source": "chessboardview_chessboardview_showmessage", + "target": "chessboardview_chessboardview_doimport", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L299", + "weight": 1.0, + "_src": "chessboardview_chessboardview_dofenexport", + "_tgt": "chessboardview_chessboardview_doexport", + "source": "chessboardview_chessboardview_dofenexport", + "target": "chessboardview_chessboardview_doexport", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L302", + "weight": 1.0, + "_src": "chessboardview_chessboardview_dofenimport", + "_tgt": "chessboardview_chessboardview_doimport", + "source": "chessboardview_chessboardview_dofenimport", + "target": "chessboardview_chessboardview_doimport", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L305", + "weight": 1.0, + "_src": "chessboardview_chessboardview_dopgnexport", + "_tgt": "chessboardview_chessboardview_doexport", + "source": "chessboardview_chessboardview_dopgnexport", + "target": "chessboardview_chessboardview_doexport", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L308", + "weight": 1.0, + "_src": "chessboardview_chessboardview_dopgnimport", + "_tgt": "chessboardview_chessboardview_doimport", + "source": "chessboardview_chessboardview_dopgnimport", + "target": "chessboardview_chessboardview_doimport", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L351", + "weight": 1.0, + "_src": "chessboardview_chessboardview_doexport", + "_tgt": "chessboardview_chessboardview_showcopydialog", + "source": "chessboardview_chessboardview_doexport", + "target": "chessboardview_chessboardview_showcopydialog", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessBoardView.scala", + "source_location": "L355", + "weight": 1.0, + "_src": "chessboardview_chessboardview_doimport", + "_tgt": "chessboardview_chessboardview_showinputdialog", + "source": "chessboardview_chessboardview_doimport", + "target": "chessboardview_chessboardview_showinputdialog", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessGUI.scala", + "source_location": "L13", + "weight": 1.0, + "_src": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessgui_scala", + "_tgt": "chessgui_chessguiapp", + "source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessgui_scala", + "target": "chessgui_chessguiapp", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessGUI.scala", + "source_location": "L48", + "weight": 1.0, + "_src": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessgui_scala", + "_tgt": "chessgui_chessguilauncher", + "source": "modules_ui_src_main_scala_de_nowchess_ui_gui_chessgui_scala", + "target": "chessgui_chessguilauncher", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessGUI.scala", + "source_location": "L15", + "weight": 1.0, + "_src": "chessgui_chessguiapp", + "_tgt": "chessgui_chessguiapp_start", + "source": "chessgui_chessguiapp", + "target": "chessgui_chessguiapp_start", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessGUI.scala", + "source_location": "L58", + "weight": 1.0, + "_src": "chessgui_chessguilauncher_launch", + "_tgt": "chessgui_chessguiapp_start", + "source": "chessgui_chessguiapp_start", + "target": "chessgui_chessguilauncher_launch", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessGUI.scala", + "source_location": "L51", + "weight": 1.0, + "_src": "chessgui_chessguilauncher", + "_tgt": "chessgui_chessguilauncher_getengine", + "source": "chessgui_chessguilauncher", + "target": "chessgui_chessguilauncher_getengine", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/ChessGUI.scala", + "source_location": "L53", + "weight": 1.0, + "_src": "chessgui_chessguilauncher", + "_tgt": "chessgui_chessguilauncher_launch", + "source": "chessgui_chessguilauncher", + "target": "chessgui_chessguilauncher_launch", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/GUIObserver.scala", + "source_location": "L12", + "weight": 1.0, + "_src": "modules_ui_src_main_scala_de_nowchess_ui_gui_guiobserver_scala", + "_tgt": "guiobserver_guiobserver", + "source": "modules_ui_src_main_scala_de_nowchess_ui_gui_guiobserver_scala", + "target": "guiobserver_guiobserver", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/GUIObserver.scala", + "source_location": "L14", + "weight": 1.0, + "_src": "guiobserver_guiobserver", + "_tgt": "guiobserver_guiobserver_ongameevent", + "source": "guiobserver_guiobserver", + "target": "guiobserver_guiobserver_ongameevent", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/GUIObserver.scala", + "source_location": "L71", + "weight": 1.0, + "_src": "guiobserver_guiobserver", + "_tgt": "guiobserver_guiobserver_showalert", + "source": "guiobserver_guiobserver", + "target": "guiobserver_guiobserver_showalert", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/GUIObserver.scala", + "source_location": "L30", + "weight": 1.0, + "_src": "guiobserver_guiobserver_ongameevent", + "_tgt": "guiobserver_guiobserver_showalert", + "source": "guiobserver_guiobserver_ongameevent", + "target": "guiobserver_guiobserver_showalert", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/PieceSprites.scala", + "source_location": "L7", + "weight": 1.0, + "_src": "modules_ui_src_main_scala_de_nowchess_ui_gui_piecesprites_scala", + "_tgt": "piecesprites_piecesprites", + "source": "modules_ui_src_main_scala_de_nowchess_ui_gui_piecesprites_scala", + "target": "piecesprites_piecesprites", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/PieceSprites.scala", + "source_location": "L31", + "weight": 1.0, + "_src": "modules_ui_src_main_scala_de_nowchess_ui_gui_piecesprites_scala", + "_tgt": "piecesprites_squarecolors", + "source": "modules_ui_src_main_scala_de_nowchess_ui_gui_piecesprites_scala", + "target": "piecesprites_squarecolors", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/PieceSprites.scala", + "source_location": "L13", + "weight": 1.0, + "_src": "piecesprites_piecesprites", + "_tgt": "piecesprites_piecesprites_loadpieceimage", + "source": "piecesprites_piecesprites", + "target": "piecesprites_piecesprites_loadpieceimage", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/PieceSprites.scala", + "source_location": "L24", + "weight": 1.0, + "_src": "piecesprites_piecesprites", + "_tgt": "piecesprites_piecesprites_loadimage", + "source": "piecesprites_piecesprites", + "target": "piecesprites_piecesprites_loadimage", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/gui/PieceSprites.scala", + "source_location": "L15", + "weight": 1.0, + "_src": "piecesprites_piecesprites_loadpieceimage", + "_tgt": "piecesprites_piecesprites_loadimage", + "source": "piecesprites_piecesprites_loadpieceimage", + "target": "piecesprites_piecesprites_loadimage", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/terminal/TerminalUI.scala", + "source_location": "L12", + "weight": 1.0, + "_src": "modules_ui_src_main_scala_de_nowchess_ui_terminal_terminalui_scala", + "_tgt": "terminalui_terminalui", + "source": "modules_ui_src_main_scala_de_nowchess_ui_terminal_terminalui_scala", + "target": "terminalui_terminalui", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/terminal/TerminalUI.scala", + "source_location": "L17", + "weight": 1.0, + "_src": "terminalui_terminalui", + "_tgt": "terminalui_terminalui_ongameevent", + "source": "terminalui_terminalui", + "target": "terminalui_terminalui_ongameevent", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/terminal/TerminalUI.scala", + "source_location": "L77", + "weight": 1.0, + "_src": "terminalui_terminalui", + "_tgt": "terminalui_terminalui_start", + "source": "terminalui_terminalui", + "target": "terminalui_terminalui_start", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/terminal/TerminalUI.scala", + "source_location": "L113", + "weight": 1.0, + "_src": "terminalui_terminalui", + "_tgt": "terminalui_terminalui_printprompt", + "source": "terminalui_terminalui", + "target": "terminalui_terminalui_printprompt", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/terminal/TerminalUI.scala", + "source_location": "L24", + "weight": 1.0, + "_src": "terminalui_terminalui_ongameevent", + "_tgt": "terminalui_terminalui_printprompt", + "source": "terminalui_terminalui_ongameevent", + "target": "terminalui_terminalui_printprompt", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/terminal/TerminalUI.scala", + "source_location": "L84", + "weight": 1.0, + "_src": "terminalui_terminalui_start", + "_tgt": "terminalui_terminalui_printprompt", + "source": "terminalui_terminalui_start", + "target": "terminalui_terminalui_printprompt", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/utils/PieceUnicode.scala", + "source_location": "L6", + "weight": 1.0, + "_src": "modules_ui_src_main_scala_de_nowchess_ui_utils_pieceunicode_scala", + "_tgt": "pieceunicode_unicode", + "source": "modules_ui_src_main_scala_de_nowchess_ui_utils_pieceunicode_scala", + "target": "pieceunicode_unicode", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/utils/Renderer.scala", + "source_location": "L5", + "weight": 1.0, + "_src": "modules_ui_src_main_scala_de_nowchess_ui_utils_renderer_scala", + "_tgt": "renderer_renderer", + "source": "modules_ui_src_main_scala_de_nowchess_ui_utils_renderer_scala", + "target": "renderer_renderer", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/main/scala/de/nowchess/ui/utils/Renderer.scala", + "source_location": "L13", + "weight": 1.0, + "_src": "renderer_renderer", + "_tgt": "renderer_renderer_render", + "source": "renderer_renderer", + "target": "renderer_renderer_render", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "modules/ui/src/test/scala/de/nowchess/ui/utils/RendererAndUnicodeTest.scala", + "source_location": "L7", + "weight": 1.0, + "_src": "modules_ui_src_test_scala_de_nowchess_ui_utils_rendererandunicodetest_scala", + "_tgt": "rendererandunicodetest_rendererandunicodetest", + "source": "modules_ui_src_test_scala_de_nowchess_ui_utils_rendererandunicodetest_scala", + "target": "rendererandunicodetest_rendererandunicodetest", + "confidence_score": 1.0 + } + ], + "hyperedges": [] +} \ No newline at end of file diff --git a/modules/bot/src/main/scala/de/nowchess/bot/BotController.scala b/modules/bot/src/main/scala/de/nowchess/bot/BotController.scala index 7c2891e..98a4de8 100644 --- a/modules/bot/src/main/scala/de/nowchess/bot/BotController.scala +++ b/modules/bot/src/main/scala/de/nowchess/bot/BotController.scala @@ -4,22 +4,12 @@ import de.nowchess.bot.bots.ClassicalBot object BotController { - private var bots: Map[String, Bot] = Map.empty - - // Register standard bots - locally { - val easyBot = ClassicalBot(BotDifficulty.Easy) - val mediumBot = ClassicalBot(BotDifficulty.Medium) - val hardBot = ClassicalBot(BotDifficulty.Hard) - val expertBot = ClassicalBot(BotDifficulty.Expert) - - bots = Map( - "easy" -> easyBot, - "medium" -> mediumBot, - "hard" -> hardBot, - "expert" -> expertBot - ) - } + private val bots: Map[String, Bot] = Map( + "easy" -> ClassicalBot(BotDifficulty.Easy), + "medium" -> ClassicalBot(BotDifficulty.Medium), + "hard" -> ClassicalBot(BotDifficulty.Hard), + "expert" -> ClassicalBot(BotDifficulty.Expert), + ) /** Get a bot by name. */ def getBot(name: String): Option[Bot] = bots.get(name.toLowerCase) diff --git a/modules/bot/src/main/scala/de/nowchess/bot/Config.scala b/modules/bot/src/main/scala/de/nowchess/bot/Config.scala index 8cab939..b1e8298 100644 --- a/modules/bot/src/main/scala/de/nowchess/bot/Config.scala +++ b/modules/bot/src/main/scala/de/nowchess/bot/Config.scala @@ -2,8 +2,9 @@ package de.nowchess.bot object Config: - /** Threshold in centipawns: if classical evaluation differs from NNUE by more than this, - * the move is vetoed (not accepted as a suggestion). */ + /** Threshold in centipawns: if classical evaluation differs from NNUE by more than this, the move is vetoed (not + * accepted as a suggestion). + */ val VETO_THRESHOLD: Int = 150 /** Time budget per move for iterative deepening (milliseconds). */ diff --git a/modules/bot/src/main/scala/de/nowchess/bot/ai/Weights.scala b/modules/bot/src/main/scala/de/nowchess/bot/ai/Weights.scala deleted file mode 100644 index f48525c..0000000 --- a/modules/bot/src/main/scala/de/nowchess/bot/ai/Weights.scala +++ /dev/null @@ -1,12 +0,0 @@ -package de.nowchess.bot.ai - -import de.nowchess.api.game.GameContext - -trait Weights { - - def CHECKMATE_SCORE: Int - def DRAW_SCORE: Int - - def evaluate(context: GameContext): Int - -} diff --git a/modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala b/modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala index 4097e6b..835d0a5 100644 --- a/modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala +++ b/modules/bot/src/main/scala/de/nowchess/bot/bots/ClassicalBot.scala @@ -10,16 +10,17 @@ import de.nowchess.rules.RuleSet import de.nowchess.rules.sets.DefaultRules final class ClassicalBot( - difficulty: BotDifficulty, - rules: RuleSet = DefaultRules, - book: Option[PolyglotBook] = None + difficulty: BotDifficulty, + rules: RuleSet = DefaultRules, + book: Option[PolyglotBook] = None, ) extends Bot: private val search: AlphaBetaSearch = AlphaBetaSearch(rules, weights = EvaluationClassic) - private val TIME_BUDGET_MS = 1000L + private val TIME_BUDGET_MS = 1000L override val name: String = s"ClassicalBot(${difficulty.toString})" override def nextMove(context: GameContext): Option[Move] = - book.flatMap(_.probe(context)) + book + .flatMap(_.probe(context)) .orElse(search.bestMoveWithTime(context, TIME_BUDGET_MS)) diff --git a/modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala b/modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala index bad1a3a..8ef6507 100644 --- a/modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala +++ b/modules/bot/src/main/scala/de/nowchess/bot/bots/HybridBot.scala @@ -11,9 +11,9 @@ import de.nowchess.rules.RuleSet import de.nowchess.rules.sets.DefaultRules final class HybridBot( - difficulty: BotDifficulty, - rules: RuleSet = DefaultRules, - book: Option[PolyglotBook] = None + difficulty: BotDifficulty, + rules: RuleSet = DefaultRules, + book: Option[PolyglotBook] = None, ) extends Bot: private val search = AlphaBetaSearch(rules, TranspositionTable(), EvaluationClassic) @@ -25,11 +25,13 @@ final class HybridBot( private def searchWithVeto(context: GameContext): Option[Move] = search.bestMoveWithTime(context, Config.TIME_LIMIT_MS).map { move => - val next = rules.applyMove(context)(move) + val next = rules.applyMove(context)(move) val staticNnue = EvaluationNNUE.evaluate(next) val classical = EvaluationClassic.evaluate(next) - val diff = (classical - staticNnue).abs + val diff = (classical - staticNnue).abs if diff > Config.VETO_THRESHOLD then - println(f"[Veto] ${move.from}->${move.to}: nnue=$staticNnue classical=$classical diff=$diff — flagged but trusted (deep search)") + println( + f"[Veto] ${move.from}->${move.to}: nnue=$staticNnue classical=$classical diff=$diff — flagged but trusted (deep search)", + ) move } diff --git a/modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala b/modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala index 62c5c36..de40dff 100644 --- a/modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala +++ b/modules/bot/src/main/scala/de/nowchess/bot/bots/classic/EvaluationClassic.scala @@ -2,12 +2,12 @@ package de.nowchess.bot.bots.classic import de.nowchess.api.board.{Color, PieceType, Square} import de.nowchess.api.game.GameContext -import de.nowchess.bot.ai.Weights +import de.nowchess.bot.ai.Evaluation -object EvaluationClassic extends Weights: +object EvaluationClassic extends Evaluation: val CHECKMATE_SCORE: Int = 10_000_000 - val DRAW_SCORE: Int = 0 + val DRAW_SCORE: Int = 0 // Material values in centipawns (indexed by PieceType.ordinal: Pawn=0, Knight=1, Bishop=2, Rook=3, Queen=4, King=5) private val mgMaterial = Array(100, 325, 335, 500, 900, 20_000) @@ -21,151 +21,87 @@ object EvaluationClassic extends Weights: // Black is vertically mirrored private val mgPawnTable: Array[Int] = Array( - 0, 0, 0, 0, 0, 0, 0, 0, - 50, 50, 50, 50, 50, 50, 50, 50, - 10, 10, 20, 30, 30, 20, 10, 10, - 5, 5, 10, 25, 25, 10, 5, 5, - 0, 0, 0, 20, 20, 0, 0, 0, - 5, -5, -10, 0, 0, -10, -5, 5, - 5, 10, 10, -20, -20, 10, 10, 5, - 0, 0, 0, 0, 0, 0, 0, 0 + 0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 10, 10, 20, 30, 30, 20, 10, 10, 5, 5, 10, 25, 25, 10, 5, 5, + 0, 0, 0, 20, 20, 0, 0, 0, 5, -5, -10, 0, 0, -10, -5, 5, 5, 10, 10, -20, -20, 10, 10, 5, 0, 0, 0, 0, 0, 0, 0, 0, ) private val egPawnTable: Array[Int] = Array( - 0, 0, 0, 0, 0, 0, 0, 0, - 70, 70, 70, 70, 70, 70, 70, 70, - 40, 40, 40, 40, 40, 40, 40, 40, - 30, 30, 30, 30, 30, 30, 30, 30, - 20, 20, 20, 20, 20, 20, 20, 20, - 10, 10, 10, 10, 10, 10, 10, 10, - 5, 5, 5, 5, 5, 5, 5, 5, - 0, 0, 0, 0, 0, 0, 0, 0 + 0, 0, 0, 0, 0, 0, 0, 0, 70, 70, 70, 70, 70, 70, 70, 70, 40, 40, 40, 40, 40, 40, 40, 40, 30, 30, 30, 30, 30, 30, 30, + 30, 20, 20, 20, 20, 20, 20, 20, 20, 10, 10, 10, 10, 10, 10, 10, 10, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, ) private val mgKnightTable: Array[Int] = Array( + -50, -40, -30, -30, -30, -30, -40, -50, -40, -20, 0, 0, 0, 0, -20, -40, -30, 0, 10, 15, 15, 10, 0, -30, -30, 5, 15, + 20, 20, 15, 5, -30, -30, 0, 15, 20, 20, 15, 0, -30, -30, 5, 10, 15, 15, 10, 5, -30, -40, -20, 0, 5, 5, 0, -20, -40, -50, -40, -30, -30, -30, -30, -40, -50, - -40, -20, 0, 0, 0, 0, -20, -40, - -30, 0, 10, 15, 15, 10, 0, -30, - -30, 5, 15, 20, 20, 15, 5, -30, - -30, 0, 15, 20, 20, 15, 0, -30, - -30, 5, 10, 15, 15, 10, 5, -30, - -40, -20, 0, 5, 5, 0, -20, -40, - -50, -40, -30, -30, -30, -30, -40, -50 ) private val egKnightTable: Array[Int] = Array( - -30, -20, -10, -10, -10, -10, -20, -30, - -20, 0, 5, 5, 5, 5, 0, -20, - -10, 5, 15, 20, 20, 15, 5, -10, - -10, 5, 20, 25, 25, 20, 5, -10, - -10, 5, 20, 25, 25, 20, 5, -10, - -10, 5, 15, 20, 20, 15, 5, -10, - -20, 0, 5, 5, 5, 5, 0, -20, - -30, -20, -10, -10, -10, -10, -20, -30 + -30, -20, -10, -10, -10, -10, -20, -30, -20, 0, 5, 5, 5, 5, 0, -20, -10, 5, 15, 20, 20, 15, 5, -10, -10, 5, 20, 25, + 25, 20, 5, -10, -10, 5, 20, 25, 25, 20, 5, -10, -10, 5, 15, 20, 20, 15, 5, -10, -20, 0, 5, 5, 5, 5, 0, -20, -30, + -20, -10, -10, -10, -10, -20, -30, ) private val mgBishopTable: Array[Int] = Array( - -20, -10, -10, -10, -10, -10, -10, -20, - -10, 0, 0, 0, 0, 0, 0, -10, - -10, 0, 5, 10, 10, 5, 0, -10, - -10, 5, 5, 10, 10, 5, 5, -10, - -10, 0, 10, 10, 10, 10, 0, -10, - -10, 10, 10, 10, 10, 10, 10, -10, - -10, 5, 0, 0, 0, 0, 5, -10, - -20, -10, -10, -10, -10, -10, -10, -20 + -20, -10, -10, -10, -10, -10, -10, -20, -10, 0, 0, 0, 0, 0, 0, -10, -10, 0, 5, 10, 10, 5, 0, -10, -10, 5, 5, 10, 10, + 5, 5, -10, -10, 0, 10, 10, 10, 10, 0, -10, -10, 10, 10, 10, 10, 10, 10, -10, -10, 5, 0, 0, 0, 0, 5, -10, -20, -10, + -10, -10, -10, -10, -10, -20, ) private val egBishopTable: Array[Int] = Array( - -20, -10, -5, -5, -5, -5, -10, -20, - -10, 0, 5, 5, 5, 5, 0, -10, - -5, 5, 10, 10, 10, 10, 5, -5, - -5, 5, 10, 15, 15, 10, 5, -5, - -5, 5, 10, 15, 15, 10, 5, -5, - -5, 5, 10, 10, 10, 10, 5, -5, - -10, 0, 5, 5, 5, 5, 0, -10, - -20, -10, -5, -5, -5, -5, -10, -20 + -20, -10, -5, -5, -5, -5, -10, -20, -10, 0, 5, 5, 5, 5, 0, -10, -5, 5, 10, 10, 10, 10, 5, -5, -5, 5, 10, 15, 15, 10, + 5, -5, -5, 5, 10, 15, 15, 10, 5, -5, -5, 5, 10, 10, 10, 10, 5, -5, -10, 0, 5, 5, 5, 5, 0, -10, -20, -10, -5, -5, -5, + -5, -10, -20, ) private val mgRookTable: Array[Int] = Array( - 0, 0, 0, 0, 0, 0, 0, 0, - 5, 10, 10, 10, 10, 10, 10, 5, - -5, 0, 0, 0, 0, 0, 0, -5, - -5, 0, 0, 0, 0, 0, 0, -5, - -5, 0, 0, 0, 0, 0, 0, -5, - -5, 0, 0, 0, 0, 0, 0, -5, - -5, 0, 0, 0, 0, 0, 0, -5, - 0, 0, 0, 5, 5, 0, 0, 0 + 0, 0, 0, 0, 0, 0, 0, 0, 5, 10, 10, 10, 10, 10, 10, 5, -5, 0, 0, 0, 0, 0, 0, -5, -5, 0, 0, 0, 0, 0, 0, -5, -5, 0, 0, + 0, 0, 0, 0, -5, -5, 0, 0, 0, 0, 0, 0, -5, -5, 0, 0, 0, 0, 0, 0, -5, 0, 0, 0, 5, 5, 0, 0, 0, ) private val egRookTable: Array[Int] = Array( - 0, 0, 0, 0, 0, 0, 0, 0, - 5, 10, 10, 10, 10, 10, 10, 5, - -5, 0, 0, 0, 0, 0, 0, -5, - -5, 0, 0, 0, 0, 0, 0, -5, - -5, 0, 0, 0, 0, 0, 0, -5, - -5, 0, 0, 0, 0, 0, 0, -5, - -5, 0, 0, 0, 0, 0, 0, -5, - 0, 0, 0, 5, 5, 0, 0, 0 + 0, 0, 0, 0, 0, 0, 0, 0, 5, 10, 10, 10, 10, 10, 10, 5, -5, 0, 0, 0, 0, 0, 0, -5, -5, 0, 0, 0, 0, 0, 0, -5, -5, 0, 0, + 0, 0, 0, 0, -5, -5, 0, 0, 0, 0, 0, 0, -5, -5, 0, 0, 0, 0, 0, 0, -5, 0, 0, 0, 5, 5, 0, 0, 0, ) private val mgQueenTable: Array[Int] = Array( - -20, -10, -10, -5, -5, -10, -10, -20, - -10, 0, 0, 0, 0, 0, 0, -10, - -10, 0, 5, 5, 5, 5, 0, -10, - -5, 0, 5, 5, 5, 5, 0, -5, - 0, 0, 5, 5, 5, 5, 0, -5, - -10, 5, 5, 5, 5, 5, 0, -10, - -10, 0, 5, 0, 0, 0, 0, -10, - -20, -10, -10, -5, -5, -10, -10, -20 + -20, -10, -10, -5, -5, -10, -10, -20, -10, 0, 0, 0, 0, 0, 0, -10, -10, 0, 5, 5, 5, 5, 0, -10, -5, 0, 5, 5, 5, 5, 0, + -5, 0, 0, 5, 5, 5, 5, 0, -5, -10, 5, 5, 5, 5, 5, 0, -10, -10, 0, 5, 0, 0, 0, 0, -10, -20, -10, -10, -5, -5, -10, + -10, -20, ) private val egQueenTable: Array[Int] = Array( - -15, -10, -8, -5, -5, -8, -10, -15, - -10, 0, 3, 5, 5, 3, 0, -10, - -8, 3, 10, 10, 10, 10, 3, -8, - -5, 5, 10, 15, 15, 10, 5, -5, - -5, 5, 10, 15, 15, 10, 5, -5, - -8, 3, 10, 10, 10, 10, 3, -8, - -10, 0, 3, 5, 5, 3, 0, -10, - -15, -10, -8, -5, -5, -8, -10, -15 + -15, -10, -8, -5, -5, -8, -10, -15, -10, 0, 3, 5, 5, 3, 0, -10, -8, 3, 10, 10, 10, 10, 3, -8, -5, 5, 10, 15, 15, 10, + 5, -5, -5, 5, 10, 15, 15, 10, 5, -5, -8, 3, 10, 10, 10, 10, 3, -8, -10, 0, 3, 5, 5, 3, 0, -10, -15, -10, -8, -5, -5, + -8, -10, -15, ) private val mgKingTable: Array[Int] = Array( - -30, -40, -40, -50, -50, -40, -40, -30, - -30, -40, -40, -50, -50, -40, -40, -30, - -30, -40, -40, -50, -50, -40, -40, -30, - -30, -40, -40, -50, -50, -40, -40, -30, - -20, -30, -30, -40, -40, -30, -30, -20, - -10, -20, -20, -20, -20, -20, -20, -10, - 20, 20, 0, 0, 0, 0, 20, 20, - 20, 30, 10, 0, 0, 10, 30, 20 + -30, -40, -40, -50, -50, -40, -40, -30, -30, -40, -40, -50, -50, -40, -40, -30, -30, -40, -40, -50, -50, -40, -40, + -30, -30, -40, -40, -50, -50, -40, -40, -30, -20, -30, -30, -40, -40, -30, -30, -20, -10, -20, -20, -20, -20, -20, + -20, -10, 20, 20, 0, 0, 0, 0, 20, 20, 20, 30, 10, 0, 0, 10, 30, 20, ) private val egKingTable: Array[Int] = Array( - -50, -40, -30, -20, -20, -30, -40, -50, - -30, -20, -10, 0, 0, -10, -20, -30, - -30, -10, 20, 30, 30, 20, -10, -30, - -30, -10, 30, 40, 40, 30, -10, -30, - -30, -10, 30, 40, 40, 30, -10, -30, - -30, -10, 20, 30, 30, 20, -10, -30, - -30, -30, 0, 0, 0, 0, -30, -30, - -50, -30, -30, -30, -30, -30, -30, -50 + -50, -40, -30, -20, -20, -30, -40, -50, -30, -20, -10, 0, 0, -10, -20, -30, -30, -10, 20, 30, 30, 20, -10, -30, -30, + -10, 30, 40, 40, 30, -10, -30, -30, -10, 30, 40, 40, 30, -10, -30, -30, -10, 20, 30, 30, 20, -10, -30, -30, -30, 0, + 0, 0, 0, -30, -30, -50, -30, -30, -30, -30, -30, -30, -50, ) private val phaseWeight: Map[PieceType, Int] = Map( PieceType.Knight -> 1, PieceType.Bishop -> 1, - PieceType.Rook -> 2, - PieceType.Queen -> 4 + PieceType.Rook -> 2, + PieceType.Queen -> 4, ) private val maxPhase = 24 // 4*4 + 4*2 + 4*1 + 4*1 - private val passedPawnBonus: Array[Int] = Array(0, 5, 10, 20, 35, 60, 100, 0) + private val passedPawnBonus: Array[Int] = Array(0, 5, 10, 20, 35, 60, 100, 0) private val egPassedPawnBonus: Array[Int] = Array(0, 20, 40, 80, 150, 250, 400, 0) // Pawn structure penalties - private val doubledMg = -10 - private val doubledEg = -25 + private val doubledMg = -10 + private val doubledEg = -25 private val isolatedMg = -15 private val isolatedEg = -20 @@ -174,27 +110,27 @@ object EvaluationClassic extends Weights: private val mobilityEg = Array(0, 4, 3, 4, 2, 0, 0) // Direction offsets for sliding pieces - private val diagonals = List((-1, -1), (-1, 1), (1, -1), (1, 1)) - private val orthogonals = List((-1, 0), (1, 0), (0, -1), (0, 1)) + private val diagonals = List((-1, -1), (-1, 1), (1, -1), (1, 1)) + private val orthogonals = List((-1, 0), (1, 0), (0, -1), (0, 1)) private val knightOffsets = List((-2, -1), (-2, 1), (-1, -2), (-1, 2), (1, -2), (1, 2), (2, -1), (2, 1)) // Rook and bishop bonuses private val bishopPairMg = 50 private val bishopPairEg = 70 - private val rookOn7thMg = 20 - private val rookOn7thEg = 10 + private val rookOn7thMg = 20 + private val rookOn7thEg = 10 - /** Evaluate the position from the perspective of context.turn. - * Positive = good for context.turn. */ + /** Evaluate the position from the perspective of context.turn. Positive = good for context.turn. + */ def evaluate(context: GameContext): Int = - val phase = gamePhase(context.board) - val isEg = isEndgame(phase) - val material = materialAndPositional(context, phase) - val structure = pawnStructure(context, phase) - val mobility = mobilityScore(context, phase) + val phase = gamePhase(context.board) + val isEg = isEndgame(phase) + val material = materialAndPositional(context, phase) + val structure = pawnStructure(context, phase) + val mobility = mobilityScore(context, phase) val rookBishop = rookAndBishopBonuses(context, phase) - val bonuses = positionalBonuses(context, phase, isEg) - val egBonuses = if isEg then endgameBonus(context) else 0 + val bonuses = positionalBonuses(context, phase, isEg) + val egBonuses = if isEg then endgameBonus(context) else 0 material + structure + mobility + rookBishop + bonuses + egBonuses + TEMPO_BONUS private def gamePhase(board: de.nowchess.api.board.Board): Int = @@ -204,104 +140,71 @@ object EvaluationClassic extends Weights: math.min(phase, maxPhase) private def isEndgame(phase: Int): Boolean = - phase < 8 // Significantly reduced material indicates endgame + phase < 8 // Significantly reduced material indicates endgame private def taper(mg: Int, eg: Int, phase: Int): Int = (mg * phase + eg * (maxPhase - phase)) / maxPhase private def materialAndPositional(context: GameContext, phase: Int): Int = - var mg = 0 - var eg = 0 - for (square, piece) <- context.board.pieces do + val (mg, eg) = context.board.pieces.foldLeft((0, 0)) { case ((mg, eg), (square, piece)) => val (psqMg, psqEg) = squareBonus(piece.pieceType, piece.color, square) - val pieceMg = mgMaterial(piece.pieceType.ordinal) + psqMg - val pieceEg = egMaterial(piece.pieceType.ordinal) + psqEg - val sign = if piece.color == context.turn then 1 else -1 - mg += sign * pieceMg - eg += sign * pieceEg + val pieceMg = mgMaterial(piece.pieceType.ordinal) + psqMg + val pieceEg = egMaterial(piece.pieceType.ordinal) + psqEg + val sign = if piece.color == context.turn then 1 else -1 + (mg + sign * pieceMg, eg + sign * pieceEg) + } taper(mg, eg, phase) private def squareBonus(pieceType: PieceType, color: Color, sq: Square): (Int, Int) = - val rankIdx = if color == Color.White then sq.rank.ordinal else 7 - sq.rank.ordinal - val fileIdx = sq.file.ordinal + val rankIdx = if color == Color.White then sq.rank.ordinal else 7 - sq.rank.ordinal + val fileIdx = sq.file.ordinal val squareIdx = rankIdx * 8 + fileIdx pieceType match - case PieceType.Pawn => (mgPawnTable(squareIdx), egPawnTable(squareIdx)) + case PieceType.Pawn => (mgPawnTable(squareIdx), egPawnTable(squareIdx)) case PieceType.Knight => (mgKnightTable(squareIdx), egKnightTable(squareIdx)) case PieceType.Bishop => (mgBishopTable(squareIdx), egBishopTable(squareIdx)) - case PieceType.Rook => (mgRookTable(squareIdx), egRookTable(squareIdx)) - case PieceType.Queen => (mgQueenTable(squareIdx), egQueenTable(squareIdx)) - case PieceType.King => (mgKingTable(squareIdx), egKingTable(squareIdx)) + case PieceType.Rook => (mgRookTable(squareIdx), egRookTable(squareIdx)) + case PieceType.Queen => (mgQueenTable(squareIdx), egQueenTable(squareIdx)) + case PieceType.King => (mgKingTable(squareIdx), egKingTable(squareIdx)) private def pawnStructure(context: GameContext, phase: Int): Int = val friendlyPawns = context.board.pieces.filter((_, p) => p.color == context.turn && p.pieceType == PieceType.Pawn) - val enemyPawns = context.board.pieces.filter((_, p) => p.color != context.turn && p.pieceType == PieceType.Pawn) + val enemyPawns = context.board.pieces.filter((_, p) => p.color != context.turn && p.pieceType == PieceType.Pawn) - var mg = 0 - var eg = 0 - - // Group pawns by file val friendlyByFile = friendlyPawns.groupMap(s => s._1.file.ordinal)(s => s._1.rank.ordinal) - val enemyByFile = enemyPawns.groupMap(s => s._1.file.ordinal)(s => s._1.rank.ordinal) + val enemyByFile = enemyPawns.groupMap(s => s._1.file.ordinal)(s => s._1.rank.ordinal) - // Doubled pawn penalty for friendly pawns - for (file, ranks) <- friendlyByFile do - if ranks.size > 1 then - val doubledCount = ranks.size - 1 - mg += doubledCount * doubledMg - eg += doubledCount * doubledEg + val (fMg, fEg) = structureScore(friendlyByFile) + val (eMg, eEg) = structureScore(enemyByFile) + taper(fMg - eMg, fEg - eEg, phase) - // Isolated pawn penalty for friendly pawns - for (file, _) <- friendlyByFile do - val hasAdjacentFriendly = (file - 1 to file + 1).filter(f => f >= 0 && f < 8 && f != file).exists(friendlyByFile.contains) - if !hasAdjacentFriendly then - val pawnsOnFile = friendlyByFile(file).size - mg += pawnsOnFile * isolatedMg - eg += pawnsOnFile * isolatedEg - - // Same for enemy pawns (subtract from score) - var enemyMg = 0 - var enemyEg = 0 - - for (file, ranks) <- enemyByFile do - if ranks.size > 1 then - val doubledCount = ranks.size - 1 - enemyMg += doubledCount * doubledMg - enemyEg += doubledCount * doubledEg - - for (file, _) <- enemyByFile do - val hasAdjacentEnemy = (file - 1 to file + 1).filter(f => f >= 0 && f < 8 && f != file).exists(enemyByFile.contains) - if !hasAdjacentEnemy then - val pawnsOnFile = enemyByFile(file).size - enemyMg += pawnsOnFile * isolatedMg - enemyEg += pawnsOnFile * isolatedEg - - taper(mg - enemyMg, eg - enemyEg, phase) + private def structureScore(byFile: Map[Int, Iterable[Int]]): (Int, Int) = + byFile.foldLeft((0, 0)) { case ((mg, eg), (file, ranks)) => + val doubled = (ranks.size - 1).max(0) + val hasAdjacent = (file - 1 to file + 1).filter(f => f >= 0 && f < 8 && f != file).exists(byFile.contains) + val isolated = if !hasAdjacent then ranks.size else 0 + (mg + doubled * doubledMg + isolated * isolatedMg, eg + doubled * doubledEg + isolated * isolatedEg) + } private def positionalBonuses(context: GameContext, phase: Int, isEg: Boolean = false): Int = - var score = 0 - for (sq, piece) <- context.board.pieces do + context.board.pieces.foldLeft(0) { case (score, (sq, piece)) => val bonus = piece.pieceType match case PieceType.Pawn => if isPassedPawn(context.board, sq, piece.color) then - if isEg then egPassedPawnBonus(sq.rank.ordinal) - else passedPawnBonus(sq.rank.ordinal) + if isEg then egPassedPawnBonus(sq.rank.ordinal) else passedPawnBonus(sq.rank.ordinal) else 0 - case PieceType.Rook => - rookOpenFileBonus(context.board, sq, piece.color) - case PieceType.King => - kingShieldBonus(context.board, sq, piece.color, phase) - case _ => 0 - if piece.color == context.turn then score += bonus - else score -= bonus - score + case PieceType.Rook => rookOpenFileBonus(context.board, sq, piece.color) + case PieceType.King => kingShieldBonus(context.board, sq, piece.color, phase) + case _ => 0 + if piece.color == context.turn then score + bonus else score - bonus + } private def isPassedPawn(board: de.nowchess.api.board.Board, sq: Square, color: Color): Boolean = val enemyColor = color.opposite - val pawnRank = sq.rank.ordinal - val fileRange = (sq.file.ordinal - 1 to sq.file.ordinal + 1).filter(f => f >= 0 && f < 8) - val rankCheck = if color == Color.White then (r: Int) => r > pawnRank else (r: Int) => r < pawnRank + val pawnRank = sq.rank.ordinal + val fileRange = (sq.file.ordinal - 1 to sq.file.ordinal + 1).filter(f => f >= 0 && f < 8) + val rankCheck = if color == Color.White then (r: Int) => r > pawnRank else (r: Int) => r < pawnRank board.pieces.forall { (enemySq, enemyPiece) => !(enemyPiece.color == enemyColor && @@ -317,14 +220,14 @@ object EvaluationClassic extends Weights: val hasEnemyPawn = board.pieces.exists { (sq, piece) => piece.color != color && piece.pieceType == PieceType.Pawn && sq.file == rookSq.file } - if !hasFriendlyPawn && !hasEnemyPawn then 20 // open file - else if !hasFriendlyPawn then 10 // semi-open file + if !hasFriendlyPawn && !hasEnemyPawn then 20 // open file + else if !hasFriendlyPawn then 10 // semi-open file else 0 private def kingShieldBonus(board: de.nowchess.api.board.Board, kingSq: Square, color: Color, phase: Int): Int = val shieldRankDelta = if color == Color.White then 1 else -1 - val shieldFiles = (kingSq.file.ordinal - 1 to kingSq.file.ordinal + 1).filter(f => f >= 0 && f < 8) - val shieldRank = kingSq.rank.ordinal + shieldRankDelta + val shieldFiles = (kingSq.file.ordinal - 1 to kingSq.file.ordinal + 1).filter(f => f >= 0 && f < 8) + val shieldRank = kingSq.rank.ordinal + shieldRankDelta if shieldRank < 0 || shieldRank > 7 then 0 else @@ -336,17 +239,23 @@ object EvaluationClassic extends Weights: } * 10 (rawBonus * phase) / maxPhase - private def slidingCount(sq: Square, board: de.nowchess.api.board.Board, color: Color, directions: List[(Int, Int)]): Int = + private def slidingCount( + sq: Square, + board: de.nowchess.api.board.Board, + color: Color, + directions: List[(Int, Int)], + ): Int = directions.foldLeft(0) { case (total, (fileDelta, rankDelta)) => - var count = 0 - var current = sq.offset(fileDelta, rankDelta) - while current.isDefined do - val target = current.get - board.pieceAt(target) match - case Some(piece) if piece.color == color => current = None - case Some(_) => count += 1; current = None - case None => count += 1; current = target.offset(fileDelta, rankDelta) - total + count + @scala.annotation.tailrec + def countRay(current: Option[Square], acc: Int): Int = + current match + case None => acc + case Some(target) => + board.pieceAt(target) match + case Some(piece) if piece.color == color => acc + case Some(_) => acc + 1 + case None => countRay(target.offset(fileDelta, rankDelta), acc + 1) + total + countRay(sq.offset(fileDelta, rankDelta), 0) } private def knightCount(sq: Square, board: de.nowchess.api.board.Board, color: Color): Int = @@ -357,83 +266,61 @@ object EvaluationClassic extends Weights: } private def mobilityScore(context: GameContext, phase: Int): Int = - var mg = 0 - var eg = 0 - for (sq, piece) <- context.board.pieces do + val (mg, eg) = context.board.pieces.foldLeft((0, 0)) { case ((mg, eg), (sq, piece)) => val count = piece.pieceType match case PieceType.Knight => knightCount(sq, context.board, piece.color) case PieceType.Bishop => slidingCount(sq, context.board, piece.color, diagonals) - case PieceType.Rook => slidingCount(sq, context.board, piece.color, orthogonals) - case PieceType.Queen => slidingCount(sq, context.board, piece.color, diagonals ++ orthogonals) - case _ => 0 + case PieceType.Rook => slidingCount(sq, context.board, piece.color, orthogonals) + case PieceType.Queen => slidingCount(sq, context.board, piece.color, diagonals ++ orthogonals) + case _ => 0 val pieceMg = count * mobilityMg(piece.pieceType.ordinal) val pieceEg = count * mobilityEg(piece.pieceType.ordinal) - val sign = if piece.color == context.turn then 1 else -1 - mg += sign * pieceMg - eg += sign * pieceEg + val sign = if piece.color == context.turn then 1 else -1 + (mg + sign * pieceMg, eg + sign * pieceEg) + } taper(mg, eg, phase) private def rookAndBishopBonuses(context: GameContext, phase: Int): Int = - var mg = 0 - var eg = 0 - - // Bishop pair bonus - val friendlyBishops = context.board.pieces.filter((_, p) => p.color == context.turn && p.pieceType == PieceType.Bishop) + val friendlyBishops = + context.board.pieces.filter((_, p) => p.color == context.turn && p.pieceType == PieceType.Bishop) val enemyBishops = context.board.pieces.filter((_, p) => p.color != context.turn && p.pieceType == PieceType.Bishop) - val friendlyLightSquare = friendlyBishops.exists((sq, _) => (sq.file.ordinal + sq.rank.ordinal) % 2 == 0) - val friendlyDarkSquare = friendlyBishops.exists((sq, _) => (sq.file.ordinal + sq.rank.ordinal) % 2 == 1) - if friendlyLightSquare && friendlyDarkSquare then - mg += bishopPairMg - eg += bishopPairEg + val friendlyHasPair = + friendlyBishops.exists((sq, _) => (sq.file.ordinal + sq.rank.ordinal) % 2 == 0) && + friendlyBishops.exists((sq, _) => (sq.file.ordinal + sq.rank.ordinal) % 2 == 1) + val enemyHasPair = + enemyBishops.exists((sq, _) => (sq.file.ordinal + sq.rank.ordinal) % 2 == 0) && + enemyBishops.exists((sq, _) => (sq.file.ordinal + sq.rank.ordinal) % 2 == 1) - val enemyLightSquare = enemyBishops.exists((sq, _) => (sq.file.ordinal + sq.rank.ordinal) % 2 == 0) - val enemyDarkSquare = enemyBishops.exists((sq, _) => (sq.file.ordinal + sq.rank.ordinal) % 2 == 1) - if enemyLightSquare && enemyDarkSquare then - mg -= bishopPairMg - eg -= bishopPairEg + val baseMg = (if friendlyHasPair then bishopPairMg else 0) - (if enemyHasPair then bishopPairMg else 0) + val baseEg = (if friendlyHasPair then bishopPairEg else 0) - (if enemyHasPair then bishopPairEg else 0) - // Rook on 7th rank - for (sq, piece) <- context.board.pieces do + val (mg, eg) = context.board.pieces.foldLeft((baseMg, baseEg)) { case ((mg, eg), (sq, piece)) => if piece.pieceType == PieceType.Rook then val is7th = if piece.color == Color.White then sq.rank.ordinal == 6 else sq.rank.ordinal == 1 if is7th then - if piece.color == context.turn then - mg += rookOn7thMg - eg += rookOn7thEg - else - mg -= rookOn7thMg - eg -= rookOn7thEg - + if piece.color == context.turn then (mg + rookOn7thMg, eg + rookOn7thEg) + else (mg - rookOn7thMg, eg - rookOn7thEg) + else (mg, eg) + else (mg, eg) + } taper(mg, eg, phase) private def endgameBonus(context: GameContext): Int = val friendlyKing = context.board.pieces.find((_, p) => p.color == context.turn && p.pieceType == PieceType.King) - val enemyKing = context.board.pieces.find((_, p) => p.color != context.turn && p.pieceType == PieceType.King) + val enemyKing = context.board.pieces.find((_, p) => p.color != context.turn && p.pieceType == PieceType.King) - var bonus = 0 + val kingCentralBonus = + friendlyKing.fold(0)((kSq, _) => (8 - kingCentralizationDistance(kSq)) * 15) - + enemyKing.fold(0)((kSq, _) => (8 - kingCentralizationDistance(kSq)) * 15) - // King centralization: closer to center is better in endgame - friendlyKing.foreach { (friendlyKSq, _) => - val centerDist = kingCentralizationDistance(friendlyKSq) - bonus += (8 - centerDist) * 15 - } - - enemyKing.foreach { (enemyKSq, _) => - val centerDist = kingCentralizationDistance(enemyKSq) - bonus -= (8 - centerDist) * 15 - } - - // Push enemy king to edge when materially ahead val friendlyMaterial = materialCount(context, context.turn) - val enemyMaterial = materialCount(context, context.turn.opposite) - if friendlyMaterial > enemyMaterial then - enemyKing.foreach { (enemyKSq, _) => - val edgeDist = kingEdgeDistance(enemyKSq) - bonus += (7 - edgeDist) * 10 - } + val enemyMaterial = materialCount(context, context.turn.opposite) + val edgeBonus = + if friendlyMaterial > enemyMaterial then enemyKing.fold(0)((kSq, _) => (7 - kingEdgeDistance(kSq)) * 10) + else 0 - bonus + kingCentralBonus + edgeBonus private def kingCentralizationDistance(sq: Square): Int = val fileFromCenter = (sq.file.ordinal - 3.5).abs.toInt @@ -451,8 +338,9 @@ object EvaluationClassic extends Weights: sum + (piece.pieceType match case PieceType.Knight => 300 case PieceType.Bishop => 300 - case PieceType.Rook => 500 - case PieceType.Queen => 900 - case _ => 0) + case PieceType.Rook => 500 + case PieceType.Queen => 900 + case _ => 0 + ) else sum } diff --git a/modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala b/modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala index 653b321..14d5a18 100644 --- a/modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala +++ b/modules/bot/src/main/scala/de/nowchess/bot/logic/MoveOrdering.scala @@ -10,7 +10,7 @@ import scala.collection.mutable object MoveOrdering: class OrderingContext: - private val killerMoves = mutable.Map[Int, List[Move]]() + private val killerMoves = mutable.Map[Int, List[Move]]() private val historyTable = mutable.Map[(Int, Int), Int]() def addKillerMove(ply: Int, move: Move): Unit = @@ -33,43 +33,44 @@ object MoveOrdering: historyTable.clear() def score( - context: GameContext, - move: Move, - ttBestMove: Option[Move], - ply: Int = 0, - ordering: OrderingContext = new OrderingContext() + context: GameContext, + move: Move, + ttBestMove: Option[Move], + ply: Int = 0, + ordering: OrderingContext = new OrderingContext(), ): Int = if ttBestMove.exists(m => m.from == move.from && m.to == move.to) then Int.MaxValue - else move.moveType match - case MoveType.Promotion(PromotionPiece.Queen) => - 1_000_000 + promotionCaptureBonus(context, move) - case MoveType.Normal(true) | MoveType.EnPassant => - captureScore(context, move) - case MoveType.Promotion(_) => - 50_000 + promotionCaptureBonus(context, move) - case _ => scoreQuietMove(move, ply, ordering) + else + move.moveType match + case MoveType.Promotion(PromotionPiece.Queen) => + 1_000_000 + promotionCaptureBonus(context, move) + case MoveType.Normal(true) | MoveType.EnPassant => + captureScore(context, move) + case MoveType.Promotion(_) => + 50_000 + promotionCaptureBonus(context, move) + case _ => scoreQuietMove(move, ply, ordering) def sort( - context: GameContext, - moves: List[Move], - ttBestMove: Option[Move], - ply: Int = 0, - ordering: OrderingContext = new OrderingContext() + context: GameContext, + moves: List[Move], + ttBestMove: Option[Move], + ply: Int = 0, + ordering: OrderingContext = new OrderingContext(), ): List[Move] = moves.sortBy(m => -score(context, m, ttBestMove, ply, ordering)) private def scoreQuietMove(move: Move, ply: Int, ordering: OrderingContext): Int = val isKiller = ordering.getKillerMoves(ply).exists(k => k.from == move.from && k.to == move.to) - val fromIdx = move.from.rank.ordinal * 8 + move.from.file.ordinal - val toIdx = move.to.rank.ordinal * 8 + move.to.file.ordinal - val history = ordering.getHistory(fromIdx, toIdx) + val fromIdx = move.from.rank.ordinal * 8 + move.from.file.ordinal + val toIdx = move.to.rank.ordinal * 8 + move.to.file.ordinal + val history = ordering.getHistory(fromIdx, toIdx) if isKiller then 10_000 + (history / 10) else history / 10 private def promotionCaptureBonus(context: GameContext, move: Move): Int = if isCapture(context, move) then captureScore(context, move) else 0 private def captureScore(context: GameContext, move: Move): Int = - val see = staticExchange(context, move) + val see = staticExchange(context, move) val seeBias = if see >= 0 then 20_000 else -20_000 100_000 + mvvLva(context, move) + seeBias + see @@ -82,28 +83,28 @@ object MoveOrdering: private def victimValue(context: GameContext, move: Move): Int = move.moveType match case MoveType.Normal(true) => context.board.pieceAt(move.to).map(pieceValue).getOrElse(0) - case MoveType.EnPassant => 1 + case MoveType.EnPassant => 1 case MoveType.Promotion(_) => context.board.pieceAt(move.to).map(pieceValue).getOrElse(0) - case _ => 0 + case _ => 0 private def pieceValue(piece: Piece): Int = piece.pieceType match - case PieceType.Pawn => 1 + case PieceType.Pawn => 1 case PieceType.Knight => 3 case PieceType.Bishop => 3 - case PieceType.Rook => 5 - case PieceType.Queen => 9 - case PieceType.King => 200 + case PieceType.Rook => 5 + case PieceType.Queen => 9 + case PieceType.King => 200 private def isCapture(context: GameContext, move: Move): Boolean = move.moveType match case MoveType.Normal(true) => true - case MoveType.EnPassant => true + case MoveType.EnPassant => true case MoveType.Promotion(_) => context.board.pieceAt(move.to).exists(_.color != context.turn) - case _ => false + case _ => false private def staticExchange(context: GameContext, move: Move): Int = if !isCapture(context, move) then 0 else - val target = move.to + val target = move.to val initialGain = victimValue(context, move) movedPieceAfterMove(context, move).fold(initialGain) { moved => val boardAfterMove = applySeeMove(context.board, context, move, moved) @@ -113,21 +114,23 @@ object MoveOrdering: private def movedPieceAfterMove(context: GameContext, move: Move): Option[Piece] = move.moveType match case MoveType.Promotion(pp) => Some(Piece(context.turn, promotionPieceType(pp))) - case _ => context.board.pieceAt(move.from) + case _ => context.board.pieceAt(move.from) @tailrec private def exchangeGain(board: Board, target: Square, side: Color, capturedValue: Int, gains: Vector[Int]): Int = leastValuableAttacker(board, target, side) match case None => resolveGain(gains) case Some((from, attacker)) => - val nextGain = capturedValue - gains.last + val nextGain = capturedValue - gains.last val nextBoard = board.removed(from).updated(target, attacker) exchangeGain(nextBoard, target, side.opposite, pieceValue(attacker), gains :+ nextGain) private def resolveGain(gains: Vector[Int]): Int = - (gains.length - 2 to 0 by -1).foldLeft(gains) { (acc, idx) => - acc.updated(idx, math.max(acc(idx), -acc(idx + 1))) - }.head + (gains.length - 2 to 0 by -1) + .foldLeft(gains) { (acc, idx) => + acc.updated(idx, math.max(acc(idx), -acc(idx + 1))) + } + .head private def applySeeMove(board: Board, context: GameContext, move: Move, moved: Piece): Board = move.moveType match @@ -137,9 +140,13 @@ object MoveOrdering: case _ => board.removed(move.from).updated(move.to, moved) private def leastValuableAttacker(board: Board, target: Square, color: Color): Option[(Square, Piece)] = - board.pieces.collect { - case (sq, piece) if piece.color == color && attacksSquare(board, sq, target, piece) => (sq, piece) - }.toList.sortBy { case (_, piece) => pieceValue(piece) }.headOption + board.pieces + .collect { + case (sq, piece) if piece.color == color && attacksSquare(board, sq, target, piece) => (sq, piece) + } + .toList + .sortBy { case (_, piece) => pieceValue(piece) } + .headOption private def attacksSquare(board: Board, from: Square, target: Square, piece: Piece): Boolean = val df = target.file.ordinal - from.file.ordinal @@ -153,26 +160,27 @@ object MoveOrdering: val adr = math.abs(dr) (adf == 1 && adr == 2) || (adf == 2 && adr == 1) case PieceType.Bishop => clearLine(board, from, target, df, dr, diagonal = true) - case PieceType.Rook => clearLine(board, from, target, df, dr, diagonal = false) + case PieceType.Rook => clearLine(board, from, target, df, dr, diagonal = false) case PieceType.Queen => clearLine(board, from, target, df, dr, diagonal = true) || - clearLine(board, from, target, df, dr, diagonal = false) + clearLine(board, from, target, df, dr, diagonal = false) case PieceType.King => math.abs(df) <= 1 && math.abs(dr) <= 1 private def clearLine(board: Board, from: Square, target: Square, df: Int, dr: Int, diagonal: Boolean): Boolean = - val valid = if diagonal then math.abs(df) == math.abs(dr) && df != 0 else (df == 0 && dr != 0) || (dr == 0 && df != 0) + val valid = + if diagonal then math.abs(df) == math.abs(dr) && df != 0 else (df == 0 && dr != 0) || (dr == 0 && df != 0) if !valid then false else pathClear(board, from, target, Integer.compare(df, 0), Integer.compare(dr, 0)) @tailrec private def pathClear(board: Board, from: Square, target: Square, stepF: Int, stepR: Int): Boolean = from.offset(stepF, stepR) match - case None => false + case None => false case Some(next) if next == target => true - case Some(next) => board.pieceAt(next).isEmpty && pathClear(board, next, target, stepF, stepR) + case Some(next) => board.pieceAt(next).isEmpty && pathClear(board, next, target, stepF, stepR) private def promotionPieceType(piece: PromotionPiece): PieceType = piece match case PromotionPiece.Knight => PieceType.Knight case PromotionPiece.Bishop => PieceType.Bishop - case PromotionPiece.Rook => PieceType.Rook - case PromotionPiece.Queen => PieceType.Queen + case PromotionPiece.Rook => PieceType.Rook + case PromotionPiece.Queen => PieceType.Queen diff --git a/modules/bot/src/main/scala/de/nowchess/bot/logic/TranspositionTable.scala b/modules/bot/src/main/scala/de/nowchess/bot/logic/TranspositionTable.scala index 84ad270..b7b4254 100644 --- a/modules/bot/src/main/scala/de/nowchess/bot/logic/TranspositionTable.scala +++ b/modules/bot/src/main/scala/de/nowchess/bot/logic/TranspositionTable.scala @@ -3,23 +3,23 @@ package de.nowchess.bot.logic import de.nowchess.api.move.Move enum TTFlag: - case Exact // Score is exact - case Lower // Score is a lower bound - case Upper // Score is an upper bound + case Exact // Score is exact + case Lower // Score is a lower bound + case Upper // Score is an upper bound final case class TTEntry( - hash: Long, - depth: Int, - score: Int, - flag: TTFlag, - bestMove: Option[Move] + hash: Long, + depth: Int, + score: Int, + flag: TTFlag, + bestMove: Option[Move], ) final class TranspositionTable(val sizePow2: Int = 20): - private val size = 1 << sizePow2 - private val mask = size - 1L - private val locks = Array.fill(size)(new Object()) - private var table: Array[Option[TTEntry]] = Array.fill(size)(None) + private val size = 1 << sizePow2 + private val mask = size - 1L + private val locks = Array.fill(size)(new Object()) + private val table: Array[Option[TTEntry]] = Array.fill(size)(None) def probe(hash: Long): Option[TTEntry] = val index = (hash & mask).toInt @@ -34,8 +34,5 @@ final class TranspositionTable(val sizePow2: Int = 20): } def clear(): Unit = - for lock <- locks do - lock.synchronized { - // Clear in-place to avoid reassigning table reference during search - } - table = Array.fill(size)(None) + for i <- 0 until size do + locks(i).synchronized { table(i) = None } diff --git a/modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala b/modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala index 4b83b95..33c2ed9 100644 --- a/modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala +++ b/modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotBook.scala @@ -9,13 +9,13 @@ import scala.collection.mutable import scala.util.Random /** Reads a Polyglot opening book (.bin file) and probes it for moves. - * - * Polyglot books are binary files with 16-byte big-endian records: - * - key: 8 bytes (Long) — Zobrist hash of the position - * - move: 2 bytes (Short) — packed as (to_file | to_rank | from_file | from_rank | promotion) - * - weight: 2 bytes (Short) — move weight (higher = preferred) - * - learn: 4 bytes (Int) — learning data (unused) - */ + * + * Polyglot books are binary files with 16-byte big-endian records: + * - key: 8 bytes (Long) — Zobrist hash of the position + * - move: 2 bytes (Short) — packed as (to_file | to_rank | from_file | from_rank | promotion) + * - weight: 2 bytes (Short) — move weight (higher = preferred) + * - learn: 4 bytes (Int) — learning data (unused) + */ final class PolyglotBook(path: String): private val entries: Map[Long, Vector[BookEntry]] = @@ -35,8 +35,7 @@ final class PolyglotBook(path: String): val hash = PolyglotHash.hash(context) println(f"0x${hash}%016X") entries.get(hash).flatMap { bookEntries => - if bookEntries.isEmpty then - None + if bookEntries.isEmpty then None else val entry = weightedRandom(bookEntries) decodeMove(entry.move, context) @@ -47,64 +46,53 @@ final class PolyglotBook(path: String): try val result = mutable.Map[Long, Vector[BookEntry]]() while input.available() > 0 do - val key = input.readLong() - val move = input.readShort() + val key = input.readLong() + val move = input.readShort() val weight = input.readShort() - val learn = input.readInt() + val learn = input.readInt() val entry = BookEntry(key, move, weight) result.updateWith(key) { case Some(entries) => Some(entries :+ entry) - case None => Some(Vector(entry)) + case None => Some(Vector(entry)) } result.toMap - finally - input.close() + finally input.close() /** Decode a packed Polyglot move short into an Option[Move]. - * - * Bit layout of the move Short: - * - bits 0-2: to_file (0-7) - * - bits 3-5: to_rank (0-7) - * - bits 6-8: from_file (0-7) - * - bits 9-11: from_rank (0-7) - * - bits 12-14: promotion piece (0=none, 1=knight, 2=bishop, 3=rook, 4=queen) - */ + * + * Bit layout of the move Short: + * - bits 0-2: to_file (0-7) + * - bits 3-5: to_rank (0-7) + * - bits 6-8: from_file (0-7) + * - bits 9-11: from_rank (0-7) + * - bits 12-14: promotion piece (0=none, 1=knight, 2=bishop, 3=rook, 4=queen) + */ private def decodeMove(raw: Short, context: GameContext): Option[Move] = - val toFile = (raw & 0x07).toInt - val toRank = ((raw >> 3) & 0x07).toInt - val fromFile = ((raw >> 6) & 0x07).toInt - val fromRank = ((raw >> 9) & 0x07).toInt + val toFile = (raw & 0x07).toInt + val toRank = ((raw >> 3) & 0x07).toInt + val fromFile = ((raw >> 6) & 0x07).toInt + val fromRank = ((raw >> 9) & 0x07).toInt val promotionBits = ((raw >> 12) & 0x07).toInt - // Bounds check - if toFile > 7 || toRank > 7 || fromFile > 7 || fromRank > 7 then - return None - - val from = Square(File.values(fromFile), Rank.values(fromRank)) - val to = Square(File.values(toFile), Rank.values(toRank)) - - // Check for castling: in Polyglot, castling is encoded as king-to-rook-square - // e.g. e1 (from_rank=0, from_file=4) to h1 (to_file=7, to_rank=0) is white kingside - val isCastling = isKingMove(context, from) - if isCastling && isRookSquare(to, context) then - return Some(decodeCastling(from, to)) - - // Handle promotion - val moveType = if promotionBits > 0 then - val promotionPiece = promotionBits match - case 1 => PromotionPiece.Knight - case 2 => PromotionPiece.Bishop - case 3 => PromotionPiece.Rook - case 4 => PromotionPiece.Queen - case _ => return None - MoveType.Promotion(promotionPiece) + if toFile > 7 || toRank > 7 || fromFile > 7 || fromRank > 7 then None else - // Check if it's a capture - val isCapture = context.board.pieces.contains(to) - MoveType.Normal(isCapture) + val from = Square(File.values(fromFile), Rank.values(fromRank)) + val to = Square(File.values(toFile), Rank.values(toRank)) - Some(Move(from, to, moveType)) + if isKingMove(context, from) && isRookSquare(to, context) then Some(decodeCastling(from, to)) + else + val moveTypeOpt: Option[MoveType] = if promotionBits > 0 then + promotionBits match + case 1 => Some(MoveType.Promotion(PromotionPiece.Knight)) + case 2 => Some(MoveType.Promotion(PromotionPiece.Bishop)) + case 3 => Some(MoveType.Promotion(PromotionPiece.Rook)) + case 4 => Some(MoveType.Promotion(PromotionPiece.Queen)) + case _ => None + else + Some(MoveType.Normal(context.board.pieces.contains(to))) + + moveTypeOpt.map(moveType => Move(from, to, moveType)) private def isKingMove(context: GameContext, square: Square): Boolean = context.board.pieces.get(square).exists { piece => @@ -117,33 +105,33 @@ final class PolyglotBook(path: String): } /** Decode castling from king-to-rook square to the standard move. - * - * Polyglot encodes castling as: - * - e1→h1 = White kingside (move to g1) - * - e1→a1 = White queenside (move to c1) - * - e8→h8 = Black kingside (move to g8) - * - e8→a8 = Black queenside (move to c8) - */ + * + * Polyglot encodes castling as: + * - e1→h1 = White kingside (move to g1) + * - e1→a1 = White queenside (move to c1) + * - e8→h8 = Black kingside (move to g8) + * - e8→a8 = Black queenside (move to c8) + */ private def decodeCastling(from: Square, to: Square): Move = - if to.file == File.H then - Move(from, Square(File.G, to.rank), MoveType.CastleKingside) - else if to.file == File.A then - Move(from, Square(File.C, to.rank), MoveType.CastleQueenside) + if to.file == File.H then Move(from, Square(File.G, to.rank), MoveType.CastleKingside) + else if to.file == File.A then Move(from, Square(File.C, to.rank), MoveType.CastleQueenside) else // Fallback (should not happen in a valid book) Move(from, to, MoveType.Normal()) /** Select a weighted random move from the list of book entries. */ private def weightedRandom(entries: Vector[BookEntry]): BookEntry = - if entries.length == 1 then - entries(0) + if entries.length == 1 then entries.head else val totalWeight = entries.map(_.weight).sum - var pick = Random.nextInt(totalWeight.max(1)) - var idx = 0 - while idx < entries.length && pick >= entries(idx).weight do - pick -= entries(idx).weight - idx += 1 - entries(idx.min(entries.length - 1)) + val pick = Random.nextInt(totalWeight.max(1)) + + @scala.annotation.tailrec + def select(remaining: Int, idx: Int): BookEntry = + if idx >= entries.length then entries.last + else if remaining < entries(idx).weight then entries(idx) + else select(remaining - entries(idx).weight, idx + 1) + + select(pick, 0) private case class BookEntry(key: Long, move: Short, weight: Int) diff --git a/modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala b/modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala index fb98d1c..307312a 100644 --- a/modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala +++ b/modules/bot/src/main/scala/de/nowchess/bot/util/PolyglotHash.scala @@ -7,242 +7,186 @@ object PolyglotHash: /** 781-entry Zobrist random table from the Polyglot spec. */ private val Random: Array[Long] = Array( - 0x9D39247E33776D41L, 0x2AF7398005AAA5C7L, 0x44DB015024623547L, 0x9C15F73E62A76AE2L, - 0x75834465489C0C89L, 0x3290AC3A203001BFL, 0x0FBBAD1F61042279L, 0xE83A908FF2FB60CAL, - 0x0D7E765D58755C10L, 0x1A083822CEAFE02DL, 0x9605D5F0E25EC3B0L, 0xD021FF5CD13A2ED5L, - 0x40BDF15D4A672E32L, 0x011355146FD56395L, 0x5DB4832046F3D9E5L, 0x239F8B2D7FF719CCL, - 0x05D1A1AE85B49AA1L, 0x679F848F6E8FC971L, 0x7449BBFF801FED0BL, 0x7D11CDB1C3B7ADF0L, - 0x82C7709E781EB7CCL, 0xF3218F1C9510786CL, 0x331478F3AF51BBE6L, 0x4BB38DE5E7219443L, - 0xAA649C6EBCFD50FCL, 0x8DBD98A352AFD40BL, 0x87D2074B81D79217L, 0x19F3C751D3E92AE1L, - 0xB4AB30F062B19ABFL, 0x7B0500AC42047AC4L, 0xC9452CA81A09D85DL, 0x24AA6C514DA27500L, - 0x4C9F34427501B447L, 0x14A68FD73C910841L, 0xA71B9B83461CBD93L, 0x03488B95B0F1850FL, - 0x637B2B34FF93C040L, 0x09D1BC9A3DD90A94L, 0x3575668334A1DD3BL, 0x735E2B97A4C45A23L, - 0x18727070F1BD400BL, 0x1FCBACD259BF02E7L, 0xD310A7C2CE9B6555L, 0xBF983FE0FE5D8244L, - 0x9F74D14F7454A824L, 0x51EBDC4AB9BA3035L, 0x5C82C505DB9AB0FAL, 0xFCF7FE8A3430B241L, - 0x3253A729B9BA3DDEL, 0x8C74C368081B3075L, 0xB9BC6C87167C33E7L, 0x7EF48F2B83024E20L, - 0x11D505D4C351BD7FL, 0x6568FCA92C76A243L, 0x4DE0B0F40F32A7B8L, 0x96D693460CC37E5DL, - 0x42E240CB63689F2FL, 0x6D2BDCDAE2919661L, 0x42880B0236E4D951L, 0x5F0F4A5898171BB6L, - 0x39F890F579F92F88L, 0x93C5B5F47356388BL, 0x63DC359D8D231B78L, 0xEC16CA8AEA98AD76L, - 0x5355F900C2A82DC7L, 0x07FB9F855A997142L, 0x5093417AA8A7ED5EL, 0x7BCBC38DA25A7F3CL, - 0x19FC8A768CF4B6D4L, 0x637A7780DECFC0D9L, 0x8249A47AEE0E41F7L, 0x79AD695501E7D1E8L, - 0x14ACBAF4777D5776L, 0xF145B6BECCDEA195L, 0xDABF2AC8201752FCL, 0x24C3C94DF9C8D3F6L, - 0xBB6E2924F03912EAL, 0x0CE26C0B95C980D9L, 0xA49CD132BFBF7CC4L, 0xE99D662AF4243939L, - 0x27E6AD7891165C3FL, 0x8535F040B9744FF1L, 0x54B3F4FA5F40D873L, 0x72B12C32127FED2BL, - 0xEE954D3C7B411F47L, 0x9A85AC909A24EAA1L, 0x70AC4CD9F04F21F5L, 0xF9B89D3E99A075C2L, - 0x87B3E2B2B5C907B1L, 0xA366E5B8C54F48B8L, 0xAE4A9346CC3F7CF2L, 0x1920C04D47267BBDL, - 0x87BF02C6B49E2AE9L, 0x092237AC237F3859L, 0xFF07F64EF8ED14D0L, 0x8DE8DCA9F03CC54EL, - 0x9C1633264DB49C89L, 0xB3F22C3D0B0B38EDL, 0x390E5FB44D01144BL, 0x5BFEA5B4712768E9L, - 0x1E1032911FA78984L, 0x9A74ACB964E78CB3L, 0x4F80F7A035DAFB04L, 0x6304D09A0B3738C4L, - 0x2171E64683023A08L, 0x5B9B63EB9CEFF80CL, 0x506AACF489889342L, 0x1881AFC9A3A701D6L, - 0x6503080440750644L, 0xDFD395339CDBF4A7L, 0xEF927DBCF00C20F2L, 0x7B32F7D1E03680ECL, - 0xB9FD7620E7316243L, 0x05A7E8A57DB91B77L, 0xB5889C6E15630A75L, 0x4A750A09CE9573F7L, - 0xCF464CEC899A2F8AL, 0xF538639CE705B824L, 0x3C79A0FF5580EF7FL, 0xEDE6C87F8477609DL, - 0x799E81F05BC93F31L, 0x86536B8CF3428A8CL, 0x97D7374C60087B73L, 0xA246637CFF328532L, - 0x043FCAE60CC0EBA0L, 0x920E449535DD359EL, 0x70EB093B15B290CCL, 0x73A1921916591CBDL, - 0x56436C9FE1A1AA8DL, 0xEFAC4B70633B8F81L, 0xBB215798D45DF7AFL, 0x45F20042F24F1768L, - 0x930F80F4E8EB7462L, 0xFF6712FFCFD75EA1L, 0xAE623FD67468AA70L, 0xDD2C5BC84BC8D8FCL, - 0x7EED120D54CF2DD9L, 0x22FE545401165F1CL, 0xC91800E98FB99929L, 0x808BD68E6AC10365L, - 0xDEC468145B7605F6L, 0x1BEDE3A3AEF53302L, 0x43539603D6C55602L, 0xAA969B5C691CCB7AL, - 0xA87832D392EFEE56L, 0x65942C7B3C7E11AEL, 0xDED2D633CAD004F6L, 0x21F08570F420E565L, - 0xB415938D7DA94E3CL, 0x91B859E59ECB6350L, 0x10CFF333E0ED804AL, 0x28AED140BE0BB7DDL, - 0xC5CC1D89724FA456L, 0x5648F680F11A2741L, 0x2D255069F0B7DAB3L, 0x9BC5A38EF729ABD4L, - 0xEF2F054308F6A2BCL, 0xAF2042F5CC5C2858L, 0x480412BAB7F5BE2AL, 0xAEF3AF4A563DFE43L, - 0x19AFE59AE451497FL, 0x52593803DFF1E840L, 0xF4F076E65F2CE6F0L, 0x11379625747D5AF3L, - 0xBCE5D2248682C115L, 0x9DA4243DE836994FL, 0x066F70B33FE09017L, 0x4DC4DE189B671A1CL, - 0x51039AB7712457C3L, 0xC07A3F80C31FB4B4L, 0xB46EE9C5E64A6E7CL, 0xB3819A42ABE61C87L, - 0x21A007933A522A20L, 0x2DF16F761598AA4FL, 0x763C4A1371B368FDL, 0xF793C46702E086A0L, - 0xD7288E012AEB8D31L, 0xDE336A2A4BC1C44BL, 0x0BF692B38D079F23L, 0x2C604A7A177326B3L, - 0x4850E73E03EB6064L, 0xCFC447F1E53C8E1BL, 0xB05CA3F564268D99L, 0x9AE182C8BC9474E8L, - 0xA4FC4BD4FC5558CAL, 0xE755178D58FC4E76L, 0x69B97DB1A4C03DFEL, 0xF9B5B7C4ACC67C96L, - 0xFC6A82D64B8655FBL, 0x9C684CB6C4D24417L, 0x8EC97D2917456ED0L, 0x6703DF9D2924E97EL, - 0xC547F57E42A7444EL, 0x78E37644E7CAD29EL, 0xFE9A44E9362F05FAL, 0x08BD35CC38336615L, - 0x9315E5EB3A129ACEL, 0x94061B871E04DF75L, 0xDF1D9F9D784BA010L, 0x3BBA57B68871B59DL, - 0xD2B7ADEEDED1F73FL, 0xF7A255D83BC373F8L, 0xD7F4F2448C0CEB81L, 0xD95BE88CD210FFA7L, - 0x336F52F8FF4728E7L, 0xA74049DAC312AC71L, 0xA2F61BB6E437FDB5L, 0x4F2A5CB07F6A35B3L, - 0x87D380BDA5BF7859L, 0x16B9F7E06C453A21L, 0x7BA2484C8A0FD54EL, 0xF3A678CAD9A2E38CL, - 0x39B0BF7DDE437BA2L, 0xFCAF55C1BF8A4424L, 0x18FCF680573FA594L, 0x4C0563B89F495AC3L, - 0x40E087931A00930DL, 0x8CFFA9412EB642C1L, 0x68CA39053261169FL, 0x7A1EE967D27579E2L, - 0x9D1D60E5076F5B6FL, 0x3810E399B6F65BA2L, 0x32095B6D4AB5F9B1L, 0x35CAB62109DD038AL, - 0xA90B24499FCFAFB1L, 0x77A225A07CC2C6BDL, 0x513E5E634C70E331L, 0x4361C0CA3F692F12L, - 0xD941ACA44B20A45BL, 0x528F7C8602C5807BL, 0x52AB92BEB9613989L, 0x9D1DFA2EFC557F73L, - 0x722FF175F572C348L, 0x1D1260A51107FE97L, 0x7A249A57EC0C9BA2L, 0x04208FE9E8F7F2D6L, - 0x5A110C6058B920A0L, 0x0CD9A497658A5698L, 0x56FD23C8F9715A4CL, 0x284C847B9D887AAEL, - 0x04FEABFBBDB619CBL, 0x742E1E651C60BA83L, 0x9A9632E65904AD3CL, 0x881B82A13B51B9E2L, - 0x506E6744CD974924L, 0xB0183DB56FFC6A79L, 0x0ED9B915C66ED37EL, 0x5E11E86D5873D484L, - 0xF678647E3519AC6EL, 0x1B85D488D0F20CC5L, 0xDAB9FE6525D89021L, 0x0D151D86ADB73615L, - 0xA865A54EDCC0F019L, 0x93C42566AEF98FFBL, 0x99E7AFEABE000731L, 0x48CBFF086DDF285AL, - 0x7F9B6AF1EBF78BAFL, 0x58627E1A149BBA21L, 0x2CD16E2ABD791E33L, 0xD363EFF5F0977996L, - 0x0CE2A38C344A6EEDL, 0x1A804AADB9CFA741L, 0x907F30421D78C5DEL, 0x501F65EDB3034D07L, - 0x37624AE5A48FA6E9L, 0x957BAF61700CFF4EL, 0x3A6C27934E31188AL, 0xD49503536ABCA345L, - 0x088E049589C432E0L, 0xF943AEE7FEBF21B8L, 0x6C3B8E3E336139D3L, 0x364F6FFA464EE52EL, - 0xD60F6DCEDC314222L, 0x56963B0DCA418FC0L, 0x16F50EDF91E513AFL, 0xEF1955914B609F93L, - 0x565601C0364E3228L, 0xECB53939887E8175L, 0xBAC7A9A18531294BL, 0xB344C470397BBA52L, - 0x65D34954DAF3CEBDL, 0xB4B81B3FA97511E2L, 0xB422061193D6F6A7L, 0x071582401C38434DL, - 0x7A13F18BBEDC4FF5L, 0xBC4097B116C524D2L, 0x59B97885E2F2EA28L, 0x99170A5DC3115544L, - 0x6F423357E7C6A9F9L, 0x325928EE6E6F8794L, 0xD0E4366228B03343L, 0x565C31F7DE89EA27L, - 0x30F5611484119414L, 0xD873DB391292ED4FL, 0x7BD94E1D8E17DEBCL, 0xC7D9F16864A76E94L, - 0x947AE053EE56E63CL, 0xC8C93882F9475F5FL, 0x3A9BF55BA91F81CAL, 0xD9A11FBB3D9808E4L, - 0x0FD22063EDC29FCAL, 0xB3F256D8ACA0B0B9L, 0xB03031A8B4516E84L, 0x35DD37D5871448AFL, - 0xE9F6082B05542E4EL, 0xEBFAFA33D7254B59L, 0x9255ABB50D532280L, 0xB9AB4CE57F2D34F3L, - 0x693501D628297551L, 0xC62C58F97DD949BFL, 0xCD454F8F19C5126AL, 0xBBE83F4ECC2BDECBL, - 0xDC842B7E2819E230L, 0xBA89142E007503B8L, 0xA3BC941D0A5061CBL, 0xE9F6760E32CD8021L, - 0x09C7E552BC76492FL, 0x852F54934DA55CC9L, 0x8107FCCF064FCF56L, 0x098954D51FFF6580L, - 0x23B70EDB1955C4BFL, 0xC330DE426430F69DL, 0x4715ED43E8A45C0AL, 0xA8D7E4DAB780A08DL, - 0x0572B974F03CE0BBL, 0xB57D2E985E1419C7L, 0xE8D9ECBE2CF3D73FL, 0x2FE4B17170E59750L, - 0x11317BA87905E790L, 0x7FBF21EC8A1F45ECL, 0x1725CABFCB045B00L, 0x964E915CD5E2B207L, - 0x3E2B8BCBF016D66DL, 0xBE7444E39328A0ACL, 0xF85B2B4FBCDE44B7L, 0x49353FEA39BA63B1L, - 0x1DD01AAFCD53486AL, 0x1FCA8A92FD719F85L, 0xFC7C95D827357AFAL, 0x18A6A990C8B35EBDL, - 0xCCCB7005C6B9C28DL, 0x3BDBB92C43B17F26L, 0xAA70B5B4F89695A2L, 0xE94C39A54A98307FL, - 0xB7A0B174CFF6F36EL, 0xD4DBA84729AF48ADL, 0x2E18BC1AD9704A68L, 0x2DE0966DAF2F8B1CL, - 0xB9C11D5B1E43A07EL, 0x64972D68DEE33360L, 0x94628D38D0C20584L, 0xDBC0D2B6AB90A559L, - 0xD2733C4335C6A72FL, 0x7E75D99D94A70F4DL, 0x6CED1983376FA72BL, 0x97FCAACBF030BC24L, - 0x7B77497B32503B12L, 0x8547EDDFB81CCB94L, 0x79999CDFF70902CBL, 0xCFFE1939438E9B24L, - 0x829626E3892D95D7L, 0x92FAE24291F2B3F1L, 0x63E22C147B9C3403L, 0xC678B6D860284A1CL, - 0x5873888850659AE7L, 0x0981DCD296A8736DL, 0x9F65789A6509A440L, 0x9FF38FED72E9052FL, - 0xE479EE5B9930578CL, 0xE7F28ECD2D49EECDL, 0x56C074A581EA17FEL, 0x5544F7D774B14AEFL, - 0x7B3F0195FC6F290FL, 0x12153635B2C0CF57L, 0x7F5126DBBA5E0CA7L, 0x7A76956C3EAFB413L, - 0x3D5774A11D31AB39L, 0x8A1B083821F40CB4L, 0x7B4A38E32537DF62L, 0x950113646D1D6E03L, - 0x4DA8979A0041E8A9L, 0x3BC36E078F7515D7L, 0x5D0A12F27AD310D1L, 0x7F9D1A2E1EBE1327L, - 0xDA3A361B1C5157B1L, 0xDCDD7D20903D0C25L, 0x36833336D068F707L, 0xCE68341F79893389L, - 0xAB9090168DD05F34L, 0x43954B3252DC25E5L, 0xB438C2B67F98E5E9L, 0x10DCD78E3851A492L, - 0xDBC27AB5447822BFL, 0x9B3CDB65F82CA382L, 0xB67B7896167B4C84L, 0xBFCED1B0048EAC50L, - 0xA9119B60369FFEBDL, 0x1FFF7AC80904BF45L, 0xAC12FB171817EEE7L, 0xAF08DA9177DDA93DL, - 0x1B0CAB936E65C744L, 0xB559EB1D04E5E932L, 0xC37B45B3F8D6F2BAL, 0xC3A9DC228CAAC9E9L, - 0xF3B8B6675A6507FFL, 0x9FC477DE4ED681DAL, 0x67378D8ECCEF96CBL, 0x6DD856D94D259236L, - 0xA319CE15B0B4DB31L, 0x073973751F12DD5EL, 0x8A8E849EB32781A5L, 0xE1925C71285279F5L, - 0x74C04BF1790C0EFEL, 0x4DDA48153C94938AL, 0x9D266D6A1CC0542CL, 0x7440FB816508C4FEL, - 0x13328503DF48229FL, 0xD6BF7BAEE43CAC40L, 0x4838D65F6EF6748FL, 0x1E152328F3318DEAL, - 0x8F8419A348F296BFL, 0x72C8834A5957B511L, 0xD7A023A73260B45CL, 0x94EBC8ABCFB56DAEL, - 0x9FC10D0F989993E0L, 0xDE68A2355B93CAE6L, 0xA44CFE79AE538BBEL, 0x9D1D84FCCE371425L, - 0x51D2B1AB2DDFB636L, 0x2FD7E4B9E72CD38CL, 0x65CA5B96B7552210L, 0xDD69A0D8AB3B546DL, - 0x604D51B25FBF70E2L, 0x73AA8A564FB7AC9EL, 0x1A8C1E992B941148L, 0xAAC40A2703D9BEA0L, - 0x764DBEAE7FA4F3A6L, 0x1E99B96E70A9BE8BL, 0x2C5E9DEB57EF4743L, 0x3A938FEE32D29981L, - 0x26E6DB8FFDF5ADFEL, 0x469356C504EC9F9DL, 0xC8763C5B08D1908CL, 0x3F6C6AF859D80055L, - 0x7F7CC39420A3A545L, 0x9BFB227EBDF4C5CEL, 0x89039D79D6FC5C5CL, 0x8FE88B57305E2AB6L, - 0xA09E8C8C35AB96DEL, 0xFA7E393983325753L, 0xD6B6D0ECC617C699L, 0xDFEA21EA9E7557E3L, - 0xB67C1FA481680AF8L, 0xCA1E3785A9E724E5L, 0x1CFC8BED0D681639L, 0xD18D8549D140CAEAL, - 0x4ED0FE7E9DC91335L, 0xE4DBF0634473F5D2L, 0x1761F93A44D5AEFEL, 0x53898E4C3910DA55L, - 0x734DE8181F6EC39AL, 0x2680B122BAA28D97L, 0x298AF231C85BAFABL, 0x7983EED3740847D5L, - 0x66C1A2A1A60CD889L, 0x9E17E49642A3E4C1L, 0xEDB454E7BADC0805L, 0x50B704CAB602C329L, - 0x4CC317FB9CDDD023L, 0x66B4835D9EAFEA22L, 0x219B97E26FFC81BDL, 0x261E4E4C0A333A9DL, - 0x1FE2CCA76517DB90L, 0xD7504DFA8816EDBBL, 0xB9571FA04DC089C8L, 0x1DDC0325259B27DEL, - 0xCF3F4688801EB9AAL, 0xF4F5D05C10CAB243L, 0x38B6525C21A42B0EL, 0x36F60E2BA4FA6800L, - 0xEB3593803173E0CEL, 0x9C4CD6257C5A3603L, 0xAF0C317D32ADAA8AL, 0x258E5A80C7204C4BL, - 0x8B889D624D44885DL, 0xF4D14597E660F855L, 0xD4347F66EC8941C3L, 0xE699ED85B0DFB40DL, - 0x2472F6207C2D0484L, 0xC2A1E7B5B459AEB5L, 0xAB4F6451CC1D45ECL, 0x63767572AE3D6174L, - 0xA59E0BD101731A28L, 0x116D0016CB948F09L, 0x2CF9C8CA052F6E9FL, 0x0B090A7560A968E3L, - 0xABEEDDB2DDE06FF1L, 0x58EFC10B06A2068DL, 0xC6E57A78FBD986E0L, 0x2EAB8CA63CE802D7L, - 0x14A195640116F336L, 0x7C0828DD624EC390L, 0xD74BBE77E6116AC7L, 0x804456AF10F5FB53L, - 0xEBE9EA2ADF4321C7L, 0x03219A39EE587A30L, 0x49787FEF17AF9924L, 0xA1E9300CD8520548L, - 0x5B45E522E4B1B4EFL, 0xB49C3B3995091A36L, 0xD4490AD526F14431L, 0x12A8F216AF9418C2L, - 0x001F837CC7350524L, 0x1877B51E57A764D5L, 0xA2853B80F17F58EEL, 0x993E1DE72D36D310L, - 0xB3598080CE64A656L, 0x252F59CF0D9F04BBL, 0xD23C8E176D113600L, 0x1BDA0492E7E4586EL, - 0x21E0BD5026C619BFL, 0x3B097ADAF088F94EL, 0x8D14DEDB30BE846EL, 0xF95CFFA23AF5F6F4L, - 0x3871700761B3F743L, 0xCA672B91E9E4FA16L, 0x64C8E531BFF53B55L, 0x241260ED4AD1E87DL, - 0x106C09B972D2E822L, 0x7FBA195410E5CA30L, 0x7884D9BC6CB569D8L, 0x0647DFEDCD894A29L, - 0x63573FF03E224774L, 0x4FC8E9560F91B123L, 0x1DB956E450275779L, 0xB8D91274B9E9D4FBL, - 0xA2EBEE47E2FBFCE1L, 0xD9F1F30CCD97FB09L, 0xEFED53D75FD64E6BL, 0x2E6D02C36017F67FL, - 0xA9AA4D20DB084E9BL, 0xB64BE8D8B25396C1L, 0x70CB6AF7C2D5BCF0L, 0x98F076A4F7A2322EL, - 0xBF84470805E69B5FL, 0x94C3251F06F90CF3L, 0x3E003E616A6591E9L, 0xB925A6CD0421AFF3L, - 0x61BDD1307C66E300L, 0xBF8D5108E27E0D48L, 0x240AB57A8B888B20L, 0xFC87614BAF287E07L, - 0xEF02CDD06FFDB432L, 0xA1082C0466DF6C0AL, 0x8215E577001332C8L, 0xD39BB9C3A48DB6CFL, - 0x2738259634305C14L, 0x61CF4F94C97DF93DL, 0x1B6BACA2AE4E125BL, 0x758F450C88572E0BL, - 0x959F587D507A8359L, 0xB063E962E045F54DL, 0x60E8ED72C0DFF5D1L, 0x7B64978555326F9FL, - 0xFD080D236DA814BAL, 0x8C90FD9B083F4558L, 0x106F72FE81E2C590L, 0x7976033A39F7D952L, - 0xA4EC0132764CA04BL, 0x733EA705FAE4FA77L, 0xB4D8F77BC3E56167L, 0x9E21F4F903B33FD9L, - 0x9D765E419FB69F6DL, 0xD30C088BA61EA5EFL, 0x5D94337FBFAF7F5BL, 0x1A4E4822EB4D7A59L, - 0x6FFE73E81B637FB3L, 0xDDF957BC36D8B9CAL, 0x64D0E29EEA8838B3L, 0x08DD9BDFD96B9F63L, - 0x087E79E5A57D1D13L, 0xE328E230E3E2B3FBL, 0x1C2559E30F0946BEL, 0x720BF5F26F4D2EAAL, - 0xB0774D261CC609DBL, 0x443F64EC5A371195L, 0x4112CF68649A260EL, 0xD813F2FAB7F5C5CAL, - 0x660D3257380841EEL, 0x59AC2C7873F910A3L, 0xE846963877671A17L, 0x93B633ABFA3469F8L, - 0xC0C0F5A60EF4CDCFL, 0xCAF21ECD4377B28CL, 0x57277707199B8175L, 0x506C11B9D90E8B1DL, - 0xD83CC2687A19255FL, 0x4A29C6465A314CD1L, 0xED2DF21216235097L, 0xB5635C95FF7296E2L, - 0x22AF003AB672E811L, 0x52E762596BF68235L, 0x9AEBA33AC6ECC6B0L, 0x944F6DE09134DFB6L, - 0x6C47BEC883A7DE39L, 0x6AD047C430A12104L, 0xA5B1CFDBA0AB4067L, 0x7C45D833AFF07862L, - 0x5092EF950A16DA0BL, 0x9338E69C052B8E7BL, 0x455A4B4CFE30E3F5L, 0x6B02E63195AD0CF8L, - 0x6B17B224BAD6BF27L, 0xD1E0CCD25BB9C169L, 0xDE0C89A556B9AE70L, 0x50065E535A213CF6L, - 0x9C1169FA2777B874L, 0x78EDEFD694AF1EEDL, 0x6DC93D9526A50E68L, 0xEE97F453F06791EDL, - 0x32AB0EDB696703D3L, 0x3A6853C7E70757A7L, 0x31865CED6120F37DL, 0x67FEF95D92607890L, - 0x1F2B1D1F15F6DC9CL, 0xB69E38A8965C6B65L, 0xAA9119FF184CCCF4L, 0xF43C732873F24C13L, - 0xFB4A3D794A9A80D2L, 0x3550C2321FD6109CL, 0x371F77E76BB8417EL, 0x6BFA9AAE5EC05779L, - 0xCD04F3FF001A4778L, 0xE3273522064480CAL, 0x9F91508BFFCFC14AL, 0x049A7F41061A9E60L, - 0xFCB6BE43A9F2FE9BL, 0x08DE8A1C7797DA9BL, 0x8F9887E6078735A1L, 0xB5B4071DBFC73A66L, - 0x230E343DFBA08D33L, 0x43ED7F5A0FAE657DL, 0x3A88A0FBBCB05C63L, 0x21874B8B4D2DBC4FL, - 0x1BDEA12E35F6A8C9L, 0x53C065C6C8E63528L, 0xE34A1D250E7A8D6BL, 0xD6B04D3B7651DD7EL, - 0x5E90277E7CB39E2DL, 0x2C046F22062DC67DL, 0xB10BB459132D0A26L, 0x3FA9DDFB67E2F199L, - 0x0E09B88E1914F7AFL, 0x10E8B35AF3EEAB37L, 0x9EEDECA8E272B933L, 0xD4C718BC4AE8AE5FL, - 0x81536D601170FC20L, 0x91B534F885818A06L, 0xEC8177F83F900978L, 0x190E714FADA5156EL, - 0xB592BF39B0364963L, 0x89C350C893AE7DC1L, 0xAC042E70F8B383F2L, 0xB49B52E587A1EE60L, - 0xFB152FE3FF26DA89L, 0x3E666E6F69AE2C15L, 0x3B544EBE544C19F9L, 0xE805A1E290CF2456L, - 0x24B33C9D7ED25117L, 0xE74733427B72F0C1L, 0x0A804D18B7097475L, 0x57E3306D881EDB4FL, - 0x4AE7D6A36EB5DBCBL, 0x2D8D5432157064C8L, 0xD1E649DE1E7F268BL, 0x8A328A1CEDFE552CL, - 0x07A3AEC79624C7DAL, 0x84547DDC3E203C94L, 0x990A98FD5071D263L, 0x1A4FF12616EEFC89L, - 0xF6F7FD1431714200L, 0x30C05B1BA332F41CL, 0x8D2636B81555A786L, 0x46C9FEB55D120902L, - 0xCCEC0A73B49C9921L, 0x4E9D2827355FC492L, 0x19EBB029435DCB0FL, 0x4659D2B743848A2CL, - 0x963EF2C96B33BE31L, 0x74F85198B05A2E7DL, 0x5A0F544DD2B1FB18L, 0x03727073C2E134B1L, - 0xC7F6AA2DE59AEA61L, 0x352787BAA0D7C22FL, 0x9853EAB63B5E0B35L, 0xABBDCDD7ED5C0860L, - 0xCF05DAF5AC8D77B0L, 0x49CAD48CEBF4A71EL, 0x7A4C10EC2158C4A6L, 0xD9E92AA246BF719EL, - 0x13AE978D09FE5557L, 0x730499AF921549FFL, 0x4E4B705B92903BA4L, 0xFF577222C14F0A3AL, - 0x55B6344CF97AAFAEL, 0xB862225B055B6960L, 0xCAC09AFBDDD2CDB4L, 0xDAF8E9829FE96B5FL, - 0xB5FDFC5D3132C498L, 0x310CB380DB6F7503L, 0xE87FBB46217A360EL, 0x2102AE466EBB1148L, - 0xF8549E1A3AA5E00DL, 0x07A69AFDCC42261AL, 0xC4C118BFE78FEAAEL, 0xF9F4892ED96BD438L, - 0x1AF3DBE25D8F45DAL, 0xF5B4B0B0D2DEEEB4L, 0x962ACEEFA82E1C84L, 0x046E3ECAAF453CE9L, - 0xF05D129681949A4CL, 0x964781CE734B3C84L, 0x9C2ED44081CE5FBDL, 0x522E23F3925E319EL, - 0x177E00F9FC32F791L, 0x2BC60A63A6F3B3F2L, 0x222BBFAE61725606L, 0x486289DDCC3D6780L, - 0x7DC7785B8EFDFC80L, 0x8AF38731C02BA980L, 0x1FAB64EA29A2DDF7L, 0xE4D9429322CD065AL, - 0x9DA058C67844F20CL, 0x24C0E332B70019B0L, 0x233003B5A6CFE6ADL, 0xD586BD01C5C217F6L, - 0x5E5637885F29BC2BL, 0x7EBA726D8C94094BL, 0x0A56A5F0BFE39272L, 0xD79476A84EE20D06L, - 0x9E4C1269BAA4BF37L, 0x17EFEE45B0DEE640L, 0x1D95B0A5FCF90BC6L, 0x93CBE0B699C2585DL, - 0x65FA4F227A2B6D79L, 0xD5F9E858292504D5L, 0xC2B5A03F71471A6FL, 0x59300222B4561E00L, - 0xCE2F8642CA0712DCL, 0x7CA9723FBB2E8988L, 0x2785338347F2BA08L, 0xC61BB3A141E50E8CL, - 0x150F361DAB9DEC26L, 0x9F6A419D382595F4L, 0x64A53DC924FE7AC9L, 0x142DE49FFF7A7C3DL, - 0x0C335248857FA9E7L, 0x0A9C32D5EAE45305L, 0xE6C42178C4BBB92EL, 0x71F1CE2490D20B07L, - 0xF1BCC3D275AFE51AL, 0xE728E8C83C334074L, 0x96FBF83A12884624L, 0x81A1549FD6573DA5L, - 0x5FA7867CAF35E149L, 0x56986E2EF3ED091BL, 0x917F1DD5F8886C61L, 0xD20D8C88C8FFE65FL, - 0x31D71DCE64B2C310L, 0xF165B587DF898190L, 0xA57E6339DD2CF3A0L, 0x1EF6E6DBB1961EC9L, - 0x70CC73D90BC26E24L, 0xE21A6B35DF0C3AD7L, 0x003A93D8B2806962L, 0x1C99DED33CB890A1L, - 0xCF3145DE0ADD4289L, 0xD0E4427A5514FB72L, 0x77C621CC9FB3A483L, 0x67A34DAC4356550BL, - 0xF8D626AAAF278509L + 0x9d39247e33776d41L, 0x2af7398005aaa5c7L, 0x44db015024623547L, 0x9c15f73e62a76ae2L, 0x75834465489c0c89L, + 0x3290ac3a203001bfL, 0x0fbbad1f61042279L, 0xe83a908ff2fb60caL, 0x0d7e765d58755c10L, 0x1a083822ceafe02dL, + 0x9605d5f0e25ec3b0L, 0xd021ff5cd13a2ed5L, 0x40bdf15d4a672e32L, 0x011355146fd56395L, 0x5db4832046f3d9e5L, + 0x239f8b2d7ff719ccL, 0x05d1a1ae85b49aa1L, 0x679f848f6e8fc971L, 0x7449bbff801fed0bL, 0x7d11cdb1c3b7adf0L, + 0x82c7709e781eb7ccL, 0xf3218f1c9510786cL, 0x331478f3af51bbe6L, 0x4bb38de5e7219443L, 0xaa649c6ebcfd50fcL, + 0x8dbd98a352afd40bL, 0x87d2074b81d79217L, 0x19f3c751d3e92ae1L, 0xb4ab30f062b19abfL, 0x7b0500ac42047ac4L, + 0xc9452ca81a09d85dL, 0x24aa6c514da27500L, 0x4c9f34427501b447L, 0x14a68fd73c910841L, 0xa71b9b83461cbd93L, + 0x03488b95b0f1850fL, 0x637b2b34ff93c040L, 0x09d1bc9a3dd90a94L, 0x3575668334a1dd3bL, 0x735e2b97a4c45a23L, + 0x18727070f1bd400bL, 0x1fcbacd259bf02e7L, 0xd310a7c2ce9b6555L, 0xbf983fe0fe5d8244L, 0x9f74d14f7454a824L, + 0x51ebdc4ab9ba3035L, 0x5c82c505db9ab0faL, 0xfcf7fe8a3430b241L, 0x3253a729b9ba3ddeL, 0x8c74c368081b3075L, + 0xb9bc6c87167c33e7L, 0x7ef48f2b83024e20L, 0x11d505d4c351bd7fL, 0x6568fca92c76a243L, 0x4de0b0f40f32a7b8L, + 0x96d693460cc37e5dL, 0x42e240cb63689f2fL, 0x6d2bdcdae2919661L, 0x42880b0236e4d951L, 0x5f0f4a5898171bb6L, + 0x39f890f579f92f88L, 0x93c5b5f47356388bL, 0x63dc359d8d231b78L, 0xec16ca8aea98ad76L, 0x5355f900c2a82dc7L, + 0x07fb9f855a997142L, 0x5093417aa8a7ed5eL, 0x7bcbc38da25a7f3cL, 0x19fc8a768cf4b6d4L, 0x637a7780decfc0d9L, + 0x8249a47aee0e41f7L, 0x79ad695501e7d1e8L, 0x14acbaf4777d5776L, 0xf145b6beccdea195L, 0xdabf2ac8201752fcL, + 0x24c3c94df9c8d3f6L, 0xbb6e2924f03912eaL, 0x0ce26c0b95c980d9L, 0xa49cd132bfbf7cc4L, 0xe99d662af4243939L, + 0x27e6ad7891165c3fL, 0x8535f040b9744ff1L, 0x54b3f4fa5f40d873L, 0x72b12c32127fed2bL, 0xee954d3c7b411f47L, + 0x9a85ac909a24eaa1L, 0x70ac4cd9f04f21f5L, 0xf9b89d3e99a075c2L, 0x87b3e2b2b5c907b1L, 0xa366e5b8c54f48b8L, + 0xae4a9346cc3f7cf2L, 0x1920c04d47267bbdL, 0x87bf02c6b49e2ae9L, 0x092237ac237f3859L, 0xff07f64ef8ed14d0L, + 0x8de8dca9f03cc54eL, 0x9c1633264db49c89L, 0xb3f22c3d0b0b38edL, 0x390e5fb44d01144bL, 0x5bfea5b4712768e9L, + 0x1e1032911fa78984L, 0x9a74acb964e78cb3L, 0x4f80f7a035dafb04L, 0x6304d09a0b3738c4L, 0x2171e64683023a08L, + 0x5b9b63eb9ceff80cL, 0x506aacf489889342L, 0x1881afc9a3a701d6L, 0x6503080440750644L, 0xdfd395339cdbf4a7L, + 0xef927dbcf00c20f2L, 0x7b32f7d1e03680ecL, 0xb9fd7620e7316243L, 0x05a7e8a57db91b77L, 0xb5889c6e15630a75L, + 0x4a750a09ce9573f7L, 0xcf464cec899a2f8aL, 0xf538639ce705b824L, 0x3c79a0ff5580ef7fL, 0xede6c87f8477609dL, + 0x799e81f05bc93f31L, 0x86536b8cf3428a8cL, 0x97d7374c60087b73L, 0xa246637cff328532L, 0x043fcae60cc0eba0L, + 0x920e449535dd359eL, 0x70eb093b15b290ccL, 0x73a1921916591cbdL, 0x56436c9fe1a1aa8dL, 0xefac4b70633b8f81L, + 0xbb215798d45df7afL, 0x45f20042f24f1768L, 0x930f80f4e8eb7462L, 0xff6712ffcfd75ea1L, 0xae623fd67468aa70L, + 0xdd2c5bc84bc8d8fcL, 0x7eed120d54cf2dd9L, 0x22fe545401165f1cL, 0xc91800e98fb99929L, 0x808bd68e6ac10365L, + 0xdec468145b7605f6L, 0x1bede3a3aef53302L, 0x43539603d6c55602L, 0xaa969b5c691ccb7aL, 0xa87832d392efee56L, + 0x65942c7b3c7e11aeL, 0xded2d633cad004f6L, 0x21f08570f420e565L, 0xb415938d7da94e3cL, 0x91b859e59ecb6350L, + 0x10cff333e0ed804aL, 0x28aed140be0bb7ddL, 0xc5cc1d89724fa456L, 0x5648f680f11a2741L, 0x2d255069f0b7dab3L, + 0x9bc5a38ef729abd4L, 0xef2f054308f6a2bcL, 0xaf2042f5cc5c2858L, 0x480412bab7f5be2aL, 0xaef3af4a563dfe43L, + 0x19afe59ae451497fL, 0x52593803dff1e840L, 0xf4f076e65f2ce6f0L, 0x11379625747d5af3L, 0xbce5d2248682c115L, + 0x9da4243de836994fL, 0x066f70b33fe09017L, 0x4dc4de189b671a1cL, 0x51039ab7712457c3L, 0xc07a3f80c31fb4b4L, + 0xb46ee9c5e64a6e7cL, 0xb3819a42abe61c87L, 0x21a007933a522a20L, 0x2df16f761598aa4fL, 0x763c4a1371b368fdL, + 0xf793c46702e086a0L, 0xd7288e012aeb8d31L, 0xde336a2a4bc1c44bL, 0x0bf692b38d079f23L, 0x2c604a7a177326b3L, + 0x4850e73e03eb6064L, 0xcfc447f1e53c8e1bL, 0xb05ca3f564268d99L, 0x9ae182c8bc9474e8L, 0xa4fc4bd4fc5558caL, + 0xe755178d58fc4e76L, 0x69b97db1a4c03dfeL, 0xf9b5b7c4acc67c96L, 0xfc6a82d64b8655fbL, 0x9c684cb6c4d24417L, + 0x8ec97d2917456ed0L, 0x6703df9d2924e97eL, 0xc547f57e42a7444eL, 0x78e37644e7cad29eL, 0xfe9a44e9362f05faL, + 0x08bd35cc38336615L, 0x9315e5eb3a129aceL, 0x94061b871e04df75L, 0xdf1d9f9d784ba010L, 0x3bba57b68871b59dL, + 0xd2b7adeeded1f73fL, 0xf7a255d83bc373f8L, 0xd7f4f2448c0ceb81L, 0xd95be88cd210ffa7L, 0x336f52f8ff4728e7L, + 0xa74049dac312ac71L, 0xa2f61bb6e437fdb5L, 0x4f2a5cb07f6a35b3L, 0x87d380bda5bf7859L, 0x16b9f7e06c453a21L, + 0x7ba2484c8a0fd54eL, 0xf3a678cad9a2e38cL, 0x39b0bf7dde437ba2L, 0xfcaf55c1bf8a4424L, 0x18fcf680573fa594L, + 0x4c0563b89f495ac3L, 0x40e087931a00930dL, 0x8cffa9412eb642c1L, 0x68ca39053261169fL, 0x7a1ee967d27579e2L, + 0x9d1d60e5076f5b6fL, 0x3810e399b6f65ba2L, 0x32095b6d4ab5f9b1L, 0x35cab62109dd038aL, 0xa90b24499fcfafb1L, + 0x77a225a07cc2c6bdL, 0x513e5e634c70e331L, 0x4361c0ca3f692f12L, 0xd941aca44b20a45bL, 0x528f7c8602c5807bL, + 0x52ab92beb9613989L, 0x9d1dfa2efc557f73L, 0x722ff175f572c348L, 0x1d1260a51107fe97L, 0x7a249a57ec0c9ba2L, + 0x04208fe9e8f7f2d6L, 0x5a110c6058b920a0L, 0x0cd9a497658a5698L, 0x56fd23c8f9715a4cL, 0x284c847b9d887aaeL, + 0x04feabfbbdb619cbL, 0x742e1e651c60ba83L, 0x9a9632e65904ad3cL, 0x881b82a13b51b9e2L, 0x506e6744cd974924L, + 0xb0183db56ffc6a79L, 0x0ed9b915c66ed37eL, 0x5e11e86d5873d484L, 0xf678647e3519ac6eL, 0x1b85d488d0f20cc5L, + 0xdab9fe6525d89021L, 0x0d151d86adb73615L, 0xa865a54edcc0f019L, 0x93c42566aef98ffbL, 0x99e7afeabe000731L, + 0x48cbff086ddf285aL, 0x7f9b6af1ebf78bafL, 0x58627e1a149bba21L, 0x2cd16e2abd791e33L, 0xd363eff5f0977996L, + 0x0ce2a38c344a6eedL, 0x1a804aadb9cfa741L, 0x907f30421d78c5deL, 0x501f65edb3034d07L, 0x37624ae5a48fa6e9L, + 0x957baf61700cff4eL, 0x3a6c27934e31188aL, 0xd49503536abca345L, 0x088e049589c432e0L, 0xf943aee7febf21b8L, + 0x6c3b8e3e336139d3L, 0x364f6ffa464ee52eL, 0xd60f6dcedc314222L, 0x56963b0dca418fc0L, 0x16f50edf91e513afL, + 0xef1955914b609f93L, 0x565601c0364e3228L, 0xecb53939887e8175L, 0xbac7a9a18531294bL, 0xb344c470397bba52L, + 0x65d34954daf3cebdL, 0xb4b81b3fa97511e2L, 0xb422061193d6f6a7L, 0x071582401c38434dL, 0x7a13f18bbedc4ff5L, + 0xbc4097b116c524d2L, 0x59b97885e2f2ea28L, 0x99170a5dc3115544L, 0x6f423357e7c6a9f9L, 0x325928ee6e6f8794L, + 0xd0e4366228b03343L, 0x565c31f7de89ea27L, 0x30f5611484119414L, 0xd873db391292ed4fL, 0x7bd94e1d8e17debcL, + 0xc7d9f16864a76e94L, 0x947ae053ee56e63cL, 0xc8c93882f9475f5fL, 0x3a9bf55ba91f81caL, 0xd9a11fbb3d9808e4L, + 0x0fd22063edc29fcaL, 0xb3f256d8aca0b0b9L, 0xb03031a8b4516e84L, 0x35dd37d5871448afL, 0xe9f6082b05542e4eL, + 0xebfafa33d7254b59L, 0x9255abb50d532280L, 0xb9ab4ce57f2d34f3L, 0x693501d628297551L, 0xc62c58f97dd949bfL, + 0xcd454f8f19c5126aL, 0xbbe83f4ecc2bdecbL, 0xdc842b7e2819e230L, 0xba89142e007503b8L, 0xa3bc941d0a5061cbL, + 0xe9f6760e32cd8021L, 0x09c7e552bc76492fL, 0x852f54934da55cc9L, 0x8107fccf064fcf56L, 0x098954d51fff6580L, + 0x23b70edb1955c4bfL, 0xc330de426430f69dL, 0x4715ed43e8a45c0aL, 0xa8d7e4dab780a08dL, 0x0572b974f03ce0bbL, + 0xb57d2e985e1419c7L, 0xe8d9ecbe2cf3d73fL, 0x2fe4b17170e59750L, 0x11317ba87905e790L, 0x7fbf21ec8a1f45ecL, + 0x1725cabfcb045b00L, 0x964e915cd5e2b207L, 0x3e2b8bcbf016d66dL, 0xbe7444e39328a0acL, 0xf85b2b4fbcde44b7L, + 0x49353fea39ba63b1L, 0x1dd01aafcd53486aL, 0x1fca8a92fd719f85L, 0xfc7c95d827357afaL, 0x18a6a990c8b35ebdL, + 0xcccb7005c6b9c28dL, 0x3bdbb92c43b17f26L, 0xaa70b5b4f89695a2L, 0xe94c39a54a98307fL, 0xb7a0b174cff6f36eL, + 0xd4dba84729af48adL, 0x2e18bc1ad9704a68L, 0x2de0966daf2f8b1cL, 0xb9c11d5b1e43a07eL, 0x64972d68dee33360L, + 0x94628d38d0c20584L, 0xdbc0d2b6ab90a559L, 0xd2733c4335c6a72fL, 0x7e75d99d94a70f4dL, 0x6ced1983376fa72bL, + 0x97fcaacbf030bc24L, 0x7b77497b32503b12L, 0x8547eddfb81ccb94L, 0x79999cdff70902cbL, 0xcffe1939438e9b24L, + 0x829626e3892d95d7L, 0x92fae24291f2b3f1L, 0x63e22c147b9c3403L, 0xc678b6d860284a1cL, 0x5873888850659ae7L, + 0x0981dcd296a8736dL, 0x9f65789a6509a440L, 0x9ff38fed72e9052fL, 0xe479ee5b9930578cL, 0xe7f28ecd2d49eecdL, + 0x56c074a581ea17feL, 0x5544f7d774b14aefL, 0x7b3f0195fc6f290fL, 0x12153635b2c0cf57L, 0x7f5126dbba5e0ca7L, + 0x7a76956c3eafb413L, 0x3d5774a11d31ab39L, 0x8a1b083821f40cb4L, 0x7b4a38e32537df62L, 0x950113646d1d6e03L, + 0x4da8979a0041e8a9L, 0x3bc36e078f7515d7L, 0x5d0a12f27ad310d1L, 0x7f9d1a2e1ebe1327L, 0xda3a361b1c5157b1L, + 0xdcdd7d20903d0c25L, 0x36833336d068f707L, 0xce68341f79893389L, 0xab9090168dd05f34L, 0x43954b3252dc25e5L, + 0xb438c2b67f98e5e9L, 0x10dcd78e3851a492L, 0xdbc27ab5447822bfL, 0x9b3cdb65f82ca382L, 0xb67b7896167b4c84L, + 0xbfced1b0048eac50L, 0xa9119b60369ffebdL, 0x1fff7ac80904bf45L, 0xac12fb171817eee7L, 0xaf08da9177dda93dL, + 0x1b0cab936e65c744L, 0xb559eb1d04e5e932L, 0xc37b45b3f8d6f2baL, 0xc3a9dc228caac9e9L, 0xf3b8b6675a6507ffL, + 0x9fc477de4ed681daL, 0x67378d8eccef96cbL, 0x6dd856d94d259236L, 0xa319ce15b0b4db31L, 0x073973751f12dd5eL, + 0x8a8e849eb32781a5L, 0xe1925c71285279f5L, 0x74c04bf1790c0efeL, 0x4dda48153c94938aL, 0x9d266d6a1cc0542cL, + 0x7440fb816508c4feL, 0x13328503df48229fL, 0xd6bf7baee43cac40L, 0x4838d65f6ef6748fL, 0x1e152328f3318deaL, + 0x8f8419a348f296bfL, 0x72c8834a5957b511L, 0xd7a023a73260b45cL, 0x94ebc8abcfb56daeL, 0x9fc10d0f989993e0L, + 0xde68a2355b93cae6L, 0xa44cfe79ae538bbeL, 0x9d1d84fcce371425L, 0x51d2b1ab2ddfb636L, 0x2fd7e4b9e72cd38cL, + 0x65ca5b96b7552210L, 0xdd69a0d8ab3b546dL, 0x604d51b25fbf70e2L, 0x73aa8a564fb7ac9eL, 0x1a8c1e992b941148L, + 0xaac40a2703d9bea0L, 0x764dbeae7fa4f3a6L, 0x1e99b96e70a9be8bL, 0x2c5e9deb57ef4743L, 0x3a938fee32d29981L, + 0x26e6db8ffdf5adfeL, 0x469356c504ec9f9dL, 0xc8763c5b08d1908cL, 0x3f6c6af859d80055L, 0x7f7cc39420a3a545L, + 0x9bfb227ebdf4c5ceL, 0x89039d79d6fc5c5cL, 0x8fe88b57305e2ab6L, 0xa09e8c8c35ab96deL, 0xfa7e393983325753L, + 0xd6b6d0ecc617c699L, 0xdfea21ea9e7557e3L, 0xb67c1fa481680af8L, 0xca1e3785a9e724e5L, 0x1cfc8bed0d681639L, + 0xd18d8549d140caeaL, 0x4ed0fe7e9dc91335L, 0xe4dbf0634473f5d2L, 0x1761f93a44d5aefeL, 0x53898e4c3910da55L, + 0x734de8181f6ec39aL, 0x2680b122baa28d97L, 0x298af231c85bafabL, 0x7983eed3740847d5L, 0x66c1a2a1a60cd889L, + 0x9e17e49642a3e4c1L, 0xedb454e7badc0805L, 0x50b704cab602c329L, 0x4cc317fb9cddd023L, 0x66b4835d9eafea22L, + 0x219b97e26ffc81bdL, 0x261e4e4c0a333a9dL, 0x1fe2cca76517db90L, 0xd7504dfa8816edbbL, 0xb9571fa04dc089c8L, + 0x1ddc0325259b27deL, 0xcf3f4688801eb9aaL, 0xf4f5d05c10cab243L, 0x38b6525c21a42b0eL, 0x36f60e2ba4fa6800L, + 0xeb3593803173e0ceL, 0x9c4cd6257c5a3603L, 0xaf0c317d32adaa8aL, 0x258e5a80c7204c4bL, 0x8b889d624d44885dL, + 0xf4d14597e660f855L, 0xd4347f66ec8941c3L, 0xe699ed85b0dfb40dL, 0x2472f6207c2d0484L, 0xc2a1e7b5b459aeb5L, + 0xab4f6451cc1d45ecL, 0x63767572ae3d6174L, 0xa59e0bd101731a28L, 0x116d0016cb948f09L, 0x2cf9c8ca052f6e9fL, + 0x0b090a7560a968e3L, 0xabeeddb2dde06ff1L, 0x58efc10b06a2068dL, 0xc6e57a78fbd986e0L, 0x2eab8ca63ce802d7L, + 0x14a195640116f336L, 0x7c0828dd624ec390L, 0xd74bbe77e6116ac7L, 0x804456af10f5fb53L, 0xebe9ea2adf4321c7L, + 0x03219a39ee587a30L, 0x49787fef17af9924L, 0xa1e9300cd8520548L, 0x5b45e522e4b1b4efL, 0xb49c3b3995091a36L, + 0xd4490ad526f14431L, 0x12a8f216af9418c2L, 0x001f837cc7350524L, 0x1877b51e57a764d5L, 0xa2853b80f17f58eeL, + 0x993e1de72d36d310L, 0xb3598080ce64a656L, 0x252f59cf0d9f04bbL, 0xd23c8e176d113600L, 0x1bda0492e7e4586eL, + 0x21e0bd5026c619bfL, 0x3b097adaf088f94eL, 0x8d14dedb30be846eL, 0xf95cffa23af5f6f4L, 0x3871700761b3f743L, + 0xca672b91e9e4fa16L, 0x64c8e531bff53b55L, 0x241260ed4ad1e87dL, 0x106c09b972d2e822L, 0x7fba195410e5ca30L, + 0x7884d9bc6cb569d8L, 0x0647dfedcd894a29L, 0x63573ff03e224774L, 0x4fc8e9560f91b123L, 0x1db956e450275779L, + 0xb8d91274b9e9d4fbL, 0xa2ebee47e2fbfce1L, 0xd9f1f30ccd97fb09L, 0xefed53d75fd64e6bL, 0x2e6d02c36017f67fL, + 0xa9aa4d20db084e9bL, 0xb64be8d8b25396c1L, 0x70cb6af7c2d5bcf0L, 0x98f076a4f7a2322eL, 0xbf84470805e69b5fL, + 0x94c3251f06f90cf3L, 0x3e003e616a6591e9L, 0xb925a6cd0421aff3L, 0x61bdd1307c66e300L, 0xbf8d5108e27e0d48L, + 0x240ab57a8b888b20L, 0xfc87614baf287e07L, 0xef02cdd06ffdb432L, 0xa1082c0466df6c0aL, 0x8215e577001332c8L, + 0xd39bb9c3a48db6cfL, 0x2738259634305c14L, 0x61cf4f94c97df93dL, 0x1b6baca2ae4e125bL, 0x758f450c88572e0bL, + 0x959f587d507a8359L, 0xb063e962e045f54dL, 0x60e8ed72c0dff5d1L, 0x7b64978555326f9fL, 0xfd080d236da814baL, + 0x8c90fd9b083f4558L, 0x106f72fe81e2c590L, 0x7976033a39f7d952L, 0xa4ec0132764ca04bL, 0x733ea705fae4fa77L, + 0xb4d8f77bc3e56167L, 0x9e21f4f903b33fd9L, 0x9d765e419fb69f6dL, 0xd30c088ba61ea5efL, 0x5d94337fbfaf7f5bL, + 0x1a4e4822eb4d7a59L, 0x6ffe73e81b637fb3L, 0xddf957bc36d8b9caL, 0x64d0e29eea8838b3L, 0x08dd9bdfd96b9f63L, + 0x087e79e5a57d1d13L, 0xe328e230e3e2b3fbL, 0x1c2559e30f0946beL, 0x720bf5f26f4d2eaaL, 0xb0774d261cc609dbL, + 0x443f64ec5a371195L, 0x4112cf68649a260eL, 0xd813f2fab7f5c5caL, 0x660d3257380841eeL, 0x59ac2c7873f910a3L, + 0xe846963877671a17L, 0x93b633abfa3469f8L, 0xc0c0f5a60ef4cdcfL, 0xcaf21ecd4377b28cL, 0x57277707199b8175L, + 0x506c11b9d90e8b1dL, 0xd83cc2687a19255fL, 0x4a29c6465a314cd1L, 0xed2df21216235097L, 0xb5635c95ff7296e2L, + 0x22af003ab672e811L, 0x52e762596bf68235L, 0x9aeba33ac6ecc6b0L, 0x944f6de09134dfb6L, 0x6c47bec883a7de39L, + 0x6ad047c430a12104L, 0xa5b1cfdba0ab4067L, 0x7c45d833aff07862L, 0x5092ef950a16da0bL, 0x9338e69c052b8e7bL, + 0x455a4b4cfe30e3f5L, 0x6b02e63195ad0cf8L, 0x6b17b224bad6bf27L, 0xd1e0ccd25bb9c169L, 0xde0c89a556b9ae70L, + 0x50065e535a213cf6L, 0x9c1169fa2777b874L, 0x78edefd694af1eedL, 0x6dc93d9526a50e68L, 0xee97f453f06791edL, + 0x32ab0edb696703d3L, 0x3a6853c7e70757a7L, 0x31865ced6120f37dL, 0x67fef95d92607890L, 0x1f2b1d1f15f6dc9cL, + 0xb69e38a8965c6b65L, 0xaa9119ff184cccf4L, 0xf43c732873f24c13L, 0xfb4a3d794a9a80d2L, 0x3550c2321fd6109cL, + 0x371f77e76bb8417eL, 0x6bfa9aae5ec05779L, 0xcd04f3ff001a4778L, 0xe3273522064480caL, 0x9f91508bffcfc14aL, + 0x049a7f41061a9e60L, 0xfcb6be43a9f2fe9bL, 0x08de8a1c7797da9bL, 0x8f9887e6078735a1L, 0xb5b4071dbfc73a66L, + 0x230e343dfba08d33L, 0x43ed7f5a0fae657dL, 0x3a88a0fbbcb05c63L, 0x21874b8b4d2dbc4fL, 0x1bdea12e35f6a8c9L, + 0x53c065c6c8e63528L, 0xe34a1d250e7a8d6bL, 0xd6b04d3b7651dd7eL, 0x5e90277e7cb39e2dL, 0x2c046f22062dc67dL, + 0xb10bb459132d0a26L, 0x3fa9ddfb67e2f199L, 0x0e09b88e1914f7afL, 0x10e8b35af3eeab37L, 0x9eedeca8e272b933L, + 0xd4c718bc4ae8ae5fL, 0x81536d601170fc20L, 0x91b534f885818a06L, 0xec8177f83f900978L, 0x190e714fada5156eL, + 0xb592bf39b0364963L, 0x89c350c893ae7dc1L, 0xac042e70f8b383f2L, 0xb49b52e587a1ee60L, 0xfb152fe3ff26da89L, + 0x3e666e6f69ae2c15L, 0x3b544ebe544c19f9L, 0xe805a1e290cf2456L, 0x24b33c9d7ed25117L, 0xe74733427b72f0c1L, + 0x0a804d18b7097475L, 0x57e3306d881edb4fL, 0x4ae7d6a36eb5dbcbL, 0x2d8d5432157064c8L, 0xd1e649de1e7f268bL, + 0x8a328a1cedfe552cL, 0x07a3aec79624c7daL, 0x84547ddc3e203c94L, 0x990a98fd5071d263L, 0x1a4ff12616eefc89L, + 0xf6f7fd1431714200L, 0x30c05b1ba332f41cL, 0x8d2636b81555a786L, 0x46c9feb55d120902L, 0xccec0a73b49c9921L, + 0x4e9d2827355fc492L, 0x19ebb029435dcb0fL, 0x4659d2b743848a2cL, 0x963ef2c96b33be31L, 0x74f85198b05a2e7dL, + 0x5a0f544dd2b1fb18L, 0x03727073c2e134b1L, 0xc7f6aa2de59aea61L, 0x352787baa0d7c22fL, 0x9853eab63b5e0b35L, + 0xabbdcdd7ed5c0860L, 0xcf05daf5ac8d77b0L, 0x49cad48cebf4a71eL, 0x7a4c10ec2158c4a6L, 0xd9e92aa246bf719eL, + 0x13ae978d09fe5557L, 0x730499af921549ffL, 0x4e4b705b92903ba4L, 0xff577222c14f0a3aL, 0x55b6344cf97aafaeL, + 0xb862225b055b6960L, 0xcac09afbddd2cdb4L, 0xdaf8e9829fe96b5fL, 0xb5fdfc5d3132c498L, 0x310cb380db6f7503L, + 0xe87fbb46217a360eL, 0x2102ae466ebb1148L, 0xf8549e1a3aa5e00dL, 0x07a69afdcc42261aL, 0xc4c118bfe78feaaeL, + 0xf9f4892ed96bd438L, 0x1af3dbe25d8f45daL, 0xf5b4b0b0d2deeeb4L, 0x962aceefa82e1c84L, 0x046e3ecaaf453ce9L, + 0xf05d129681949a4cL, 0x964781ce734b3c84L, 0x9c2ed44081ce5fbdL, 0x522e23f3925e319eL, 0x177e00f9fc32f791L, + 0x2bc60a63a6f3b3f2L, 0x222bbfae61725606L, 0x486289ddcc3d6780L, 0x7dc7785b8efdfc80L, 0x8af38731c02ba980L, + 0x1fab64ea29a2ddf7L, 0xe4d9429322cd065aL, 0x9da058c67844f20cL, 0x24c0e332b70019b0L, 0x233003b5a6cfe6adL, + 0xd586bd01c5c217f6L, 0x5e5637885f29bc2bL, 0x7eba726d8c94094bL, 0x0a56a5f0bfe39272L, 0xd79476a84ee20d06L, + 0x9e4c1269baa4bf37L, 0x17efee45b0dee640L, 0x1d95b0a5fcf90bc6L, 0x93cbe0b699c2585dL, 0x65fa4f227a2b6d79L, + 0xd5f9e858292504d5L, 0xc2b5a03f71471a6fL, 0x59300222b4561e00L, 0xce2f8642ca0712dcL, 0x7ca9723fbb2e8988L, + 0x2785338347f2ba08L, 0xc61bb3a141e50e8cL, 0x150f361dab9dec26L, 0x9f6a419d382595f4L, 0x64a53dc924fe7ac9L, + 0x142de49fff7a7c3dL, 0x0c335248857fa9e7L, 0x0a9c32d5eae45305L, 0xe6c42178c4bbb92eL, 0x71f1ce2490d20b07L, + 0xf1bcc3d275afe51aL, 0xe728e8c83c334074L, 0x96fbf83a12884624L, 0x81a1549fd6573da5L, 0x5fa7867caf35e149L, + 0x56986e2ef3ed091bL, 0x917f1dd5f8886c61L, 0xd20d8c88c8ffe65fL, 0x31d71dce64b2c310L, 0xf165b587df898190L, + 0xa57e6339dd2cf3a0L, 0x1ef6e6dbb1961ec9L, 0x70cc73d90bc26e24L, 0xe21a6b35df0c3ad7L, 0x003a93d8b2806962L, + 0x1c99ded33cb890a1L, 0xcf3145de0add4289L, 0xd0e4427a5514fb72L, 0x77c621cc9fb3a483L, 0x67a34dac4356550bL, + 0xf8d626aaaf278509L, ) def hash(context: GameContext): Long = - var h = 0L - - // Piece hashes - for (sq, piece) <- context.board.pieces do - val idx = pieceIndex(piece) * 64 + squareIndex(sq) - h ^= Random(idx) - - // Castling rights - if context.castlingRights.whiteKingSide then - h ^= Random(768) - if context.castlingRights.whiteQueenSide then - h ^= Random(769) - if context.castlingRights.blackKingSide then - h ^= Random(770) - if context.castlingRights.blackQueenSide then - h ^= Random(771) - - // En passant (by file only, but only if side-to-move can capture en passant) - context.enPassantSquare.foreach { sq => - if canCaptureEnPassant(context, sq) then - h ^= Random(772 + sq.file.ordinal) + val piecesHash = context.board.pieces.foldLeft(0L) { case (h, (sq, piece)) => + h ^ Random(pieceIndex(piece) * 64 + squareIndex(sq)) } - - // Side to move (XOR if White is to move) - if context.turn == Color.White then - h ^= Random(780) - - h + val h1 = if context.castlingRights.whiteKingSide then piecesHash ^ Random(768) else piecesHash + val h2 = if context.castlingRights.whiteQueenSide then h1 ^ Random(769) else h1 + val h3 = if context.castlingRights.blackKingSide then h2 ^ Random(770) else h2 + val h4 = if context.castlingRights.blackQueenSide then h3 ^ Random(771) else h3 + val h5 = context.enPassantSquare.fold(h4) { sq => + if canCaptureEnPassant(context, sq) then h4 ^ Random(772 + sq.file.ordinal) else h4 + } + if context.turn == Color.White then h5 ^ Random(780) else h5 private def pieceIndex(piece: Piece): Int = val typeIdx = piece.pieceType match - case PieceType.Pawn => 0 + case PieceType.Pawn => 0 case PieceType.Knight => 1 case PieceType.Bishop => 2 - case PieceType.Rook => 3 - case PieceType.Queen => 4 - case PieceType.King => 5 + case PieceType.Rook => 3 + case PieceType.Queen => 4 + case PieceType.King => 5 val colorOffset = if piece.color == Color.White then 1 else 0 typeIdx * 2 + colorOffset @@ -250,7 +194,7 @@ object PolyglotHash: sq.file.ordinal + 8 * sq.rank.ordinal private def canCaptureEnPassant(context: GameContext, epSquare: Square): Boolean = - val pawn = Piece(context.turn, PieceType.Pawn) + val pawn = Piece(context.turn, PieceType.Pawn) val rankDelta = if context.turn == Color.White then -1 else 1 List(-1, 1).exists { fileDelta => epSquare @@ -258,4 +202,3 @@ object PolyglotHash: .flatMap(context.board.pieces.get) .contains(pawn) } - diff --git a/modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala b/modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala index be82e84..57bcfa6 100644 --- a/modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala +++ b/modules/bot/src/main/scala/de/nowchess/bot/util/ZobristHash.scala @@ -12,7 +12,7 @@ object ZobristHash: private val pieceRands: Array[Long] = Array.ofDim(768) // Side-to-move: XOR when Black to move - private val sideToMoveRand: Long = Random(0x1BADB002L).nextLong() + private val sideToMoveRand: Long = Random(0x1badb002L).nextLong() // 4 entries: White kingside, White queenside, Black kingside, Black queenside private val castlingRands: Array[Long] = Array.ofDim(4) @@ -22,94 +22,79 @@ object ZobristHash: // Initialize all random values using a seeded RNG for reproducibility locally: - val rng = Random(0x1BADB002L) - for i <- 0 until 768 do - pieceRands(i) = rng.nextLong() - for i <- 0 until 4 do - castlingRands(i) = rng.nextLong() - for i <- 0 until 8 do - enPassantRands(i) = rng.nextLong() + val rng = Random(0x1badb002L) + for i <- 0 until 768 do pieceRands(i) = rng.nextLong() + for i <- 0 until 4 do castlingRands(i) = rng.nextLong() + for i <- 0 until 8 do enPassantRands(i) = rng.nextLong() /** Compute a 64-bit Zobrist hash for a GameContext. */ def hash(context: GameContext): Long = - var h = 0L - - // Hash board pieces - for (square, piece) <- context.board.pieces do + val piecesHash = context.board.pieces.foldLeft(0L) { case (h, (square, piece)) => val squareIndex = square.rank.ordinal * 8 + square.file.ordinal - val colorIndex = if piece.color == Color.White then 0 else 1 - val pieceIndex = colorIndex * 6 + piece.pieceType.ordinal - val randIndex = squareIndex * 12 + pieceIndex - h ^= pieceRands(randIndex) - - // Hash side to move - if context.turn == Color.Black then - h ^= sideToMoveRand - - // Hash castling rights - if context.castlingRights.whiteKingSide then - h ^= castlingRands(0) - if context.castlingRights.whiteQueenSide then - h ^= castlingRands(1) - if context.castlingRights.blackKingSide then - h ^= castlingRands(2) - if context.castlingRights.blackQueenSide then - h ^= castlingRands(3) - - // Hash en-passant square - context.enPassantSquare.foreach(sq => h ^= enPassantRands(sq.file.ordinal)) - - h + val colorIndex = if piece.color == Color.White then 0 else 1 + val pieceIndex = colorIndex * 6 + piece.pieceType.ordinal + h ^ pieceRands(squareIndex * 12 + pieceIndex) + } + val h1 = if context.turn == Color.Black then piecesHash ^ sideToMoveRand else piecesHash + val h2 = if context.castlingRights.whiteKingSide then h1 ^ castlingRands(0) else h1 + val h3 = if context.castlingRights.whiteQueenSide then h2 ^ castlingRands(1) else h2 + val h4 = if context.castlingRights.blackKingSide then h3 ^ castlingRands(2) else h3 + val h5 = if context.castlingRights.blackQueenSide then h4 ^ castlingRands(3) else h4 + context.enPassantSquare.fold(h5)(sq => h5 ^ enPassantRands(sq.file.ordinal)) def nextHash(context: GameContext, currentHash: Long, move: Move, nextContext: GameContext): Long = - var h = currentHash - h ^= sideToMoveRand - h = toggleCastling(h, context, nextContext) - h = toggleEnPassant(h, context, nextContext) - + val h0 = currentHash ^ sideToMoveRand + val h1 = toggleCastling(h0, context, nextContext) + val h2 = toggleEnPassant(h1, context, nextContext) move.moveType match case MoveType.CastleKingside | MoveType.CastleQueenside => - h = applyCastleDelta(h, context.turn, move.moveType == MoveType.CastleKingside) + applyCastleDelta(h2, context.turn, move.moveType == MoveType.CastleKingside) case MoveType.EnPassant => - h = applyEnPassantDelta(h, context, move) + applyEnPassantDelta(h2, context, move) case MoveType.Promotion(piece) => - h = applyPromotionDelta(h, context, move, piece) + applyPromotionDelta(h2, context, move, piece) case MoveType.Normal(_) => - h = applyNormalDelta(h, context, move) - - h + applyNormalDelta(h2, context, move) private def applyNormalDelta(h0: Long, context: GameContext, move: Move): Long = context.board.pieceAt(move.from).fold(h0) { mover => - var h = h0 ^ pieceKey(move.from, mover) - context.board.pieceAt(move.to).foreach(captured => h ^= pieceKey(move.to, captured)) - h ^ pieceKey(move.to, mover) + val h1 = h0 ^ pieceKey(move.from, mover) + val h2 = context.board.pieceAt(move.to).fold(h1)(captured => h1 ^ pieceKey(move.to, captured)) + h2 ^ pieceKey(move.to, mover) } private def applyPromotionDelta(h0: Long, context: GameContext, move: Move, promoted: PromotionPiece): Long = context.board.pieceAt(move.from).fold(h0) { pawn => - var h = h0 ^ pieceKey(move.from, pawn) - context.board.pieceAt(move.to).foreach(captured => h ^= pieceKey(move.to, captured)) - h ^ pieceKey(move.to, Piece(context.turn, promotedPieceType(promoted))) + val h1 = h0 ^ pieceKey(move.from, pawn) + val h2 = context.board.pieceAt(move.to).fold(h1)(captured => h1 ^ pieceKey(move.to, captured)) + h2 ^ pieceKey(move.to, Piece(context.turn, promotedPieceType(promoted))) } private def applyEnPassantDelta(h0: Long, context: GameContext, move: Move): Long = context.board.pieceAt(move.from).fold(h0) { pawn => val capturedSquare = Square(move.to.file, move.from.rank) - var h = h0 ^ pieceKey(move.from, pawn) - context.board.pieceAt(capturedSquare).foreach(captured => h ^= pieceKey(capturedSquare, captured)) - h ^ pieceKey(move.to, pawn) + val h1 = h0 ^ pieceKey(move.from, pawn) + val h2 = context.board.pieceAt(capturedSquare).fold(h1)(captured => h1 ^ pieceKey(capturedSquare, captured)) + h2 ^ pieceKey(move.to, pawn) } private def applyCastleDelta(h0: Long, color: Color, kingside: Boolean): Long = val rank = if color == Color.White then Rank.R1 else Rank.R8 val (kingFrom, kingTo, rookFrom, rookTo) = if kingside then - (Square(de.nowchess.api.board.File.E, rank), Square(de.nowchess.api.board.File.G, rank), - Square(de.nowchess.api.board.File.H, rank), Square(de.nowchess.api.board.File.F, rank)) + ( + Square(de.nowchess.api.board.File.E, rank), + Square(de.nowchess.api.board.File.G, rank), + Square(de.nowchess.api.board.File.H, rank), + Square(de.nowchess.api.board.File.F, rank), + ) else - (Square(de.nowchess.api.board.File.E, rank), Square(de.nowchess.api.board.File.C, rank), - Square(de.nowchess.api.board.File.A, rank), Square(de.nowchess.api.board.File.D, rank)) + ( + Square(de.nowchess.api.board.File.E, rank), + Square(de.nowchess.api.board.File.C, rank), + Square(de.nowchess.api.board.File.A, rank), + Square(de.nowchess.api.board.File.D, rank), + ) val king = Piece(color, PieceType.King) val rook = Piece(color, PieceType.Rook) h0 ^ pieceKey(kingFrom, king) ^ pieceKey(kingTo, king) ^ pieceKey(rookFrom, rook) ^ pieceKey(rookTo, rook) @@ -117,26 +102,21 @@ object ZobristHash: private def promotedPieceType(promotion: PromotionPiece): PieceType = promotion match case PromotionPiece.Knight => PieceType.Knight case PromotionPiece.Bishop => PieceType.Bishop - case PromotionPiece.Rook => PieceType.Rook - case PromotionPiece.Queen => PieceType.Queen + case PromotionPiece.Rook => PieceType.Rook + case PromotionPiece.Queen => PieceType.Queen private def toggleCastling(h0: Long, before: GameContext, after: GameContext): Long = - var h = h0 - if before.castlingRights.whiteKingSide != after.castlingRights.whiteKingSide then h ^= castlingRands(0) - if before.castlingRights.whiteQueenSide != after.castlingRights.whiteQueenSide then h ^= castlingRands(1) - if before.castlingRights.blackKingSide != after.castlingRights.blackKingSide then h ^= castlingRands(2) - if before.castlingRights.blackQueenSide != after.castlingRights.blackQueenSide then h ^= castlingRands(3) - h + val h1 = if before.castlingRights.whiteKingSide != after.castlingRights.whiteKingSide then h0 ^ castlingRands(0) else h0 + val h2 = if before.castlingRights.whiteQueenSide != after.castlingRights.whiteQueenSide then h1 ^ castlingRands(1) else h1 + val h3 = if before.castlingRights.blackKingSide != after.castlingRights.blackKingSide then h2 ^ castlingRands(2) else h2 + if before.castlingRights.blackQueenSide != after.castlingRights.blackQueenSide then h3 ^ castlingRands(3) else h3 private def toggleEnPassant(h0: Long, before: GameContext, after: GameContext): Long = - var h = h0 - before.enPassantSquare.foreach(sq => h ^= enPassantRands(sq.file.ordinal)) - after.enPassantSquare.foreach(sq => h ^= enPassantRands(sq.file.ordinal)) - h + val h1 = before.enPassantSquare.fold(h0)(sq => h0 ^ enPassantRands(sq.file.ordinal)) + after.enPassantSquare.fold(h1)(sq => h1 ^ enPassantRands(sq.file.ordinal)) private def pieceKey(square: Square, piece: Piece): Long = val squareIndex = square.rank.ordinal * 8 + square.file.ordinal - val colorIndex = if piece.color == Color.White then 0 else 1 - val pieceIndex = colorIndex * 6 + piece.pieceType.ordinal + val colorIndex = if piece.color == Color.White then 0 else 1 + val pieceIndex = colorIndex * 6 + piece.pieceType.ordinal pieceRands(squareIndex * 12 + pieceIndex) - diff --git a/modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala b/modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala index 3e91b0b..22abc03 100644 --- a/modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala +++ b/modules/bot/src/test/scala/de/nowchess/bot/AlphaBetaSearchTest.scala @@ -14,37 +14,37 @@ class AlphaBetaSearchTest extends AnyFunSuite with Matchers: test("bestMove on initial position returns a move"): val search = AlphaBetaSearch(DefaultRules, weights = EvaluationClassic) - val move = search.bestMove(GameContext.initial, maxDepth = 2) + val move = search.bestMove(GameContext.initial, maxDepth = 2) move should not be None test("bestMove on a position with one legal move returns that move"): // Create a simple position: White king on h1, Black rook on a2 // (set up so there's only one legal move available) // For simplicity, just test that a position with forced mate returns a move - val search = AlphaBetaSearch(DefaultRules, weights = EvaluationClassic) + val search = AlphaBetaSearch(DefaultRules, weights = EvaluationClassic) val context = GameContext.initial - val move = search.bestMove(context, maxDepth = 1) + val move = search.bestMove(context, maxDepth = 1) move should not be None test("bestMove returns None for initial position has no legal moves"): // Use a stub RuleSet that returns empty legal moves val stubRules = new RuleSet: def candidateMoves(context: GameContext)(square: Square) = List() - def legalMoves(context: GameContext)(square: Square) = List() - def allLegalMoves(context: GameContext) = List() - def isCheck(context: GameContext) = false - def isCheckmate(context: GameContext) = true - def isStalemate(context: GameContext) = false - def isInsufficientMaterial(context: GameContext) = false - def isFiftyMoveRule(context: GameContext) = false - def applyMove(context: GameContext)(move: Move) = context + def legalMoves(context: GameContext)(square: Square) = List() + def allLegalMoves(context: GameContext) = List() + def isCheck(context: GameContext) = false + def isCheckmate(context: GameContext) = true + def isStalemate(context: GameContext) = false + def isInsufficientMaterial(context: GameContext) = false + def isFiftyMoveRule(context: GameContext) = false + def applyMove(context: GameContext)(move: Move) = context val search = AlphaBetaSearch(stubRules, weights = EvaluationClassic) - val move = search.bestMove(GameContext.initial, maxDepth = 2) + val move = search.bestMove(GameContext.initial, maxDepth = 2) move should be(None) test("transposition table is cleared at start of bestMove"): - val search = AlphaBetaSearch(DefaultRules, weights = EvaluationClassic) + val search = AlphaBetaSearch(DefaultRules, weights = EvaluationClassic) val context = GameContext.initial // Call bestMove twice and verify both work independently val move1 = search.bestMove(context, maxDepth = 1) @@ -55,19 +55,19 @@ class AlphaBetaSearchTest extends AnyFunSuite with Matchers: val search = AlphaBetaSearch(DefaultRules, weights = EvaluationClassic) // A position with multiple captures to verify quiescence orders them val context = GameContext.initial - val move = search.bestMove(context, maxDepth = 2) + val move = search.bestMove(context, maxDepth = 2) // Just verify it completes without error move.isDefined should be(true) test("search respects alpha-beta bounds"): // This is implicit in the structure, but we test via behavior - val search = AlphaBetaSearch(DefaultRules, weights = EvaluationClassic) + val search = AlphaBetaSearch(DefaultRules, weights = EvaluationClassic) val context = GameContext.initial - val move = search.bestMove(context, maxDepth = 3) + val move = search.bestMove(context, maxDepth = 3) move should not be None test("iterative deepening finds a move at each depth"): - val search = AlphaBetaSearch(DefaultRules, weights = EvaluationClassic) + val search = AlphaBetaSearch(DefaultRules, weights = EvaluationClassic) val context = GameContext.initial // Searching to depth 3 should use iterative deepening (depths 1, 2, 3) val move = search.bestMove(context, maxDepth = 3) @@ -77,88 +77,90 @@ class AlphaBetaSearchTest extends AnyFunSuite with Matchers: // Create a stalemate stub: white to move, no legal moves, not checkmate val stalematRules = new RuleSet: def candidateMoves(context: GameContext)(square: Square) = List() - def legalMoves(context: GameContext)(square: Square) = List() - def allLegalMoves(context: GameContext) = List() - def isCheck(context: GameContext) = false - def isCheckmate(context: GameContext) = false - def isStalemate(context: GameContext) = true - def isInsufficientMaterial(context: GameContext) = false - def isFiftyMoveRule(context: GameContext) = false - def applyMove(context: GameContext)(move: Move) = context + def legalMoves(context: GameContext)(square: Square) = List() + def allLegalMoves(context: GameContext) = List() + def isCheck(context: GameContext) = false + def isCheckmate(context: GameContext) = false + def isStalemate(context: GameContext) = true + def isInsufficientMaterial(context: GameContext) = false + def isFiftyMoveRule(context: GameContext) = false + def applyMove(context: GameContext)(move: Move) = context val search = AlphaBetaSearch(stalematRules, weights = EvaluationClassic) - val move = search.bestMove(GameContext.initial, maxDepth = 1) + val move = search.bestMove(GameContext.initial, maxDepth = 1) move should be(None) test("insufficient material returns score 0"): val insufficientRules = new RuleSet: def candidateMoves(context: GameContext)(square: Square) = List() - def legalMoves(context: GameContext)(square: Square) = List() - def allLegalMoves(context: GameContext) = List() - def isCheck(context: GameContext) = false - def isCheckmate(context: GameContext) = false - def isStalemate(context: GameContext) = false - def isInsufficientMaterial(context: GameContext) = true - def isFiftyMoveRule(context: GameContext) = false - def applyMove(context: GameContext)(move: Move) = context + def legalMoves(context: GameContext)(square: Square) = List() + def allLegalMoves(context: GameContext) = List() + def isCheck(context: GameContext) = false + def isCheckmate(context: GameContext) = false + def isStalemate(context: GameContext) = false + def isInsufficientMaterial(context: GameContext) = true + def isFiftyMoveRule(context: GameContext) = false + def applyMove(context: GameContext)(move: Move) = context val search = AlphaBetaSearch(insufficientRules, weights = EvaluationClassic) - val move = search.bestMove(GameContext.initial, maxDepth = 1) + val move = search.bestMove(GameContext.initial, maxDepth = 1) move should be(None) test("fifty move rule returns score 0"): val fiftyMoveRules = new RuleSet: def candidateMoves(context: GameContext)(square: Square) = List() - def legalMoves(context: GameContext)(square: Square) = List() - def allLegalMoves(context: GameContext) = List() - def isCheck(context: GameContext) = false - def isCheckmate(context: GameContext) = false - def isStalemate(context: GameContext) = false - def isInsufficientMaterial(context: GameContext) = false - def isFiftyMoveRule(context: GameContext) = true - def applyMove(context: GameContext)(move: Move) = context + def legalMoves(context: GameContext)(square: Square) = List() + def allLegalMoves(context: GameContext) = List() + def isCheck(context: GameContext) = false + def isCheckmate(context: GameContext) = false + def isStalemate(context: GameContext) = false + def isInsufficientMaterial(context: GameContext) = false + def isFiftyMoveRule(context: GameContext) = true + def applyMove(context: GameContext)(move: Move) = context val search = AlphaBetaSearch(fiftyMoveRules, weights = EvaluationClassic) - val move = search.bestMove(GameContext.initial, maxDepth = 1) + val move = search.bestMove(GameContext.initial, maxDepth = 1) move should be(None) test("capture moves are recognized in quiescence search"): // Create a position with a capture available - val board = Board(Map( - Square(File.E, Rank.R4) -> Piece.WhiteQueen, - Square(File.E, Rank.R5) -> Piece.BlackPawn - )) + val board = Board( + Map( + Square(File.E, Rank.R4) -> Piece.WhiteQueen, + Square(File.E, Rank.R5) -> Piece.BlackPawn, + ), + ) val context = GameContext.initial.withBoard(board) val captureMove = Move(Square(File.E, Rank.R4), Square(File.E, Rank.R5), MoveType.Normal(true)) val rulesWithCapture = new RuleSet: def candidateMoves(context: GameContext)(square: Square) = List() - def legalMoves(context: GameContext)(square: Square) = List() - def allLegalMoves(context: GameContext) = List(captureMove) - def isCheck(context: GameContext) = false - def isCheckmate(context: GameContext) = false - def isStalemate(context: GameContext) = false - def isInsufficientMaterial(context: GameContext) = false - def isFiftyMoveRule(context: GameContext) = false - def applyMove(context: GameContext)(move: Move) = context + def legalMoves(context: GameContext)(square: Square) = List() + def allLegalMoves(context: GameContext) = List(captureMove) + def isCheck(context: GameContext) = false + def isCheckmate(context: GameContext) = false + def isStalemate(context: GameContext) = false + def isInsufficientMaterial(context: GameContext) = false + def isFiftyMoveRule(context: GameContext) = false + def applyMove(context: GameContext)(move: Move) = context val search = AlphaBetaSearch(rulesWithCapture, weights = EvaluationClassic) - val move = search.bestMove(context, maxDepth = 1) + val move = search.bestMove(context, maxDepth = 1) move should be(Some(captureMove)) test("non-capture moves are not included in quiescence"): val quietMove = Move(Square(File.E, Rank.R4), Square(File.E, Rank.R5), MoveType.Normal(false)) val rulesQuiet = new RuleSet: def candidateMoves(context: GameContext)(square: Square) = List() - def legalMoves(context: GameContext)(square: Square) = List() - def allLegalMoves(context: GameContext) = List(quietMove) - def isCheck(context: GameContext) = false - def isCheckmate(context: GameContext) = false - def isStalemate(context: GameContext) = false - def isInsufficientMaterial(context: GameContext) = false - def isFiftyMoveRule(context: GameContext) = false - def applyMove(context: GameContext)(move: Move) = context + def legalMoves(context: GameContext)(square: Square) = List() + def allLegalMoves(context: GameContext) = List(quietMove) + def isCheck(context: GameContext) = false + def isCheckmate(context: GameContext) = false + def isStalemate(context: GameContext) = false + def isInsufficientMaterial(context: GameContext) = false + def isFiftyMoveRule(context: GameContext) = false + def applyMove(context: GameContext)(move: Move) = context val search = AlphaBetaSearch(rulesQuiet, weights = EvaluationClassic) - val move = search.bestMove(GameContext.initial, maxDepth = 1) - move should be(Some(quietMove)) // bestMove returns the quiet move since it's the only legal move + val move = search.bestMove(GameContext.initial, maxDepth = 1) + move should be(Some(quietMove)) // bestMove returns the quiet move since it's the only legal move diff --git a/modules/bot/src/test/scala/de/nowchess/bot/BotControllerTest.scala b/modules/bot/src/test/scala/de/nowchess/bot/BotControllerTest.scala index 58cf813..8573332 100644 --- a/modules/bot/src/test/scala/de/nowchess/bot/BotControllerTest.scala +++ b/modules/bot/src/test/scala/de/nowchess/bot/BotControllerTest.scala @@ -6,5 +6,4 @@ import org.scalatest.matchers.should.Matchers class BotControllerTest extends AnyFunSuite with Matchers: test("BotController can be instantiated"): - // BotController is an object with a private map, just test instantiation - BotController should not be null + BotController.listBots should not be empty diff --git a/modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala b/modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala index 91c0337..e00099c 100644 --- a/modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala +++ b/modules/bot/src/test/scala/de/nowchess/bot/ClassicalBotTest.scala @@ -20,29 +20,29 @@ class ClassicalBotTest extends AnyFunSuite with Matchers: botMedium.name should include("Medium") test("nextMove on initial position returns a move"): - val bot = ClassicalBot(BotDifficulty.Easy) + val bot = ClassicalBot(BotDifficulty.Easy) val move = bot.nextMove(GameContext.initial) move should not be None test("nextMove returns None for position with no legal moves"): val stubRules = new RuleSet: def candidateMoves(context: GameContext)(square: Square) = List() - def legalMoves(context: GameContext)(square: Square) = List() - def allLegalMoves(context: GameContext) = List() - def isCheck(context: GameContext) = false - def isCheckmate(context: GameContext) = true - def isStalemate(context: GameContext) = false - def isInsufficientMaterial(context: GameContext) = false - def isFiftyMoveRule(context: GameContext) = false - def applyMove(context: GameContext)(move: Move) = context + def legalMoves(context: GameContext)(square: Square) = List() + def allLegalMoves(context: GameContext) = List() + def isCheck(context: GameContext) = false + def isCheckmate(context: GameContext) = true + def isStalemate(context: GameContext) = false + def isInsufficientMaterial(context: GameContext) = false + def isFiftyMoveRule(context: GameContext) = false + def applyMove(context: GameContext)(move: Move) = context - val bot = ClassicalBot(BotDifficulty.Easy, stubRules) + val bot = ClassicalBot(BotDifficulty.Easy, stubRules) val move = bot.nextMove(GameContext.initial) move should be(None) test("all BotDifficulty values work"): BotDifficulty.values.foreach { difficulty => - val bot = ClassicalBot(difficulty) + val bot = ClassicalBot(difficulty) val move = bot.nextMove(GameContext.initial) // All difficulties should return a move on the initial position move should not be None @@ -52,20 +52,20 @@ class ClassicalBotTest extends AnyFunSuite with Matchers: val moveToReturn = Move( de.nowchess.api.board.Square(de.nowchess.api.board.File.E, de.nowchess.api.board.Rank.R2), de.nowchess.api.board.Square(de.nowchess.api.board.File.E, de.nowchess.api.board.Rank.R4), - de.nowchess.api.move.MoveType.Normal() + de.nowchess.api.move.MoveType.Normal(), ) val stubRules = new RuleSet: def candidateMoves(context: GameContext)(square: Square) = List() - def legalMoves(context: GameContext)(square: Square) = List() - def allLegalMoves(context: GameContext) = List(moveToReturn) - def isCheck(context: GameContext) = false - def isCheckmate(context: GameContext) = false - def isStalemate(context: GameContext) = false - def isInsufficientMaterial(context: GameContext) = false - def isFiftyMoveRule(context: GameContext) = false - def applyMove(context: GameContext)(move: Move) = context + def legalMoves(context: GameContext)(square: Square) = List() + def allLegalMoves(context: GameContext) = List(moveToReturn) + def isCheck(context: GameContext) = false + def isCheckmate(context: GameContext) = false + def isStalemate(context: GameContext) = false + def isInsufficientMaterial(context: GameContext) = false + def isFiftyMoveRule(context: GameContext) = false + def applyMove(context: GameContext)(move: Move) = context - val bot = ClassicalBot(BotDifficulty.Easy, stubRules) + val bot = ClassicalBot(BotDifficulty.Easy, stubRules) val move = bot.nextMove(GameContext.initial) move should be(Some(moveToReturn)) diff --git a/modules/bot/src/test/scala/de/nowchess/bot/EvaluationTest.scala b/modules/bot/src/test/scala/de/nowchess/bot/EvaluationTest.scala index 85435ed..0d9e442 100644 --- a/modules/bot/src/test/scala/de/nowchess/bot/EvaluationTest.scala +++ b/modules/bot/src/test/scala/de/nowchess/bot/EvaluationTest.scala @@ -11,36 +11,36 @@ class EvaluationTest extends AnyFunSuite with Matchers: test("initial position evaluates to tempo bonus"): val eval = EvaluationClassic.evaluate(GameContext.initial) - eval should equal(10) // TEMPO_BONUS only + eval should equal(10) // TEMPO_BONUS only test("remove white queen gives negative evaluation"): - val initial = GameContext.initial - val board = initial.board - val emptySquare = Square(File.D, Rank.R1) + val initial = GameContext.initial + val board = initial.board + val emptySquare = Square(File.D, Rank.R1) val boardWithoutQueen = board.pieces.filter((sq, _) => sq != emptySquare) - val newContext = initial.withBoard(Board(boardWithoutQueen)) - val eval = EvaluationClassic.evaluate(newContext) + val newContext = initial.withBoard(Board(boardWithoutQueen)) + val eval = EvaluationClassic.evaluate(newContext) eval should be < 0 test("remove black queen gives positive evaluation"): - val initial = GameContext.initial - val board = initial.board - val emptySquare = Square(File.D, Rank.R8) + val initial = GameContext.initial + val board = initial.board + val emptySquare = Square(File.D, Rank.R8) val boardWithoutQueen = board.pieces.filter((sq, _) => sq != emptySquare) - val newContext = initial.withBoard(Board(boardWithoutQueen)) - val eval = EvaluationClassic.evaluate(newContext) + val newContext = initial.withBoard(Board(boardWithoutQueen)) + val eval = EvaluationClassic.evaluate(newContext) eval should be > 0 test("different piece-square bonuses are applied"): // Knight on d4 (center) vs knight on a1 (corner) - center should be better val knightD4Board = Board(Map(Square(File.D, Rank.R4) -> Piece.WhiteKnight)) val knightA1Board = Board(Map(Square(File.A, Rank.R1) -> Piece.WhiteKnight)) - val knightD4 = GameContext.initial.withBoard(knightD4Board) - val knightA1 = GameContext.initial.withBoard(knightA1Board) + val knightD4 = GameContext.initial.withBoard(knightD4Board) + val knightA1 = GameContext.initial.withBoard(knightA1Board) val eval1 = EvaluationClassic.evaluate(knightD4) val eval2 = EvaluationClassic.evaluate(knightA1) - eval1 should be > eval2 // d4 (center) is better than a1 (corner) for knight + eval1 should be > eval2 // d4 (center) is better than a1 (corner) for knight test("all piece types are in material map"): PieceType.values.length should be > 0 @@ -53,34 +53,38 @@ class EvaluationTest extends AnyFunSuite with Matchers: EvaluationClassic.DRAW_SCORE should equal(0) test("active knight (center) scores higher than passive knight (corner)"): - val knightD4Board = Board(Map(Square(File.D, Rank.R4) -> Piece.WhiteKnight)) - val knightA1Board = Board(Map(Square(File.A, Rank.R1) -> Piece.WhiteKnight)) + val knightD4Board = Board(Map(Square(File.D, Rank.R4) -> Piece.WhiteKnight)) + val knightA1Board = Board(Map(Square(File.A, Rank.R1) -> Piece.WhiteKnight)) val knightD4Context = GameContext.initial.withBoard(knightD4Board) val knightA1Context = GameContext.initial.withBoard(knightA1Board) - val evalD4 = EvaluationClassic.evaluate(knightD4Context) - val evalA1 = EvaluationClassic.evaluate(knightA1Context) - evalD4 should be > evalA1 // Knight on d4 (center, more mobility) should score higher + val evalD4 = EvaluationClassic.evaluate(knightD4Context) + val evalA1 = EvaluationClassic.evaluate(knightA1Context) + evalD4 should be > evalA1 // Knight on d4 (center, more mobility) should score higher test("bishop pair scores higher than bishop + knight"): - val bishopPairBoard = Board(Map( - Square(File.C, Rank.R1) -> Piece.WhiteBishop, - Square(File.F, Rank.R1) -> Piece.WhiteBishop - )) - val bishopKnightBoard = Board(Map( - Square(File.C, Rank.R1) -> Piece.WhiteBishop, - Square(File.B, Rank.R1) -> Piece.WhiteKnight - )) - val pairContext = GameContext.initial.withBoard(bishopPairBoard) + val bishopPairBoard = Board( + Map( + Square(File.C, Rank.R1) -> Piece.WhiteBishop, + Square(File.F, Rank.R1) -> Piece.WhiteBishop, + ), + ) + val bishopKnightBoard = Board( + Map( + Square(File.C, Rank.R1) -> Piece.WhiteBishop, + Square(File.B, Rank.R1) -> Piece.WhiteKnight, + ), + ) + val pairContext = GameContext.initial.withBoard(bishopPairBoard) val knightContext = GameContext.initial.withBoard(bishopKnightBoard) - val evalPair = EvaluationClassic.evaluate(pairContext) - val evalKnight = EvaluationClassic.evaluate(knightContext) - evalPair should be > evalKnight // Bishop pair should score higher + val evalPair = EvaluationClassic.evaluate(pairContext) + val evalKnight = EvaluationClassic.evaluate(knightContext) + evalPair should be > evalKnight // Bishop pair should score higher test("rook on 7th rank scores higher than rook on 4th rank"): - val rook7thBoard = Board(Map(Square(File.A, Rank.R7) -> Piece.WhiteRook)) - val rook4thBoard = Board(Map(Square(File.A, Rank.R4) -> Piece.WhiteRook)) + val rook7thBoard = Board(Map(Square(File.A, Rank.R7) -> Piece.WhiteRook)) + val rook4thBoard = Board(Map(Square(File.A, Rank.R4) -> Piece.WhiteRook)) val rook7thContext = GameContext.initial.withBoard(rook7thBoard) val rook4thContext = GameContext.initial.withBoard(rook4thBoard) - val eval7th = EvaluationClassic.evaluate(rook7thContext) - val eval4th = EvaluationClassic.evaluate(rook4thContext) - eval7th should be > eval4th // Rook on 7th rank should score higher + val eval7th = EvaluationClassic.evaluate(rook7thContext) + val eval4th = EvaluationClassic.evaluate(rook4thContext) + eval7th should be > eval4th // Rook on 7th rank should score higher diff --git a/modules/bot/src/test/scala/de/nowchess/bot/MoveOrderingTest.scala b/modules/bot/src/test/scala/de/nowchess/bot/MoveOrderingTest.scala index 59525b5..e8a338c 100644 --- a/modules/bot/src/test/scala/de/nowchess/bot/MoveOrderingTest.scala +++ b/modules/bot/src/test/scala/de/nowchess/bot/MoveOrderingTest.scala @@ -10,84 +10,98 @@ import org.scalatest.matchers.should.Matchers class MoveOrderingTest extends AnyFunSuite with Matchers: test("queen capture ranks higher than rook capture"): - val board = Board(Map( - Square(File.E, Rank.R4) -> Piece.WhiteQueen, - Square(File.E, Rank.R5) -> Piece.BlackQueen, - Square(File.E, Rank.R6) -> Piece.BlackRook - )) - val context = GameContext.initial.withBoard(board).withTurn(Color.White) + val board = Board( + Map( + Square(File.E, Rank.R4) -> Piece.WhiteQueen, + Square(File.E, Rank.R5) -> Piece.BlackQueen, + Square(File.E, Rank.R6) -> Piece.BlackRook, + ), + ) + val context = GameContext.initial.withBoard(board).withTurn(Color.White) val queenCapture = Move(Square(File.E, Rank.R4), Square(File.E, Rank.R5), MoveType.Normal(true)) - val rookCapture = Move(Square(File.E, Rank.R4), Square(File.E, Rank.R6), MoveType.Normal(true)) + val rookCapture = Move(Square(File.E, Rank.R4), Square(File.E, Rank.R6), MoveType.Normal(true)) val queenScore = MoveOrdering.score(context, queenCapture, None) - val rookScore = MoveOrdering.score(context, rookCapture, None) + val rookScore = MoveOrdering.score(context, rookCapture, None) queenScore should be > rookScore test("quiet move ranks lower than capture"): - val board = Board(Map( - Square(File.E, Rank.R4) -> Piece.WhiteQueen, - Square(File.E, Rank.R5) -> Piece.BlackPawn - )) + val board = Board( + Map( + Square(File.E, Rank.R4) -> Piece.WhiteQueen, + Square(File.E, Rank.R5) -> Piece.BlackPawn, + ), + ) val context = GameContext.initial.withBoard(board).withTurn(Color.White) val capture = Move(Square(File.E, Rank.R4), Square(File.E, Rank.R5), MoveType.Normal(true)) - val quiet = Move(Square(File.E, Rank.R4), Square(File.D, Rank.R5)) + val quiet = Move(Square(File.E, Rank.R4), Square(File.D, Rank.R5)) val captureScore = MoveOrdering.score(context, capture, None) - val quietScore = MoveOrdering.score(context, quiet, None) + val quietScore = MoveOrdering.score(context, quiet, None) captureScore should be > quietScore test("TT best move ranks first"): - val board = Board(Map( - Square(File.E, Rank.R4) -> Piece.WhiteQueen, - Square(File.E, Rank.R5) -> Piece.BlackPawn, - Square(File.D, Rank.R5) -> Piece.BlackPawn - )) - val context = GameContext.initial.withBoard(board).withTurn(Color.White) - val bestMove = Move(Square(File.E, Rank.R4), Square(File.D, Rank.R5), MoveType.Normal(true)) + val board = Board( + Map( + Square(File.E, Rank.R4) -> Piece.WhiteQueen, + Square(File.E, Rank.R5) -> Piece.BlackPawn, + Square(File.D, Rank.R5) -> Piece.BlackPawn, + ), + ) + val context = GameContext.initial.withBoard(board).withTurn(Color.White) + val bestMove = Move(Square(File.E, Rank.R4), Square(File.D, Rank.R5), MoveType.Normal(true)) val otherCapture = Move(Square(File.E, Rank.R4), Square(File.E, Rank.R5), MoveType.Normal(true)) - val bestScore = MoveOrdering.score(context, bestMove, Some(bestMove)) + val bestScore = MoveOrdering.score(context, bestMove, Some(bestMove)) val otherScore = MoveOrdering.score(context, otherCapture, Some(bestMove)) bestScore should equal(Int.MaxValue) otherScore should be < bestScore test("promotion to queen ranks high"): - val board = Board(Map( - Square(File.E, Rank.R7) -> Piece.WhitePawn - )) + val board = Board( + Map( + Square(File.E, Rank.R7) -> Piece.WhitePawn, + ), + ) val context = GameContext.initial.withBoard(board).withTurn(Color.White) - val promotionQueen = Move(Square(File.E, Rank.R7), Square(File.E, Rank.R8), MoveType.Promotion(PromotionPiece.Queen)) - val promotionKnight = Move(Square(File.E, Rank.R7), Square(File.E, Rank.R8), MoveType.Promotion(PromotionPiece.Knight)) + val promotionQueen = + Move(Square(File.E, Rank.R7), Square(File.E, Rank.R8), MoveType.Promotion(PromotionPiece.Queen)) + val promotionKnight = + Move(Square(File.E, Rank.R7), Square(File.E, Rank.R8), MoveType.Promotion(PromotionPiece.Knight)) - val queenScore = MoveOrdering.score(context, promotionQueen, None) + val queenScore = MoveOrdering.score(context, promotionQueen, None) val knightScore = MoveOrdering.score(context, promotionKnight, None) queenScore should be > knightScore - queenScore should be > 100_000 // Queen promotion score is > 100_000 + queenScore should be > 100_000 // Queen promotion score is > 100_000 test("en passant is treated as capture"): - val board = Board(Map( - Square(File.E, Rank.R5) -> Piece.WhitePawn, - Square(File.D, Rank.R5) -> Piece.BlackPawn - )) - val context = GameContext.initial.withBoard(board).withTurn(Color.White) + val board = Board( + Map( + Square(File.E, Rank.R5) -> Piece.WhitePawn, + Square(File.D, Rank.R5) -> Piece.BlackPawn, + ), + ) + val context = GameContext.initial.withBoard(board).withTurn(Color.White) val epCapture = Move(Square(File.E, Rank.R5), Square(File.D, Rank.R6), MoveType.EnPassant) - val quiet = Move(Square(File.E, Rank.R5), Square(File.E, Rank.R6)) + val quiet = Move(Square(File.E, Rank.R5), Square(File.E, Rank.R6)) - val epScore = MoveOrdering.score(context, epCapture, None) + val epScore = MoveOrdering.score(context, epCapture, None) val quietScore = MoveOrdering.score(context, quiet, None) epScore should be > quietScore test("sort returns moves ordered by score"): - val board = Board(Map( - Square(File.E, Rank.R4) -> Piece.WhiteQueen, - Square(File.E, Rank.R5) -> Piece.BlackPawn, - Square(File.D, Rank.R5) -> Piece.BlackRook - )) + val board = Board( + Map( + Square(File.E, Rank.R4) -> Piece.WhiteQueen, + Square(File.E, Rank.R5) -> Piece.BlackPawn, + Square(File.D, Rank.R5) -> Piece.BlackRook, + ), + ) val context = GameContext.initial.withBoard(board).withTurn(Color.White) val moves = List( - Move(Square(File.E, Rank.R4), Square(File.D, Rank.R5), MoveType.Normal(true)), // Rook capture - Move(Square(File.E, Rank.R4), Square(File.E, Rank.R5), MoveType.Normal(true)), // Pawn capture - Move(Square(File.E, Rank.R4), Square(File.E, Rank.R6)) // Quiet + Move(Square(File.E, Rank.R4), Square(File.D, Rank.R5), MoveType.Normal(true)), // Rook capture + Move(Square(File.E, Rank.R4), Square(File.E, Rank.R5), MoveType.Normal(true)), // Pawn capture + Move(Square(File.E, Rank.R4), Square(File.E, Rank.R6)), // Quiet ) val sorted = MoveOrdering.sort(context, moves, None) // Rook capture should be first (higher victim value) @@ -98,44 +112,50 @@ class MoveOrderingTest extends AnyFunSuite with Matchers: sorted.last.to should equal(Square(File.E, Rank.R6)) test("castling move is quiet (not capture)"): - val board = Board(Map( - Square(File.E, Rank.R1) -> Piece.WhiteKing, - Square(File.H, Rank.R1) -> Piece.WhiteRook - )) - val context = GameContext.initial.withBoard(board) + val board = Board( + Map( + Square(File.E, Rank.R1) -> Piece.WhiteKing, + Square(File.H, Rank.R1) -> Piece.WhiteRook, + ), + ) + val context = GameContext.initial.withBoard(board) val castleMove = Move(Square(File.E, Rank.R1), Square(File.G, Rank.R1), MoveType.CastleKingside) - val score = MoveOrdering.score(context, castleMove, None) - score should equal(0) // Quiet move + val score = MoveOrdering.score(context, castleMove, None) + score should equal(0) // Quiet move test("all MoveType variants are handled in victimValue"): - val board = Board(Map( - Square(File.E, Rank.R1) -> Piece.WhiteKing, - Square(File.H, Rank.R1) -> Piece.WhiteRook, - Square(File.E, Rank.R2) -> Piece.WhitePawn - )) + val board = Board( + Map( + Square(File.E, Rank.R1) -> Piece.WhiteKing, + Square(File.H, Rank.R1) -> Piece.WhiteRook, + Square(File.E, Rank.R2) -> Piece.WhitePawn, + ), + ) val context = GameContext.initial.withBoard(board) // Test castling queenside - should have victim value 0 val castleQs = Move(Square(File.E, Rank.R1), Square(File.C, Rank.R1), MoveType.CastleQueenside) - val scoreQs = MoveOrdering.score(context, castleQs, None) + val scoreQs = MoveOrdering.score(context, castleQs, None) scoreQs should equal(0) test("attackerValue covers all piece types"): - val board = Board(Map( - Square(File.A, Rank.R1) -> Piece.WhiteRook, - Square(File.B, Rank.R1) -> Piece.WhiteKnight, - Square(File.C, Rank.R1) -> Piece.WhiteBishop, - Square(File.D, Rank.R1) -> Piece.WhiteQueen, - Square(File.E, Rank.R1) -> Piece.WhiteKing, - Square(File.F, Rank.R2) -> Piece.WhitePawn - )) + val board = Board( + Map( + Square(File.A, Rank.R1) -> Piece.WhiteRook, + Square(File.B, Rank.R1) -> Piece.WhiteKnight, + Square(File.C, Rank.R1) -> Piece.WhiteBishop, + Square(File.D, Rank.R1) -> Piece.WhiteQueen, + Square(File.E, Rank.R1) -> Piece.WhiteKing, + Square(File.F, Rank.R2) -> Piece.WhitePawn, + ), + ) val context = GameContext.initial.withBoard(board) // Create captures with each piece type - val rookCapture = Move(Square(File.A, Rank.R1), Square(File.A, Rank.R8), MoveType.Normal(true)) + val rookCapture = Move(Square(File.A, Rank.R1), Square(File.A, Rank.R8), MoveType.Normal(true)) val knightCapture = Move(Square(File.B, Rank.R1), Square(File.A, Rank.R8), MoveType.Normal(true)) val bishopCapture = Move(Square(File.C, Rank.R1), Square(File.A, Rank.R8), MoveType.Normal(true)) - val queenCapture = Move(Square(File.D, Rank.R1), Square(File.A, Rank.R8), MoveType.Normal(true)) - val kingCapture = Move(Square(File.E, Rank.R1), Square(File.A, Rank.R8), MoveType.Normal(true)) - val pawnCapture = Move(Square(File.F, Rank.R2), Square(File.A, Rank.R8), MoveType.Normal(true)) + val queenCapture = Move(Square(File.D, Rank.R1), Square(File.A, Rank.R8), MoveType.Normal(true)) + val kingCapture = Move(Square(File.E, Rank.R1), Square(File.A, Rank.R8), MoveType.Normal(true)) + val pawnCapture = Move(Square(File.F, Rank.R2), Square(File.A, Rank.R8), MoveType.Normal(true)) // Just verify all are scored without error MoveOrdering.score(context, rookCapture, None) should be >= 0 @@ -146,15 +166,19 @@ class MoveOrderingTest extends AnyFunSuite with Matchers: MoveOrdering.score(context, pawnCapture, None) should be >= 0 test("promotion capture is distinct from quiet promotion"): - val board = Board(Map( - Square(File.E, Rank.R7) -> Piece.WhitePawn, - Square(File.D, Rank.R8) -> Piece.BlackPawn - )) + val board = Board( + Map( + Square(File.E, Rank.R7) -> Piece.WhitePawn, + Square(File.D, Rank.R8) -> Piece.BlackPawn, + ), + ) val context = GameContext.initial.withBoard(board) // Promotion with capture - val promotionWithCapture = Move(Square(File.E, Rank.R7), Square(File.D, Rank.R8), MoveType.Promotion(PromotionPiece.Queen)) + val promotionWithCapture = + Move(Square(File.E, Rank.R7), Square(File.D, Rank.R8), MoveType.Promotion(PromotionPiece.Queen)) // Regular queen promotion (no capture) - val quietPromotion = Move(Square(File.E, Rank.R7), Square(File.E, Rank.R8), MoveType.Promotion(PromotionPiece.Queen)) + val quietPromotion = + Move(Square(File.E, Rank.R7), Square(File.E, Rank.R8), MoveType.Promotion(PromotionPiece.Queen)) val score1 = MoveOrdering.score(context, promotionWithCapture, None) val score2 = MoveOrdering.score(context, quietPromotion, None) score1 should be > score2 diff --git a/modules/bot/src/test/scala/de/nowchess/bot/PolyglotBookTest.scala b/modules/bot/src/test/scala/de/nowchess/bot/PolyglotBookTest.scala index e0e20a3..e61e2d2 100644 --- a/modules/bot/src/test/scala/de/nowchess/bot/PolyglotBookTest.scala +++ b/modules/bot/src/test/scala/de/nowchess/bot/PolyglotBookTest.scala @@ -24,21 +24,20 @@ class PolyglotBookTest extends AnyFunSuite with Matchers: try // Write a single entry with a different key Using(DataOutputStream(FileOutputStream(tempFile.toFile))) { dos => - dos.writeLong(12345L) // some random key - dos.writeShort(0) // move - dos.writeShort(100) // weight - dos.writeInt(0) // learn + dos.writeLong(12345L) // some random key + dos.writeShort(0) // move + dos.writeShort(100) // weight + dos.writeInt(0) // learn }.get val book = PolyglotBook(tempFile.toString) book.probe(GameContext.initial) shouldEqual None - finally - Files.delete(tempFile) + finally Files.delete(tempFile) test("Book returns a move when position is in book"): val tempFile = Files.createTempFile("test_book", ".bin") try - val ctx = GameContext.initial + val ctx = GameContext.initial val hash = PolyglotHash.hash(ctx) // Write an entry: e2-e4 (normal move, non-capture) @@ -48,22 +47,21 @@ class PolyglotBookTest extends AnyFunSuite with Matchers: Using(DataOutputStream(FileOutputStream(tempFile.toFile))) { dos => dos.writeLong(hash) dos.writeShort(move) - dos.writeShort(100) // weight + dos.writeShort(100) // weight dos.writeInt(0) }.get - val book = PolyglotBook(tempFile.toString) + val book = PolyglotBook(tempFile.toString) val result = book.probe(ctx) result shouldNot be(None) result.get.from shouldEqual Square(File.E, Rank.R2) result.get.to shouldEqual Square(File.E, Rank.R4) - finally - Files.delete(tempFile) + finally Files.delete(tempFile) test("Weighted random sampling works"): val tempFile = Files.createTempFile("test_book", ".bin") try - val ctx = GameContext.initial + val ctx = GameContext.initial val hash = PolyglotHash.hash(ctx) // Two moves: e2-e4 with high weight, d2-d4 with low weight @@ -73,12 +71,12 @@ class PolyglotBookTest extends AnyFunSuite with Matchers: Using(DataOutputStream(FileOutputStream(tempFile.toFile))) { dos => dos.writeLong(hash) dos.writeShort(moveE4) - dos.writeShort(900) // high weight + dos.writeShort(900) // high weight dos.writeInt(0) dos.writeLong(hash) dos.writeShort(moveD4) - dos.writeShort(100) // low weight + dos.writeShort(100) // low weight dos.writeInt(0) }.get @@ -93,12 +91,11 @@ class PolyglotBookTest extends AnyFunSuite with Matchers: // With 900:100 weight ratio, e4 should appear more frequently e4Count should be > d4Count - finally - Files.delete(tempFile) + finally Files.delete(tempFile) test("ClassicalBot without book falls back to search"): - val ctx = GameContext.initial - val bot = ClassicalBot(BotDifficulty.Easy) // no book + val ctx = GameContext.initial + val bot = ClassicalBot(BotDifficulty.Easy) // no book val move = bot.nextMove(ctx) move shouldNot be(None) // The move should be legal @@ -108,7 +105,7 @@ class PolyglotBookTest extends AnyFunSuite with Matchers: test("ClassicalBot with book uses book move"): val tempFile = Files.createTempFile("test_book", ".bin") try - val ctx = GameContext.initial + val ctx = GameContext.initial val hash = PolyglotHash.hash(ctx) // e2-e4 @@ -121,19 +118,18 @@ class PolyglotBookTest extends AnyFunSuite with Matchers: dos.writeInt(0) }.get - val book = PolyglotBook(tempFile.toString) + val book = PolyglotBook(tempFile.toString) val botWithBook = ClassicalBot(BotDifficulty.Easy, book = Some(book)) - val move = botWithBook.nextMove(ctx) + val move = botWithBook.nextMove(ctx) // Book should return e2-e4 move shouldEqual Some(Move(Square(File.E, Rank.R2), Square(File.E, Rank.R4), MoveType.Normal())) - finally - Files.delete(tempFile) + finally Files.delete(tempFile) test("Promotion moves are decoded correctly"): val tempFile = Files.createTempFile("test_book", ".bin") try - val ctx = GameContext.initial + val ctx = GameContext.initial val hash = PolyglotHash.hash(ctx) // Pawn promotion: a7-a8=Q @@ -153,6 +149,5 @@ class PolyglotBookTest extends AnyFunSuite with Matchers: move shouldNot be(None) move.get.moveType match case MoveType.Promotion(piece) => piece shouldEqual PromotionPiece.Queen - case _ => fail("Expected promotion move") - finally - Files.delete(tempFile) + case _ => fail("Expected promotion move") + finally Files.delete(tempFile) diff --git a/modules/bot/src/test/scala/de/nowchess/bot/PolyglotHashTest.scala b/modules/bot/src/test/scala/de/nowchess/bot/PolyglotHashTest.scala index 68ac1f7..57d423e 100644 --- a/modules/bot/src/test/scala/de/nowchess/bot/PolyglotHashTest.scala +++ b/modules/bot/src/test/scala/de/nowchess/bot/PolyglotHashTest.scala @@ -19,40 +19,40 @@ class PolyglotHashTest extends AnyFunSuite with Matchers: PolyglotHash.hash(ctx) shouldEqual java.lang.Long.parseUnsignedLong("823c9b50fd114196", 16) test("Hash changes when turn changes"): - val ctx = GameContext.initial - val hash1 = PolyglotHash.hash(ctx) + val ctx = GameContext.initial + val hash1 = PolyglotHash.hash(ctx) val ctxBlackTurn = ctx.withTurn(Color.Black) - val hash2 = PolyglotHash.hash(ctxBlackTurn) + val hash2 = PolyglotHash.hash(ctxBlackTurn) hash1 should not equal hash2 test("Hash changes when castling rights change"): - val ctx = GameContext.initial + val ctx = GameContext.initial val hash1 = PolyglotHash.hash(ctx) val noCastling = ctx.withCastlingRights( - de.nowchess.api.board.CastlingRights(false, false, false, false) + de.nowchess.api.board.CastlingRights(false, false, false, false), ) val hash2 = PolyglotHash.hash(noCastling) hash1 should not equal hash2 test("En passant file is ignored when no side-to-move pawn can capture"): - val fenWithEp = "rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR b KQkq e3 0 1" + val fenWithEp = "rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR b KQkq e3 0 1" val fenWithoutEp = "rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR b KQkq - 0 1" - val withEp = FenParser.parseFen(fenWithEp).toOption.getOrElse(fail("FEN parse failed")) - val withoutEp = FenParser.parseFen(fenWithoutEp).toOption.getOrElse(fail("FEN parse failed")) + val withEp = FenParser.parseFen(fenWithEp).toOption.getOrElse(fail("FEN parse failed")) + val withoutEp = FenParser.parseFen(fenWithoutEp).toOption.getOrElse(fail("FEN parse failed")) PolyglotHash.hash(withEp) shouldEqual PolyglotHash.hash(withoutEp) test("Different en passant files produce different hashes when capture is possible"): - val ctx = GameContext.initial + val ctx = GameContext.initial val epFileE = ctx.withEnPassantSquare(Some(Square(File.E, Rank.R3))) val epFileD = ctx.withEnPassantSquare(Some(Square(File.D, Rank.R3))) - val hash1 = PolyglotHash.hash(epFileE) - val hash2 = PolyglotHash.hash(epFileD) + val hash1 = PolyglotHash.hash(epFileE) + val hash2 = PolyglotHash.hash(epFileD) hash1 should not equal hash2 test("Removing en passant changes hash"): - val ctx = GameContext.initial + val ctx = GameContext.initial val withEP = ctx.withEnPassantSquare(Some(Square(File.E, Rank.R3))) - val hash1 = PolyglotHash.hash(withEP) - val noEP = withEP.withEnPassantSquare(None) - val hash2 = PolyglotHash.hash(noEP) + val hash1 = PolyglotHash.hash(withEP) + val noEP = withEP.withEnPassantSquare(None) + val hash2 = PolyglotHash.hash(noEP) hash1 should not equal hash2 diff --git a/modules/bot/src/test/scala/de/nowchess/bot/TranspositionTableTest.scala b/modules/bot/src/test/scala/de/nowchess/bot/TranspositionTableTest.scala index 7cf48f9..43321c3 100644 --- a/modules/bot/src/test/scala/de/nowchess/bot/TranspositionTableTest.scala +++ b/modules/bot/src/test/scala/de/nowchess/bot/TranspositionTableTest.scala @@ -13,23 +13,23 @@ class TranspositionTableTest extends AnyFunSuite with Matchers: tt.probe(12345L) should be(None) test("store then probe returns the stored entry"): - val tt = TranspositionTable(sizePow2 = 4) - val move = Move(Square(File.E, Rank.R2), Square(File.E, Rank.R4), MoveType.Normal()) + val tt = TranspositionTable(sizePow2 = 4) + val move = Move(Square(File.E, Rank.R2), Square(File.E, Rank.R4), MoveType.Normal()) val entry = TTEntry(hash = 12345L, depth = 3, score = 50, flag = TTFlag.Exact, bestMove = Some(move)) tt.store(entry) val retrieved = tt.probe(12345L) retrieved should be(Some(entry)) test("probe returns None when hash differs (collision guard)"): - val tt = TranspositionTable(sizePow2 = 4) - val move = Move(Square(File.E, Rank.R2), Square(File.E, Rank.R4), MoveType.Normal()) + val tt = TranspositionTable(sizePow2 = 4) + val move = Move(Square(File.E, Rank.R2), Square(File.E, Rank.R4), MoveType.Normal()) val entry = TTEntry(hash = 12345L, depth = 3, score = 50, flag = TTFlag.Exact, bestMove = Some(move)) tt.store(entry) tt.probe(54321L) should be(None) test("clear removes all entries"): - val tt = TranspositionTable(sizePow2 = 4) - val move = Move(Square(File.E, Rank.R2), Square(File.E, Rank.R4), MoveType.Normal()) + val tt = TranspositionTable(sizePow2 = 4) + val move = Move(Square(File.E, Rank.R2), Square(File.E, Rank.R4), MoveType.Normal()) val entry = TTEntry(hash = 12345L, depth = 3, score = 50, flag = TTFlag.Exact, bestMove = Some(move)) tt.store(entry) tt.probe(12345L) should be(Some(entry)) @@ -37,7 +37,7 @@ class TranspositionTableTest extends AnyFunSuite with Matchers: tt.probe(12345L) should be(None) test("all TTFlag values store and retrieve correctly"): - val tt = TranspositionTable(sizePow2 = 4) + val tt = TranspositionTable(sizePow2 = 4) val move = Move(Square(File.E, Rank.R2), Square(File.E, Rank.R4), MoveType.Normal()) TTFlag.values.foreach { flag => @@ -48,16 +48,16 @@ class TranspositionTableTest extends AnyFunSuite with Matchers: } test("bestMove = None roundtrips"): - val tt = TranspositionTable(sizePow2 = 4) + val tt = TranspositionTable(sizePow2 = 4) val entry = TTEntry(hash = 99999L, depth = 1, score = 0, flag = TTFlag.Upper, bestMove = None) tt.store(entry) val retrieved = tt.probe(99999L) retrieved.map(_.bestMove) should be(Some(None)) test("always-replace overwrites at same slot"): - val tt = TranspositionTable(sizePow2 = 4) - val move1 = Move(Square(File.E, Rank.R2), Square(File.E, Rank.R4), MoveType.Normal()) - val move2 = Move(Square(File.E, Rank.R2), Square(File.E, Rank.R3), MoveType.Normal()) + val tt = TranspositionTable(sizePow2 = 4) + val move1 = Move(Square(File.E, Rank.R2), Square(File.E, Rank.R4), MoveType.Normal()) + val move2 = Move(Square(File.E, Rank.R2), Square(File.E, Rank.R3), MoveType.Normal()) val entry1 = TTEntry(hash = 12345L, depth = 2, score = 50, flag = TTFlag.Exact, bestMove = Some(move1)) val entry2 = TTEntry(hash = 12345L, depth = 3, score = 100, flag = TTFlag.Lower, bestMove = Some(move2)) diff --git a/modules/bot/src/test/scala/de/nowchess/bot/ZobristHashTest.scala b/modules/bot/src/test/scala/de/nowchess/bot/ZobristHashTest.scala index e183143..89a398d 100644 --- a/modules/bot/src/test/scala/de/nowchess/bot/ZobristHashTest.scala +++ b/modules/bot/src/test/scala/de/nowchess/bot/ZobristHashTest.scala @@ -18,68 +18,74 @@ class ZobristHashTest extends AnyFunSuite with Matchers: test("hash differs after a pawn move"): val initial = GameContext.initial // Move pawn from e2 to e4 - val board = initial.board.pieces - val newBoard = board.removed(Square(File.E, Rank.R2)).updated(Square(File.E, Rank.R4), Piece.WhitePawn) + val board = initial.board.pieces + val newBoard = board.removed(Square(File.E, Rank.R2)).updated(Square(File.E, Rank.R4), Piece.WhitePawn) val afterMove = initial.withBoard(Board(newBoard)).withTurn(Color.Black) - val hash1 = ZobristHash.hash(initial) - val hash2 = ZobristHash.hash(afterMove) + val hash1 = ZobristHash.hash(initial) + val hash2 = ZobristHash.hash(afterMove) hash1 should not equal hash2 test("hash includes castling rights"): - val ctx1 = GameContext.initial - val ctx2 = ctx1.withCastlingRights(CastlingRights.None) + val ctx1 = GameContext.initial + val ctx2 = ctx1.withCastlingRights(CastlingRights.None) val hash1 = ZobristHash.hash(ctx1) val hash2 = ZobristHash.hash(ctx2) hash1 should not equal hash2 test("hash includes en-passant square"): - val ctx1 = GameContext.initial - val ctx2 = ctx1.withEnPassantSquare(Some(Square(File.E, Rank.R3))) + val ctx1 = GameContext.initial + val ctx2 = ctx1.withEnPassantSquare(Some(Square(File.E, Rank.R3))) val hash1 = ZobristHash.hash(ctx1) val hash2 = ZobristHash.hash(ctx2) hash1 should not equal hash2 test("hash includes side to move"): - val ctx1 = GameContext.initial - val ctx2 = ctx1.withTurn(Color.Black) + val ctx1 = GameContext.initial + val ctx2 = ctx1.withTurn(Color.Black) val hash1 = ZobristHash.hash(ctx1) val hash2 = ZobristHash.hash(ctx2) hash1 should not equal hash2 test("nextHash matches recomputed hash for a normal move"): - val context = GameContext.initial - val move = Move(Square(File.E, Rank.R2), Square(File.E, Rank.R4)) - val next = DefaultRules.applyMove(context)(move) + val context = GameContext.initial + val move = Move(Square(File.E, Rank.R2), Square(File.E, Rank.R4)) + val next = DefaultRules.applyMove(context)(move) val incremental = ZobristHash.nextHash(context, ZobristHash.hash(context), move, next) incremental should equal(ZobristHash.hash(next)) test("nextHash matches recomputed hash for promotion and castling"): - val promotionBoard = Board(Map( - Square(File.E, Rank.R7) -> Piece.WhitePawn, - Square(File.E, Rank.R1) -> Piece.WhiteKing, - Square(File.H, Rank.R1) -> Piece.WhiteRook, - Square(File.E, Rank.R8) -> Piece.BlackKing - )) + val promotionBoard = Board( + Map( + Square(File.E, Rank.R7) -> Piece.WhitePawn, + Square(File.E, Rank.R1) -> Piece.WhiteKing, + Square(File.H, Rank.R1) -> Piece.WhiteRook, + Square(File.E, Rank.R8) -> Piece.BlackKing, + ), + ) val promotionContext = GameContext.initial .withBoard(promotionBoard) .withTurn(Color.White) .withCastlingRights(CastlingRights.All) val promotionMove = Move(Square(File.E, Rank.R7), Square(File.E, Rank.R8), MoveType.Promotion(PromotionPiece.Queen)) val promotionNext = DefaultRules.applyMove(promotionContext)(promotionMove) - val promotionHash = ZobristHash.nextHash(promotionContext, ZobristHash.hash(promotionContext), promotionMove, promotionNext) + val promotionHash = + ZobristHash.nextHash(promotionContext, ZobristHash.hash(promotionContext), promotionMove, promotionNext) promotionHash should equal(ZobristHash.hash(promotionNext)) - val castleBoard = Board(Map( - Square(File.E, Rank.R1) -> Piece.WhiteKing, - Square(File.H, Rank.R1) -> Piece.WhiteRook, - Square(File.E, Rank.R8) -> Piece.BlackKing - )) + val castleBoard = Board( + Map( + Square(File.E, Rank.R1) -> Piece.WhiteKing, + Square(File.H, Rank.R1) -> Piece.WhiteRook, + Square(File.E, Rank.R8) -> Piece.BlackKing, + ), + ) val castleContext = GameContext.initial .withBoard(castleBoard) .withTurn(Color.White) - .withCastlingRights(CastlingRights(whiteKingSide = true, whiteQueenSide = false, blackKingSide = false, blackQueenSide = false)) + .withCastlingRights( + CastlingRights(whiteKingSide = true, whiteQueenSide = false, blackKingSide = false, blackQueenSide = false), + ) val castleMove = Move(Square(File.E, Rank.R1), Square(File.G, Rank.R1), MoveType.CastleKingside) val castleNext = DefaultRules.applyMove(castleContext)(castleMove) val castleHash = ZobristHash.nextHash(castleContext, ZobristHash.hash(castleContext), castleMove, castleNext) castleHash should equal(ZobristHash.hash(castleNext)) -