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, doc_auto_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 node::{RpcNodeCore, RpcNodeCoreExt};
29pub use pubsub::EthPubSubApiServer;
30pub use reth_rpc_eth_types::error::{
31    AsEthApiError, FromEthApiError, FromEvmError, IntoEthApiError,
32};
33pub use reth_rpc_types_compat::TransactionCompat;
34pub use types::{EthApiTypes, FullEthApiTypes, RpcBlock, RpcHeader, RpcReceipt, RpcTransaction};
35
36#[cfg(feature = "client")]
37pub use bundle::{EthBundleApiClient, EthCallBundleApiClient};
38#[cfg(feature = "client")]
39pub use core::EthApiClient;
40#[cfg(feature = "client")]
41pub use ext::L2EthApiExtClient;
42#[cfg(feature = "client")]
43pub use filter::EthFilterApiClient;
44
45use reth_trie_common as _;