pub struct Optimism { /* private fields */ }
Available on crate feature
network
only.Expand description
Types for an Op-stack network.
Trait Implementations§
Source§impl Network for Optimism
impl Network for Optimism
Source§type TxEnvelope = OpTxEnvelope
type TxEnvelope = OpTxEnvelope
The network transaction envelope type.
Source§type UnsignedTx = OpTypedTransaction
type UnsignedTx = OpTypedTransaction
An enum over the various transaction types.
Source§type ReceiptEnvelope = OpReceiptEnvelope
type ReceiptEnvelope = OpReceiptEnvelope
The network receipt envelope type.
Source§type TransactionRequest = OpTransactionRequest
type TransactionRequest = OpTransactionRequest
The JSON body of a transaction request.
Source§type TransactionResponse = Transaction
type TransactionResponse = Transaction
The JSON body of a transaction response.
Source§type ReceiptResponse = OpTransactionReceipt
type ReceiptResponse = OpTransactionReceipt
The JSON body of a transaction receipt.
Source§type HeaderResponse = Header
type HeaderResponse = Header
The JSON body of a header response.
Source§type BlockResponse = Block<<Optimism as Network>::TransactionResponse, <Optimism as Network>::HeaderResponse>
type BlockResponse = Block<<Optimism as Network>::TransactionResponse, <Optimism as Network>::HeaderResponse>
The JSON body of a block response.
Source§impl NetworkWallet<Optimism> for EthereumWallet
impl NetworkWallet<Optimism> for EthereumWallet
Source§fn default_signer_address(&self) -> Address
fn default_signer_address(&self) -> Address
Get the default signer address. This address should be used
in
NetworkWallet::sign_transaction_from
when no specific signer is
specified.Source§fn has_signer_for(&self, address: &Address) -> bool
fn has_signer_for(&self, address: &Address) -> bool
Return true if the signer contains a credential for the given address.
Source§fn signer_addresses(&self) -> impl Iterator<Item = Address>
fn signer_addresses(&self) -> impl Iterator<Item = Address>
Return an iterator of all signer addresses.
Source§async fn sign_transaction_from(
&self,
sender: Address,
tx: OpTypedTransaction,
) -> Result<OpTxEnvelope, Error>
async fn sign_transaction_from( &self, sender: Address, tx: OpTypedTransaction, ) -> Result<OpTxEnvelope, Error>
Asynchronously sign an unsigned transaction, with a specified
credential.
Source§fn sign_transaction(
&self,
tx: <N as Network>::UnsignedTx,
) -> impl Send + Future<Output = Result<<N as Network>::TxEnvelope, Error>>
fn sign_transaction( &self, tx: <N as Network>::UnsignedTx, ) -> impl Send + Future<Output = Result<<N as Network>::TxEnvelope, Error>>
Asynchronously sign an unsigned transaction.
Source§fn sign_request(
&self,
request: <N as Network>::TransactionRequest,
) -> impl Send + Future<Output = Result<<N as Network>::TxEnvelope, Error>>
fn sign_request( &self, request: <N as Network>::TransactionRequest, ) -> impl Send + Future<Output = Result<<N as Network>::TxEnvelope, Error>>
Asynchronously sign a transaction request, using the sender specified
in the
from
field.Source§impl TransactionBuilder<Optimism> for OpTransactionRequest
impl TransactionBuilder<Optimism> for OpTransactionRequest
Source§fn set_chain_id(&mut self, chain_id: u64)
fn set_chain_id(&mut self, chain_id: u64)
Set the chain ID for the transaction.
Source§fn clear_kind(&mut self)
fn clear_kind(&mut self)
Clear the kind of transaction.
Source§fn set_gas_price(&mut self, gas_price: u128)
fn set_gas_price(&mut self, gas_price: u128)
Set the legacy gas price for the transaction.
Source§fn max_fee_per_gas(&self) -> Option<u128>
fn max_fee_per_gas(&self) -> Option<u128>
Get the max fee per gas for the transaction.
Source§fn set_max_fee_per_gas(&mut self, max_fee_per_gas: u128)
fn set_max_fee_per_gas(&mut self, max_fee_per_gas: u128)
Set the max fee per gas for the transaction.
Source§fn max_priority_fee_per_gas(&self) -> Option<u128>
fn max_priority_fee_per_gas(&self) -> Option<u128>
Get the max priority fee per gas for the transaction.
Source§fn set_max_priority_fee_per_gas(&mut self, max_priority_fee_per_gas: u128)
fn set_max_priority_fee_per_gas(&mut self, max_priority_fee_per_gas: u128)
Set the max priority fee per gas for the transaction.
Source§fn set_gas_limit(&mut self, gas_limit: u64)
fn set_gas_limit(&mut self, gas_limit: u64)
Set the gas limit for the transaction.
Source§fn access_list(&self) -> Option<&AccessList>
fn access_list(&self) -> Option<&AccessList>
Get the EIP-2930 access list for the transaction.
Source§fn set_access_list(&mut self, access_list: AccessList)
fn set_access_list(&mut self, access_list: AccessList)
Sets the EIP-2930 access list.
Source§fn complete_type(&self, ty: OpTxType) -> Result<(), Vec<&'static str>>
fn complete_type(&self, ty: OpTxType) -> Result<(), Vec<&'static str>>
Check if all necessary keys are present to build the specified type,
returning a list of missing keys.
Source§fn can_submit(&self) -> bool
fn can_submit(&self) -> bool
True if the builder contains all necessary information to be submitted
to the
eth_sendTransaction
endpoint.Source§fn can_build(&self) -> bool
fn can_build(&self) -> bool
True if the builder contains all necessary information to be built into
a valid transaction.
Source§fn output_tx_type(&self) -> OpTxType
fn output_tx_type(&self) -> OpTxType
Returns the transaction type that this builder will attempt to build.
This does not imply that the builder is ready to build.
Source§fn output_tx_type_checked(&self) -> Option<OpTxType>
fn output_tx_type_checked(&self) -> Option<OpTxType>
Returns the transaction type that this builder will build.
None
if
the builder is not ready to build.Source§fn prep_for_submission(&mut self)
fn prep_for_submission(&mut self)
Trim any conflicting keys and populate any computed fields (like blob
hashes). Read more
Source§fn build_unsigned(
self,
) -> Result<OpTypedTransaction, UnbuiltTransactionError<Optimism>>
fn build_unsigned( self, ) -> Result<OpTypedTransaction, UnbuiltTransactionError<Optimism>>
Build an unsigned, but typed, transaction.
Source§async fn build<W>(
self,
wallet: &W,
) -> Result<<Optimism as Network>::TxEnvelope, TransactionBuilderError<Optimism>>where
W: NetworkWallet<Optimism>,
async fn build<W>(
self,
wallet: &W,
) -> Result<<Optimism as Network>::TxEnvelope, TransactionBuilderError<Optimism>>where
W: NetworkWallet<Optimism>,
Build a signed transaction.
Source§fn with_chain_id(self, chain_id: u64) -> Self
fn with_chain_id(self, chain_id: u64) -> Self
Builder-pattern method for setting the chain ID.
Source§fn with_nonce(self, nonce: u64) -> Self
fn with_nonce(self, nonce: u64) -> Self
Builder-pattern method for setting the nonce.
Source§fn with_input<T>(self, input: T) -> Self
fn with_input<T>(self, input: T) -> Self
Builder-pattern method for setting the input data.
Source§fn with_kind(self, kind: TxKind) -> Self
fn with_kind(self, kind: TxKind) -> Self
Builder-pattern method for setting the kind of transaction.
Source§fn set_create(&mut self)
fn set_create(&mut self)
Set the
to
field to a create call.Source§fn into_create(self) -> Self
fn into_create(self) -> Self
Set the
to
field to a create call.Source§fn set_deploy_code<T>(&mut self, code: T)
fn set_deploy_code<T>(&mut self, code: T)
Deploy the code by making a create call with data. This will set the
to
field to TxKind::Create
.Source§fn with_deploy_code<T>(self, code: T) -> Self
fn with_deploy_code<T>(self, code: T) -> Self
Deploy the code by making a create call with data. This will set the
to
field to TxKind::Create
.Source§fn set_call<T>(&mut self, t: &T)where
T: SolCall,
fn set_call<T>(&mut self, t: &T)where
T: SolCall,
Set the data field to a contract call. This will clear the
to
field
if it is set to TxKind::Create
.Source§fn calculate_create_address(&self) -> Option<Address>
fn calculate_create_address(&self) -> Option<Address>
Calculates the address that will be created by the transaction, if any. Read more
Source§fn with_value(self, value: Uint<256, 4>) -> Self
fn with_value(self, value: Uint<256, 4>) -> Self
Builder-pattern method for setting the value.
Source§fn with_gas_price(self, gas_price: u128) -> Self
fn with_gas_price(self, gas_price: u128) -> Self
Builder-pattern method for setting the legacy gas price.
Source§fn with_max_fee_per_gas(self, max_fee_per_gas: u128) -> Self
fn with_max_fee_per_gas(self, max_fee_per_gas: u128) -> Self
Builder-pattern method for setting max fee per gas .
Source§fn with_max_priority_fee_per_gas(self, max_priority_fee_per_gas: u128) -> Self
fn with_max_priority_fee_per_gas(self, max_priority_fee_per_gas: u128) -> Self
Builder-pattern method for setting max priority fee per gas.
Source§fn with_gas_limit(self, gas_limit: u64) -> Self
fn with_gas_limit(self, gas_limit: u64) -> Self
Builder-pattern method for setting the gas limit.
Source§fn with_access_list(self, access_list: AccessList) -> Self
fn with_access_list(self, access_list: AccessList) -> Self
Builder-pattern method for setting the access list.
Source§fn complete_preferred(&self) -> Result<(), Vec<&'static str>>
fn complete_preferred(&self) -> Result<(), Vec<&'static str>>
Check if all necessary keys are present to build the currently-preferred
transaction type, returning a list of missing keys.
Source§fn assert_preferred(&self, ty: <N as Network>::TxType)
fn assert_preferred(&self, ty: <N as Network>::TxType)
Assert that the builder prefers a certain transaction type. This does
not indicate that the builder is ready to build. This function uses a
dbg_assert_eq!
to check the builder status, and will have no affect
in release builds.Source§fn assert_preferred_chained(self, ty: <N as Network>::TxType) -> Self
fn assert_preferred_chained(self, ty: <N as Network>::TxType) -> Self
Assert that the builder prefers a certain transaction type. This does
not indicate that the builder is ready to build. This function uses a
dbg_assert_eq!
to check the builder status, and will have no affect
in release builds.impl Copy for Optimism
Auto Trait Implementations§
impl Freeze for Optimism
impl RefUnwindSafe for Optimism
impl Send for Optimism
impl Sync for Optimism
impl Unpin for Optimism
impl UnwindSafe for Optimism
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more