Struct BlobTransactionSidecarEip7594
pub struct BlobTransactionSidecarEip7594 {
pub blobs: Vec<FixedBytes<alloy_eips::::eip4844::Blob::{constant#0}>>,
pub commitments: Vec<FixedBytes<48>>,
pub cell_proofs: Vec<FixedBytes<48>>,
}Expand description
This represents a set of blobs, and its corresponding commitments and cell proofs.
This type encodes and decodes the fields without an rlp header.
Fields§
§blobs: Vec<FixedBytes<alloy_eips::::eip4844::Blob::{constant#0}>>The blob data.
commitments: Vec<FixedBytes<48>>The blob commitments.
cell_proofs: Vec<FixedBytes<48>>List of cell proofs for all blobs in the sidecar, including the proofs for the extension
indices, for a total of CELLS_PER_EXT_BLOB proofs per blob (CELLS_PER_EXT_BLOB is the
number of cells for an extended blob, defined in
the consensus specs)
Implementations§
§impl BlobTransactionSidecarEip7594
impl BlobTransactionSidecarEip7594
pub const fn new(
blobs: Vec<FixedBytes<alloy_eips::::eip4844::Blob::{constant#0}>>,
commitments: Vec<FixedBytes<48>>,
cell_proofs: Vec<FixedBytes<48>>,
) -> BlobTransactionSidecarEip7594
pub const fn new( blobs: Vec<FixedBytes<alloy_eips::::eip4844::Blob::{constant#0}>>, commitments: Vec<FixedBytes<48>>, cell_proofs: Vec<FixedBytes<48>>, ) -> BlobTransactionSidecarEip7594
Constructs a new BlobTransactionSidecarEip7594 from a set of blobs, commitments, and cell proofs.
pub const fn size(&self) -> usize
pub const fn size(&self) -> usize
Calculates a size heuristic for the in-memory size of the BlobTransactionSidecarEip7594.
pub fn try_from_blobs_hex<I, B>(
blobs: I,
) -> Result<BlobTransactionSidecarEip7594, Error>
Available on crate feature kzg and (crate features arbitrary) only.
pub fn try_from_blobs_hex<I, B>( blobs: I, ) -> Result<BlobTransactionSidecarEip7594, Error>
kzg and (crate features arbitrary) only.Tries to create a new BlobTransactionSidecarEip7594 from the hex encoded blob str.
See also Blob::from_hex
pub fn try_from_blobs_bytes<I, B>(
blobs: I,
) -> Result<BlobTransactionSidecarEip7594, Error>
Available on crate feature kzg and (crate features arbitrary) only.
pub fn try_from_blobs_bytes<I, B>( blobs: I, ) -> Result<BlobTransactionSidecarEip7594, Error>
kzg and (crate features arbitrary) only.Tries to create a new BlobTransactionSidecarEip7594 from the given blob
bytes.
See also Blob::from_bytes
pub fn try_from_blobs_with_settings(
blobs: Vec<FixedBytes<alloy_eips::::eip4844::Blob::{constant#0}>>,
settings: &KZGSettings,
) -> Result<BlobTransactionSidecarEip7594, Error>
Available on crate feature kzg only.
pub fn try_from_blobs_with_settings( blobs: Vec<FixedBytes<alloy_eips::::eip4844::Blob::{constant#0}>>, settings: &KZGSettings, ) -> Result<BlobTransactionSidecarEip7594, Error>
kzg only.Tries to create a new BlobTransactionSidecarEip7594 from the given
blobs and KZG settings.
pub fn try_from_blobs(
blobs: Vec<FixedBytes<alloy_eips::::eip4844::Blob::{constant#0}>>,
) -> Result<BlobTransactionSidecarEip7594, Error>
Available on crate feature kzg only.
pub fn try_from_blobs( blobs: Vec<FixedBytes<alloy_eips::::eip4844::Blob::{constant#0}>>, ) -> Result<BlobTransactionSidecarEip7594, Error>
kzg only.Tries to create a new BlobTransactionSidecarEip7594 from the given
blobs.
This uses the global/default KZG settings, see also
EnvKzgSettings::Default.
pub fn validate(
&self,
blob_versioned_hashes: &[FixedBytes<32>],
proof_settings: &KZGSettings,
) -> Result<(), BlobTransactionValidationError>
Available on crate feature kzg only.
pub fn validate( &self, blob_versioned_hashes: &[FixedBytes<32>], proof_settings: &KZGSettings, ) -> Result<(), BlobTransactionValidationError>
kzg only.Verifies that the versioned hashes are valid for this sidecar’s blob data, commitments, and proofs.
Takes as input the KzgSettings, which should contain the parameters derived from the KZG trusted setup.
This ensures that the blob transaction payload has the expected number of blob data elements, commitments, and proofs. The cells are constructed from each blob and verified against the commitments and proofs.
Returns [BlobTransactionValidationError::InvalidProof] if any blob KZG proof in the response fails to verify, or if the versioned hashes in the transaction do not match the actual commitment versioned hashes.
pub fn versioned_hashes(&self) -> VersionedHashIter<'_> ⓘ
pub fn versioned_hashes(&self) -> VersionedHashIter<'_> ⓘ
Returns an iterator over the versioned hashes of the commitments.
pub fn versioned_hash_index(&self, hash: &FixedBytes<32>) -> Option<usize>
pub fn versioned_hash_index(&self, hash: &FixedBytes<32>) -> Option<usize>
Returns the index of the versioned hash in the commitments vector.
pub fn blob_by_versioned_hash(
&self,
hash: &FixedBytes<32>,
) -> Option<&FixedBytes<alloy_eips::::eip4844::Blob::{constant#0}>>
pub fn blob_by_versioned_hash( &self, hash: &FixedBytes<32>, ) -> Option<&FixedBytes<alloy_eips::::eip4844::Blob::{constant#0}>>
Returns the blob corresponding to the versioned hash, if it exists.
pub fn match_versioned_hashes<'a>(
&'a self,
versioned_hashes: &'a [FixedBytes<32>],
) -> impl Iterator<Item = (usize, BlobAndProofV2)> + 'a
pub fn match_versioned_hashes<'a>( &'a self, versioned_hashes: &'a [FixedBytes<32>], ) -> impl Iterator<Item = (usize, BlobAndProofV2)> + 'a
Matches versioned hashes and returns an iterator of (index, [BlobAndProofV2]) pairs
where index is the position in versioned_hashes that matched the versioned hash in the
sidecar.
This is used for the engine_getBlobsV2 RPC endpoint of the engine API
pub fn rlp_encoded_length(&self) -> usize
pub fn rlp_encoded_length(&self) -> usize
Calculates the length of the BlobTransactionSidecarEip7594 when encoded as RLP.
pub fn rlp_encode(&self, out: &mut dyn BufMut)
pub fn rlp_encode(&self, out: &mut dyn BufMut)
Encodes the BlobTransactionSidecarEip7594 as RLP bytes.
pub fn rlp_decode(
buf: &mut &[u8],
) -> Result<BlobTransactionSidecarEip7594, Error>
pub fn rlp_decode( buf: &mut &[u8], ) -> Result<BlobTransactionSidecarEip7594, Error>
Decodes the BlobTransactionSidecarEip7594 from RLP bytes.
Trait Implementations§
§impl<'arbitrary> Arbitrary<'arbitrary> for BlobTransactionSidecarEip7594
impl<'arbitrary> Arbitrary<'arbitrary> for BlobTransactionSidecarEip7594
§fn arbitrary(
u: &mut Unstructured<'arbitrary>,
) -> Result<BlobTransactionSidecarEip7594, Error>
fn arbitrary( u: &mut Unstructured<'arbitrary>, ) -> Result<BlobTransactionSidecarEip7594, Error>
Self from the given unstructured data. Read more§fn arbitrary_take_rest(
u: Unstructured<'arbitrary>,
) -> Result<BlobTransactionSidecarEip7594, Error>
fn arbitrary_take_rest( u: Unstructured<'arbitrary>, ) -> Result<BlobTransactionSidecarEip7594, 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 BuildableSidecar for BlobTransactionSidecarEip7594
Available on crate feature kzg only.
impl BuildableSidecar for BlobTransactionSidecarEip7594
kzg only.§fn build_with_settings(
blobs: Vec<FixedBytes<alloy_eips::::eip4844::Blob::{constant#0}>>,
settings: &KZGSettings,
) -> Result<BlobTransactionSidecarEip7594, Error>
fn build_with_settings( blobs: Vec<FixedBytes<alloy_eips::::eip4844::Blob::{constant#0}>>, settings: &KZGSettings, ) -> Result<BlobTransactionSidecarEip7594, Error>
§impl Clone for BlobTransactionSidecarEip7594
impl Clone for BlobTransactionSidecarEip7594
§fn clone(&self) -> BlobTransactionSidecarEip7594
fn clone(&self) -> BlobTransactionSidecarEip7594
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more§impl Debug for BlobTransactionSidecarEip7594
impl Debug for BlobTransactionSidecarEip7594
§impl Decodable for BlobTransactionSidecarEip7594
impl Decodable for BlobTransactionSidecarEip7594
§fn decode(buf: &mut &[u8]) -> Result<BlobTransactionSidecarEip7594, Error>
fn decode(buf: &mut &[u8]) -> Result<BlobTransactionSidecarEip7594, Error>
Decodes the inner BlobTransactionSidecarEip7594 fields from RLP bytes, without a RLP header.
§impl Decodable7594 for BlobTransactionSidecarEip7594
impl Decodable7594 for BlobTransactionSidecarEip7594
§fn decode_7594(buf: &mut &[u8]) -> Result<BlobTransactionSidecarEip7594, Error>
fn decode_7594(buf: &mut &[u8]) -> Result<BlobTransactionSidecarEip7594, Error>
§impl Default for BlobTransactionSidecarEip7594
impl Default for BlobTransactionSidecarEip7594
§fn default() -> BlobTransactionSidecarEip7594
fn default() -> BlobTransactionSidecarEip7594
§impl<'de> Deserialize<'de> for BlobTransactionSidecarEip7594
impl<'de> Deserialize<'de> for BlobTransactionSidecarEip7594
§fn deserialize<__D>(
__deserializer: __D,
) -> Result<BlobTransactionSidecarEip7594, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<BlobTransactionSidecarEip7594, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
§impl Encodable for BlobTransactionSidecarEip7594
impl Encodable for BlobTransactionSidecarEip7594
§impl Encodable7594 for BlobTransactionSidecarEip7594
impl Encodable7594 for BlobTransactionSidecarEip7594
§fn encode_7594_len(&self) -> usize
fn encode_7594_len(&self) -> usize
§fn encode_7594(&self, out: &mut dyn BufMut)
fn encode_7594(&self, out: &mut dyn BufMut)
§impl From<BlobTransactionSidecarEip7594> for BlobTransactionSidecarVariant
impl From<BlobTransactionSidecarEip7594> for BlobTransactionSidecarVariant
§fn from(value: BlobTransactionSidecarEip7594) -> BlobTransactionSidecarVariant
fn from(value: BlobTransactionSidecarEip7594) -> BlobTransactionSidecarVariant
§impl FromIterator<BlobTransactionSidecarEip7594> for BlobsBundleV2
impl FromIterator<BlobTransactionSidecarEip7594> for BlobsBundleV2
§fn from_iter<T>(iter: T) -> BlobsBundleV2where
T: IntoIterator<Item = BlobTransactionSidecarEip7594>,
fn from_iter<T>(iter: T) -> BlobsBundleV2where
T: IntoIterator<Item = BlobTransactionSidecarEip7594>,
§impl Hash for BlobTransactionSidecarEip7594
impl Hash for BlobTransactionSidecarEip7594
§impl PartialEq for BlobTransactionSidecarEip7594
impl PartialEq for BlobTransactionSidecarEip7594
§impl Serialize for BlobTransactionSidecarEip7594
impl Serialize for BlobTransactionSidecarEip7594
§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 TryFrom<BlobTransactionSidecarVariant> for BlobTransactionSidecarEip7594
Available on crate feature kzg only.
impl TryFrom<BlobTransactionSidecarVariant> for BlobTransactionSidecarEip7594
kzg only.§fn try_from(
value: BlobTransactionSidecarVariant,
) -> Result<BlobTransactionSidecarEip7594, <BlobTransactionSidecarEip7594 as TryFrom<BlobTransactionSidecarVariant>>::Error>
fn try_from( value: BlobTransactionSidecarVariant, ) -> Result<BlobTransactionSidecarEip7594, <BlobTransactionSidecarEip7594 as TryFrom<BlobTransactionSidecarVariant>>::Error>
§impl TryFrom<BlobsBundleV2> for BlobTransactionSidecarEip7594
Available on crate feature kzg only.
impl TryFrom<BlobsBundleV2> for BlobTransactionSidecarEip7594
kzg only.§type Error = ValueError<BlobsBundleV2>
type Error = ValueError<BlobsBundleV2>
§fn try_from(
value: BlobsBundleV2,
) -> Result<BlobTransactionSidecarEip7594, <BlobTransactionSidecarEip7594 as TryFrom<BlobsBundleV2>>::Error>
fn try_from( value: BlobsBundleV2, ) -> Result<BlobTransactionSidecarEip7594, <BlobTransactionSidecarEip7594 as TryFrom<BlobsBundleV2>>::Error>
§impl TxEip4844Sidecar for BlobTransactionSidecarEip7594
impl TxEip4844Sidecar for BlobTransactionSidecarEip7594
§fn validate(
&self,
blob_versioned_hashes: &[FixedBytes<32>],
proof_settings: &KZGSettings,
) -> Result<(), BlobTransactionValidationError>
fn validate( &self, blob_versioned_hashes: &[FixedBytes<32>], proof_settings: &KZGSettings, ) -> Result<(), BlobTransactionValidationError>
kzg only.impl Eq for BlobTransactionSidecarEip7594
impl StructuralPartialEq for BlobTransactionSidecarEip7594
Auto Trait Implementations§
impl Freeze for BlobTransactionSidecarEip7594
impl RefUnwindSafe for BlobTransactionSidecarEip7594
impl Send for BlobTransactionSidecarEip7594
impl Sync for BlobTransactionSidecarEip7594
impl Unpin for BlobTransactionSidecarEip7594
impl UnwindSafe for BlobTransactionSidecarEip7594
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
§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<TxEnv, T> FromRecoveredTx<&T> for TxEnvwhere
TxEnv: FromRecoveredTx<T>,
impl<TxEnv, T> FromRecoveredTx<&T> for TxEnvwhere
TxEnv: FromRecoveredTx<T>,
§fn from_recovered_tx(tx: &&T, sender: Address) -> TxEnv
fn from_recovered_tx(tx: &&T, sender: Address) -> TxEnv
TxEnv from a transaction and a sender address.§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
§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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Layered].§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> ServiceExt for T
impl<T> ServiceExt for T
§fn propagate_header(self, header: HeaderName) -> PropagateHeader<Self>where
Self: Sized,
fn propagate_header(self, header: HeaderName) -> PropagateHeader<Self>where
Self: Sized,
propagate-header only.§fn add_extension<T>(self, value: T) -> AddExtension<Self, T>where
Self: Sized,
fn add_extension<T>(self, value: T) -> AddExtension<Self, T>where
Self: Sized,
add-extension only.§fn map_request_body<F>(self, f: F) -> MapRequestBody<Self, F>where
Self: Sized,
fn map_request_body<F>(self, f: F) -> MapRequestBody<Self, F>where
Self: Sized,
map-request-body only.§fn map_response_body<F>(self, f: F) -> MapResponseBody<Self, F>where
Self: Sized,
fn map_response_body<F>(self, f: F) -> MapResponseBody<Self, F>where
Self: Sized,
map-response-body only.§fn compression(self) -> Compression<Self>where
Self: Sized,
fn compression(self) -> Compression<Self>where
Self: Sized,
compression-br or compression-deflate or compression-gzip or compression-zstd only.§fn decompression(self) -> Decompression<Self>where
Self: Sized,
fn decompression(self) -> Decompression<Self>where
Self: Sized,
decompression-br or decompression-deflate or decompression-gzip or decompression-zstd only.§fn trace_for_http(self) -> Trace<Self, SharedClassifier<ServerErrorsAsFailures>>where
Self: Sized,
fn trace_for_http(self) -> Trace<Self, SharedClassifier<ServerErrorsAsFailures>>where
Self: Sized,
trace only.§fn trace_for_grpc(self) -> Trace<Self, SharedClassifier<GrpcErrorsAsFailures>>where
Self: Sized,
fn trace_for_grpc(self) -> Trace<Self, SharedClassifier<GrpcErrorsAsFailures>>where
Self: Sized,
trace only.§fn follow_redirects(self) -> FollowRedirect<Self>where
Self: Sized,
fn follow_redirects(self) -> FollowRedirect<Self>where
Self: Sized,
follow-redirect only.§fn sensitive_headers(
self,
headers: impl IntoIterator<Item = HeaderName>,
) -> SetSensitiveRequestHeaders<SetSensitiveResponseHeaders<Self>>where
Self: Sized,
fn sensitive_headers(
self,
headers: impl IntoIterator<Item = HeaderName>,
) -> SetSensitiveRequestHeaders<SetSensitiveResponseHeaders<Self>>where
Self: Sized,
sensitive-headers only.§fn sensitive_request_headers(
self,
headers: impl IntoIterator<Item = HeaderName>,
) -> SetSensitiveRequestHeaders<Self>where
Self: Sized,
fn sensitive_request_headers(
self,
headers: impl IntoIterator<Item = HeaderName>,
) -> SetSensitiveRequestHeaders<Self>where
Self: Sized,
sensitive-headers only.§fn sensitive_response_headers(
self,
headers: impl IntoIterator<Item = HeaderName>,
) -> SetSensitiveResponseHeaders<Self>where
Self: Sized,
fn sensitive_response_headers(
self,
headers: impl IntoIterator<Item = HeaderName>,
) -> SetSensitiveResponseHeaders<Self>where
Self: Sized,
sensitive-headers only.§fn override_request_header<M>(
self,
header_name: HeaderName,
make: M,
) -> SetRequestHeader<Self, M>where
Self: Sized,
fn override_request_header<M>(
self,
header_name: HeaderName,
make: M,
) -> SetRequestHeader<Self, M>where
Self: Sized,
set-header only.§fn append_request_header<M>(
self,
header_name: HeaderName,
make: M,
) -> SetRequestHeader<Self, M>where
Self: Sized,
fn append_request_header<M>(
self,
header_name: HeaderName,
make: M,
) -> SetRequestHeader<Self, M>where
Self: Sized,
set-header only.§fn insert_request_header_if_not_present<M>(
self,
header_name: HeaderName,
make: M,
) -> SetRequestHeader<Self, M>where
Self: Sized,
fn insert_request_header_if_not_present<M>(
self,
header_name: HeaderName,
make: M,
) -> SetRequestHeader<Self, M>where
Self: Sized,
set-header only.§fn override_response_header<M>(
self,
header_name: HeaderName,
make: M,
) -> SetResponseHeader<Self, M>where
Self: Sized,
fn override_response_header<M>(
self,
header_name: HeaderName,
make: M,
) -> SetResponseHeader<Self, M>where
Self: Sized,
set-header only.§fn append_response_header<M>(
self,
header_name: HeaderName,
make: M,
) -> SetResponseHeader<Self, M>where
Self: Sized,
fn append_response_header<M>(
self,
header_name: HeaderName,
make: M,
) -> SetResponseHeader<Self, M>where
Self: Sized,
set-header only.§fn insert_response_header_if_not_present<M>(
self,
header_name: HeaderName,
make: M,
) -> SetResponseHeader<Self, M>where
Self: Sized,
fn insert_response_header_if_not_present<M>(
self,
header_name: HeaderName,
make: M,
) -> SetResponseHeader<Self, M>where
Self: Sized,
set-header only.§fn set_request_id<M>(
self,
header_name: HeaderName,
make_request_id: M,
) -> SetRequestId<Self, M>where
Self: Sized,
M: MakeRequestId,
fn set_request_id<M>(
self,
header_name: HeaderName,
make_request_id: M,
) -> SetRequestId<Self, M>where
Self: Sized,
M: MakeRequestId,
request-id only.§fn set_x_request_id<M>(self, make_request_id: M) -> SetRequestId<Self, M>where
Self: Sized,
M: MakeRequestId,
fn set_x_request_id<M>(self, make_request_id: M) -> SetRequestId<Self, M>where
Self: Sized,
M: MakeRequestId,
request-id only.x-request-id as the header name. Read more§fn propagate_request_id(
self,
header_name: HeaderName,
) -> PropagateRequestId<Self>where
Self: Sized,
fn propagate_request_id(
self,
header_name: HeaderName,
) -> PropagateRequestId<Self>where
Self: Sized,
request-id only.§fn propagate_x_request_id(self) -> PropagateRequestId<Self>where
Self: Sized,
fn propagate_x_request_id(self) -> PropagateRequestId<Self>where
Self: Sized,
request-id only.x-request-id as the header name. Read more§fn catch_panic(self) -> CatchPanic<Self, DefaultResponseForPanic>where
Self: Sized,
fn catch_panic(self) -> CatchPanic<Self, DefaultResponseForPanic>where
Self: Sized,
catch-panic only.500 Internal Server responses. Read more§fn request_body_limit(self, limit: usize) -> RequestBodyLimit<Self>where
Self: Sized,
fn request_body_limit(self, limit: usize) -> RequestBodyLimit<Self>where
Self: Sized,
limit only.413 Payload Too Large responses. Read more§fn trim_trailing_slash(self) -> NormalizePath<Self>where
Self: Sized,
fn trim_trailing_slash(self) -> NormalizePath<Self>where
Self: Sized,
normalize-path only.§fn append_trailing_slash(self) -> NormalizePath<Self>where
Self: Sized,
fn append_trailing_slash(self) -> NormalizePath<Self>where
Self: Sized,
normalize-path only.§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<'de, T> BorrowedRpcObject<'de> for Twhere
T: RpcBorrow<'de> + RpcSend,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
impl<T> ErasedDestructor for Twhere
T: 'static,
impl<T> MaybeDebug for Twhere
T: Debug,
impl<T> MaybeSend for Twhere
T: Send,
impl<T> MaybeSerde for Twhere
T: Serialize + for<'de> Deserialize<'de>,
impl<T> NippyJarHeader for T
impl<'de, T> RpcBorrow<'de> for T
impl<T> RpcObject for Twhere
T: RpcSend + RpcRecv,
impl<T> RpcRecv for T
impl<T> RpcSend 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: 72 bytes