Skip to main content

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/paradigmxyz/reth/issues/"
11)]
12#![cfg_attr(not(test), warn(unused_crate_dependencies))]
13#![cfg_attr(docsrs, feature(doc_cfg))]
14
15pub mod bundle;
16pub mod core;
17pub mod ext;
18pub mod filter;
19pub mod helpers;
20pub mod node;
21pub mod pubsub;
22pub mod types;
23
24pub use bundle::{EthBundleApiServer, EthCallBundleApiServer};
25pub use core::{EthApiServer, FullEthApiServer};
26pub use ext::L2EthApiExtServer;
27pub use filter::{EngineEthFilter, EthFilterApiServer, QueryLimits};
28pub use helpers::config::EthConfigApiServer;
29pub use node::{RpcNodeCore, RpcNodeCoreExt};
30pub use pubsub::EthPubSubApiServer;
31pub use reth_rpc_convert::*;
32pub use reth_rpc_eth_types::error::{
33    AsEthApiError, FromEthApiError, FromEvmError, IntoEthApiError,
34};
35pub use types::{EthApiTypes, FullEthApiTypes, RpcBlock, RpcHeader, RpcReceipt, RpcTransaction};
36
37#[cfg(feature = "client")]
38pub use bundle::{EthBundleApiClient, EthCallBundleApiClient};
39#[cfg(feature = "client")]
40pub use core::EthApiClient;
41#[cfg(feature = "client")]
42pub use ext::L2EthApiExtClient;
43#[cfg(feature = "client")]
44pub use filter::EthFilterApiClient;
45#[cfg(feature = "client")]
46pub use helpers::config::EthConfigApiClient;
47
48use reth_trie_common as _;