Crate async_maelstrom

Source
Expand description

A Rust library that allows distributed applications to work with Maelstrom.

Maelstrom is a workbench for learning and testing distributed applications. It drives workloads to application nodes, and uses Jepsen to verify safety properties.

The library provides

  • a Msg implementation for creating and parsing workload and node-to-node message according to the Maelstrom message protocol
  • a Process trait for implementing application node processes
  • a Runtime for driving processes and communicating with the Maelstrom network

See the echo.rs for a simple library usage example.

Modules§

msg
Maelstrom network message protocol
process
Node process
runtime
Node runtime for Processes and Maelstrom networking

Enums§

Error
Errors the library may return to the application

Type Aliases§

ErrorCode
Maelstrom error code
Id
Maelstrom node address
Key
Maelstrom Lin-kv workload key
Result
Results for library functions that may fail
Status
Status for library functions that may fail
Val
Maelstrom Lin-kv workload value