Enum Color

pub enum Color

The set of available colors for the terminal foreground/background.

The Ansi256 and Rgb colors will only output the correct codes when paired with the Ansi WriteColor implementation.

The Ansi256 and Rgb color types are not supported when writing colors on Windows using the console. If they are used on Windows, then they are silently ignored and no colors will be emitted.

This set may expand over time.

This type has a FromStr impl that can parse colors from their human readable form. The format is as follows:

  1. Any of the explicitly listed colors in English. They are matched case insensitively.
  2. A single 8-bit integer, in either decimal or hexadecimal format.
  3. A triple of 8-bit integers separated by a comma, where each integer is in decimal or hexadecimal format.

Hexadecimal numbers are written with a 0x prefix.

Variants

Black
Blue
Green
Red
Cyan
Magenta
Yellow
White
Ansi256(u8)
Rgb(u8, u8, u8)

Trait Implementations

impl Clone for Color

fn clone(&self) -> Self

impl Copy for Color

impl Debug for Color

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

impl Eq for Color

impl FromStr for Color

type Err = ParseColorError;
fn from_str(s: &str) -> Result<Color, ParseColorError>

impl PartialEq for Color

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

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 UnsafeUnpin for Color

impl UnwindSafe for Color

Blanket Implementations

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

fn type_id(&self) -> TypeId

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

fn borrow(&self) -> &T

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

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

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

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

impl<T> From<T> for Color

fn from(t: T) -> T

Returns the argument unchanged.

impl<T> ToOwned for Color where T: Clone,

type Owned = T;
fn to_owned(&self) -> T
fn clone_into(&self, target: &mut T)

impl<T, U> Into<U> for Color where U: From<T>,

fn into(self) -> U

Calls U::from(self).

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

impl<T, U> TryFrom<U> for Color where U: Into<T>,

type Error = never;
fn try_from(value: U) -> Result<T, never>

impl<T, U> TryInto<U> for Color where U: TryFrom<T>,

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