feat: NCS-30 FEN Parser using ParserCombinators (#21)
Build & Test (NowChessSystems) TeamCity build finished
Build & Test (NowChessSystems) TeamCity build finished
Summary - Added scala-parser-combinators_3:2.4.0 dependency to modules/io - Implemented FenParserCombinators as an alternative FEN parser using RegexParsers, with the same public API as the existing FenParser - Parsers are built bottom-up: piece characters → rank tokens → rank → board, composed with explicit field separators into a full FEN parser - Added FenParserCombinatorsTest mirroring the existing FenParserTest to prove behavioural equivalence Test plan - All existing tests pass — FenParser and all other modules untouched - FenParserCombinatorsTest covers all cases: valid FEN, invalid color, invalid castling, invalid board shapes, en passant, round-trip via FenExporter - 100% line/branch/method coverage on FenParserCombinators Co-authored-by: LQ63 <lkhermann@web.de> Reviewed-on: #21 Reviewed-by: Janis <janis-e@gmx.de> Co-authored-by: Leon Hermann <lq@blackhole.local> Co-committed-by: Leon Hermann <lq@blackhole.local>
This commit was merged in pull request #21.
This commit is contained in:
@@ -38,6 +38,8 @@ dependencies {
|
||||
}
|
||||
}
|
||||
|
||||
implementation("org.scala-lang.modules:scala-parser-combinators_3:${versions["SCALA_PARSER_COMBINATORS"]!!}")
|
||||
|
||||
implementation(project(":modules:api"))
|
||||
implementation(project(":modules:rule"))
|
||||
|
||||
|
||||
Reference in New Issue
Block a user