Module: Sashite::Ggn::MoveValidator

Included in:
Ruleset, Ruleset::Source, Ruleset::Source::Destination::Engine
Defined in:
lib/sashite/ggn/move_validator.rb

Overview

Centralized module for move condition validation. Contains shared logic for validating piece ownership and board positions in GGN move evaluation.

This module focuses exclusively on board-based validation since GGN only handles board-to-board transformations. All methods work with pieces on the board and use GAN (General Actor Notation) identifiers.

Constant Summary collapse

GAN_SEPARATOR =

Separator in GAN (General Actor Notation) identifiers. Used to split game identifiers from piece identifiers.

Examples:

GAN format

"CHESS:K"  # game: "CHESS", piece: "K"
"shogi:+p" # game: "shogi", piece: "+p"
":"