Struct TransactionRequest
pub struct TransactionRequest {Show 16 fields
pub from: Option<Address>,
pub to: Option<TxKind>,
pub gas_price: Option<u128>,
pub max_fee_per_gas: Option<u128>,
pub max_priority_fee_per_gas: Option<u128>,
pub max_fee_per_blob_gas: Option<u128>,
pub gas: Option<u64>,
pub value: Option<Uint<256, 4>>,
pub input: TransactionInput,
pub nonce: Option<u64>,
pub chain_id: Option<u64>,
pub access_list: Option<AccessList>,
pub transaction_type: Option<u8>,
pub blob_versioned_hashes: Option<Vec<FixedBytes<32>>>,
pub sidecar: Option<BlobTransactionSidecar>,
pub authorization_list: Option<Vec<SignedAuthorization>>,
}
Expand description
Represents all transaction requests to/from RPC.
Fields§
§from: Option<Address>
The address of the transaction author.
to: Option<TxKind>
The destination address of the transaction.
gas_price: Option<u128>
The legacy gas price.
max_fee_per_gas: Option<u128>
The max base fee per gas the sender is willing to pay.
max_priority_fee_per_gas: Option<u128>
The max priority fee per gas the sender is willing to pay, also called the miner tip.
max_fee_per_blob_gas: Option<u128>
The max fee per blob gas for EIP-4844 blob transactions.
gas: Option<u64>
The gas limit for the transaction.
value: Option<Uint<256, 4>>
The value transferred in the transaction, in wei.
input: TransactionInput
Transaction data.
nonce: Option<u64>
The nonce of the transaction.
chain_id: Option<u64>
The chain ID for the transaction.
access_list: Option<AccessList>
An EIP-2930 access list, which lowers cost for accessing accounts and storages in the list. See EIP-2930 for more information.
transaction_type: Option<u8>
The EIP-2718 transaction type. See EIP-2718 for more information.
blob_versioned_hashes: Option<Vec<FixedBytes<32>>>
Blob versioned hashes for EIP-4844 transactions.
sidecar: Option<BlobTransactionSidecar>
Blob sidecar for EIP-4844 transactions.
Authorization list for for EIP-7702 transactions.
Implementations§
§impl TransactionRequest
impl TransactionRequest
pub const fn from(self, from: Address) -> TransactionRequest
pub const fn from(self, from: Address) -> TransactionRequest
Sets the from
field in the call to the provided address
pub const fn transaction_type(self, transaction_type: u8) -> TransactionRequest
pub const fn transaction_type(self, transaction_type: u8) -> TransactionRequest
Sets the transactions type for the transactions.
pub const fn gas_limit(self, gas_limit: u64) -> TransactionRequest
pub const fn gas_limit(self, gas_limit: u64) -> TransactionRequest
Sets the gas limit for the transaction.
pub const fn nonce(self, nonce: u64) -> TransactionRequest
pub const fn nonce(self, nonce: u64) -> TransactionRequest
Sets the nonce for the transaction.
pub const fn max_fee_per_gas(self, max_fee_per_gas: u128) -> TransactionRequest
pub const fn max_fee_per_gas(self, max_fee_per_gas: u128) -> TransactionRequest
Sets the maximum fee per gas for the transaction.
pub const fn max_priority_fee_per_gas(
self,
max_priority_fee_per_gas: u128,
) -> TransactionRequest
pub const fn max_priority_fee_per_gas( self, max_priority_fee_per_gas: u128, ) -> TransactionRequest
Sets the maximum priority fee per gas for the transaction.
pub const fn to(self, to: Address) -> TransactionRequest
pub const fn to(self, to: Address) -> TransactionRequest
Sets the recipient address for the transaction.
pub const fn value(self, value: Uint<256, 4>) -> TransactionRequest
pub const fn value(self, value: Uint<256, 4>) -> TransactionRequest
Sets the value (amount) for the transaction.
pub fn access_list(self, access_list: AccessList) -> TransactionRequest
pub fn access_list(self, access_list: AccessList) -> TransactionRequest
Sets the access list for the transaction.
pub fn input(self, input: TransactionInput) -> TransactionRequest
pub fn input(self, input: TransactionInput) -> TransactionRequest
Sets the input data for the transaction.
pub fn fee_cap(&self) -> Option<u128>
pub fn fee_cap(&self) -> Option<u128>
Returns the configured fee cap, if any.
The returns gas_price
(legacy) if set or max_fee_per_gas
(EIP1559)
pub fn populate_blob_hashes(&mut self)
pub fn populate_blob_hashes(&mut self)
Populate the blob_versioned_hashes
key, if a sidecar exists. No
effect otherwise.
pub fn get_invalid_common_fields(&self) -> Vec<&'static str>
pub fn get_invalid_common_fields(&self) -> Vec<&'static str>
Gets invalid fields for all transaction types
pub fn get_invalid_1559_fields(&self) -> Vec<&'static str>
pub fn get_invalid_1559_fields(&self) -> Vec<&'static str>
Gets invalid fields for EIP-1559 transaction type
pub fn trim_conflicting_keys(&mut self)
pub fn trim_conflicting_keys(&mut self)
Trim field conflicts, based on the preferred type
This is used to ensure that the request will not be rejected by the server due to conflicting keys, and should only be called before submission via rpc.
pub const fn preferred_type(&self) -> TxType
pub const fn preferred_type(&self) -> TxType
Check this builder’s preferred type, based on the fields that are set.
Types are preferred as follows:
- EIP-7702 if authorization_list is set
- EIP-4844 if sidecar or max_blob_fee_per_gas is set
- EIP-2930 if access_list is set
- Legacy if gas_price is set and access_list is unset
- EIP-1559 in all other cases
pub fn missing_keys(&self) -> Result<TxType, (TxType, Vec<&'static str>)>
pub fn missing_keys(&self) -> Result<TxType, (TxType, Vec<&'static str>)>
Check if all necessary keys are present to build a transaction.
§Returns
- Ok(type) if all necessary keys are present to build the preferred type.
- Err((type, missing)) if some keys are missing to build the preferred type.
pub fn complete_4844(&self) -> Result<(), Vec<&'static str>>
pub fn complete_4844(&self) -> Result<(), Vec<&'static str>>
Check if all necessary keys are present to build a 4844 transaction, returning a list of keys that are missing.
NOTE: sidecar
must be present, even if blob_versioned_hashes
is set.
pub fn complete_1559(&self) -> Result<(), Vec<&'static str>>
pub fn complete_1559(&self) -> Result<(), Vec<&'static str>>
Check if all necessary keys are present to build a 1559 transaction, returning a list of keys that are missing.
pub fn complete_2930(&self) -> Result<(), Vec<&'static str>>
pub fn complete_2930(&self) -> Result<(), Vec<&'static str>>
Check if all necessary keys are present to build a 2930 transaction, returning a list of keys that are missing.
pub fn complete_7702(&self) -> Result<(), Vec<&'static str>>
pub fn complete_7702(&self) -> Result<(), Vec<&'static str>>
Check if all necessary keys are present to build a 7702 transaction, returning a list of keys that are missing.
pub fn complete_legacy(&self) -> Result<(), Vec<&'static str>>
pub fn complete_legacy(&self) -> Result<(), Vec<&'static str>>
Check if all necessary keys are present to build a legacy transaction, returning a list of keys that are missing.
pub fn buildable_type(&self) -> Option<TxType>
pub fn buildable_type(&self) -> Option<TxType>
Return the tx type this request can be built as. Computed by checking the preferred type, and then checking for completeness.
pub fn build_typed_tx(self) -> Result<TypedTransaction, TransactionRequest>
pub fn build_typed_tx(self) -> Result<TypedTransaction, TransactionRequest>
Build an [TypedTransaction
]
In case Ok(...)
is returned, the TypedTransaction
is guaranteed to be complete, e.g.
sendable to the network.
pub fn build_consensus_tx(self) -> Result<TypedTransaction, BuildTransactionErr>
pub fn build_consensus_tx(self) -> Result<TypedTransaction, BuildTransactionErr>
Build an [TypedTransaction
].
In case Ok(...)
is returned, the TypedTransaction
does not guarantee to be complete,
e.g. sendable to the network.
E.g. a particular case is when the transaction is of type Eip4844
and the sidecar
is not
set, in this case the transaction is not complete. It can still be used to calculate the
signature of the transaction though.
In case the requirement is to build a complete transaction, use build_typed_tx
instead.
Trait Implementations§
§impl<'arbitrary> Arbitrary<'arbitrary> for TransactionRequest
impl<'arbitrary> Arbitrary<'arbitrary> for TransactionRequest
§fn arbitrary(
u: &mut Unstructured<'arbitrary>,
) -> Result<TransactionRequest, Error>
fn arbitrary( u: &mut Unstructured<'arbitrary>, ) -> Result<TransactionRequest, Error>
Self
from the given unstructured data. Read more§fn arbitrary_take_rest(
u: Unstructured<'arbitrary>,
) -> Result<TransactionRequest, Error>
fn arbitrary_take_rest( u: Unstructured<'arbitrary>, ) -> Result<TransactionRequest, Error>
Self
from the entirety of the given
unstructured data. Read more§fn size_hint(depth: usize) -> (usize, Option<usize>)
fn size_hint(depth: usize) -> (usize, Option<usize>)
Unstructured
this type
needs to construct itself. Read more§fn try_size_hint(
depth: usize,
) -> Result<(usize, Option<usize>), MaxRecursionReached>
fn try_size_hint( depth: usize, ) -> Result<(usize, Option<usize>), MaxRecursionReached>
Unstructured
this type
needs to construct itself. Read more§impl AsMut<TransactionRequest> for OpTransactionRequest
impl AsMut<TransactionRequest> for OpTransactionRequest
§fn as_mut(&mut self) -> &mut TransactionRequest
fn as_mut(&mut self) -> &mut TransactionRequest
§impl AsRef<TransactionRequest> for OpTransactionRequest
impl AsRef<TransactionRequest> for OpTransactionRequest
§fn as_ref(&self) -> &TransactionRequest
fn as_ref(&self) -> &TransactionRequest
§impl Clone for TransactionRequest
impl Clone for TransactionRequest
§fn clone(&self) -> TransactionRequest
fn clone(&self) -> TransactionRequest
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more§impl Debug for TransactionRequest
impl Debug for TransactionRequest
§impl Default for TransactionRequest
impl Default for TransactionRequest
§fn default() -> TransactionRequest
fn default() -> TransactionRequest
§impl<'de> Deserialize<'de> for TransactionRequest
impl<'de> Deserialize<'de> for TransactionRequest
§fn deserialize<__D>(
__deserializer: __D,
) -> Result<TransactionRequest, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<TransactionRequest, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
§impl From<Transaction> for TransactionRequest
impl From<Transaction> for TransactionRequest
§fn from(tx: Transaction) -> TransactionRequest
fn from(tx: Transaction) -> TransactionRequest
§impl From<TransactionRequest> for OpTransactionRequest
impl From<TransactionRequest> for OpTransactionRequest
§fn from(value: TransactionRequest) -> OpTransactionRequest
fn from(value: TransactionRequest) -> OpTransactionRequest
§impl From<TxEip1559> for TransactionRequest
impl From<TxEip1559> for TransactionRequest
§fn from(tx: TxEip1559) -> TransactionRequest
fn from(tx: TxEip1559) -> TransactionRequest
§impl From<TxEip2930> for TransactionRequest
impl From<TxEip2930> for TransactionRequest
§fn from(tx: TxEip2930) -> TransactionRequest
fn from(tx: TxEip2930) -> TransactionRequest
§impl From<TxEip4844> for TransactionRequest
impl From<TxEip4844> for TransactionRequest
§fn from(tx: TxEip4844) -> TransactionRequest
fn from(tx: TxEip4844) -> TransactionRequest
§impl From<TxEip4844Variant> for TransactionRequest
impl From<TxEip4844Variant> for TransactionRequest
§fn from(tx: TxEip4844Variant) -> TransactionRequest
fn from(tx: TxEip4844Variant) -> TransactionRequest
§impl From<TxEip4844WithSidecar> for TransactionRequest
impl From<TxEip4844WithSidecar> for TransactionRequest
§fn from(tx: TxEip4844WithSidecar) -> TransactionRequest
fn from(tx: TxEip4844WithSidecar) -> TransactionRequest
§impl From<TxEip7702> for TransactionRequest
impl From<TxEip7702> for TransactionRequest
§fn from(tx: TxEip7702) -> TransactionRequest
fn from(tx: TxEip7702) -> TransactionRequest
§impl From<TxEnvelope> for TransactionRequest
impl From<TxEnvelope> for TransactionRequest
§fn from(envelope: TxEnvelope) -> TransactionRequest
fn from(envelope: TxEnvelope) -> TransactionRequest
§impl From<TxLegacy> for TransactionRequest
impl From<TxLegacy> for TransactionRequest
§fn from(tx: TxLegacy) -> TransactionRequest
fn from(tx: TxLegacy) -> TransactionRequest
§impl From<TypedTransaction> for TransactionRequest
impl From<TypedTransaction> for TransactionRequest
§fn from(tx: TypedTransaction) -> TransactionRequest
fn from(tx: TypedTransaction) -> TransactionRequest
§impl Hash for TransactionRequest
impl Hash for TransactionRequest
§impl PartialEq for TransactionRequest
impl PartialEq for TransactionRequest
§impl Serialize for TransactionRequest
impl Serialize for TransactionRequest
§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,
§impl TransactionBuilder<Ethereum> for TransactionRequest
impl TransactionBuilder<Ethereum> for TransactionRequest
§fn set_chain_id(&mut self, chain_id: u64)
fn set_chain_id(&mut self, chain_id: u64)
§fn clear_kind(&mut self)
fn clear_kind(&mut self)
§fn set_gas_price(&mut self, gas_price: u128)
fn set_gas_price(&mut self, gas_price: u128)
§fn max_fee_per_gas(&self) -> Option<u128>
fn max_fee_per_gas(&self) -> Option<u128>
§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)
§fn max_priority_fee_per_gas(&self) -> Option<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 set_max_priority_fee_per_gas(&mut self, max_priority_fee_per_gas: u128)
§fn set_gas_limit(&mut self, gas_limit: u64)
fn set_gas_limit(&mut self, gas_limit: u64)
§fn access_list(&self) -> Option<&AccessList>
fn access_list(&self) -> Option<&AccessList>
§fn set_access_list(&mut self, access_list: AccessList)
fn set_access_list(&mut self, access_list: AccessList)
§fn complete_type(&self, ty: TxType) -> Result<(), Vec<&'static str>>
fn complete_type(&self, ty: TxType) -> Result<(), Vec<&'static str>>
§fn can_submit(&self) -> bool
fn can_submit(&self) -> bool
eth_sendTransaction
endpoint.§fn can_build(&self) -> bool
fn can_build(&self) -> bool
§fn output_tx_type(&self) -> TxType
fn output_tx_type(&self) -> TxType
§fn output_tx_type_checked(&self) -> Option<TxType>
fn output_tx_type_checked(&self) -> Option<TxType>
None
if
the builder is not ready to build.§fn prep_for_submission(&mut self)
fn prep_for_submission(&mut self)
§fn build_unsigned(
self,
) -> Result<TypedTransaction, UnbuiltTransactionError<Ethereum>>
fn build_unsigned( self, ) -> Result<TypedTransaction, UnbuiltTransactionError<Ethereum>>
§async fn build<W>(
self,
wallet: &W,
) -> Result<<Ethereum as Network>::TxEnvelope, TransactionBuilderError<Ethereum>>where
W: NetworkWallet<Ethereum>,
async fn build<W>(
self,
wallet: &W,
) -> Result<<Ethereum as Network>::TxEnvelope, TransactionBuilderError<Ethereum>>where
W: NetworkWallet<Ethereum>,
§fn with_chain_id(self, chain_id: u64) -> Self
fn with_chain_id(self, chain_id: u64) -> Self
§fn with_nonce(self, nonce: u64) -> Self
fn with_nonce(self, nonce: u64) -> Self
§fn with_input<T>(self, input: T) -> Self
fn with_input<T>(self, input: T) -> Self
§fn with_kind(self, kind: TxKind) -> Self
fn with_kind(self, kind: TxKind) -> Self
§fn set_create(&mut self)
fn set_create(&mut self)
to
field to a create call.§fn into_create(self) -> Self
fn into_create(self) -> Self
to
field to a create call.§fn set_deploy_code<T>(&mut self, code: T)
fn set_deploy_code<T>(&mut self, code: T)
to
field to TxKind::Create
.§fn with_deploy_code<T>(self, code: T) -> Self
fn with_deploy_code<T>(self, code: T) -> Self
to
field to TxKind::Create
.§fn set_call<T>(&mut self, t: &T)where
T: SolCall,
fn set_call<T>(&mut self, t: &T)where
T: SolCall,
to
field
if it is set to TxKind::Create
.§fn calculate_create_address(&self) -> Option<Address>
fn calculate_create_address(&self) -> Option<Address>
§fn with_value(self, value: Uint<256, 4>) -> Self
fn with_value(self, value: Uint<256, 4>) -> Self
§fn with_gas_price(self, gas_price: u128) -> 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_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_max_priority_fee_per_gas(self, max_priority_fee_per_gas: u128) -> Self
§fn with_gas_limit(self, gas_limit: u64) -> Self
fn with_gas_limit(self, gas_limit: u64) -> Self
§fn with_access_list(self, access_list: AccessList) -> Self
fn with_access_list(self, access_list: AccessList) -> Self
§fn complete_preferred(&self) -> Result<(), Vec<&'static str>>
fn complete_preferred(&self) -> Result<(), Vec<&'static str>>
§fn assert_preferred(&self, ty: <N as Network>::TxType)
fn assert_preferred(&self, ty: <N as Network>::TxType)
dbg_assert_eq!
to check the builder status, and will have no affect
in release builds.§fn assert_preferred_chained(self, ty: <N as Network>::TxType) -> Self
fn assert_preferred_chained(self, ty: <N as Network>::TxType) -> Self
dbg_assert_eq!
to check the builder status, and will have no affect
in release builds.§impl TransactionBuilder4844 for TransactionRequest
impl TransactionBuilder4844 for TransactionRequest
§fn max_fee_per_blob_gas(&self) -> Option<u128>
fn max_fee_per_blob_gas(&self) -> Option<u128>
§fn set_max_fee_per_blob_gas(&mut self, max_fee_per_blob_gas: u128)
fn set_max_fee_per_blob_gas(&mut self, max_fee_per_blob_gas: u128)
§fn blob_sidecar(&self) -> Option<&BlobTransactionSidecar>
fn blob_sidecar(&self) -> Option<&BlobTransactionSidecar>
§fn set_blob_sidecar(&mut self, sidecar: BlobTransactionSidecar)
fn set_blob_sidecar(&mut self, sidecar: BlobTransactionSidecar)
§fn with_max_fee_per_blob_gas(self, max_fee_per_blob_gas: u128) -> Self
fn with_max_fee_per_blob_gas(self, max_fee_per_blob_gas: u128) -> Self
§fn with_blob_sidecar(self, sidecar: BlobTransactionSidecar) -> Self
fn with_blob_sidecar(self, sidecar: BlobTransactionSidecar) -> Self
§impl TransactionBuilder7702 for TransactionRequest
impl TransactionBuilder7702 for TransactionRequest
impl Eq for TransactionRequest
impl StructuralPartialEq for TransactionRequest
Auto Trait Implementations§
impl !Freeze for TransactionRequest
impl RefUnwindSafe for TransactionRequest
impl Send for TransactionRequest
impl Sync for TransactionRequest
impl Unpin for TransactionRequest
impl UnwindSafe for TransactionRequest
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Conv for T
impl<T> Conv for T
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
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
key
and return true
if they are equal.§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,
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,
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,
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,
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,
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,
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,
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,
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,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> 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> ⓘ
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> ⓘ
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> ⓘ
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§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
§fn fg(&self, value: Color) -> Painted<&T>
fn fg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the foreground set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like red()
and
green()
, which have the same functionality but are
pithier.
§Example
Set foreground color to white using fg()
:
use yansi::{Paint, Color};
painted.fg(Color::White);
Set foreground color to white using white()
.
use yansi::Paint;
painted.white();
§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
§fn bg(&self, value: Color) -> Painted<&T>
fn bg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the background set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like on_red()
and
on_green()
, which have the same functionality but
are pithier.
§Example
Set background color to red using fg()
:
use yansi::{Paint, Color};
painted.bg(Color::Red);
Set background color to red using on_red()
.
use yansi::Paint;
painted.on_red();
§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
§fn attr(&self, value: Attribute) -> Painted<&T>
fn attr(&self, value: Attribute) -> Painted<&T>
Enables the styling [Attribute
] value
.
This method should be used rarely. Instead, prefer to use
attribute-specific builder methods like bold()
and
underline()
, which have the same functionality
but are pithier.
§Example
Make text bold using attr()
:
use yansi::{Paint, Attribute};
painted.attr(Attribute::Bold);
Make text bold using using bold()
.
use yansi::Paint;
painted.bold();
§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
§fn quirk(&self, value: Quirk) -> Painted<&T>
fn quirk(&self, value: Quirk) -> Painted<&T>
Enables the yansi
[Quirk
] value
.
This method should be used rarely. Instead, prefer to use quirk-specific
builder methods like mask()
and
wrap()
, which have the same functionality but are
pithier.
§Example
Enable wrapping using .quirk()
:
use yansi::{Paint, Quirk};
painted.quirk(Quirk::Wrap);
Enable wrapping using wrap()
.
use yansi::Paint;
painted.wrap();
§fn clear(&self) -> Painted<&T>
👎Deprecated since 1.0.1: renamed to resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.
fn clear(&self) -> Painted<&T>
resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.§fn whenever(&self, value: Condition) -> Painted<&T>
fn whenever(&self, value: Condition) -> Painted<&T>
Conditionally enable styling based on whether the [Condition
] value
applies. Replaces any previous condition.
See the crate level docs for more details.
§Example
Enable styling painted
only when both stdout
and stderr
are TTYs:
use yansi::{Paint, Condition};
painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);
§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,
§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,
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,
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) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
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) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self
, then passes self.as_mut()
into the pipe
function.§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self
, then passes self.deref()
into the pipe function.§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§impl<T> Tap for T
impl<T> Tap for T
§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B>
of a value. Read more§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B>
of a value. Read more§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R>
view of a value. Read more§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R>
view of a value. Read more§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target
of a value. Read more§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
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
.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
.tap_mut()
only in debug builds, and is erased in release
builds.§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow()
only in debug builds, and is erased in release
builds.§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut()
only in debug builds, and is erased in release
builds.§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref()
only in debug builds, and is erased in release
builds.§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut()
only in debug builds, and is erased in release
builds.§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref()
only in debug builds, and is erased in release
builds.§impl<T> TryConv for T
impl<T> TryConv for T
§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘwhere
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘwhere
S: Into<Dispatch>,
§fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ
fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ
Source§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
Source§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘwhere
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘwhere
S: Into<Dispatch>,
Source§fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ
fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ
impl<A> ArbInterop for A
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
impl<T> ErasedDestructor for Twhere
T: 'static,
impl<T> MaybeArbitrary for Twhere
T: for<'a> Arbitrary<'a>,
impl<T> MaybeDebug for Twhere
T: Debug,
impl<T> MaybeSend for Twhere
T: Send,
impl<T> MaybeSendSync for T
impl<T> MaybeSerde for Twhere
T: Serialize + for<'de> Deserialize<'de>,
impl<T> NippyJarHeader for T
impl<T> RpcObject for Twhere
T: RpcParam + RpcReturn,
impl<T> RpcParam for T
impl<T> RpcReturn for T
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 480 bytes