RubyGems Navigation menu

sashite-pan 4.0.0

Parse and generate Portable Action Notation (PAN) strings for representing atomic actions in abstract strategy board games including chess, shogi, xiangqi, and others. PAN provides an intuitive operator-based syntax with six core operators: "-" (move to empty square), "+" (capture), "~" (special moves with side effects), "*" (drop to board), "." (drop with capture), and "=" (in-place transformation), plus "..." (pass turn). Supports coordinates via CELL specification and piece identifiers via EPIN specification. Handles transformations ("e7-e8=Q"), enhanced/diminished states ("+R", "-P"), and style derivation markers ("K'"). Provides comprehensive validation, immutable action objects, and functional API design. Examples: "e2-e4" (move), "d1+f3" (capture), "e1~g1" (castling), "P*e5" (drop), "e7-e8=Q" (promotion), "..." (pass), "+d4" (static capture), "e4=+P" (modify).

Gemfile:
=

Installeer:
=

Versies:

  1. 4.0.0 October 25, 2025 (15 KB)
  2. 3.0.0 June 05, 2025 (10 KB)
  3. 2.0.0 May 23, 2025 (9,5 KB)
  4. 1.3.0 August 17, 2021 (7 KB)
  5. 1.2.0 July 05, 2020 (6,5 KB)
Toon alle versies (11 totaal)

Runtime afhankelijkheden (2):

sashite-cell ~> 2.0
sashite-epin ~> 1.1

Eigenaren:

Pushed by:

Authors:

  • Cyril Kato

SHA 256 checksum:

=

Total downloads 19.447

Voor deze versie 254

Versie vrijgegeven:

Licentie:

MIT

Required Ruby Version: >= 3.2.0

New versions require MFA: true

Version published with MFA: true

Links: