tendermint/
lib.rs

1//! Tendermint is a high-performance blockchain consensus engine that powers
2//! Byzantine fault tolerant applications written in any programming language.
3//! This crate provides core types for representing information about Tendermint
4//! blockchain networks, including chain information types, secret connections,
5//! and remote procedure calls (JSON-RPC).
6
7#![no_std]
8#![cfg_attr(docsrs, feature(doc_cfg))]
9#![deny(
10    warnings,
11    trivial_casts,
12    trivial_numeric_casts,
13    unused_import_braces,
14    unused_qualifications
15)]
16#![forbid(unsafe_code)]
17#![doc(
18    html_logo_url = "https://raw.githubusercontent.com/informalsystems/tendermint-rs/master/img/logo-tendermint-rs_3961x4001.png"
19)]
20
21extern crate alloc;
22
23#[cfg(any(feature = "std", test))]
24extern crate std;
25
26#[macro_use]
27mod proto_macros;
28
29pub mod error;
30
31pub mod abci;
32pub mod account;
33pub mod block;
34pub mod chain;
35pub mod channel;
36pub mod consensus;
37pub mod crypto;
38pub mod evidence;
39pub mod genesis;
40pub mod hash;
41pub mod merkle;
42mod moniker;
43pub mod node;
44mod prelude;
45pub mod private_key;
46pub mod privval;
47pub mod proposal;
48pub mod public_key;
49pub mod serializers;
50pub mod signature;
51pub mod time;
52mod timeout;
53pub mod trust_threshold;
54pub mod tx;
55pub mod validator;
56mod version;
57pub mod vote;
58
59pub mod v0_34;
60pub mod v0_37;
61pub mod v0_38;
62
63#[cfg(test)]
64mod test;
65
66pub use crate::{
67    block::Block,
68    error::Error,
69    genesis::Genesis,
70    hash::{AppHash, Hash},
71    moniker::Moniker,
72    private_key::PrivateKey,
73    proposal::Proposal,
74    public_key::{PublicKey, TendermintKey},
75    signature::Signature,
76    time::Time,
77    timeout::Timeout,
78    version::Version,
79    vote::Vote,
80};