Expand description
§Rust shogi crates: USI parser (rlib)
This repository handles conversion from strings in USI format defined in the spec.
§About shogi_usi_parser crate
This crate provides methods that convert USI strings to data. For example, it can convert following strings:
as PartialPosition:
lnsgkgsnl/1r5b1/ppppppppp/9/9/9/PPPPPPPPP/1B5R1/LNSGKGSNL b - 1as Position:
startpos moves 7g7f(excerpt from https://web.archive.org/web/20080131070731/http://www.glaurungchess.com/shogi/usi.html)
For conversion, this crate defines the following traits and data types:
- A trait responsible for conversion from strings in USI format to
Self. Implementors of this trait provides a method that reports detailed error reports, and a method that reports only whether an error occurred. Error: An error type for conversion. Some possible errors are the following:- The string representation is invalid (e.g.
9jis given as a square). - The parsed position is invalid.
- The string representation is invalid (e.g.
§What are out of scope?
- Failing to convert to a
Positionwhen the parser encountered illegal moves- Other crates are responsible for legality checking
Modules§
- c_func
- Functions exported from cdylib.
Enums§
- Error
- An error that can occur while parsing.
Traits§
Type Aliases§
- Result
- Custom result type for this crate.