Package-level declarations
Overview
Serializer implementations for converting core domain types to/from text format for persistence.
Serializers
GameStateSerializer— Serializes complete game state to/from textBoardSerializer— Serializes board configuration (size and pieces)PlayerSerializer— Serializes player data (type and points)PieceSerializer— Serializes individual piece positionsPieceTypeSerializer— Serializes piece type symbols (# for BLACK, @ for WHITE)
Responsibilities
Converting immutable domain objects to text representation
Parsing text files back to domain objects
Ensuring round-trip serialization preserves data integrity
Providing human-readable save file format
Format Example
#,12;@,5;
#
8
4,4,@
4,5,#
5,4,#
5,5,@First line: Players (symbol, points)
Second line: Last player
Third line: Winner (if any)
Fourth line: Board size
Remaining lines: Pieces (row, col, symbol)
Types
Serializer for the Board class, converting it to and from a String representation.
Serializer for the GameState class, converting it to and from a String representation.
Serializer for the Piece class, converting it to and from a String representation.
Serializer for the PieceType enum, converting it to and from a Char representation.
Serializer for Player. Format: "