pub trait TransactionBuilder:
Sized
+ Default
+ Send
+ Sync
+ 'static {
Show 50 methods
// Required methods
fn chain_id(&self) -> Option<u64>;
fn set_chain_id(&mut self, chain_id: u64);
fn nonce(&self) -> Option<u64>;
fn set_nonce(&mut self, nonce: u64);
fn take_nonce(&mut self) -> Option<u64>;
fn input(&self) -> Option<&Bytes>;
fn set_input<T>(&mut self, input: T)
where T: Into<Bytes>;
fn from(&self) -> Option<Address>;
fn set_from(&mut self, from: Address);
fn kind(&self) -> Option<TxKind>;
fn clear_kind(&mut self);
fn set_kind(&mut self, kind: TxKind);
fn value(&self) -> Option<Uint<256, 4>>;
fn set_value(&mut self, value: Uint<256, 4>);
fn gas_price(&self) -> Option<u128>;
fn set_gas_price(&mut self, gas_price: u128);
fn max_fee_per_gas(&self) -> Option<u128>;
fn set_max_fee_per_gas(&mut self, max_fee_per_gas: u128);
fn max_priority_fee_per_gas(&self) -> Option<u128>;
fn set_max_priority_fee_per_gas(&mut self, max_priority_fee_per_gas: u128);
fn gas_limit(&self) -> Option<u64>;
fn set_gas_limit(&mut self, gas_limit: u64);
fn access_list(&self) -> Option<&AccessList>;
fn set_access_list(&mut self, access_list: AccessList);
// Provided methods
fn with_chain_id(self, chain_id: u64) -> Self { ... }
fn with_nonce(self, nonce: u64) -> Self { ... }
fn without_nonce(self) -> Self { ... }
fn with_input<T>(self, input: T) -> Self
where T: Into<Bytes> { ... }
fn set_input_kind<T>(&mut self, input: T, _: TransactionInputKind)
where T: Into<Bytes> { ... }
fn with_input_kind<T>(self, input: T, kind: TransactionInputKind) -> Self
where T: Into<Bytes> { ... }
fn with_from(self, from: Address) -> Self { ... }
fn with_kind(self, kind: TxKind) -> Self { ... }
fn to(&self) -> Option<Address> { ... }
fn set_to(&mut self, to: Address) { ... }
fn with_to(self, to: Address) -> Self { ... }
fn set_create(&mut self) { ... }
fn into_create(self) -> Self { ... }
fn set_deploy_code<T>(&mut self, code: T)
where T: Into<Bytes> { ... }
fn with_deploy_code<T>(self, code: T) -> Self
where T: Into<Bytes> { ... }
fn set_call<T>(&mut self, t: &T)
where T: SolCall { ... }
fn with_call<T>(self, t: &T) -> Self
where T: SolCall { ... }
fn calculate_create_address(&self) -> Option<Address> { ... }
fn with_value(self, value: Uint<256, 4>) -> Self { ... }
fn with_gas_price(self, gas_price: u128) -> Self { ... }
fn with_max_fee_per_gas(self, max_fee_per_gas: u128) -> Self { ... }
fn with_max_priority_fee_per_gas(
self,
max_priority_fee_per_gas: u128,
) -> Self { ... }
fn with_gas_limit(self, gas_limit: u64) -> Self { ... }
fn with_access_list(self, access_list: AccessList) -> Self { ... }
fn apply<F>(self, f: F) -> Self
where F: FnOnce(Self) -> Self { ... }
fn try_apply<F, E>(self, f: F) -> Result<Self, E>
where F: FnOnce(Self) -> Result<Self, E> { ... }
}network only.Expand description
Transaction builder.
Required Methods§
Sourcefn set_chain_id(&mut self, chain_id: u64)
fn set_chain_id(&mut self, chain_id: u64)
Set the chain ID for the transaction.
Sourcefn take_nonce(&mut self) -> Option<u64>
fn take_nonce(&mut self) -> Option<u64>
Takes the nonce out of the transaction, clearing it.
Sourcefn clear_kind(&mut self)
fn clear_kind(&mut self)
Clear the kind of transaction.
Sourcefn 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.
Sourcefn max_fee_per_gas(&self) -> Option<u128>
fn max_fee_per_gas(&self) -> Option<u128>
Get the max fee per gas for the transaction.
Sourcefn 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.
Sourcefn 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.
Sourcefn 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.
Sourcefn set_gas_limit(&mut self, gas_limit: u64)
fn set_gas_limit(&mut self, gas_limit: u64)
Set the gas limit for the transaction.
Sourcefn access_list(&self) -> Option<&AccessList>
fn access_list(&self) -> Option<&AccessList>
Get the EIP-2930 access list for the transaction.
Sourcefn set_access_list(&mut self, access_list: AccessList)
fn set_access_list(&mut self, access_list: AccessList)
Sets the EIP-2930 access list.
Provided Methods§
Sourcefn 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.
Sourcefn with_nonce(self, nonce: u64) -> Self
fn with_nonce(self, nonce: u64) -> Self
Builder-pattern method for setting the nonce.
Sourcefn without_nonce(self) -> Self
fn without_nonce(self) -> Self
Takes the nonce out of the transaction, clearing it.
Sourcefn with_input<T>(self, input: T) -> Self
fn with_input<T>(self, input: T) -> Self
Builder-pattern method for setting the input data.
Sourcefn set_input_kind<T>(&mut self, input: T, _: TransactionInputKind)
fn set_input_kind<T>(&mut self, input: T, _: TransactionInputKind)
Set the input data for the transaction, respecting the input kind
Sourcefn with_input_kind<T>(self, input: T, kind: TransactionInputKind) -> Self
fn with_input_kind<T>(self, input: T, kind: TransactionInputKind) -> Self
Builder-pattern method for setting the input data, respecting the input kind
Sourcefn with_kind(self, kind: TxKind) -> Self
fn with_kind(self, kind: TxKind) -> Self
Builder-pattern method for setting the kind of transaction.
Sourcefn set_create(&mut self)
fn set_create(&mut self)
Set the to field to a create call.
Sourcefn into_create(self) -> Self
fn into_create(self) -> Self
Set the to field to a create call.
Sourcefn 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.
Sourcefn 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.
Sourcefn 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.
Sourcefn 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.
Returns None if the transaction is not a contract creation (the to field is set), or if
the from or nonce fields are not set.
Sourcefn with_value(self, value: Uint<256, 4>) -> Self
fn with_value(self, value: Uint<256, 4>) -> Self
Builder-pattern method for setting the value.
Sourcefn 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.
Sourcefn 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 .
Sourcefn 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.
Sourcefn 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.
Sourcefn 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.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".