#![deny(missing_docs, unsafe_code)]
#[cfg(test)]
#[allow(missing_docs)]
#[macro_use]
#[path = "test/macros.rs"]
mod test_macros;
pub mod batch;
pub mod contract;
pub mod errors;
mod int;
pub mod log;
pub mod secret;
pub mod tokens;
pub mod transaction;
pub mod transport;
pub use crate::contract::Instance;
pub use crate::prelude::*;
pub use ethcontract_common as common;
pub use ethcontract_common::contract::Contract;
#[cfg(feature = "derive")]
pub use ethcontract_derive::contract;
pub use futures;
pub use jsonrpc_core as jsonrpc;
pub use serde_json as json;
pub use web3;
pub mod prelude {
pub use crate::contract::{Event, EventMetadata, EventStatus, RawLog, StreamEvent, Topic};
pub use crate::int::I256;
pub use crate::secret::{Password, PrivateKey};
pub use crate::tokens::Bytes;
pub use crate::transaction::{Account, GasPrice};
pub use ethcontract_common::TransactionHash;
pub use web3::api::Web3;
#[cfg(feature = "http")]
pub use web3::transports::Http;
pub use web3::types::{Address, BlockId, BlockNumber, TransactionCondition, H160, H256, U256};
}
pub mod dyns {
use crate::contract::{
AllEventsBuilder, DeployBuilder, EventBuilder, Instance, MethodBuilder, ViewMethodBuilder,
};
pub use crate::transport::DynTransport;
use web3::api::Web3;
pub type DynWeb3 = Web3<DynTransport>;
pub type DynInstance = Instance<DynTransport>;
pub type DynDeployBuilder<D> = DeployBuilder<DynTransport, D>;
pub type DynMethodBuilder<R> = MethodBuilder<DynTransport, R>;
pub type DynViewMethodBuilder<R> = ViewMethodBuilder<DynTransport, R>;
pub type DynEventBuilder<E> = EventBuilder<DynTransport, E>;
pub type DynAllEventsBuilder<E> = AllEventsBuilder<DynTransport, E>;
}
#[doc(hidden)]
pub mod private {
pub use lazy_static::lazy_static;
}
#[cfg(test)]
#[allow(missing_docs)]
mod test {
pub mod prelude;
pub mod transport;
}