Crate mithril_common
source ·Expand description
Shared datatypes and traits used by Mithril rust projects
Provide:
- A way to store data with the store types
- Digester to compute mithril digest from a Cardano database
- Helpers for the Mithril STM lib with the crypto_helper.
- A [certificate chain] used to validate the Certificate Chain created by an aggregator
- The entities used by, and exchanged between, the aggregator, signers and client.
Re-exports
pub use entities::CardanoNetwork;pub use entities::MagicId;
Modules
- API Version provider service
- Tools to retrieve, validate the Certificate Chain created by an aggregator
- Tools to request metadata, like the current epoch or the stake distribution, from the Cardano
- Tools and types to abstract the use of the Mithril STM library
- database module. This module contains providers and entities shared between all application types.
- Tools to compute mithril digest from a Cardano node database.
- The entities used by, and exchanged between, the aggregator, signers and client.
- The module used for handling eras
- Messages module This module aims at providing shared structures for API communications.
- Protocol module
- The module used for building signables
- SQLite module. This module provides a minimal yet useful Entity framework on top of SQLite with ability to perform any SQL query possible and hydrate results in Rust structs.
- Define a generic way to store data with the Store Adapters, and the StakeStorer to store stakes.
- Test utilities
Macros
- Macro used to mark the code that should be cleaned up when the new era is activated
Structs
Constants
- Mithril API protocol version header name
- Mithril Signer node version header name
Traits
- Provide the current Beacon of a cardano node.
Type Aliases
- Generic error type
- Generic result type