pub struct TokenPolicyManager { /* private fields */ }Expand description
An AccountComponent that owns the policy-manager storage slots and the manager
procedures for the four policy kinds (mint, burn, send, receive).
The component exposes set_*_policy and get_*_policy for each kind, execute_*_policy for
mint / burn, and invoke_send_policy / invoke_receive_policy for the transfer kinds. The
transfer wrappers double as the protocol-level on_before_asset_added_to_* asset callbacks:
the kernel dyncalls the wrapper, which applies the account-wide pause check and then
dispatches to the active send / receive policy.
Authorization for switching the active policies is delegated to the account-wide
Authority component, which must be installed alongside
this manager.
Construct via Self::builder. The builder requires the active mint and burn policy
(TokenPolicyManagerBuilder::active_mint_policy /
TokenPolicyManagerBuilder::active_burn_policy). Send / receive policies are optional and may
be registered as active (TokenPolicyManagerBuilder::active_send_policy /
TokenPolicyManagerBuilder::active_receive_policy) and/or as reserved alternatives
(TokenPolicyManagerBuilder::allowed_send_policy /
TokenPolicyManagerBuilder::allowed_receive_policy) for runtime switching. The
protocol-reserved asset-callback slots (see the storage layout below) are installed whenever at
least one send or receive policy of either kind is registered - active or reserved - so the
faucet’s account ID must be created with
AssetCallbackFlag::Enabled
(see Self::has_transfer_policy), even when only reserved policies exist and no active root
is set yet. Because this flag is an immutable property of the account ID, it applies for the
faucet’s entire lifetime, so promoting a reserved policy later via
set_send_policy / set_receive_policy enforces it against the whole circulating supply rather
than only assets minted after the switch. The slots are omitted only when no send or receive
policy of any kind is registered, in which case the faucet’s account ID is created with
AssetCallbackFlag::Disabled.
§Storage layout
Self::active_mint_policy_slot: procedure root of the active mint policy.Self::active_burn_policy_slot: procedure root of the active burn policy.Self::active_send_policy_slot: procedure root of the active send policy.Self::active_receive_policy_slot: procedure root of the active receive policy.Self::allowed_mint_policies_slot: map of allowed mint policy roots.Self::allowed_burn_policies_slot: map of allowed burn policy roots.Self::allowed_send_policies_slot: map of allowed send policy roots.Self::allowed_receive_policies_slot: map of allowed receive policy roots.- Asset-callback storage slots (registered via
AssetCallbacks) hold the fixedinvoke_send_policy/invoke_receive_policywrapper roots, so the kernel dispatches to the wrapper (which then dispatches to the active policy in the slot above). They are installed only when at least one transfer policy is configured, so a faucet with this manager must be created with its account ID’sAssetCallbackFlag::Enabled, and future policy switches viaset_send_policy/set_receive_policyapply to the entire circulating supply rather than only to assets minted after the switch.
Implementations§
Source§impl TokenPolicyManager
impl TokenPolicyManager
Sourcepub fn builder() -> TokenPolicyManagerBuilder
pub fn builder() -> TokenPolicyManagerBuilder
Builder constructor for TokenPolicyManager.
Each active_*_policy setter is required and registers the policy as the active one
for its kind. Each allowed_*_policy setter registers an additional reserved alternative
for runtime switching via the matching set_*_policy procedure.
Source§impl TokenPolicyManager
impl TokenPolicyManager
Sourcepub const NAME: &'static str = "miden::standards::faucets::policies::policy_manager"
pub const NAME: &'static str = "miden::standards::faucets::policies::policy_manager"
The name of the component (used in metadata).
Sourcepub const DESCRIPTION: &'static str = "Token policy manager for fungible faucets"
pub const DESCRIPTION: &'static str = "Token policy manager for fungible faucets"
Component description used in AccountComponentMetadata.
Sourcepub const fn name() -> AccountComponentName
pub const fn name() -> AccountComponentName
Returns the canonical AccountComponentName of this component.
Sourcepub fn active_mint_policy(&self) -> AccountProcedureRoot
pub fn active_mint_policy(&self) -> AccountProcedureRoot
Returns the active mint policy procedure root.
Sourcepub fn active_burn_policy(&self) -> AccountProcedureRoot
pub fn active_burn_policy(&self) -> AccountProcedureRoot
Returns the active burn policy procedure root.
Sourcepub fn active_send_policy(&self) -> Option<AccountProcedureRoot>
pub fn active_send_policy(&self) -> Option<AccountProcedureRoot>
Returns the active send policy procedure root, or None if no send policy was set.
Sourcepub fn active_receive_policy(&self) -> Option<AccountProcedureRoot>
pub fn active_receive_policy(&self) -> Option<AccountProcedureRoot>
Returns the active receive policy procedure root, or None if no receive policy was
set.
Sourcepub fn allowed_mint_policies(&self) -> Vec<AccountProcedureRoot>
pub fn allowed_mint_policies(&self) -> Vec<AccountProcedureRoot>
Returns all allowed mint policy procedure roots (active + reserved).
Sourcepub fn allowed_burn_policies(&self) -> Vec<AccountProcedureRoot>
pub fn allowed_burn_policies(&self) -> Vec<AccountProcedureRoot>
Returns all allowed burn policy procedure roots (active + reserved).
Sourcepub fn allowed_send_policies(&self) -> Vec<AccountProcedureRoot>
pub fn allowed_send_policies(&self) -> Vec<AccountProcedureRoot>
Returns all allowed send policy procedure roots (active + reserved).
Sourcepub fn allowed_receive_policies(&self) -> Vec<AccountProcedureRoot>
pub fn allowed_receive_policies(&self) -> Vec<AccountProcedureRoot>
Returns all allowed receive policy procedure roots (active + reserved).
Sourcepub fn set_mint_policy_root() -> AccountProcedureRoot
pub fn set_mint_policy_root() -> AccountProcedureRoot
Returns the procedure root of the set_mint_policy account procedure.
Sourcepub fn set_burn_policy_root() -> AccountProcedureRoot
pub fn set_burn_policy_root() -> AccountProcedureRoot
Returns the procedure root of the set_burn_policy account procedure.
Sourcepub fn set_send_policy_root() -> AccountProcedureRoot
pub fn set_send_policy_root() -> AccountProcedureRoot
Returns the procedure root of the set_send_policy account procedure.
Sourcepub fn set_receive_policy_root() -> AccountProcedureRoot
pub fn set_receive_policy_root() -> AccountProcedureRoot
Returns the procedure root of the set_receive_policy account procedure.
Sourcepub fn active_mint_policy_slot() -> &'static StorageSlotName
pub fn active_mint_policy_slot() -> &'static StorageSlotName
Returns the StorageSlotName where the active mint policy procedure root is stored.
Sourcepub fn active_burn_policy_slot() -> &'static StorageSlotName
pub fn active_burn_policy_slot() -> &'static StorageSlotName
Returns the StorageSlotName where the active burn policy procedure root is stored.
Sourcepub fn active_send_policy_slot() -> &'static StorageSlotName
pub fn active_send_policy_slot() -> &'static StorageSlotName
Returns the StorageSlotName where the active send policy procedure root is stored.
Sourcepub fn active_receive_policy_slot() -> &'static StorageSlotName
pub fn active_receive_policy_slot() -> &'static StorageSlotName
Returns the StorageSlotName where the active receive policy procedure root is stored.
Sourcepub fn invoke_send_policy_root() -> AccountProcedureRoot
pub fn invoke_send_policy_root() -> AccountProcedureRoot
Returns the procedure root of the invoke_send_policy wrapper stored in the
on_before_asset_added_to_note callback slot.
Sourcepub fn invoke_receive_policy_root() -> AccountProcedureRoot
pub fn invoke_receive_policy_root() -> AccountProcedureRoot
Returns the procedure root of the invoke_receive_policy wrapper stored in the
on_before_asset_added_to_account callback slot.
Sourcepub fn allowed_mint_policies_slot() -> &'static StorageSlotName
pub fn allowed_mint_policies_slot() -> &'static StorageSlotName
Returns the StorageSlotName where allowed mint policy roots are stored.
Sourcepub fn allowed_burn_policies_slot() -> &'static StorageSlotName
pub fn allowed_burn_policies_slot() -> &'static StorageSlotName
Returns the StorageSlotName where allowed burn policy roots are stored.
Sourcepub fn allowed_send_policies_slot() -> &'static StorageSlotName
pub fn allowed_send_policies_slot() -> &'static StorageSlotName
Returns the StorageSlotName where allowed send policy roots are stored.
Sourcepub fn allowed_receive_policies_slot() -> &'static StorageSlotName
pub fn allowed_receive_policies_slot() -> &'static StorageSlotName
Returns the StorageSlotName where allowed receive policy roots are stored.
Sourcepub fn code() -> &'static AccountComponentCode
pub fn code() -> &'static AccountComponentCode
Returns the AccountComponentCode of this component.
Sourcepub fn component_metadata() -> AccountComponentMetadata
pub fn component_metadata() -> AccountComponentMetadata
Returns the AccountComponentMetadata for this component.
Sourcepub fn has_transfer_policy(&self) -> bool
pub fn has_transfer_policy(&self) -> bool
Returns true if at least one send or receive policy is configured, in which case the
faucet registers the protocol callback slots and its account ID must be created with
AssetCallbackFlag::Enabled.
Trait Implementations§
Source§impl Clone for TokenPolicyManager
impl Clone for TokenPolicyManager
Source§fn clone(&self) -> TokenPolicyManager
fn clone(&self) -> TokenPolicyManager
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for TokenPolicyManager
impl Debug for TokenPolicyManager
Source§impl IntoIterator for TokenPolicyManager
impl IntoIterator for TokenPolicyManager
Source§fn into_iter(self) -> <TokenPolicyManager as IntoIterator>::IntoIter
fn into_iter(self) -> <TokenPolicyManager as IntoIterator>::IntoIter
Yields the AccountComponents implementing this token policy configuration: the
manager itself first, then the companion components contributed by every registered
policy. Deduplication by procedure root is implicit (the manager’s internal policies
map is keyed by root), so a policy installed under both send and receive only
contributes its companion components once.
Source§type Item = AccountComponent
type Item = AccountComponent
Source§type IntoIter = IntoIter<AccountComponent>
type IntoIter = IntoIter<AccountComponent>
Auto Trait Implementations§
impl Freeze for TokenPolicyManager
impl RefUnwindSafe for TokenPolicyManager
impl Send for TokenPolicyManager
impl Sync for TokenPolicyManager
impl Unpin for TokenPolicyManager
impl UnsafeUnpin for TokenPolicyManager
impl UnwindSafe for TokenPolicyManager
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::RequestSource§impl<D> OwoColorize for D
impl<D> OwoColorize for D
Source§fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
Source§fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
Source§fn black(&self) -> FgColorDisplay<'_, Black, Self>
fn black(&self) -> FgColorDisplay<'_, Black, Self>
Source§fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
Source§fn red(&self) -> FgColorDisplay<'_, Red, Self>
fn red(&self) -> FgColorDisplay<'_, Red, Self>
Source§fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
Source§fn green(&self) -> FgColorDisplay<'_, Green, Self>
fn green(&self) -> FgColorDisplay<'_, Green, Self>
Source§fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
Source§fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
Source§fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
Source§fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
Source§fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
Source§fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
Source§fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
Source§fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
Source§fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
Source§fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
Source§fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
Source§fn white(&self) -> FgColorDisplay<'_, White, Self>
fn white(&self) -> FgColorDisplay<'_, White, Self>
Source§fn on_white(&self) -> BgColorDisplay<'_, White, Self>
fn on_white(&self) -> BgColorDisplay<'_, White, Self>
Source§fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
Source§fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
Source§fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
Source§fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
Source§fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
Source§fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
Source§fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
Source§fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
Source§fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
Source§fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
Source§fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
Source§fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
Source§fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
Source§fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
Source§fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
Source§fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
Source§fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
Source§fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
Source§fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
Source§fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
Source§fn bold(&self) -> BoldDisplay<'_, Self>
fn bold(&self) -> BoldDisplay<'_, Self>
Source§fn dimmed(&self) -> DimDisplay<'_, Self>
fn dimmed(&self) -> DimDisplay<'_, Self>
Source§fn italic(&self) -> ItalicDisplay<'_, Self>
fn italic(&self) -> ItalicDisplay<'_, Self>
Source§fn underline(&self) -> UnderlineDisplay<'_, Self>
fn underline(&self) -> UnderlineDisplay<'_, Self>
Source§fn blink(&self) -> BlinkDisplay<'_, Self>
fn blink(&self) -> BlinkDisplay<'_, Self>
Source§fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
Source§fn reversed(&self) -> ReversedDisplay<'_, Self>
fn reversed(&self) -> ReversedDisplay<'_, Self>
Source§fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
Source§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 moreSource§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 moreSource§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>
Source§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>
Source§fn truecolor(&self, r: u8, g: u8, b: u8) -> FgDynColorDisplay<'_, Rgb, Self>
fn truecolor(&self, r: u8, g: u8, b: u8) -> FgDynColorDisplay<'_, Rgb, Self>
Source§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>
Source§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
Source§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();Source§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
Source§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
Source§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
Source§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
Source§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
Source§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
Source§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
Source§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
Source§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();Source§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
Source§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
Source§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
Source§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
Source§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
Source§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
Source§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
Source§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
Source§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
Source§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
Source§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();Source§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
Source§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();Source§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.
Source§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);