#![no_std]
#![cfg_attr(docsrs, feature(doc_cfg))]
#![doc(html_root_url = "https://docs.rs/veriform/0.2.0")]
#![forbid(unsafe_code)]
#![warn(
missing_docs,
rust_2018_idioms,
unused_qualifications,
intra_doc_link_resolution_failure
)]
#[cfg(feature = "alloc")]
#[macro_use]
extern crate alloc;
#[cfg(feature = "std")]
extern crate std;
#[cfg(any(feature = "tai64", feature = "uuid"))]
pub mod builtins;
pub mod decoder;
pub mod encoder;
pub mod error;
pub mod field;
pub mod message;
mod string;
mod verihash;
#[cfg(feature = "veriform_derive")]
pub mod derive_helpers;
pub use digest;
pub use vint64;
pub use crate::{encoder::Encoder, error::Error, message::Message};
#[cfg(feature = "sha2")]
#[cfg_attr(docsrs, doc(cfg(feature = "sha2")))]
pub type Decoder = crate::decoder::Decoder<sha2::Sha256>;
#[cfg(feature = "sha2")]
#[cfg_attr(docsrs, doc(cfg(feature = "sha2")))]
pub type Sha256Digest = [u8; 32];
#[cfg(feature = "veriform_derive")]
#[cfg_attr(docsrs, doc(cfg(feature = "veriform_derive")))]
pub use veriform_derive::Message;