pub enum Value {
String(Tag, String),
Char(Tag, char),
Bool(Tag, bool),
Num(Tag, Num),
Empty(Tag, Empty),
Dict(Tag, BTreeMap<String, Value>),
Array(Tag, Vec<Value>),
}Expand description
An enum representing all possible figment value variants.
Note that Value implements From<T> for all reasonable T:
use figment::value::Value;
let v = Value::from("hello");
assert_eq!(v.as_str(), Some("hello"));Variants§
String(Tag, String)
A string.
Char(Tag, char)
A character.
Bool(Tag, bool)
A boolean.
Num(Tag, Num)
A numeric value.
Empty(Tag, Empty)
A value with no value.
Dict(Tag, BTreeMap<String, Value>)
A dictionary: a map from String to Value.
Array(Tag, Vec<Value>)
A sequence/array/vector.
Implementations§
§impl Value
impl Value
pub fn serialize<T>(value: T) -> Result<Value, Error>where
T: Serialize,
pub fn serialize<T>(value: T) -> Result<Value, Error>where
T: Serialize,
Serialize a Value from any T: Serialize.
use figment::value::{Value, Empty};
let value = Value::serialize(10i8).unwrap();
assert_eq!(value.to_i128(), Some(10));
let value = Value::serialize(()).unwrap();
assert_eq!(value, Empty::Unit.into());
let value = Value::serialize(vec![4, 5, 6]).unwrap();
assert_eq!(value, vec![4, 5, 6].into());pub fn deserialize<'de, T>(&self) -> Result<T, Error>where
T: Deserialize<'de>,
pub fn deserialize<'de, T>(&self) -> Result<T, Error>where
T: Deserialize<'de>,
Deserialize self into any deserializable T.
use figment::value::Value;
let value = Value::from("hello");
let string: String = value.deserialize().unwrap();
assert_eq!(string, "hello");pub fn find(self, path: &str) -> Option<Value>
pub fn find(self, path: &str) -> Option<Value>
Looks up and returns the value at path path, where path is of the
form a.b.c where a, b, and c are keys to dictionaries. If the
key is empty, simply returns self. If the key is not empty and self
or any of the values for non-leaf keys in the path are not dictionaries,
returns None.
This method consumes self. See Value::find_ref() for a
non-consuming variant.
Example
use figment::{value::Value, util::map};
let value = Value::from(map! {
"apple" => map! {
"bat" => map! {
"pie" => 4usize,
},
"cake" => map! {
"pumpkin" => 10usize,
}
}
});
assert!(value.clone().find("apple").is_some());
assert!(value.clone().find("apple.bat").is_some());
assert!(value.clone().find("apple.cake").is_some());
assert_eq!(value.clone().find("apple.bat.pie").unwrap().to_u128(), Some(4));
assert_eq!(value.clone().find("apple.cake.pumpkin").unwrap().to_u128(), Some(10));
assert!(value.clone().find("apple.pie").is_none());
assert!(value.clone().find("pineapple").is_none());pub fn find_ref<'a>(&'a self, path: &str) -> Option<&'a Value>
pub fn find_ref<'a>(&'a self, path: &str) -> Option<&'a Value>
Exactly like Value::find() but does not consume self,
returning a reference to the found value, if any, instead.
Example
use figment::{value::Value, util::map};
let value = Value::from(map! {
"apple" => map! {
"bat" => map! {
"pie" => 4usize,
},
"cake" => map! {
"pumpkin" => 10usize,
}
}
});
assert!(value.find_ref("apple").is_some());
assert!(value.find_ref("apple.bat").is_some());
assert!(value.find_ref("apple.cake").is_some());
assert_eq!(value.find_ref("apple.bat.pie").unwrap().to_u128(), Some(4));
assert_eq!(value.find_ref("apple.cake.pumpkin").unwrap().to_u128(), Some(10));
assert!(value.find_ref("apple.pie").is_none());
assert!(value.find_ref("pineapple").is_none());pub fn tag(&self) -> Tag
pub fn tag(&self) -> Tag
Returns the Tag applied to this value.
use figment::{Figment, Profile, value::Value, util::map};
let map: Value = Figment::from(("key", "value")).extract().unwrap();
let value = map.find_ref("key").expect("value");
assert_eq!(value.as_str(), Some("value"));
assert!(!value.tag().is_default());
assert_eq!(value.tag().profile(), Some(Profile::Global));
let map: Value = Figment::from(("key", map!["key2" => 123])).extract().unwrap();
let value = map.find_ref("key.key2").expect("value");
assert_eq!(value.to_i128(), Some(123));
assert!(!value.tag().is_default());
assert_eq!(value.tag().profile(), Some(Profile::Global));pub fn as_str(&self) -> Option<&str>
pub fn as_str(&self) -> Option<&str>
Converts self into a &str if self is a Value::String.
Example
use figment::value::Value;
let value: Value = 123.into();
let converted = value.as_str();pub fn into_string(self) -> Option<String>
pub fn into_string(self) -> Option<String>
Converts self into a String if self is a Value::String.
Example
use figment::value::Value;
let value: Value = 123.into();
let converted = value.into_string();pub fn to_char(&self) -> Option<char>
pub fn to_char(&self) -> Option<char>
Converts self into a char if self is a Value::Char.
Example
use figment::value::Value;
let value: Value = 123.into();
let converted = value.to_char();pub fn to_bool(&self) -> Option<bool>
pub fn to_bool(&self) -> Option<bool>
Converts self into a bool if self is a Value::Bool.
Example
use figment::value::Value;
let value: Value = 123.into();
let converted = value.to_bool();pub fn to_num(&self) -> Option<Num>
pub fn to_num(&self) -> Option<Num>
Converts self into a Num if self is a Value::Num.
Example
use figment::value::Value;
let value: Value = 123.into();
let converted = value.to_num();pub fn to_empty(&self) -> Option<Empty>
pub fn to_empty(&self) -> Option<Empty>
Converts self into a Empty if self is a Value::Empty.
Example
use figment::value::Value;
let value: Value = 123.into();
let converted = value.to_empty();pub fn as_dict(&self) -> Option<&BTreeMap<String, Value>>
pub fn as_dict(&self) -> Option<&BTreeMap<String, Value>>
Converts self into a &Dict if self is a Value::Dict.
Example
use figment::value::Value;
let value: Value = 123.into();
let converted = value.as_dict();pub fn into_dict(self) -> Option<BTreeMap<String, Value>>
pub fn into_dict(self) -> Option<BTreeMap<String, Value>>
Converts self into a Dict if self is a Value::Dict.
Example
use figment::value::Value;
let value: Value = 123.into();
let converted = value.into_dict();pub fn as_array(&self) -> Option<&[Value]>
pub fn as_array(&self) -> Option<&[Value]>
Converts self into a &[Value] if self is a Value::Array.
Example
use figment::value::Value;
let value: Value = 123.into();
let converted = value.as_array();pub fn into_array(self) -> Option<Vec<Value>>
pub fn into_array(self) -> Option<Vec<Value>>
Converts self into a Vec<Value> if self is a Value::Array.
Example
use figment::value::Value;
let value: Value = 123.into();
let converted = value.into_array();pub fn to_u128(&self) -> Option<u128>
pub fn to_u128(&self) -> Option<u128>
Converts self into a u128 if self is an unsigned Value::Num
variant.
Example
use figment::value::Value;
let value: Value = 123u8.into();
let converted = value.to_u128();
assert_eq!(converted, Some(123));pub fn to_i128(&self) -> Option<i128>
pub fn to_i128(&self) -> Option<i128>
Converts self into an i128 if self is an signed Value::Num
variant.
Example
use figment::value::Value;
let value: Value = 123i8.into();
let converted = value.to_i128();
assert_eq!(converted, Some(123));
let value: Value = Value::from(5000i64);
assert_eq!(value.to_i128(), Some(5000i128));pub fn to_actual(&self) -> Actual
pub fn to_actual(&self) -> Actual
Converts self into the corresponding Actual.
See also Num::to_actual() and Empty::to_actual(), which are
called internally by this method.
Example
use figment::{value::Value, error::Actual};
assert_eq!(Value::from('a').to_actual(), Actual::Char('a'));
assert_eq!(Value::from(&[1, 2, 3]).to_actual(), Actual::Seq);impl Value
Marker trait for “magic” values. Primarily for use with [Either].
Trait Implementations§
§impl<'de> Deserialize<'de> for Value
impl<'de> Deserialize<'de> for Value
§fn deserialize<D>(de: D) -> Result<Value, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
fn deserialize<D>(de: D) -> Result<Value, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
§impl<'de> Deserializer<'de> for &Value
impl<'de> Deserializer<'de> for &Value
§fn deserialize_any<V>(self, v: V) -> Result<<V as Visitor<'de>>::Value, Error>where
V: Visitor<'de>,
fn deserialize_any<V>(self, v: V) -> Result<<V as Visitor<'de>>::Value, Error>where
V: Visitor<'de>,
Deserializer to figure out how to drive the visitor based
on what data type is in the input. Read more§fn deserialize_option<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, Error>where
V: Visitor<'de>,
fn deserialize_option<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, Error>where
V: Visitor<'de>,
Deserialize type is expecting an optional value. Read more§fn deserialize_enum<V>(
self,
_: &'static str,
_: &'static [&'static str],
v: V
) -> Result<<V as Visitor<'de>>::Value, Error>where
V: Visitor<'de>,
fn deserialize_enum<V>(
self,
_: &'static str,
_: &'static [&'static str],
v: V
) -> Result<<V as Visitor<'de>>::Value, Error>where
V: Visitor<'de>,
Deserialize type is expecting an enum value with a
particular name and possible variants.§fn deserialize_newtype_struct<V>(
self,
_name: &'static str,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, Error>where
V: Visitor<'de>,
fn deserialize_newtype_struct<V>(
self,
_name: &'static str,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, Error>where
V: Visitor<'de>,
Deserialize type is expecting a newtype struct with a
particular name.§fn deserialize_bool<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_bool<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Deserialize type is expecting a bool value.§fn deserialize_u8<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_u8<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Deserialize type is expecting a u8 value.§fn deserialize_u16<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_u16<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Deserialize type is expecting a u16 value.§fn deserialize_u32<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_u32<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Deserialize type is expecting a u32 value.§fn deserialize_u64<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_u64<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Deserialize type is expecting a u64 value.§fn deserialize_i8<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_i8<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Deserialize type is expecting an i8 value.§fn deserialize_i16<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_i16<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Deserialize type is expecting an i16 value.§fn deserialize_i32<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_i32<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Deserialize type is expecting an i32 value.§fn deserialize_i64<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_i64<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Deserialize type is expecting an i64 value.§fn deserialize_f32<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_f32<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Deserialize type is expecting a f32 value.§fn deserialize_f64<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_f64<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Deserialize type is expecting a f64 value.§fn deserialize_char<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_char<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Deserialize type is expecting a char value.§fn deserialize_str<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_str<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Deserialize type is expecting a string value and does
not benefit from taking ownership of buffered data owned by the
Deserializer. Read more§fn deserialize_string<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_string<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Deserialize type is expecting a string value and would
benefit from taking ownership of buffered data owned by the
Deserializer. Read more§fn deserialize_seq<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_seq<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Deserialize type is expecting a sequence of values.§fn deserialize_bytes<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_bytes<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Deserialize type is expecting a byte array and does not
benefit from taking ownership of buffered data owned by the
Deserializer. Read more§fn deserialize_byte_buf<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_byte_buf<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Deserialize type is expecting a byte array and would
benefit from taking ownership of buffered data owned by the
Deserializer. Read more§fn deserialize_map<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_map<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Deserialize type is expecting a map of key-value pairs.§fn deserialize_unit<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_unit<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Deserialize type is expecting a unit value.§fn deserialize_struct<V>(
self,
name: &'static str,
fields: &'static [&'static str],
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_struct<V>(
self,
name: &'static str,
fields: &'static [&'static str],
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Deserialize type is expecting a struct with a particular
name and fields.§fn deserialize_ignored_any<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_ignored_any<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Deserialize type needs to deserialize a value whose type
doesn’t matter because it is ignored. Read more§fn deserialize_unit_struct<V>(
self,
name: &'static str,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_unit_struct<V>(
self,
name: &'static str,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Deserialize type is expecting a unit struct with a
particular name.§fn deserialize_tuple_struct<V>(
self,
name: &'static str,
len: usize,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_tuple_struct<V>(
self,
name: &'static str,
len: usize,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Deserialize type is expecting a tuple struct with a
particular name and number of fields.§fn deserialize_tuple<V>(
self,
len: usize,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_tuple<V>(
self,
len: usize,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Deserialize type is expecting a sequence of values and
knows how many values there are without looking at the serialized data.§fn deserialize_identifier<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
fn deserialize_identifier<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, <&Value as Deserializer<'de>>::Error>where
V: Visitor<'de>,
Deserialize type is expecting the name of a struct
field or the discriminant of an enum variant.source§fn deserialize_i128<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, Self::Error>where
V: Visitor<'de>,
fn deserialize_i128<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, Self::Error>where
V: Visitor<'de>,
source§fn deserialize_u128<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, Self::Error>where
V: Visitor<'de>,
fn deserialize_u128<V>(
self,
visitor: V
) -> Result<<V as Visitor<'de>>::Value, Self::Error>where
V: Visitor<'de>,
source§fn is_human_readable(&self) -> bool
fn is_human_readable(&self) -> bool
Deserialize implementations should expect to
deserialize their human-readable form. Read more§impl FromStr for Value
impl FromStr for Value
§type Err = Infallible
type Err = Infallible
§impl Serialize for Value
impl Serialize for Value
§fn serialize<S>(
&self,
ser: S
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
S: Serializer,
fn serialize<S>(
&self,
ser: S
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
S: Serializer,
Auto Trait Implementations§
impl RefUnwindSafe for Value
impl Send for Value
impl Sync for Value
impl Unpin for Value
impl UnwindSafe for Value
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
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>
§impl<T> IntoCollection<T> for T
impl<T> IntoCollection<T> for T
§fn into_collection<A>(self) -> SmallVec<A>where
A: Array<Item = T>,
fn into_collection<A>(self) -> SmallVec<A>where
A: Array<Item = T>,
self into a collection.fn mapped<U, F, A>(self, f: F) -> SmallVec<A>where
F: FnMut(T) -> U,
A: Array<Item = U>,
§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
§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();§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
§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();§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
§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();§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
§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();§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);