pub struct Eth<B: BlockT, C, P, CT, BE, A: ChainApi, CIDP, EC: EthConfig<B, C>> { /* private fields */ }
Expand description
Eth API implementation.
Implementations§
source§impl<B, C, P, CT, BE, A, CIDP, EC> Eth<B, C, P, CT, BE, A, CIDP, EC>where
B: BlockT,
C: ProvideRuntimeApi<B> + HeaderBackend<B> + StorageProvider<B, BE> + 'static,
C::Api: EthereumRuntimeRPCApi<B>,
BE: Backend<B>,
A: ChainApi<Block = B>,
EC: EthConfig<B, C>,
impl<B, C, P, CT, BE, A, CIDP, EC> Eth<B, C, P, CT, BE, A, CIDP, EC>where B: BlockT, C: ProvideRuntimeApi<B> + HeaderBackend<B> + StorageProvider<B, BE> + 'static, C::Api: EthereumRuntimeRPCApi<B>, BE: Backend<B>, A: ChainApi<Block = B>, EC: EthConfig<B, C>,
pub async fn block_by_hash( &self, hash: H256, full: bool ) -> RpcResult<Option<RichBlock>>
pub async fn block_by_number( &self, number: BlockNumber, full: bool ) -> RpcResult<Option<RichBlock>>
pub async fn block_transaction_count_by_hash( &self, hash: H256 ) -> RpcResult<Option<U256>>
pub async fn block_transaction_count_by_number( &self, number: BlockNumber ) -> RpcResult<Option<U256>>
pub fn block_uncles_count_by_hash(&self, _: H256) -> RpcResult<U256>
pub fn block_uncles_count_by_number(&self, _: BlockNumber) -> RpcResult<U256>
pub fn uncle_by_block_hash_and_index( &self, _: H256, _: Index ) -> RpcResult<Option<RichBlock>>
pub fn uncle_by_block_number_and_index( &self, _: BlockNumber, _: Index ) -> RpcResult<Option<RichBlock>>
source§impl<B, C, P, CT, BE, A, CIDP, EC> Eth<B, C, P, CT, BE, A, CIDP, EC>where
B: BlockT,
C: ProvideRuntimeApi<B> + HeaderBackend<B> + StorageProvider<B, BE> + 'static,
C::Api: EthereumRuntimeRPCApi<B>,
BE: Backend<B>,
A: ChainApi<Block = B>,
EC: EthConfig<B, C>,
impl<B, C, P, CT, BE, A, CIDP, EC> Eth<B, C, P, CT, BE, A, CIDP, EC>where B: BlockT, C: ProvideRuntimeApi<B> + HeaderBackend<B> + StorageProvider<B, BE> + 'static, C::Api: EthereumRuntimeRPCApi<B>, BE: Backend<B>, A: ChainApi<Block = B>, EC: EthConfig<B, C>,
source§impl<B, C, P, CT, BE, A, CIDP, EC> Eth<B, C, P, CT, BE, A, CIDP, EC>where
B: BlockT,
C: CallApiAt<B> + ProvideRuntimeApi<B> + HeaderBackend<B> + StorageProvider<B, BE> + 'static,
C::Api: BlockBuilderApi<B> + EthereumRuntimeRPCApi<B>,
BE: Backend<B> + 'static,
A: ChainApi<Block = B>,
CIDP: CreateInherentDataProviders<B, ()> + Send + 'static,
EC: EthConfig<B, C>,
impl<B, C, P, CT, BE, A, CIDP, EC> Eth<B, C, P, CT, BE, A, CIDP, EC>where B: BlockT, C: CallApiAt<B> + ProvideRuntimeApi<B> + HeaderBackend<B> + StorageProvider<B, BE> + 'static, C::Api: BlockBuilderApi<B> + EthereumRuntimeRPCApi<B>, BE: Backend<B> + 'static, A: ChainApi<Block = B>, CIDP: CreateInherentDataProviders<B, ()> + Send + 'static, EC: EthConfig<B, C>,
source§impl<B, C, P, CT, BE, A, CIDP, EC> Eth<B, C, P, CT, BE, A, CIDP, EC>where
B: BlockT,
C: ProvideRuntimeApi<B> + HeaderBackend<B> + StorageProvider<B, BE> + 'static,
C::Api: EthereumRuntimeRPCApi<B>,
BE: Backend<B> + 'static,
A: ChainApi<Block = B>,
EC: EthConfig<B, C>,
impl<B, C, P, CT, BE, A, CIDP, EC> Eth<B, C, P, CT, BE, A, CIDP, EC>where B: BlockT, C: ProvideRuntimeApi<B> + HeaderBackend<B> + StorageProvider<B, BE> + 'static, C::Api: EthereumRuntimeRPCApi<B>, BE: Backend<B> + 'static, A: ChainApi<Block = B>, EC: EthConfig<B, C>,
pub fn gas_price(&self) -> RpcResult<U256>
pub async fn fee_history( &self, block_count: U256, newest_block: BlockNumber, reward_percentiles: Option<Vec<f64>> ) -> RpcResult<FeeHistory>
pub fn max_priority_fee_per_gas(&self) -> RpcResult<U256>
source§impl<B, C, P, CT, BE, A, CIDP, EC> Eth<B, C, P, CT, BE, A, CIDP, EC>where
B: BlockT,
A: ChainApi<Block = B>,
EC: EthConfig<B, C>,
impl<B, C, P, CT, BE, A, CIDP, EC> Eth<B, C, P, CT, BE, A, CIDP, EC>where B: BlockT, A: ChainApi<Block = B>, EC: EthConfig<B, C>,
source§impl<B, C, P, CT, BE, A, CIDP, EC> Eth<B, C, P, CT, BE, A, CIDP, EC>where
B: BlockT,
C: ProvideRuntimeApi<B> + HeaderBackend<B> + StorageProvider<B, BE> + 'static,
C::Api: BlockBuilderApi<B> + EthereumRuntimeRPCApi<B>,
BE: Backend<B> + 'static,
P: TransactionPool<Block = B> + 'static,
A: ChainApi<Block = B>,
CIDP: CreateInherentDataProviders<B, ()> + Send + 'static,
EC: EthConfig<B, C>,
impl<B, C, P, CT, BE, A, CIDP, EC> Eth<B, C, P, CT, BE, A, CIDP, EC>where B: BlockT, C: ProvideRuntimeApi<B> + HeaderBackend<B> + StorageProvider<B, BE> + 'static, C::Api: BlockBuilderApi<B> + EthereumRuntimeRPCApi<B>, BE: Backend<B> + 'static, P: TransactionPool<Block = B> + 'static, A: ChainApi<Block = B>, CIDP: CreateInherentDataProviders<B, ()> + Send + 'static, EC: EthConfig<B, C>,
pub async fn balance( &self, address: H160, number: Option<BlockNumber> ) -> RpcResult<U256>
pub async fn storage_at( &self, address: H160, index: U256, number: Option<BlockNumber> ) -> RpcResult<H256>
pub async fn transaction_count( &self, address: H160, number: Option<BlockNumber> ) -> RpcResult<U256>
pub async fn code_at( &self, address: H160, number: Option<BlockNumber> ) -> RpcResult<Bytes>
source§impl<B, C, P, CT, BE, A, CIDP, EC> Eth<B, C, P, CT, BE, A, CIDP, EC>where
B: BlockT,
C: ProvideRuntimeApi<B> + HeaderBackend<B> + StorageProvider<B, BE> + 'static,
C::Api: BlockBuilderApi<B> + ConvertTransactionRuntimeApi<B> + EthereumRuntimeRPCApi<B>,
BE: Backend<B> + 'static,
P: TransactionPool<Block = B> + 'static,
CT: ConvertTransaction<<B as BlockT>::Extrinsic> + 'static,
A: ChainApi<Block = B>,
CIDP: CreateInherentDataProviders<B, ()> + Send + 'static,
EC: EthConfig<B, C>,
impl<B, C, P, CT, BE, A, CIDP, EC> Eth<B, C, P, CT, BE, A, CIDP, EC>where B: BlockT, C: ProvideRuntimeApi<B> + HeaderBackend<B> + StorageProvider<B, BE> + 'static, C::Api: BlockBuilderApi<B> + ConvertTransactionRuntimeApi<B> + EthereumRuntimeRPCApi<B>, BE: Backend<B> + 'static, P: TransactionPool<Block = B> + 'static, CT: ConvertTransaction<<B as BlockT>::Extrinsic> + 'static, A: ChainApi<Block = B>, CIDP: CreateInherentDataProviders<B, ()> + Send + 'static, EC: EthConfig<B, C>,
pub async fn send_transaction( &self, request: TransactionRequest ) -> RpcResult<H256>
pub async fn send_raw_transaction(&self, bytes: Bytes) -> RpcResult<H256>
source§impl<B, C, P, CT, BE, A, CIDP, EC> Eth<B, C, P, CT, BE, A, CIDP, EC>where
B: BlockT,
C: ProvideRuntimeApi<B> + HeaderBackend<B> + StorageProvider<B, BE> + 'static,
C::Api: EthereumRuntimeRPCApi<B>,
BE: Backend<B> + 'static,
A: ChainApi<Block = B>,
EC: EthConfig<B, C>,
impl<B, C, P, CT, BE, A, CIDP, EC> Eth<B, C, P, CT, BE, A, CIDP, EC>where B: BlockT, C: ProvideRuntimeApi<B> + HeaderBackend<B> + StorageProvider<B, BE> + 'static, C::Api: EthereumRuntimeRPCApi<B>, BE: Backend<B> + 'static, A: ChainApi<Block = B>, EC: EthConfig<B, C>,
pub async fn transaction_by_hash( &self, hash: H256 ) -> RpcResult<Option<Transaction>>
pub async fn transaction_by_block_hash_and_index( &self, hash: H256, index: Index ) -> RpcResult<Option<Transaction>>
pub async fn transaction_by_block_number_and_index( &self, number: BlockNumber, index: Index ) -> RpcResult<Option<Transaction>>
pub async fn transaction_receipt( &self, hash: H256 ) -> RpcResult<Option<Receipt>>
source§impl<B, C, P, CT, BE, A, CIDP> Eth<B, C, P, CT, BE, A, CIDP, ()>where
B: BlockT,
A: ChainApi<Block = B>,
impl<B, C, P, CT, BE, A, CIDP> Eth<B, C, P, CT, BE, A, CIDP, ()>where B: BlockT, A: ChainApi<Block = B>,
pub fn new( client: Arc<C>, pool: Arc<P>, graph: Arc<Pool<A>>, convert_transaction: Option<CT>, sync: Arc<SyncingService<B>>, signers: Vec<Box<dyn EthSigner>>, overrides: Arc<OverrideHandle<B>>, backend: Arc<dyn BackendReader<B> + Send + Sync>, is_authority: bool, block_data_cache: Arc<EthBlockDataCacheTask<B>>, fee_history_cache: FeeHistoryCache, fee_history_cache_limit: FeeHistoryCacheLimit, execute_gas_limit_multiplier: u64, forced_parent_hashes: Option<BTreeMap<H256, H256>>, pending_create_inherent_data_providers: CIDP, pending_consensus_data_provider: Option<Box<dyn ConsensusDataProvider<B>>> ) -> Self
Trait Implementations§
source§impl<B, C, P, CT, BE, A, CIDP, EC> EthApiServer for Eth<B, C, P, CT, BE, A, CIDP, EC>where
B: BlockT,
C: CallApiAt<B> + ProvideRuntimeApi<B> + HeaderBackend<B> + StorageProvider<B, BE> + 'static,
C::Api: BlockBuilderApi<B> + ConvertTransactionRuntimeApi<B> + EthereumRuntimeRPCApi<B>,
BE: Backend<B> + 'static,
P: TransactionPool<Block = B> + 'static,
CT: ConvertTransaction<<B as BlockT>::Extrinsic> + Send + Sync + 'static,
A: ChainApi<Block = B> + 'static,
CIDP: CreateInherentDataProviders<B, ()> + Send + 'static,
EC: EthConfig<B, C>,
impl<B, C, P, CT, BE, A, CIDP, EC> EthApiServer for Eth<B, C, P, CT, BE, A, CIDP, EC>where B: BlockT, C: CallApiAt<B> + ProvideRuntimeApi<B> + HeaderBackend<B> + StorageProvider<B, BE> + 'static, C::Api: BlockBuilderApi<B> + ConvertTransactionRuntimeApi<B> + EthereumRuntimeRPCApi<B>, BE: Backend<B> + 'static, P: TransactionPool<Block = B> + 'static, CT: ConvertTransaction<<B as BlockT>::Extrinsic> + Send + Sync + 'static, A: ChainApi<Block = B> + 'static, CIDP: CreateInherentDataProviders<B, ()> + Send + 'static, EC: EthConfig<B, C>,
source§fn protocol_version(&self) -> RpcResult<u64>
fn protocol_version(&self) -> RpcResult<u64>
Returns protocol version encoded as a string (quotes are necessary).
source§fn syncing(&self) -> RpcResult<SyncStatus>
fn syncing(&self) -> RpcResult<SyncStatus>
Returns an object with data about the sync status or false. (wtf?)
Returns block author.
source§fn block_number(&self) -> RpcResult<U256>
fn block_number(&self) -> RpcResult<U256>
Returns highest block number.
source§fn chain_id(&self) -> RpcResult<Option<U64>>
fn chain_id(&self) -> RpcResult<Option<U64>>
Returns the chain ID used for transaction signing at the
current best block. None is returned if not
available.
source§fn block_by_hash<'life0, 'async_trait>(
&'life0 self,
hash: H256,
full: bool
) -> Pin<Box<dyn Future<Output = RpcResult<Option<RichBlock>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn block_by_hash<'life0, 'async_trait>( &'life0 self, hash: H256, full: bool ) -> Pin<Box<dyn Future<Output = RpcResult<Option<RichBlock>>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Returns block with given hash.
source§fn block_by_number<'life0, 'async_trait>(
&'life0 self,
number: BlockNumber,
full: bool
) -> Pin<Box<dyn Future<Output = RpcResult<Option<RichBlock>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn block_by_number<'life0, 'async_trait>( &'life0 self, number: BlockNumber, full: bool ) -> Pin<Box<dyn Future<Output = RpcResult<Option<RichBlock>>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Returns block with given number.
source§fn block_transaction_count_by_hash<'life0, 'async_trait>(
&'life0 self,
hash: H256
) -> Pin<Box<dyn Future<Output = RpcResult<Option<U256>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn block_transaction_count_by_hash<'life0, 'async_trait>( &'life0 self, hash: H256 ) -> Pin<Box<dyn Future<Output = RpcResult<Option<U256>>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Returns the number of transactions in a block with given hash.
source§fn block_transaction_count_by_number<'life0, 'async_trait>(
&'life0 self,
number: BlockNumber
) -> Pin<Box<dyn Future<Output = RpcResult<Option<U256>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn block_transaction_count_by_number<'life0, 'async_trait>( &'life0 self, number: BlockNumber ) -> Pin<Box<dyn Future<Output = RpcResult<Option<U256>>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Returns the number of transactions in a block with given block number.
source§fn block_uncles_count_by_hash(&self, hash: H256) -> RpcResult<U256>
fn block_uncles_count_by_hash(&self, hash: H256) -> RpcResult<U256>
Returns the number of uncles in a block with given hash.
source§fn block_uncles_count_by_number(&self, number: BlockNumber) -> RpcResult<U256>
fn block_uncles_count_by_number(&self, number: BlockNumber) -> RpcResult<U256>
Returns the number of uncles in a block with given block number.
source§fn uncle_by_block_hash_and_index(
&self,
hash: H256,
index: Index
) -> RpcResult<Option<RichBlock>>
fn uncle_by_block_hash_and_index( &self, hash: H256, index: Index ) -> RpcResult<Option<RichBlock>>
Returns an uncles at given block and index.
source§fn uncle_by_block_number_and_index(
&self,
number: BlockNumber,
index: Index
) -> RpcResult<Option<RichBlock>>
fn uncle_by_block_number_and_index( &self, number: BlockNumber, index: Index ) -> RpcResult<Option<RichBlock>>
Returns an uncles at given block and index.
source§fn transaction_by_hash<'life0, 'async_trait>(
&'life0 self,
hash: H256
) -> Pin<Box<dyn Future<Output = RpcResult<Option<Transaction>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn transaction_by_hash<'life0, 'async_trait>( &'life0 self, hash: H256 ) -> Pin<Box<dyn Future<Output = RpcResult<Option<Transaction>>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Get transaction by its hash.
source§fn transaction_by_block_hash_and_index<'life0, 'async_trait>(
&'life0 self,
hash: H256,
index: Index
) -> Pin<Box<dyn Future<Output = RpcResult<Option<Transaction>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn transaction_by_block_hash_and_index<'life0, 'async_trait>( &'life0 self, hash: H256, index: Index ) -> Pin<Box<dyn Future<Output = RpcResult<Option<Transaction>>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Returns transaction at given block hash and index.
source§fn transaction_by_block_number_and_index<'life0, 'async_trait>(
&'life0 self,
number: BlockNumber,
index: Index
) -> Pin<Box<dyn Future<Output = RpcResult<Option<Transaction>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn transaction_by_block_number_and_index<'life0, 'async_trait>( &'life0 self, number: BlockNumber, index: Index ) -> Pin<Box<dyn Future<Output = RpcResult<Option<Transaction>>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Returns transaction by given block number and index.
source§fn transaction_receipt<'life0, 'async_trait>(
&'life0 self,
hash: H256
) -> Pin<Box<dyn Future<Output = RpcResult<Option<Receipt>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn transaction_receipt<'life0, 'async_trait>( &'life0 self, hash: H256 ) -> Pin<Box<dyn Future<Output = RpcResult<Option<Receipt>>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Returns transaction receipt by transaction hash.
source§fn balance<'life0, 'async_trait>(
&'life0 self,
address: H160,
number: Option<BlockNumber>
) -> Pin<Box<dyn Future<Output = RpcResult<U256>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn balance<'life0, 'async_trait>( &'life0 self, address: H160, number: Option<BlockNumber> ) -> Pin<Box<dyn Future<Output = RpcResult<U256>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Returns balance of the given account.
source§fn storage_at<'life0, 'async_trait>(
&'life0 self,
address: H160,
index: U256,
number: Option<BlockNumber>
) -> Pin<Box<dyn Future<Output = RpcResult<H256>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn storage_at<'life0, 'async_trait>( &'life0 self, address: H160, index: U256, number: Option<BlockNumber> ) -> Pin<Box<dyn Future<Output = RpcResult<H256>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Returns content of the storage at given address.
source§fn transaction_count<'life0, 'async_trait>(
&'life0 self,
address: H160,
number: Option<BlockNumber>
) -> Pin<Box<dyn Future<Output = RpcResult<U256>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn transaction_count<'life0, 'async_trait>( &'life0 self, address: H160, number: Option<BlockNumber> ) -> Pin<Box<dyn Future<Output = RpcResult<U256>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Returns the number of transactions sent from given address at given time (block number).
source§fn code_at<'life0, 'async_trait>(
&'life0 self,
address: H160,
number: Option<BlockNumber>
) -> Pin<Box<dyn Future<Output = RpcResult<Bytes>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn code_at<'life0, 'async_trait>( &'life0 self, address: H160, number: Option<BlockNumber> ) -> Pin<Box<dyn Future<Output = RpcResult<Bytes>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Returns the code at given address at given time (block number).
source§fn call<'life0, 'async_trait>(
&'life0 self,
request: CallRequest,
number: Option<BlockNumber>,
state_overrides: Option<BTreeMap<H160, CallStateOverride>>
) -> Pin<Box<dyn Future<Output = RpcResult<Bytes>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn call<'life0, 'async_trait>( &'life0 self, request: CallRequest, number: Option<BlockNumber>, state_overrides: Option<BTreeMap<H160, CallStateOverride>> ) -> Pin<Box<dyn Future<Output = RpcResult<Bytes>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Call contract, returning the output data.
source§fn estimate_gas<'life0, 'async_trait>(
&'life0 self,
request: CallRequest,
number: Option<BlockNumber>
) -> Pin<Box<dyn Future<Output = RpcResult<U256>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn estimate_gas<'life0, 'async_trait>( &'life0 self, request: CallRequest, number: Option<BlockNumber> ) -> Pin<Box<dyn Future<Output = RpcResult<U256>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Estimate gas needed for execution of given contract.
source§fn fee_history<'life0, 'async_trait>(
&'life0 self,
block_count: U256,
newest_block: BlockNumber,
reward_percentiles: Option<Vec<f64>>
) -> Pin<Box<dyn Future<Output = RpcResult<FeeHistory>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn fee_history<'life0, 'async_trait>( &'life0 self, block_count: U256, newest_block: BlockNumber, reward_percentiles: Option<Vec<f64>> ) -> Pin<Box<dyn Future<Output = RpcResult<FeeHistory>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Introduced in EIP-1159 for getting information on the appropriate priority fee to use.
source§fn max_priority_fee_per_gas(&self) -> RpcResult<U256>
fn max_priority_fee_per_gas(&self) -> RpcResult<U256>
Introduced in EIP-1159, a Geth-specific and simplified priority fee oracle.
Leverages the already existing fee history cache.
source§fn hashrate(&self) -> RpcResult<U256>
fn hashrate(&self) -> RpcResult<U256>
Returns the number of hashes per second that the node is mining with.
source§fn work(&self) -> RpcResult<Work>
fn work(&self) -> RpcResult<Work>
Returns the hash of the current block, the seedHash, and the boundary condition to be met.
source§fn submit_hashrate(&self, hashrate: U256, id: H256) -> RpcResult<bool>
fn submit_hashrate(&self, hashrate: U256, id: H256) -> RpcResult<bool>
Used for submitting mining hashrate.
source§fn submit_work(
&self,
nonce: H64,
pow_hash: H256,
mix_digest: H256
) -> RpcResult<bool>
fn submit_work( &self, nonce: H64, pow_hash: H256, mix_digest: H256 ) -> RpcResult<bool>
Used for submitting a proof-of-work solution.
source§fn send_transaction<'life0, 'async_trait>(
&'life0 self,
request: TransactionRequest
) -> Pin<Box<dyn Future<Output = RpcResult<H256>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn send_transaction<'life0, 'async_trait>( &'life0 self, request: TransactionRequest ) -> Pin<Box<dyn Future<Output = RpcResult<H256>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Sends transaction; will block waiting for signer to return the
transaction hash.
Auto Trait Implementations§
impl<B, C, P, CT, BE, A, CIDP, EC> !RefUnwindSafe for Eth<B, C, P, CT, BE, A, CIDP, EC>
impl<B, C, P, CT, BE, A, CIDP, EC> Send for Eth<B, C, P, CT, BE, A, CIDP, EC>where BE: Send, C: Send + Sync, CIDP: Send, CT: Send, P: Send + Sync,
impl<B, C, P, CT, BE, A, CIDP, EC> Sync for Eth<B, C, P, CT, BE, A, CIDP, EC>where BE: Sync, C: Send + Sync, CIDP: Sync, CT: Sync, P: Send + Sync,
impl<B, C, P, CT, BE, A, CIDP, EC> Unpin for Eth<B, C, P, CT, BE, A, CIDP, EC>where BE: Unpin, CIDP: Unpin, CT: Unpin, EC: Unpin,
impl<B, C, P, CT, BE, A, CIDP, EC> !UnwindSafe for Eth<B, C, P, CT, BE, A, CIDP, EC>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CheckedConversion for T
impl<T> CheckedConversion for T
§fn checked_from<T>(t: T) -> Option<Self>where
Self: TryFrom<T>,
fn checked_from<T>(t: T) -> Option<Self>where Self: TryFrom<T>,
§fn checked_into<T>(self) -> Option<T>where
Self: TryInto<T>,
fn checked_into<T>(self) -> Option<T>where Self: TryInto<T>,
§impl<T> Conv for T
impl<T> Conv for T
§impl<T> FmtForward for T
impl<T> FmtForward for T
§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where Self: Binary,
Causes
self
to use its Binary
implementation when Debug
-formatted.§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where Self: Display,
Causes
self
to use its Display
implementation when
Debug
-formatted.§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where Self: LowerExp,
Causes
self
to use its LowerExp
implementation when
Debug
-formatted.§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where Self: LowerHex,
Causes
self
to use its LowerHex
implementation when
Debug
-formatted.§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where Self: Octal,
Causes
self
to use its Octal
implementation when Debug
-formatted.§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where Self: Pointer,
Causes
self
to use its Pointer
implementation when
Debug
-formatted.§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where Self: UpperExp,
Causes
self
to use its UpperExp
implementation when
Debug
-formatted.§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where Self: UpperHex,
Causes
self
to use its UpperHex
implementation when
Debug
-formatted.§fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
fn fmt_list(self) -> FmtList<Self>where &'a Self: for<'a> IntoIterator,
Formats each item in a sequence. Read more
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<T> IsType<T> for T
impl<T> IsType<T> for T
§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere T: ?Sized,
§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere Self: Sized,
Pipes by value. This is generally the method you want to use. Read more
§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere R: 'a,
Borrows
self
and passes that borrow into the pipe function. Read more§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere R: 'a,
Mutably borrows
self
and passes that borrow into the pipe function. Read more§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> Rwhere
Self: Borrow<B>,
B: 'a + ?Sized,
R: 'a,
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> Rwhere Self: Borrow<B>, B: 'a + ?Sized, R: 'a,
§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R
) -> Rwhere
Self: BorrowMut<B>,
B: 'a + ?Sized,
R: 'a,
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R ) -> Rwhere Self: BorrowMut<B>, B: 'a + ?Sized, R: 'a,
§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> Rwhere
Self: AsRef<U>,
U: 'a + ?Sized,
R: 'a,
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> Rwhere Self: AsRef<U>, U: 'a + ?Sized, R: 'a,
Borrows
self
, then passes self.as_ref()
into the pipe function.§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> Rwhere
Self: AsMut<U>,
U: 'a + ?Sized,
R: 'a,
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> Rwhere Self: AsMut<U>, U: 'a + ?Sized, R: 'a,
Mutably borrows
self
, then passes self.as_mut()
into the pipe
function.§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
§fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere Self: UniqueSaturatedFrom<T>,
§fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
fn saturated_into<T>(self) -> Twhere Self: UniqueSaturatedInto<T>,
Consume self to return an equivalent value of
T
. Read more§impl<T> Tap for T
impl<T> Tap for T
§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Selfwhere
Self: Borrow<B>,
B: ?Sized,
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Selfwhere Self: Borrow<B>, B: ?Sized,
Immutable access to the
Borrow<B>
of a value. Read more§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere
Self: BorrowMut<B>,
B: ?Sized,
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere Self: BorrowMut<B>, B: ?Sized,
Mutable access to the
BorrowMut<B>
of a value. Read more§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Selfwhere
Self: AsRef<R>,
R: ?Sized,
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Selfwhere Self: AsRef<R>, R: ?Sized,
Immutable access to the
AsRef<R>
view of a value. Read more§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere
Self: AsMut<R>,
R: ?Sized,
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere Self: AsMut<R>, R: ?Sized,
Mutable access to the
AsMut<R>
view of a value. Read more§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Selfwhere
Self: Deref<Target = T>,
T: ?Sized,
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Selfwhere Self: Deref<Target = T>, T: ?Sized,
Immutable access to the
Deref::Target
of a value. Read more§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Selfwhere
Self: DerefMut<Target = T> + Deref,
T: ?Sized,
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Selfwhere Self: DerefMut<Target = T> + Deref, T: ?Sized,
Mutable access to the
Deref::Target
of a value. Read more§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
Calls
.tap()
only in debug builds, and is erased in release builds.§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
Calls
.tap_mut()
only in debug builds, and is erased in release
builds.§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Selfwhere
Self: Borrow<B>,
B: ?Sized,
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Selfwhere Self: Borrow<B>, B: ?Sized,
Calls
.tap_borrow()
only in debug builds, and is erased in release
builds.§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere
Self: BorrowMut<B>,
B: ?Sized,
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere Self: BorrowMut<B>, B: ?Sized,
Calls
.tap_borrow_mut()
only in debug builds, and is erased in release
builds.§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Selfwhere
Self: AsRef<R>,
R: ?Sized,
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Selfwhere Self: AsRef<R>, R: ?Sized,
Calls
.tap_ref()
only in debug builds, and is erased in release
builds.§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere
Self: AsMut<R>,
R: ?Sized,
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere Self: AsMut<R>, R: ?Sized,
Calls
.tap_ref_mut()
only in debug builds, and is erased in release
builds.§impl<T> TryConv for T
impl<T> TryConv for T
§impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for Swhere T: UncheckedFrom<S>,
§fn unchecked_into(self) -> T
fn unchecked_into(self) -> T
The counterpart to
unchecked_from
.§impl<T, S> UniqueSaturatedInto<T> for Swhere
T: Bounded,
S: TryInto<T>,
impl<T, S> UniqueSaturatedInto<T> for Swhere T: Bounded, S: TryInto<T>,
§fn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
Consume self to return an equivalent value of
T
.