runtime-contracts 0.2.1

Structured, understandable runtime contracts.
Documentation

runtime-contracts: Structured, understandable runtime contracts for Rust.

For background, context, and usage examples, please see the crate documentation.

Bugs

If you find a problem, please open an issue. Suggestions are welcome!

Roadmap

  • Simple contracts expressable via straightforward utlity functions.
  • Contracts as functions/closures.
    • Would it be as simple as type RuntimeContractFunction<T> = dyn Fn(T) -> Result<T> or would we need more?
  • Contract composition (assume we at least want monoidal composition).
    • If contracts are functions, can we just use function composition?
    • Do we need or want a RuntimeContract struct to encapsulate contract specifics and provide combinators like Result and Option?