Color

Enum Color 

Source
pub enum Color {
    Simple(SimpleColor),
    Indexed(IndexedColor),
    RGB(RGBColor),
}
Expand description

An enum representing all supported color types.

Variants§

§

Simple(SimpleColor)

A simple color (16 colors).

§

Indexed(IndexedColor)

An 8-bit color (256 colors).

§

RGB(RGBColor)

An RGB color (24-bit/true color).

Implementations§

Source§

impl Color

Source

pub const BLACK: BasicColor = BasicColor::Black

Constant for the basic color black.

Source

pub const RED: BasicColor = BasicColor::Red

Constant for the basic color red.

Source

pub const GREEN: BasicColor = BasicColor::Green

Constant for the basic color green.

Source

pub const YELLOW: BasicColor = BasicColor::Yellow

Constant for the basic color yellow.

Source

pub const BLUE: BasicColor = BasicColor::Blue

Constant for the basic color blue.

Source

pub const MAGENTA: BasicColor = BasicColor::Magenta

Constant for the basic color magenta.

Source

pub const CYAN: BasicColor = BasicColor::Cyan

Constant for the basic color cyan.

Source

pub const WHITE: BasicColor = BasicColor::White

Constant for the basic color white.

Source

pub const fn indexed(value: u8) -> IndexedColor

Create an 8-bit color from the given value.

Source

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

Create an RGB color from the given red, green, and blue components.

Source

pub const fn none() -> Option<Color>

Helper method to return a None value.

Use it to clear the color for some target with Style::set_color() or Styled<C>::set_color().

Source§

impl Color

Source

pub fn for_fg(self) -> TargetedColor

Associate this color with the foreground plane.

Source

pub fn for_bg(self) -> TargetedColor

Associate this color with the background plane.

Source

pub fn for_underline(self) -> TargetedColor

Associate this color with the underline effect.

Source

pub fn for_target(self, target: ColorTarget) -> TargetedColor

Associate this color with the specified color target.

Source§

impl Color

Source

pub fn bold(self) -> Style

Sets the bold effect.

Source

pub fn faint(self) -> Style

Sets the faint effect.

Source

pub fn italic(self) -> Style

Sets the italic effect.

Source

pub fn underline(self) -> Style

Source

pub fn solid_underline(self) -> Style

Sets the solid underline effect.

Source

pub fn curly_underline(self) -> Style

Sets the curly underline effect.

Source

pub fn dotted_underline(self) -> Style

Sets the dotted underline effect.

Source

pub fn dashed_underline(self) -> Style

Sets the dashed underline effect.

Sets the blink effect.

Source

pub fn reverse(self) -> Style

Sets the reverse effect.

Source

pub fn conceal(self) -> Style

Sets the conceal effect.

Source

pub fn strikethrough(self) -> Style

Sets the strikethrough effect.

Source

pub fn double_underline(self) -> Style

Sets the double underline effect.

Source

pub fn overline(self) -> Style

Sets the overline effect.

Source

pub fn effect(self, effect: impl Into<Effect>) -> Style

Sets the given effect.

Source

pub fn underline_effect(self, underline_effect: UnderlineEffect) -> Style

Sets the underline effect.

Source

pub fn fg(self, color: impl Into<Color>) -> Style

Sets the foreground color.

Source

pub fn bg(self, color: impl Into<Color>) -> Style

Sets the background color.

Source

pub fn underline_color(self, color: impl Into<Color>) -> Style

Sets the underline color.

Source

pub fn color(self, targeted_color: impl Into<TargetedColor>) -> Style

Sets the given color in a target.

Source

pub fn add(self, element: impl StylingElement<Style>) -> Style

Adds the given element to the style.

Source

pub fn applied_to<C: Display>(self, content: C) -> Styled<C>

Applies the styling to the given content, returning a Styled<C> instance.

Source§

impl Color

Source

pub fn to_style(self) -> Style

Converts the type into a Style.

Source§

impl Color

Source

pub fn to_color(self) -> Color

Convert this type into a Color.

Source§

impl Color

Source

pub fn to_targeted_color(self) -> TargetedColor

Converts the type into a TargetedColor

Trait Implementations§

Source§

impl Clone for Color

Source§

fn clone(&self) -> Color

Returns a duplicate 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 Color

Source§

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

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

impl From<BasicColor> for Color

Source§

fn from(value: BasicColor) -> Self

Converts to this type from the input type.
Source§

impl From<Color> for Style

Source§

fn from(value: Color) -> Self

Converts to this type from the input type.
Source§

impl From<Color> for TargetedColor

Source§

fn from(value: Color) -> Self

Converts to this type from the input type.
Source§

impl From<IndexedColor> for Color

Source§

fn from(value: IndexedColor) -> Self

Converts to this type from the input type.
Source§

impl From<RGBColor> for Color

Source§

fn from(value: RGBColor) -> Self

Converts to this type from the input type.
Source§

impl From<SimpleColor> for Color

Source§

fn from(value: SimpleColor) -> Self

Converts to this type from the input type.
Source§

impl Hash for Color

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 PartialEq<BasicColor> for Color

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq<Color> for BasicColor

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq<Color> for IndexedColor

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq<Color> for RGBColor

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq<Color> for SimpleColor

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq<IndexedColor> for Color

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq<RGBColor> for Color

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq<SimpleColor> for Color

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq for Color

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl StylingElement<Style> for Color

Source§

fn add_to(self, composed_styling: Style) -> Style

Adds this element to the given parameter, returning it updated.
Source§

impl<C: Display> StylingElement<Styled<C>> for Color

Source§

fn add_to(self, composed_styling: Styled<C>) -> Styled<C>

Adds this element to the given parameter, returning it updated.
Source§

impl Copy for Color

Source§

impl Eq for Color

Source§

impl StructuralPartialEq for Color

Auto Trait Implementations§

§

impl Freeze for Color

§

impl RefUnwindSafe for Color

§

impl Send for Color

§

impl Sync for Color

§

impl Unpin for Color

§

impl UnwindSafe for Color

Blanket Implementations§

Source§

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

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

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

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

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

Source§

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

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. 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 T
where 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, U> TryFrom<U> for T
where U: Into<T>,

Source§

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 T
where U: TryFrom<T>,

Source§

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.