rtvm_primitives/
lib.rs

1//! # rtvm-primitives
2//!
3//! EVM primitive types.
4#![warn(rustdoc::all)]
5#![warn(unreachable_pub, unused_crate_dependencies)]
6#![deny(unused_must_use, rust_2018_idioms)]
7#![cfg_attr(not(feature = "std"), no_std)]
8
9#[cfg(not(feature = "std"))]
10extern crate alloc as std;
11
12mod bytecode;
13mod constants;
14pub mod db;
15pub mod env;
16
17#[cfg(feature = "c-kzg")]
18pub mod kzg;
19pub mod precompile;
20pub mod result;
21pub mod specification;
22pub mod state;
23pub mod utilities;
24pub use alloy_primitives::{
25    self, address, b256, bytes, fixed_bytes, hex, hex_literal, ruint, uint, Address, Bytes,
26    FixedBytes, Log, LogData, B256, I256, U256,
27};
28pub use bitvec;
29pub use bytecode::*;
30pub use constants::*;
31pub use env::*;
32
33cfg_if::cfg_if! {
34    if #[cfg(all(not(feature = "hashbrown"), feature = "std"))] {
35        pub use std::collections::{hash_map, hash_set, HashMap, HashSet};
36        use hashbrown as _;
37    } else {
38        pub use hashbrown::{hash_map, hash_set, HashMap, HashSet};
39    }
40}
41
42#[cfg(feature = "c-kzg")]
43pub use kzg::{EnvKzgSettings, KzgSettings};
44pub use precompile::*;
45pub use result::*;
46pub use specification::*;
47pub use state::*;
48pub use utilities::*;