#string #conversion #engine #shogi #error #usi #format

无std shogi_usi_parser

将USI格式的字符串转换为

1 个不稳定版本

0.1.0 2022年5月24日

#1571 in 游戏开发


2 个Crate 中使用

MIT 许可证

37KB
670

Rust棋类Crate:USI解析器(《rlib》)

crate docs Rust Version license

此仓库处理从规范中定义的USI格式的字符串转换。

关于《shogi_usi_parser》Crate

此Crate提供将USI字符串转换为数据的方法。例如,它可以转换以下字符串

PartialPosition

lnsgkgsnl/1r5b1/ppppppppp/9/9/9/PPPPPPPPP/1B5R1/LNSGKGSNL b - 1

Position

startpos moves 7g7f

(摘自https://web.archive.org/web/20080131070731/http://www.glaurungchess.com/shogi/usi.html)

为此转换,此Crate定义了以下特性和数据类型

  • 一个负责将USI格式的字符串转换为 Self 的特性和实现者提供的方法,该方法报告详细的错误报告,以及一个只报告是否发生错误的方法。
  • Error: 转换的错误类型。一些可能的错误如下
    • 字符串表示无效(例如,给出9j作为方格)。
    • 解析的位置无效。

哪些不在范围内?

  • 当解析器遇到非法移动时,无法转换为 Position
    • 其他Crate负责合法性检查

依赖关系

~165KB