#![warn(missing_docs)]
#![cfg_attr(docsrs, feature(doc_cfg))]
macro_rules! cfg_fs {
($($item:item)*) => {
$(
#[cfg(feature = "fs")]
#[cfg_attr(docsrs, doc(cfg(feature = "fs")))]
$item
)*
}
}
macro_rules! cfg_random {
($($item:item)*) => {
$(
#[cfg(any(test, feature = "random"))]
#[cfg_attr(docsrs, doc(cfg(feature = "random")))]
$item
)*
}
}
macro_rules! cfg_fs_random {
($($item:item)*) => {
$(
#[cfg(all(feature = "fs", feature = "random"))]
#[cfg_attr(docsrs, doc(all(feature = "fs", feature = "random")))]
$item
)*
}
}
macro_rules! cfg_test_tools {
($($item:item)*) => {
$(
#[cfg(any(test, feature = "test_tools"))]
#[cfg_attr(docsrs, doc(cfg(feature = "test_tools")))]
$item
)*
}
}
pub mod api_version;
pub mod certificate_chain;
pub mod chain_observer;
pub mod crypto_helper;
pub mod entities;
#[macro_use]
pub mod era;
pub mod messages;
pub mod protocol;
pub mod signable_builder;
cfg_test_tools! {
pub mod test_utils;
}
cfg_fs! {
mod time_point_provider;
pub mod digesters;
pub mod cardano_block_scanner;
pub use time_point_provider::{TimePointProvider, TimePointProviderImpl};
}
pub use entities::{CardanoNetwork, MagicId};
pub type StdError = anyhow::Error;
pub type StdResult<T> = anyhow::Result<T, StdError>;
pub const MITHRIL_API_VERSION_HEADER: &str = "mithril-api-version";
pub const MITHRIL_SIGNER_VERSION_HEADER: &str = "signer-node-version";