wthor

Crates.iowthor
lib.rswthor
version0.5.0
sourcesrc
created_at2021-05-24 19:26:22.55174
updated_at2022-08-15 20:43:15.351294
descriptionParser for WTHOR files
homepage
repositoryhttps://github.com/LimeEng/wthor/
max_upload_size
id401539
size33,252
Emil Englesson (LimeEng)

documentation

README

CI status Latest version Fuzz status

Wthor

Wthor is a rather archaic data-format used extensively by the Fédération Française d'Othello to document games of Othello. As a result of their massive collection, Wthor has become a popular data-format in this space. Unfortunately, the only official documentation is in French. Machine-translating the specification with Google Translate worked reasonably well and the result can be found here.

The translated documentation is however still imprecise and as a result, this library makes very few assumptions about the data. The data extracted is rarely processed in any way but presented as is.

Three types of Wthor files can be parsed as of now. They commonly have the extensions .jou, .trn and .wtb.

  • .jou - This type of file contains a list of players.
  • .trn - This type of file contains a list of tournaments.
  • .wtb - These are "game files", essentially a long list of games. Each game contain a header with additional information, such as the tournament it was played at and the name of the players. They are however not directly represented in the structure but instead contains an index which corresponds to an entry in the associated .jou and .trn files.

Solitaire files are currently not supported.

Usage

Add this to your Cargo.toml:

[dependencies]
wthor = "0.5"

Optionally, opt into using Serde by enabling the feature flag serde.

[dependencies]
wthor = {version = "0.5", features = ["serde"]}

Examples

Examples can be found here.

Commit count: 33

cargo fmt