Struct yansi::Style

source ·
pub struct Style {
    pub foreground: Option<Color>,
    pub background: Option<Color>,
    pub condition: Option<Condition>,
    /* private fields */
}
Expand description

A set of styling options.

Equivalence and Ordering

Only a style’s foreground, background, and set of attributes are considered when testing for equivalence or producing an ordering via PartialEq or Eq, and PartialOrd or Ord. A style’s quirks and conditions are ignored.

Fields§

§foreground: Option<Color>

The foreground color. Defaults to None.

use yansi::{Style, Color};

assert_eq!(Style::new().foreground, None);
assert_eq!(Style::new().green().foreground, Some(Color::Green));
§background: Option<Color>

The background color. Defaults to None.

use yansi::{Style, Color};

assert_eq!(Style::new().background, None);
assert_eq!(Style::new().on_red().background, Some(Color::Red));
§condition: Option<Condition>

The condition.

To check a style’s condition directly, use Style::enabled():

use yansi::{Style, Condition};

let style = Style::new().whenever(Condition::ALWAYS);
assert!(style.enabled());

let style = Style::new().whenever(Condition::NEVER);
assert!(!style.enabled());

Implementations§

source§

impl Style

source

pub const fn new() -> Style

Returns a new style with no foreground or background, no attributes or quirks, and Condition::DEFAULT.

This is the default returned by Default::default().

Example
use yansi::Style;

assert_eq!(Style::new(), Style::default());
source

pub fn enabled(&self) -> bool

Returns true if this style is enabled, based on condition.

Note: For a style to be effected, both this method and yansi::is_enabled() must return true.

When there is no condition set, this method always returns true. When a condition has been set, this evaluates the condition and returns the result.

Example
use yansi::{Style, Condition};

let style = Style::new().whenever(Condition::ALWAYS);
assert!(style.enabled());

let style = Style::new().whenever(Condition::NEVER);
assert!(!style.enabled());
source

pub fn fmt_prefix(&self, f: &mut dyn Write) -> Result

Writes the ANSI code prefix for the currently set styles.

This method is intended to be used inside of fmt::Display and fmt::Debug implementations for custom or specialized use-cases. Most users should use Painted for all painting needs.

This method writes the ANSI code prefix irrespective of whether painting is currently enabled or disabled. To write the prefix only if painting is enabled, condition a call to this method on is_enabled().

Example
use core::fmt;
use yansi::Style;

struct CustomItem {
    item: u32,
    style: Style
}

impl fmt::Display for CustomItem {
    fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
        self.style.fmt_prefix(f)?;
        write!(f, "number: {}", self.item)?;
        self.style.fmt_suffix(f)
    }
}
source

pub fn prefix(&self) -> Cow<'static, str>

Returns the ANSI code sequence prefix for the style as a string.

This returns a string with the exact same sequence written by fmt_prefix(). See that method for details.

source

pub fn fmt_suffix(&self, f: &mut dyn Write) -> Result

Writes the ANSI code sequence suffix for the style.

This method is intended to be used inside of fmt::Display and fmt::Debug implementations for custom or specialized use-cases. Most users should use Painted for all painting needs.

This method writes the ANSI code suffix irrespective of whether painting is currently enabled or disabled. To write the suffix only if painting is enabled, condition a call to this method on is_enabled().

Example
use core::fmt;
use yansi::Style;

struct CustomItem {
    item: u32,
    style: Style
}

impl fmt::Display for CustomItem {
    fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
        self.style.fmt_prefix(f)?;
        write!(f, "number: {}", self.item)?;
        self.style.fmt_suffix(f)
    }
}
source

pub fn suffix(&self) -> Cow<'static, str>

Returns the ANSI code sequence suffix for the style as a string.

This returns a string with the exact same sequence written by fmt_suffix(). See that method for details.

source

pub const fn fg(self, value: Color) -> Self

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

pub const fn primary(self) -> Self

Returns self with the fg() set to Color::Primary.

Example
println!("{}", value.primary());
source

pub const fn fixed(self, color: u8) -> Self

Returns self with the fg() set to Color::Fixed.

Example
println!("{}", value.fixed(color));
source

pub const fn rgb(self, r: u8, g: u8, b: u8) -> Self

Returns self with the fg() set to Color::Rgb.

Example
println!("{}", value.rgb(r, g, b));
source

pub const fn black(self) -> Self

Returns self with the fg() set to Color::Black.

Example
println!("{}", value.black());
source

pub const fn red(self) -> Self

Returns self with the fg() set to Color::Red.

Example
println!("{}", value.red());
source

pub const fn green(self) -> Self

Returns self with the fg() set to Color::Green.

Example
println!("{}", value.green());
source

pub const fn yellow(self) -> Self

Returns self with the fg() set to Color::Yellow.

Example
println!("{}", value.yellow());
source

pub const fn blue(self) -> Self

Returns self with the fg() set to Color::Blue.

Example
println!("{}", value.blue());
source

pub const fn magenta(self) -> Self

Returns self with the fg() set to Color::Magenta.

Example
println!("{}", value.magenta());
source

pub const fn cyan(self) -> Self

Returns self with the fg() set to Color::Cyan.

Example
println!("{}", value.cyan());
source

pub const fn white(self) -> Self

Returns self with the fg() set to Color::White.

Example
println!("{}", value.white());
source

pub const fn bright_black(self) -> Self

Returns self with the fg() set to Color::BrightBlack.

Example
println!("{}", value.bright_black());
source

pub const fn bright_red(self) -> Self

Returns self with the fg() set to Color::BrightRed.

Example
println!("{}", value.bright_red());
source

pub const fn bright_green(self) -> Self

Returns self with the fg() set to Color::BrightGreen.

Example
println!("{}", value.bright_green());
source

pub const fn bright_yellow(self) -> Self

Returns self with the fg() set to Color::BrightYellow.

Example
println!("{}", value.bright_yellow());
source

pub const fn bright_blue(self) -> Self

Returns self with the fg() set to Color::BrightBlue.

Example
println!("{}", value.bright_blue());
source

pub const fn bright_magenta(self) -> Self

Returns self with the fg() set to Color::BrightMagenta.

Example
println!("{}", value.bright_magenta());
source

pub const fn bright_cyan(self) -> Self

Returns self with the fg() set to Color::BrightCyan.

Example
println!("{}", value.bright_cyan());
source

pub const fn bright_white(self) -> Self

Returns self with the fg() set to Color::BrightWhite.

Example
println!("{}", value.bright_white());
source

pub const fn bg(self, value: Color) -> Self

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

pub const fn on_primary(self) -> Self

Returns self with the bg() set to Color::Primary.

Example
println!("{}", value.on_primary());
source

pub const fn on_fixed(self, color: u8) -> Self

Returns self with the bg() set to Color::Fixed.

Example
println!("{}", value.on_fixed(color));
source

pub const fn on_rgb(self, r: u8, g: u8, b: u8) -> Self

Returns self with the bg() set to Color::Rgb.

Example
println!("{}", value.on_rgb(r, g, b));
source

pub const fn on_black(self) -> Self

Returns self with the bg() set to Color::Black.

Example
println!("{}", value.on_black());
source

pub const fn on_red(self) -> Self

Returns self with the bg() set to Color::Red.

Example
println!("{}", value.on_red());
source

pub const fn on_green(self) -> Self

Returns self with the bg() set to Color::Green.

Example
println!("{}", value.on_green());
source

pub const fn on_yellow(self) -> Self

Returns self with the bg() set to Color::Yellow.

Example
println!("{}", value.on_yellow());
source

pub const fn on_blue(self) -> Self

Returns self with the bg() set to Color::Blue.

Example
println!("{}", value.on_blue());
source

pub const fn on_magenta(self) -> Self

Returns self with the bg() set to Color::Magenta.

Example
println!("{}", value.on_magenta());
source

pub const fn on_cyan(self) -> Self

Returns self with the bg() set to Color::Cyan.

Example
println!("{}", value.on_cyan());
source

pub const fn on_white(self) -> Self

Returns self with the bg() set to Color::White.

Example
println!("{}", value.on_white());
source

pub const fn on_bright_black(self) -> Self

Returns self with the bg() set to Color::BrightBlack.

Example
println!("{}", value.on_bright_black());
source

pub const fn on_bright_red(self) -> Self

Returns self with the bg() set to Color::BrightRed.

Example
println!("{}", value.on_bright_red());
source

pub const fn on_bright_green(self) -> Self

Returns self with the bg() set to Color::BrightGreen.

Example
println!("{}", value.on_bright_green());
source

pub const fn on_bright_yellow(self) -> Self

Returns self with the bg() set to Color::BrightYellow.

Example
println!("{}", value.on_bright_yellow());
source

pub const fn on_bright_blue(self) -> Self

Returns self with the bg() set to Color::BrightBlue.

Example
println!("{}", value.on_bright_blue());
source

pub const fn on_bright_magenta(self) -> Self

Returns self with the bg() set to Color::BrightMagenta.

Example
println!("{}", value.on_bright_magenta());
source

pub const fn on_bright_cyan(self) -> Self

Returns self with the bg() set to Color::BrightCyan.

Example
println!("{}", value.on_bright_cyan());
source

pub const fn on_bright_white(self) -> Self

Returns self with the bg() set to Color::BrightWhite.

Example
println!("{}", value.on_bright_white());
source

pub const fn attr(self, value: Attribute) -> Self

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

pub const fn bold(self) -> Self

Returns self with the attr() set to Attribute::Bold.

Example
println!("{}", value.bold());
source

pub const fn dim(self) -> Self

Returns self with the attr() set to Attribute::Dim.

Example
println!("{}", value.dim());
source

pub const fn italic(self) -> Self

Returns self with the attr() set to Attribute::Italic.

Example
println!("{}", value.italic());
source

pub const fn underline(self) -> Self

Returns self with the attr() set to Attribute::Underline.

Example
println!("{}", value.underline());

Returns self with the attr() set to Attribute::Blink.

Example
println!("{}", value.blink());

Returns self with the attr() set to Attribute::RapidBlink.

Example
println!("{}", value.rapid_blink());
source

pub const fn invert(self) -> Self

Returns self with the attr() set to Attribute::Invert.

Example
println!("{}", value.invert());
source

pub const fn conceal(self) -> Self

Returns self with the attr() set to Attribute::Conceal.

Example
println!("{}", value.conceal());
source

pub const fn strike(self) -> Self

Returns self with the attr() set to Attribute::Strike.

Example
println!("{}", value.strike());
source

pub const fn quirk(self, value: Quirk) -> Self

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

pub const fn mask(self) -> Self

Returns self with the quirk() set to Quirk::Mask.

Example
println!("{}", value.mask());
source

pub const fn wrap(self) -> Self

Returns self with the quirk() set to Quirk::Wrap.

Example
println!("{}", value.wrap());
source

pub const fn linger(self) -> Self

Returns self with the quirk() set to Quirk::Linger.

Example
println!("{}", value.linger());
source

pub const fn clear(self) -> Self

Returns self with the quirk() set to Quirk::Clear.

Example
println!("{}", value.clear());
source

pub const fn bright(self) -> Self

Returns self with the quirk() set to Quirk::Bright.

Example
println!("{}", value.bright());
source

pub const fn on_bright(self) -> Self

Returns self with the quirk() set to Quirk::OnBright.

Example
println!("{}", value.on_bright());
source

pub const fn whenever(self, value: Condition) -> Self

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);

Trait Implementations§

source§

impl Clone for Style

source§

fn clone(&self) -> Style

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Style

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for Style

source§

fn default() -> Style

Returns the “default value” for a type. Read more
source§

impl From<Attribute> for Style

source§

fn from(attr: Attribute) -> Self

Converts to this type from the input type.
source§

impl From<Color> for Style

source§

fn from(color: Color) -> Self

Converts to this type from the input type.
source§

impl<T> From<Painted<T>> for Style

source§

fn from(painted: Painted<T>) -> Self

Converts to this type from the input type.
source§

impl From<Quirk> for Style

source§

fn from(quirk: Quirk) -> Self

Converts to this type from the input type.
source§

impl Hash for Style

source§

fn hash<H: Hasher>(&self, state: &mut H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl Ord for Style

source§

fn cmp(&self, other: &Self) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · source§

fn max(self, other: Self) -> Selfwhere Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · source§

fn min(self, other: Self) -> Selfwhere Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · source§

fn clamp(self, min: Self, max: Self) -> Selfwhere Self: Sized + PartialOrd<Self>,

Restrict a value to a certain interval. Read more
source§

impl PartialEq<Style> for Style

source§

fn eq(&self, other: &Self) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl PartialOrd<Style> for Style

source§

fn partial_cmp(&self, other: &Self) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · source§

fn lt(&self, other: &Rhs) -> bool

This method tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · source§

fn le(&self, other: &Rhs) -> bool

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · source§

fn gt(&self, other: &Rhs) -> bool

This method tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · source§

fn ge(&self, other: &Rhs) -> bool

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more
source§

impl Copy for Style

source§

impl Eq for Style

Auto Trait Implementations§

§

impl RefUnwindSafe for Style

§

impl Send for Style

§

impl Sync for Style

§

impl Unpin for Style

§

impl UnwindSafe for Style

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> Paint for Twhere T: ?Sized,

source§

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 primary(&self) -> Painted<&T>

Returns self with the fg() set to Color::Primary.

Example
println!("{}", value.primary());
source§

fn fixed(&self, color: u8) -> Painted<&T>

Returns self with the fg() set to Color::Fixed.

Example
println!("{}", value.fixed(color));
source§

fn rgb(&self, r: u8, g: u8, b: u8) -> Painted<&T>

Returns self with the fg() set to Color::Rgb.

Example
println!("{}", value.rgb(r, g, b));
source§

fn black(&self) -> Painted<&T>

Returns self with the fg() set to Color::Black.

Example
println!("{}", value.black());
source§

fn red(&self) -> Painted<&T>

Returns self with the fg() set to Color::Red.

Example
println!("{}", value.red());
source§

fn green(&self) -> Painted<&T>

Returns self with the fg() set to Color::Green.

Example
println!("{}", value.green());
source§

fn yellow(&self) -> Painted<&T>

Returns self with the fg() set to Color::Yellow.

Example
println!("{}", value.yellow());
source§

fn blue(&self) -> Painted<&T>

Returns self with the fg() set to Color::Blue.

Example
println!("{}", value.blue());
source§

fn magenta(&self) -> Painted<&T>

Returns self with the fg() set to Color::Magenta.

Example
println!("{}", value.magenta());
source§

fn cyan(&self) -> Painted<&T>

Returns self with the fg() set to Color::Cyan.

Example
println!("{}", value.cyan());
source§

fn white(&self) -> Painted<&T>

Returns self with the fg() set to Color::White.

Example
println!("{}", value.white());
source§

fn bright_black(&self) -> Painted<&T>

Returns self with the fg() set to Color::BrightBlack.

Example
println!("{}", value.bright_black());
source§

fn bright_red(&self) -> Painted<&T>

Returns self with the fg() set to Color::BrightRed.

Example
println!("{}", value.bright_red());
source§

fn bright_green(&self) -> Painted<&T>

Returns self with the fg() set to Color::BrightGreen.

Example
println!("{}", value.bright_green());
source§

fn bright_yellow(&self) -> Painted<&T>

Returns self with the fg() set to Color::BrightYellow.

Example
println!("{}", value.bright_yellow());
source§

fn bright_blue(&self) -> Painted<&T>

Returns self with the fg() set to Color::BrightBlue.

Example
println!("{}", value.bright_blue());
source§

fn bright_magenta(&self) -> Painted<&T>

Returns self with the fg() set to Color::BrightMagenta.

Example
println!("{}", value.bright_magenta());
source§

fn bright_cyan(&self) -> Painted<&T>

Returns self with the fg() set to Color::BrightCyan.

Example
println!("{}", value.bright_cyan());
source§

fn bright_white(&self) -> Painted<&T>

Returns self with the fg() set to Color::BrightWhite.

Example
println!("{}", value.bright_white());
source§

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>

Returns self with the bg() set to Color::Primary.

Example
println!("{}", value.on_primary());
source§

fn on_fixed(&self, color: u8) -> Painted<&T>

Returns self with the bg() set to Color::Fixed.

Example
println!("{}", value.on_fixed(color));
source§

fn on_rgb(&self, r: u8, g: u8, b: u8) -> Painted<&T>

Returns self with the bg() set to Color::Rgb.

Example
println!("{}", value.on_rgb(r, g, b));
source§

fn on_black(&self) -> Painted<&T>

Returns self with the bg() set to Color::Black.

Example
println!("{}", value.on_black());
source§

fn on_red(&self) -> Painted<&T>

Returns self with the bg() set to Color::Red.

Example
println!("{}", value.on_red());
source§

fn on_green(&self) -> Painted<&T>

Returns self with the bg() set to Color::Green.

Example
println!("{}", value.on_green());
source§

fn on_yellow(&self) -> Painted<&T>

Returns self with the bg() set to Color::Yellow.

Example
println!("{}", value.on_yellow());
source§

fn on_blue(&self) -> Painted<&T>

Returns self with the bg() set to Color::Blue.

Example
println!("{}", value.on_blue());
source§

fn on_magenta(&self) -> Painted<&T>

Returns self with the bg() set to Color::Magenta.

Example
println!("{}", value.on_magenta());
source§

fn on_cyan(&self) -> Painted<&T>

Returns self with the bg() set to Color::Cyan.

Example
println!("{}", value.on_cyan());
source§

fn on_white(&self) -> Painted<&T>

Returns self with the bg() set to Color::White.

Example
println!("{}", value.on_white());
source§

fn on_bright_black(&self) -> Painted<&T>

Returns self with the bg() set to Color::BrightBlack.

Example
println!("{}", value.on_bright_black());
source§

fn on_bright_red(&self) -> Painted<&T>

Returns self with the bg() set to Color::BrightRed.

Example
println!("{}", value.on_bright_red());
source§

fn on_bright_green(&self) -> Painted<&T>

Returns self with the bg() set to Color::BrightGreen.

Example
println!("{}", value.on_bright_green());
source§

fn on_bright_yellow(&self) -> Painted<&T>

Returns self with the bg() set to Color::BrightYellow.

Example
println!("{}", value.on_bright_yellow());
source§

fn on_bright_blue(&self) -> Painted<&T>

Returns self with the bg() set to Color::BrightBlue.

Example
println!("{}", value.on_bright_blue());
source§

fn on_bright_magenta(&self) -> Painted<&T>

Returns self with the bg() set to Color::BrightMagenta.

Example
println!("{}", value.on_bright_magenta());
source§

fn on_bright_cyan(&self) -> Painted<&T>

Returns self with the bg() set to Color::BrightCyan.

Example
println!("{}", value.on_bright_cyan());
source§

fn on_bright_white(&self) -> Painted<&T>

Returns self with the bg() set to Color::BrightWhite.

Example
println!("{}", value.on_bright_white());
source§

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 bold(&self) -> Painted<&T>

Returns self with the attr() set to Attribute::Bold.

Example
println!("{}", value.bold());
source§

fn dim(&self) -> Painted<&T>

Returns self with the attr() set to Attribute::Dim.

Example
println!("{}", value.dim());
source§

fn italic(&self) -> Painted<&T>

Returns self with the attr() set to Attribute::Italic.

Example
println!("{}", value.italic());
source§

fn underline(&self) -> Painted<&T>

Returns self with the attr() set to Attribute::Underline.

Example
println!("{}", value.underline());

Returns self with the attr() set to Attribute::Blink.

Example
println!("{}", value.blink());

Returns self with the attr() set to Attribute::RapidBlink.

Example
println!("{}", value.rapid_blink());
source§

fn invert(&self) -> Painted<&T>

Returns self with the attr() set to Attribute::Invert.

Example
println!("{}", value.invert());
source§

fn conceal(&self) -> Painted<&T>

Returns self with the attr() set to Attribute::Conceal.

Example
println!("{}", value.conceal());
source§

fn strike(&self) -> Painted<&T>

Returns self with the attr() set to Attribute::Strike.

Example
println!("{}", value.strike());
source§

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 mask(&self) -> Painted<&T>

Returns self with the quirk() set to Quirk::Mask.

Example
println!("{}", value.mask());
source§

fn wrap(&self) -> Painted<&T>

Returns self with the quirk() set to Quirk::Wrap.

Example
println!("{}", value.wrap());
source§

fn linger(&self) -> Painted<&T>

Returns self with the quirk() set to Quirk::Linger.

Example
println!("{}", value.linger());
source§

fn clear(&self) -> Painted<&T>

Returns self with the quirk() set to Quirk::Clear.

Example
println!("{}", value.clear());
source§

fn bright(&self) -> Painted<&T>

Returns self with the quirk() set to Quirk::Bright.

Example
println!("{}", value.bright());
source§

fn on_bright(&self) -> Painted<&T>

Returns self with the quirk() set to Quirk::OnBright.

Example
println!("{}", value.on_bright());
source§

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);
source§

fn new(self) -> Painted<Self>where Self: Sized,

Create a new Painted with a default Style. Read more
source§

fn paint<S: Into<Style>>(&self, style: S) -> Painted<&Self>

Apply a style wholesale to self. Any previous style is replaced. Read more
source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.