pub struct OpTransactionRequest(/* private fields */);
Available on crate feature
rpc-types
only.Expand description
Builder for OpTypedTransaction
.
Implementations§
Source§impl OpTransactionRequest
impl OpTransactionRequest
Sourcepub const fn from(self, from: Address) -> OpTransactionRequest
pub const fn from(self, from: Address) -> OpTransactionRequest
Sets the from
field in the call to the provided address
Sourcepub const fn transaction_type(
self,
transaction_type: u8,
) -> OpTransactionRequest
pub const fn transaction_type( self, transaction_type: u8, ) -> OpTransactionRequest
Sets the transactions type for the transactions.
Sourcepub const fn gas_limit(self, gas_limit: u64) -> OpTransactionRequest
pub const fn gas_limit(self, gas_limit: u64) -> OpTransactionRequest
Sets the gas limit for the transaction.
Sourcepub const fn nonce(self, nonce: u64) -> OpTransactionRequest
pub const fn nonce(self, nonce: u64) -> OpTransactionRequest
Sets the nonce for the transaction.
Sourcepub const fn max_fee_per_gas(
self,
max_fee_per_gas: u128,
) -> OpTransactionRequest
pub const fn max_fee_per_gas( self, max_fee_per_gas: u128, ) -> OpTransactionRequest
Sets the maximum fee per gas for the transaction.
Sourcepub const fn max_priority_fee_per_gas(
self,
max_priority_fee_per_gas: u128,
) -> OpTransactionRequest
pub const fn max_priority_fee_per_gas( self, max_priority_fee_per_gas: u128, ) -> OpTransactionRequest
Sets the maximum priority fee per gas for the transaction.
Sourcepub const fn to(self, to: Address) -> OpTransactionRequest
pub const fn to(self, to: Address) -> OpTransactionRequest
Sets the recipient address for the transaction.
Sourcepub const fn value(self, value: Uint<256, 4>) -> OpTransactionRequest
pub const fn value(self, value: Uint<256, 4>) -> OpTransactionRequest
Sets the value (amount) for the transaction.
Sourcepub fn access_list(self, access_list: AccessList) -> OpTransactionRequest
pub fn access_list(self, access_list: AccessList) -> OpTransactionRequest
Sets the access list for the transaction.
Sourcepub fn input(self, input: TransactionInput) -> OpTransactionRequest
pub fn input(self, input: TransactionInput) -> OpTransactionRequest
Sets the input data for the transaction.
Sourcepub fn build_typed_tx(self) -> Result<OpTypedTransaction, OpTransactionRequest>
pub fn build_typed_tx(self) -> Result<OpTypedTransaction, OpTransactionRequest>
Builds OpTypedTransaction
from this builder. See TransactionRequest::build_typed_tx
for more info.
Note that EIP-4844 transactions are not supported by Optimism and will be converted into EIP-1559 transactions.
Trait Implementations§
Source§impl AsMut<TransactionRequest> for OpTransactionRequest
impl AsMut<TransactionRequest> for OpTransactionRequest
Source§fn as_mut(&mut self) -> &mut TransactionRequest
fn as_mut(&mut self) -> &mut TransactionRequest
Converts this type into a mutable reference of the (usually inferred) input type.
Source§impl AsRef<TransactionRequest> for OpTransactionRequest
impl AsRef<TransactionRequest> for OpTransactionRequest
Source§fn as_ref(&self) -> &TransactionRequest
fn as_ref(&self) -> &TransactionRequest
Converts this type into a shared reference of the (usually inferred) input type.
Source§impl Clone for OpTransactionRequest
impl Clone for OpTransactionRequest
Source§fn clone(&self) -> OpTransactionRequest
fn clone(&self) -> OpTransactionRequest
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for OpTransactionRequest
impl Debug for OpTransactionRequest
Source§impl Default for OpTransactionRequest
impl Default for OpTransactionRequest
Source§fn default() -> OpTransactionRequest
fn default() -> OpTransactionRequest
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for OpTransactionRequest
impl<'de> Deserialize<'de> for OpTransactionRequest
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<OpTransactionRequest, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<OpTransactionRequest, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl From<OpTxEnvelope> for OpTransactionRequest
impl From<OpTxEnvelope> for OpTransactionRequest
Source§fn from(value: OpTxEnvelope) -> OpTransactionRequest
fn from(value: OpTxEnvelope) -> OpTransactionRequest
Converts to this type from the input type.
Source§impl From<OpTypedTransaction> for OpTransactionRequest
impl From<OpTypedTransaction> for OpTransactionRequest
Source§fn from(tx: OpTypedTransaction) -> OpTransactionRequest
fn from(tx: OpTypedTransaction) -> OpTransactionRequest
Converts to this type from the input type.
Source§impl<T> From<Signed<T>> for OpTransactionRequest
impl<T> From<Signed<T>> for OpTransactionRequest
Source§fn from(value: Signed<T>) -> OpTransactionRequest
fn from(value: Signed<T>) -> OpTransactionRequest
Converts to this type from the input type.
Source§impl From<TransactionRequest> for OpTransactionRequest
impl From<TransactionRequest> for OpTransactionRequest
Source§fn from(value: TransactionRequest) -> OpTransactionRequest
fn from(value: TransactionRequest) -> OpTransactionRequest
Converts to this type from the input type.
Source§impl From<TxDeposit> for OpTransactionRequest
impl From<TxDeposit> for OpTransactionRequest
Source§fn from(tx: TxDeposit) -> OpTransactionRequest
fn from(tx: TxDeposit) -> OpTransactionRequest
Converts to this type from the input type.
Source§impl Hash for OpTransactionRequest
impl Hash for OpTransactionRequest
Source§impl PartialEq for OpTransactionRequest
impl PartialEq for OpTransactionRequest
Source§impl Serialize for OpTransactionRequest
impl Serialize for OpTransactionRequest
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
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.Source§impl TransactionBuilder7702 for OpTransactionRequest
impl TransactionBuilder7702 for OpTransactionRequest
Get the EIP-7702 authorization list for the transaction.
Sets the EIP-7702 authorization list.
Builder-pattern method for setting the authorization list.
impl Eq for OpTransactionRequest
impl StructuralPartialEq for OpTransactionRequest
Auto Trait Implementations§
impl !Freeze for OpTransactionRequest
impl RefUnwindSafe for OpTransactionRequest
impl Send for OpTransactionRequest
impl Sync for OpTransactionRequest
impl Unpin for OpTransactionRequest
impl UnwindSafe for OpTransactionRequest
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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