Crate vampirc_uci

Source
Expand description

The Vampirc project is a chess engine written in Rust. vampirc-uci is a crate that handles the parsing of the Universal Chess Interface (UCI) protocol, a way for a chess engine to communicate with a GUI.

To parse the UCI messages, it uses the PEST parser. The corresponding PEG grammar is available here.

See the README.md file for usage instructions.

Re-exports§

pub use self::parser::parse;
pub use self::parser::parse_one;
pub use self::parser::parse_strict;
pub use self::parser::parse_with_unknown;
pub use self::parser::Rule;
pub use self::uci::ByteVecUciMessage;
pub use self::uci::CommunicationDirection;
pub use self::uci::MessageList;
pub use self::uci::ProtectionState;
pub use self::uci::Serializable;
pub use self::uci::UciFen;
pub use self::uci::UciInfoAttribute;
pub use self::uci::UciMessage;
pub use self::uci::UciMove;
pub use self::uci::UciOptionConfig;
pub use self::uci::UciPiece;
pub use self::uci::UciSearchControl;
pub use self::uci::UciSquare;
pub use self::uci::UciTimeControl;

Modules§

parser
The parser module contains the parse method that performs the parsing of UCI messages into their respective UciMessage variants.
uci
The uci module contains the definitions that represent UCI protocol messages.

Structs§

Error
Parse-related error type.

Type Aliases§

Duration
Alias of TimeDelta.