alloy_contract/
lib.rs

1#![doc = include_str!("../README.md")]
2#![doc(
3    html_logo_url = "https://raw.githubusercontent.com/alloy-rs/core/main/assets/alloy.jpg",
4    html_favicon_url = "https://raw.githubusercontent.com/alloy-rs/core/main/assets/favicon.ico"
5)]
6#![cfg_attr(not(test), warn(unused_crate_dependencies))]
7#![cfg_attr(docsrs, feature(doc_cfg, doc_auto_cfg))]
8
9#[cfg(test)]
10extern crate self as alloy_contract;
11
12mod eth_call;
13pub use eth_call::{CallDecoder, EthCall};
14
15mod error;
16pub use error::{Error, Result};
17
18mod event;
19pub use event::{Event, EventPoller};
20
21#[cfg(feature = "pubsub")]
22pub use event::subscription::EventSubscription;
23
24mod interface;
25pub use interface::*;
26
27mod instance;
28pub use instance::*;
29
30mod call;
31pub use call::*;
32
33mod multicall;
34
35// Not public API.
36// NOTE: please avoid changing the API of this module due to its use in the `sol!` macro.
37#[doc(hidden)]
38pub mod private {
39    pub use alloy_network::{Ethereum, Network};
40    pub use alloy_provider::Provider;
41}