Struct TerminalStyle

Source
pub struct TerminalStyle {
    pub fg: TerminalColor,
    pub bg: TerminalColor,
    pub bold: bool,
    pub italic: bool,
    pub underline: bool,
    pub inverse: bool,
    pub dim: bool,
    pub strike: bool,
}
Expand description

Complete style attached to a terminal cell.

Flags are independent; no normalization prevents combinations such as bold && dim or foreground/background defaults used in either field.

§Examples

use ailloli_ui_terminal_core::{TerminalColor, TerminalStyle};
let style = TerminalStyle::default();
assert_eq!((style.fg, style.bg), (TerminalColor::DefaultFg, TerminalColor::DefaultBg));
assert!(!style.bold && !style.inverse);

Fields§

§fg: TerminalColor

Foreground color selection.

§bg: TerminalColor

Background color selection.

§bold: bool

Bold/intensified text request.

§italic: bool

Italic text request.

§underline: bool

Underline text request.

§inverse: bool

Swap effective foreground and background at rendering time.

§dim: bool

Dim/faint text request.

§strike: bool

Strikethrough text request.

Implementations§

Source§

impl TerminalStyle

Source

pub const fn reset() -> Self

Returns the default SGR style with every flag disabled.

§Examples
use ailloli_ui_terminal_core::{TerminalColor, TerminalStyle};
assert_eq!(TerminalStyle::reset().fg, TerminalColor::DefaultFg);
assert_eq!(TerminalStyle::reset(), TerminalStyle::default());
Source

pub fn reset_sgr(&mut self)

Replaces this value with Self::reset.

§Examples
use ailloli_ui_terminal_core::TerminalStyle;
let mut style = TerminalStyle { bold: true, ..TerminalStyle::default() };
style.reset_sgr();
assert!(!style.bold);

Trait Implementations§

Source§

impl Clone for TerminalStyle

Source§

fn clone(&self) -> TerminalStyle

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 TerminalStyle

Source§

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

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

impl Default for TerminalStyle

Source§

fn default() -> Self

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

impl<'de> Deserialize<'de> for TerminalStyle

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl PartialEq for TerminalStyle

Source§

fn eq(&self, other: &TerminalStyle) -> 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 Serialize for TerminalStyle

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl Copy for TerminalStyle

Source§

impl Eq for TerminalStyle

Source§

impl StructuralPartialEq for TerminalStyle

Auto Trait Implementations§

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> ToOwned for T
where T: Clone,

Source§

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 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.
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,