reth_rpc_eth_api/
lib.rs

1//! Reth RPC `eth_` API implementation
2//!
3//! ## Feature Flags
4//!
5//! - `client`: Enables JSON-RPC client support.
6
7#![doc(
8    html_logo_url = "https://raw.githubusercontent.com/paradigmxyz/reth/main/assets/reth-docs.png",
9    html_favicon_url = "https://avatars0.githubusercontent.com/u/97369466?s=256",
10    issue_tracker_base_url = "https://github.com/SeismicSystems/seismic-reth/issues/"
11)]
12#![cfg_attr(not(test), warn(unused_crate_dependencies))]
13#![cfg_attr(docsrs, feature(doc_cfg, doc_auto_cfg))]
14
15pub mod bundle;
16pub mod core;
17pub mod filter;
18pub mod helpers;
19pub mod node;
20pub mod pubsub;
21pub mod types;
22
23pub use bundle::{EthBundleApiServer, EthCallBundleApiServer};
24pub use core::{EthApiServer, FullEthApiServer};
25pub use filter::EthFilterApiServer;
26pub use node::{RpcNodeCore, RpcNodeCoreExt};
27pub use pubsub::EthPubSubApiServer;
28pub use reth_rpc_eth_types::error::{
29    AsEthApiError, FromEthApiError, FromEvmError, IntoEthApiError,
30};
31pub use reth_rpc_types_compat::TransactionCompat;
32pub use types::{EthApiTypes, FullEthApiTypes, RpcBlock, RpcHeader, RpcReceipt, RpcTransaction};
33
34#[cfg(feature = "client")]
35pub use bundle::{EthBundleApiClient, EthCallBundleApiClient};
36#[cfg(feature = "client")]
37pub use core::EthApiClient;
38#[cfg(feature = "client")]
39pub use filter::EthFilterApiClient;
40
41use reth_trie_common as _;