pub struct RawCallResult<FEN = EthEvmNetwork>where
FEN: FoundryEvmNetwork,{Show 28 fields
pub exit_reason: Option<InstructionResult>,
pub execution_cancelled: bool,
pub reverted: bool,
pub has_state_snapshot_failure: bool,
pub result: Bytes,
pub gas_used: u64,
pub gas_refunded: u64,
pub stipend: u64,
pub logs: Vec<Log>,
pub labels: HashMap<Address, String, FbBuildHasher<20>>,
pub traces: Option<SparsedTraceArena>,
pub debug_bytecodes: HashMap<Address, Bytes, FbBuildHasher<20>>,
pub line_coverage: Option<HitMaps>,
pub edge_coverage: Option<EdgeCoverage>,
pub evm_cmp_values: Option<Vec<CmpOperands>>,
pub observed_calls: Vec<ObservedCall>,
pub sancov_coverage: Option<Vec<u8>>,
pub sancov_cmp_values: Option<Vec<CmpSample>>,
pub transactions: Option<VecDeque<BroadcastableTransaction<<FEN as FoundryEvmNetwork>::Network>>>,
pub state_changeset: HashMap<Address, Account, FbBuildHasher<20>>,
pub evm_env: EvmEnv<<<FEN as FoundryEvmNetwork>::EvmFactory as EvmFactory>::Spec, <<FEN as FoundryEvmNetwork>::EvmFactory as EvmFactory>::BlockEnv>,
pub tx_env: <<FEN as FoundryEvmNetwork>::EvmFactory as EvmFactory>::Tx,
pub cheatcodes: Option<Box<Cheatcodes<FEN>>>,
pub out: Option<Output>,
pub fork_block_number: Option<u64>,
pub chisel_state: Option<(Vec<Uint<256, 4>>, Vec<u8>)>,
pub reverter: Option<Address>,
pub skip_payloads: Vec<Bytes>,
}Expand description
The result of a raw call.
Fields§
§exit_reason: Option<InstructionResult>The status of the call
execution_cancelled: boolWhether the call was halted by the execution cancellation inspector.
reverted: boolWhether the call reverted or not
has_state_snapshot_failure: boolWhether the call includes a snapshot failure
This is tracked separately from revert because a snapshot failure can occur without a revert, since assert failures are stored in a global variable (ds-test legacy)
result: BytesThe raw result of the call.
gas_used: u64The gas used for the call
gas_refunded: u64Refunded gas
stipend: u64The initial gas stipend for the transaction
logs: Vec<Log>The logs emitted during the call
labels: HashMap<Address, String, FbBuildHasher<20>>The labels assigned to addresses during the call
traces: Option<SparsedTraceArena>The traces of the call
debug_bytecodes: HashMap<Address, Bytes, FbBuildHasher<20>>Runtime bytecodes for contracts seen in the trace, used by debug source mapping.
line_coverage: Option<HitMaps>The line coverage info collected during the call
edge_coverage: Option<EdgeCoverage>The edge coverage info collected during the call
evm_cmp_values: Option<Vec<CmpOperands>>EVM comparison operands collected during the call.
observed_calls: Vec<ObservedCall>Observed sub-calls collected during the call.
sancov_coverage: Option<Vec<u8>>Sancov edge coverage from instrumented native Rust crates (e.g. precompiles). Tracked separately from EVM edge coverage to avoid ID-space collisions.
sancov_cmp_values: Option<Vec<CmpSample>>Comparison operands captured via sancov trace-cmp callbacks.
transactions: Option<VecDeque<BroadcastableTransaction<<FEN as FoundryEvmNetwork>::Network>>>Scripted transactions generated from this call
state_changeset: HashMap<Address, Account, FbBuildHasher<20>>The changeset of the state.
evm_env: EvmEnv<<<FEN as FoundryEvmNetwork>::EvmFactory as EvmFactory>::Spec, <<FEN as FoundryEvmNetwork>::EvmFactory as EvmFactory>::BlockEnv>The EvmEnv after the call
tx_env: <<FEN as FoundryEvmNetwork>::EvmFactory as EvmFactory>::TxThe TxEnv after the call
cheatcodes: Option<Box<Cheatcodes<FEN>>>The cheatcode states after execution
out: Option<Output>The raw output of the execution
fork_block_number: Option<u64>The active fork’s block number after execution, if any.
chisel_state: Option<(Vec<Uint<256, 4>>, Vec<u8>)>The chisel state
reverter: Option<Address>§skip_payloads: Vec<Bytes>Revert payloads minted by the skip cheatcode during this call.
Moved out of the cheatcode state on conversion since commit moves that state back into
the executor before results are classified.
Implementations§
Source§impl<FEN> RawCallResult<FEN>where
FEN: FoundryEvmNetwork,
impl<FEN> RawCallResult<FEN>where
FEN: FoundryEvmNetwork,
Sourcepub fn from_evm_result(
r: Result<RawCallResult<FEN>, EvmError<FEN>>,
) -> Result<(RawCallResult<FEN>, Option<String>), Report>
pub fn from_evm_result( r: Result<RawCallResult<FEN>, EvmError<FEN>>, ) -> Result<(RawCallResult<FEN>, Option<String>), Report>
Unpacks an EVM result.
Sourcepub fn skip_reason(&self) -> Option<SkipReason>
pub fn skip_reason(&self) -> Option<SkipReason>
Returns the skip reason if this call reverted with a genuine vm.skip payload.
The revert data must byte-equal a payload recorded by the skip cheatcode during this call;
a matching FOUNDRY::SKIP prefix alone (user-crafted revert data) does not count.
Sourcepub fn into_evm_error(self, rd: Option<&RevertDecoder>) -> EvmError<FEN>
pub fn into_evm_error(self, rd: Option<&RevertDecoder>) -> EvmError<FEN>
Converts the result of the call into an EvmError.
Sourcepub const fn into_execution_error(self, reason: String) -> ExecutionErr<FEN>
pub const fn into_execution_error(self, reason: String) -> ExecutionErr<FEN>
Converts the result of the call into an ExecutionErr.
Sourcepub fn into_result(
self,
rd: Option<&RevertDecoder>,
) -> Result<RawCallResult<FEN>, EvmError<FEN>>
pub fn into_result( self, rd: Option<&RevertDecoder>, ) -> Result<RawCallResult<FEN>, EvmError<FEN>>
Returns an EvmError if the call failed, otherwise returns self.
Sourcepub fn into_decoded_result(
self,
func: &Function,
rd: Option<&RevertDecoder>,
) -> Result<CallResult<DynSolValue, FEN>, EvmError<FEN>>
pub fn into_decoded_result( self, func: &Function, rd: Option<&RevertDecoder>, ) -> Result<CallResult<DynSolValue, FEN>, EvmError<FEN>>
Decodes the result of the call with the given function.
Sourcepub fn transactions(
&self,
) -> Option<&VecDeque<BroadcastableTransaction<<FEN as FoundryEvmNetwork>::Network>>>
pub fn transactions( &self, ) -> Option<&VecDeque<BroadcastableTransaction<<FEN as FoundryEvmNetwork>::Network>>>
Returns the transactions generated from this call.
Sourcepub fn merge_edge_coverage(
&mut self,
history_map: &mut Vec<u8>,
edge_indices: &mut EdgeIndexMap,
) -> (bool, bool)
pub fn merge_edge_coverage( &mut self, history_map: &mut Vec<u8>, edge_indices: &mut EdgeIndexMap, ) -> (bool, bool)
Update provided history map with edge coverage info collected during this call.
Sourcepub fn merge_sancov_coverage(
&mut self,
history_map: &mut Vec<u8>,
) -> (bool, bool)
pub fn merge_sancov_coverage( &mut self, history_map: &mut Vec<u8>, ) -> (bool, bool)
Update provided history map with sancov coverage info collected during this call. Uses AFL-style hitcount binning.
Sourcepub fn merge_all_coverage(
&mut self,
evm_history: &mut Vec<u8>,
evm_edge_indices: &mut EdgeIndexMap,
sancov_history: &mut Vec<u8>,
) -> (bool, bool)
pub fn merge_all_coverage( &mut self, evm_history: &mut Vec<u8>, evm_edge_indices: &mut EdgeIndexMap, sancov_history: &mut Vec<u8>, ) -> (bool, bool)
Merge both EVM and sancov coverage into their respective history maps.
Returns (new_coverage, is_edge) — true if either domain produced new coverage.
Trait Implementations§
Source§impl<FEN> Debug for RawCallResult<FEN>
impl<FEN> Debug for RawCallResult<FEN>
Source§impl<FEN> Default for RawCallResult<FEN>where
FEN: FoundryEvmNetwork,
impl<FEN> Default for RawCallResult<FEN>where
FEN: FoundryEvmNetwork,
Source§fn default() -> RawCallResult<FEN>
fn default() -> RawCallResult<FEN>
Source§impl<FEN> From<DeployResult<FEN>> for RawCallResult<FEN>where
FEN: FoundryEvmNetwork,
impl<FEN> From<DeployResult<FEN>> for RawCallResult<FEN>where
FEN: FoundryEvmNetwork,
Source§fn from(d: DeployResult<FEN>) -> RawCallResult<FEN>
fn from(d: DeployResult<FEN>) -> RawCallResult<FEN>
Source§impl<FEN> From<RawCallResult<FEN>> for TraceResultwhere
FEN: FoundryEvmNetwork,
impl<FEN> From<RawCallResult<FEN>> for TraceResultwhere
FEN: FoundryEvmNetwork,
Source§fn from(result: RawCallResult<FEN>) -> TraceResult
fn from(result: RawCallResult<FEN>) -> TraceResult
Auto Trait Implementations§
impl<FEN = EthEvmNetwork> !Freeze for RawCallResult<FEN>
impl<FEN = EthEvmNetwork> !RefUnwindSafe for RawCallResult<FEN>
impl<FEN = EthEvmNetwork> !UnwindSafe for RawCallResult<FEN>
impl<FEN> Send for RawCallResult<FEN>where
Option<VecDeque<BroadcastableTransaction<<FEN as FoundryEvmNetwork>::Network>>>: Send,
EvmEnv<<<FEN as FoundryEvmNetwork>::EvmFactory as EvmFactory>::Spec, <<FEN as FoundryEvmNetwork>::EvmFactory as EvmFactory>::BlockEnv>: Send,
<<FEN as FoundryEvmNetwork>::EvmFactory as EvmFactory>::Tx: Send,
Option<Box<Cheatcodes<FEN>>>: Send,
impl<FEN> Sync for RawCallResult<FEN>where
Option<VecDeque<BroadcastableTransaction<<FEN as FoundryEvmNetwork>::Network>>>: Sync,
EvmEnv<<<FEN as FoundryEvmNetwork>::EvmFactory as EvmFactory>::Spec, <<FEN as FoundryEvmNetwork>::EvmFactory as EvmFactory>::BlockEnv>: Sync,
<<FEN as FoundryEvmNetwork>::EvmFactory as EvmFactory>::Tx: Sync,
Option<Box<Cheatcodes<FEN>>>: Sync,
impl<FEN> Unpin for RawCallResult<FEN>where
Option<VecDeque<BroadcastableTransaction<<FEN as FoundryEvmNetwork>::Network>>>: Unpin,
EvmEnv<<<FEN as FoundryEvmNetwork>::EvmFactory as EvmFactory>::Spec, <<FEN as FoundryEvmNetwork>::EvmFactory as EvmFactory>::BlockEnv>: Unpin,
<<FEN as FoundryEvmNetwork>::EvmFactory as EvmFactory>::Tx: Unpin,
Option<Box<Cheatcodes<FEN>>>: Unpin,
impl<FEN> UnsafeUnpin for RawCallResult<FEN>where
Option<VecDeque<BroadcastableTransaction<<FEN as FoundryEvmNetwork>::Network>>>: UnsafeUnpin,
EvmEnv<<<FEN as FoundryEvmNetwork>::EvmFactory as EvmFactory>::Spec, <<FEN as FoundryEvmNetwork>::EvmFactory as EvmFactory>::BlockEnv>: UnsafeUnpin,
<<FEN as FoundryEvmNetwork>::EvmFactory as EvmFactory>::Tx: UnsafeUnpin,
Option<Box<Cheatcodes<FEN>>>: UnsafeUnpin,
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
§impl<T, R> CollectAndApply<T, R> for T
impl<T, R> CollectAndApply<T, R> for T
§impl<T> Conv for T
impl<T> Conv for T
impl<T> ErasedDestructor for Twhere
T: 'static,
§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> 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> MaybeCompact for T
§impl<D> OwoColorize for D
impl<D> OwoColorize for D
§fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
§fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
§fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
§fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
§fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
§fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
§fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
§fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
§fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
§fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
§fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
§fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
§fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
§fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
§fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
§fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
§fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
§fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
§fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
§fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
§fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
§fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
§fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
§fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
§fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
§fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::fg] or
a color-specific method, such as [OwoColorize::green], Read more§fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::bg] or
a color-specific method, such as [OwoColorize::on_yellow], Read more§fn fg_rgb<const R: u8, const G: u8, const B: u8>(
&self,
) -> FgColorDisplay<'_, CustomColor<R, G, B>, Self>
fn fg_rgb<const R: u8, const G: u8, const B: u8>( &self, ) -> FgColorDisplay<'_, CustomColor<R, G, B>, Self>
§fn bg_rgb<const R: u8, const G: u8, const B: u8>(
&self,
) -> BgColorDisplay<'_, CustomColor<R, G, B>, Self>
fn bg_rgb<const R: u8, const G: u8, const B: u8>( &self, ) -> BgColorDisplay<'_, CustomColor<R, G, B>, Self>
§fn truecolor(&self, r: u8, g: u8, b: u8) -> FgDynColorDisplay<'_, Rgb, Self>
fn truecolor(&self, r: u8, g: u8, b: u8) -> FgDynColorDisplay<'_, Rgb, Self>
§fn on_truecolor(&self, r: u8, g: u8, b: u8) -> BgDynColorDisplay<'_, Rgb, Self>
fn on_truecolor(&self, r: u8, g: u8, b: u8) -> BgDynColorDisplay<'_, Rgb, Self>
§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>
renamed to 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> Read<Exclusive, BecauseExclusive> 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> ⓘ
Layout§
Note: Unable to compute type layout, possibly due to this type having generic parameters. Layout can only be computed for concrete, fully-instantiated types.