pub struct Byte(/* private fields */);
byte
and u128
only.Expand description
Representing the size in bytes.
Implementations§
Source§impl Byte
impl Byte
Associated functions for generating AdjustedByte
.
Sourcepub fn get_adjusted_unit(self, unit: Unit) -> AdjustedByte
pub fn get_adjusted_unit(self, unit: Unit) -> AdjustedByte
Adjust the unit and value for this Byte
instance.
§Examples
use byte_unit::{AdjustedByte, Byte, Unit};
let byte = Byte::parse_str("123KiB", true).unwrap();
let adjusted_byte = byte.get_adjusted_unit(Unit::KB);
assert_eq!("125.952 KB", adjusted_byte.to_string());
use byte_unit::{AdjustedByte, Byte, Unit};
let byte = Byte::parse_str("50.84 MB", true).unwrap();
let adjusted_byte = byte.get_adjusted_unit(Unit::MiB);
assert_eq!("48.48480224609375 MiB", adjusted_byte.to_string());
Sourcepub fn get_appropriate_unit(&self, unit_type: UnitType) -> AdjustedByte
pub fn get_appropriate_unit(&self, unit_type: UnitType) -> AdjustedByte
Find the appropriate unit and value for this Byte
instance.
§Examples
use byte_unit::{Byte, UnitType};
let byte = Byte::parse_str("123KiB", true).unwrap();
let adjusted_byte = byte.get_appropriate_unit(UnitType::Decimal);
assert_eq!("125.952 KB", adjusted_byte.to_string());
use byte_unit::{Byte, UnitType};
let byte = Byte::parse_str("50.84 MB", true).unwrap();
let adjusted_byte = byte.get_appropriate_unit(UnitType::Binary);
assert_eq!("48.48480224609375 MiB", adjusted_byte.to_string());
Source§impl Byte
impl Byte
Associated functions for building Byte
instances using Decimal
.
Sourcepub fn from_decimal(size: Decimal) -> Option<Self>
pub fn from_decimal(size: Decimal) -> Option<Self>
Create a new Byte
instance from a size in bytes.
§Examples
use byte_unit::Byte;
use rust_decimal::Decimal;
let byte = Byte::from_decimal(Decimal::from(15000000u64)).unwrap(); // 15 MB
§Points to Note
- If the input size is too large (the maximum is 1027 - 1 if the
u128
feature is enabled, or 264 - 1 otherwise) or not greater than or equal to 0, this function will returnNone
. - The fractional part will be rounded up.
Source§impl Byte
impl Byte
Associated functions for building Byte
instances using Decimal
(with Unit
).
Sourcepub fn from_decimal_with_unit(size: Decimal, unit: Unit) -> Option<Self>
pub fn from_decimal_with_unit(size: Decimal, unit: Unit) -> Option<Self>
Create a new Byte
instance from a size of bytes with a unit.
§Examples
use byte_unit::{Byte, Unit};
use rust_decimal::Decimal;
let byte = Byte::from_decimal_with_unit(Decimal::from(15u64), Unit::MB).unwrap(); // 15 MB
§Points to Note
- If the calculated byte is too large or not greater than or equal to 0, this function will return
None
. - The calculated byte will be rounded up.
Source§impl Byte
impl Byte
Methods for finding an unit using Decimal
.
Sourcepub fn get_recoverable_unit(
self,
allow_in_bits: bool,
precision: usize,
) -> (Decimal, Unit)
pub fn get_recoverable_unit( self, allow_in_bits: bool, precision: usize, ) -> (Decimal, Unit)
Find the appropriate unit and value that can be used to recover back to this Byte
precisely.
§Examples
use byte_unit::{Byte, Unit};
let byte = Byte::from_u64(3670016);
assert_eq!(
(3.5f64.try_into().unwrap(), Unit::MiB),
byte.get_recoverable_unit(false, 3)
);
use byte_unit::{Byte, Unit};
let byte = Byte::from_u64(437500);
assert_eq!(
(3.5f64.try_into().unwrap(), Unit::Mbit),
byte.get_recoverable_unit(true, 3)
);
use byte_unit::{Byte, Unit};
let byte = Byte::from_u64(437500);
assert_eq!(
(437.5f64.try_into().unwrap(), Unit::KB),
byte.get_recoverable_unit(false, 3)
);
§Points to Note
precision
should be smaller or equal to26
if theu128
feature is enabled, otherwise19
. The typicalprecision
is3
.
Source§impl Byte
impl Byte
Associated functions for parsing strings.
Sourcepub fn parse_str<S: AsRef<str>>(
s: S,
ignore_case: bool,
) -> Result<Self, ParseError>
pub fn parse_str<S: AsRef<str>>( s: S, ignore_case: bool, ) -> Result<Self, ParseError>
Create a new Byte
instance from a string.
The string may be "10"
, "10B"
, "10M"
, "10MB"
, "10MiB"
, "80b"
, "80Mb"
, "80Mbit"
.
You can ignore the case of “B” (byte), which means b will still be treated as bytes instead of bits.
§Examples
let byte = Byte::parse_str("123Kib", true).unwrap(); // 123 * 1024 bytes
let byte = Byte::parse_str("123Kib", false).unwrap(); // 123 * 1024 bits = 123 * 1024 / 8 bytes
Source§impl Byte
impl Byte
Associated functions for building Byte
instances.
Sourcepub const unsafe fn from_u128_unsafe(size: u128) -> Self
pub const unsafe fn from_u128_unsafe(size: u128) -> Self
Sourcepub const fn from_u64(size: u64) -> Self
pub const fn from_u64(size: u64) -> Self
Create a new Byte
instance from a size in bytes.
§Examples
let byte = Byte::from_u64(15000000); // 15 MB
Sourcepub fn from_f64(size: f64) -> Option<Self>
pub fn from_f64(size: f64) -> Option<Self>
Create a new Byte
instance from a size in bytes.
§Examples
let byte = Byte::from_f64(15000000.0).unwrap(); // 15 MB
§Points to Note
- If the input size is too large (the maximum is 1027 - 1 if the
u128
feature is enabled, or 264 - 1 otherwise) or not greater than or equal to 0, this function will returnNone
. - The fractional part will be rounded up.
Sourcepub fn from_f32(size: f32) -> Option<Self>
pub fn from_f32(size: f32) -> Option<Self>
Create a new Byte
instance from a size in bytes.
§Examples
let byte = Byte::from_f32(15000000.0).unwrap(); // 15 MB
§Points to Note
- If the input size is too large (the maximum is 1027 - 1 if the
u128
feature is enabled, or 264 - 1 otherwise) or not greater than or equal to 0, this function will returnNone
. - The fractional part will be rounded up.
Source§impl Byte
impl Byte
Associated functions for building Byte
instances (with Unit
).
Sourcepub const fn from_u128_with_unit(size: u128, unit: Unit) -> Option<Self>
pub const fn from_u128_with_unit(size: u128, unit: Unit) -> Option<Self>
Create a new Byte
instance from a size of bytes with a unit.
§Examples
use byte_unit::{Byte, Unit};
let byte = Byte::from_u128_with_unit(15, Unit::MB).unwrap(); // 15 MB
§Points to Note
- If the calculated byte is too large, this function will return
None
. - If the input unit is
Bit
, the calculated byte will be rounded up.
Sourcepub const fn from_u64_with_unit(size: u64, unit: Unit) -> Option<Self>
pub const fn from_u64_with_unit(size: u64, unit: Unit) -> Option<Self>
Create a new Byte
instance from a size of bytes with a unit.
§Examples
use byte_unit::{Byte, Unit};
let byte = Byte::from_u64_with_unit(15, Unit::MB).unwrap(); // 15 MB
§Points to Note
- If the calculated byte is too large, this function will return
None
. - If the input unit is
Bit
, the calculated byte will be rounded up.
Sourcepub fn from_f64_with_unit(size: f64, unit: Unit) -> Option<Self>
pub fn from_f64_with_unit(size: f64, unit: Unit) -> Option<Self>
Create a new Byte
instance from a size of bytes with a unit.
§Examples
use byte_unit::{Byte, Unit};
let byte = Byte::from_f64_with_unit(15.0, Unit::MB).unwrap(); // 15 MB
§Points to Note
- If the calculated byte is too large or not greater than or equal to 0, this function will return
None
. - The calculated byte will be rounded up.
Sourcepub fn from_f32_with_unit(size: f32, unit: Unit) -> Option<Self>
pub fn from_f32_with_unit(size: f32, unit: Unit) -> Option<Self>
Create a new Byte
instance from a size of bytes with a unit.
§Examples
use byte_unit::{Byte, Unit};
let byte = Byte::from_f32_with_unit(15.0, Unit::MB).unwrap(); // 15 MB
§Points to Note
- If the calculated byte is too large or not greater than or equal to 0, this function will return
None
. - The calculated byte will be rounded up.
Sourcepub const fn from_i128_with_unit(size: i128, unit: Unit) -> Option<Self>
pub const fn from_i128_with_unit(size: i128, unit: Unit) -> Option<Self>
Create a new Byte
instance from a size of bytes with a unit.
§Examples
use byte_unit::{Byte, Unit};
let byte = Byte::from_i128_with_unit(15, Unit::MB).unwrap(); // 15 MB
§Points to Note
- If the calculated byte is too large or negative, this function will return
None
. - The calculated byte will be rounded up.
Sourcepub const fn from_i64_with_unit(size: i64, unit: Unit) -> Option<Self>
pub const fn from_i64_with_unit(size: i64, unit: Unit) -> Option<Self>
Create a new Byte
instance from a size of bytes with a unit.
§Examples
use byte_unit::{Byte, Unit};
let byte = Byte::from_i64_with_unit(15, Unit::MB).unwrap(); // 15 MB
§Points to Note
- If the calculated byte is too large or negative, this function will return
None
. - The calculated byte will be rounded up.
Source§impl Byte
impl Byte
Methods for converting a Byte
instance into a primitive integer.
Sourcepub const fn as_u128(self) -> u128
pub const fn as_u128(self) -> u128
Retrieve the byte represented by this Byte
instance.
§Examples
use byte_unit::Byte;
let byte = Byte::parse_str("123Kib", true).unwrap();
let result = byte.as_u128();
assert_eq!(125952, result);
use byte_unit::Byte;
let byte = Byte::parse_str("123Kib", false).unwrap();
let result = byte.as_u128();
assert_eq!(15744, result);
Sourcepub const fn as_u64(self) -> u64
pub const fn as_u64(self) -> u64
Retrieve the byte represented by this Byte
instance. When the u128
feature is enabled, if the byte is actually greater than 264 - 1, it will return 264 - 1.
§Examples
use byte_unit::Byte;
let byte = Byte::parse_str("1kb", true).unwrap();
let result = byte.as_u64();
assert_eq!(1000, result);
use byte_unit::Byte;
let byte = Byte::parse_str("1zb", true).unwrap();
let result = byte.as_u64();
assert_eq!(u64::MAX, result);
Sourcepub const fn as_u64_checked(self) -> Option<u64>
pub const fn as_u64_checked(self) -> Option<u64>
Retrieve the byte represented by this Byte
instance.
§Examples
use byte_unit::Byte;
let byte = Byte::parse_str("1kb", true).unwrap();
let result = byte.as_u64_checked();
assert_eq!(Some(1000), result);
use byte_unit::Byte;
let byte = Byte::parse_str("1zb", true).unwrap();
let result = byte.as_u64_checked();
assert_eq!(None, result);
Source§impl Byte
impl Byte
Methods for calculation.
Sourcepub const fn subtract(self, rhs: Byte) -> Option<Byte>
pub const fn subtract(self, rhs: Byte) -> Option<Byte>
Subtract another Byte
instance.
§Examples
use byte_unit::Byte;
let byte_1 = Byte::from_u64(1024);
let byte_2 = Byte::from_u64(512);
let byte = byte_1.subtract(byte_2).unwrap();
assert_eq!(512, byte.as_u64());
§Points to Note
- If the right-hand side is bigger then this
Byte
instance, this function will returnNone
.
Sourcepub const fn divide(self, rhs: usize) -> Option<Byte>
pub const fn divide(self, rhs: usize) -> Option<Byte>
Divided by an unsigned integer.
§Examples
use byte_unit::Byte;
let count = 100;
let byte = Byte::from_u64(1024);
let total_byte = byte.divide(100).unwrap();
assert_eq!(10, total_byte.as_u64());
§Points to Note
- If the input right-hand side is zero, this function will return
None
. - The result will be rounded down.
Source§impl Byte
impl Byte
Methods for finding an unit.
Sourcepub const fn get_exact_unit(self, allow_in_bits: bool) -> (u128, Unit)
pub const fn get_exact_unit(self, allow_in_bits: bool) -> (u128, Unit)
Obtain the largest unit which is the greatest factor of this Byte
instance.
§Examples
use byte_unit::{Byte, Unit};
let byte = Byte::from_u64(3145728);
let (n, unit) = byte.get_exact_unit(true);
assert_eq!(3, n);
assert_eq!(Unit::MiB, unit);
use byte_unit::{Byte, Unit};
let byte = Byte::from_u64(375000);
let (n, unit) = byte.get_exact_unit(true);
assert_eq!(3, n);
assert_eq!(Unit::Mbit, unit);
use byte_unit::{Byte, Unit};
let byte = Byte::from_u64(375000);
let (n, unit) = byte.get_exact_unit(false);
assert_eq!(375, n);
assert_eq!(Unit::KB, unit);
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Byte
Available on crate feature serde
only.
impl<'de> Deserialize<'de> for Byte
serde
only.Source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
Source§impl Display for Byte
impl Display for Byte
Source§fn fmt(&self, f: &mut Formatter<'_>) -> Result
fn fmt(&self, f: &mut Formatter<'_>) -> Result
Formats the value using the given formatter.
§Examples
use byte_unit::{Byte, Unit};
let byte = Byte::from_u64_with_unit(1555, Unit::KB).unwrap();
assert_eq!("1555000", byte.to_string());
use byte_unit::{Byte, UnitType};
let byte_based_2 = Byte::from_u64(10240);
let byte_based_10 = Byte::from_u64(10000);
assert_eq!("10240", format!("{byte_based_2}"));
assert_eq!("10000", format!("{byte_based_10}"));
// with an exact unit
assert_eq!("10 KiB", format!("{byte_based_2:#}"));
assert_eq!("10 KB", format!("{byte_based_10:#}"));
// with an exact unit, no spaces between the value and the unit
assert_eq!("10KiB", format!("{byte_based_2:-#}"));
assert_eq!("10KB", format!("{byte_based_10:-#}"));
// with a width, left alignment
assert_eq!("10 KiB", format!("{byte_based_2:#10}"));
assert_eq!("10 KB", format!("{byte_based_10:#10}"));
// with a width, right alignment
assert_eq!(" 10 KiB", format!("{byte_based_2:>#10}"));
assert_eq!(" 10 KB", format!("{byte_based_10:>#10}"));
// with a width, right alignment, more spaces between the value and the unit
assert_eq!(" 10 KiB", format!("{byte_based_2:>+#10}"));
assert_eq!(" 10 KB", format!("{byte_based_10:>+#10}"));
use byte_unit::{Byte, UnitType};
let byte = Byte::from_u64(3211776);
assert_eq!("3211776", format!("{byte}"));
// with a unit, still precisely
assert_eq!("3136.5 KiB", format!("{byte:#}"));
// with a unit and a larger precision (default is 3), still precisely
assert_eq!("3.211776 MB", format!("{byte:#.6}"));
// with a unit and a smaller precision (default is 3), still precisely
assert_eq!("3211776 B", format!("{byte:#.0}"));
Source§impl From<AdjustedByte> for Byte
impl From<AdjustedByte> for Byte
Source§fn from(value: AdjustedByte) -> Self
fn from(value: AdjustedByte) -> Self
Source§impl From<Byte> for AdjustedByte
impl From<Byte> for AdjustedByte
Source§fn from(value: Byte) -> Self
fn from(value: Byte) -> Self
unit_type
is set to UnitType::Both
. See Byte::get_appropriate_unit
.
Source§impl<'r> FromFormField<'r> for Byte
Available on crate feature rocket
only.
impl<'r> FromFormField<'r> for Byte
rocket
only.Source§fn from_value(v: ValueField<'r>) -> Result<'r, Self>
fn from_value(v: ValueField<'r>) -> Result<'r, Self>
T
from a form value field. Read moreSource§impl<'r> FromParam<'r> for Byte
Available on crate feature rocket
only.
impl<'r> FromParam<'r> for Byte
rocket
only.Source§type Error = ParseError
type Error = ParseError
Source§impl Ord for Byte
impl Ord for Byte
Source§impl PartialOrd<Byte> for u128
impl PartialOrd<Byte> for u128
Source§impl PartialOrd<Byte> for u64
impl PartialOrd<Byte> for u64
Source§impl PartialOrd<u128> for Byte
impl PartialOrd<u128> for Byte
Source§impl PartialOrd<u64> for Byte
impl PartialOrd<u64> for Byte
Source§impl PartialOrd for Byte
impl PartialOrd for Byte
impl Copy for Byte
impl Eq for Byte
impl StructuralPartialEq for Byte
Auto Trait Implementations§
impl Freeze for Byte
impl RefUnwindSafe for Byte
impl Send for Byte
impl Sync for Byte
impl Unpin for Byte
impl UnwindSafe for Byte
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)Source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.Source§impl<'v, T> FromForm<'v> for Twhere
T: FromFormField<'v>,
impl<'v, T> FromForm<'v> for Twhere
T: FromFormField<'v>,
Source§fn init(opts: Options) -> <T as FromForm<'v>>::Context
fn init(opts: Options) -> <T as FromForm<'v>>::Context
Self
.Source§fn push_value(ctxt: &mut <T as FromForm<'v>>::Context, field: ValueField<'v>)
fn push_value(ctxt: &mut <T as FromForm<'v>>::Context, field: ValueField<'v>)
field
.Source§fn push_data<'life0, 'life1, 'async_trait>(
ctxt: &'life0 mut FromFieldContext<'v, T>,
field: DataField<'v, 'life1>,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
'v: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
T: 'async_trait,
fn push_data<'life0, 'life1, 'async_trait>(
ctxt: &'life0 mut FromFieldContext<'v, T>,
field: DataField<'v, 'life1>,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
'v: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
T: 'async_trait,
field
.Source§fn finalize(ctxt: <T as FromForm<'v>>::Context) -> Result<T, Errors<'v>>
fn finalize(ctxt: <T as FromForm<'v>>::Context) -> Result<T, Errors<'v>>
Errors
otherwise.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>
Source§impl<T> IntoCollection<T> for T
impl<T> IntoCollection<T> for T
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
Source§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();
Source§fn bright_black(&self) -> Painted<&T>
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>
fn bright_red(&self) -> Painted<&T>
Source§fn bright_green(&self) -> Painted<&T>
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>
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>
fn bright_blue(&self) -> Painted<&T>
Source§fn bright_magenta(&self) -> Painted<&T>
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>
fn bright_cyan(&self) -> Painted<&T>
Source§fn bright_white(&self) -> Painted<&T>
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>
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>
fn on_primary(&self) -> Painted<&T>
Source§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
Source§fn on_bright_black(&self) -> Painted<&T>
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>
fn on_bright_red(&self) -> Painted<&T>
Source§fn on_bright_green(&self) -> Painted<&T>
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>
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>
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>
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>
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>
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>
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 underline(&self) -> Painted<&T>
fn underline(&self) -> Painted<&T>
Returns self
with the
attr()
set to
Attribute::Underline
.
§Example
println!("{}", value.underline());
Source§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
Returns self
with the
attr()
set to
Attribute::RapidBlink
.
§Example
println!("{}", value.rapid_blink());
Source§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();
Source§fn clear(&self) -> Painted<&T>
👎Deprecated since 1.0.1: renamed to resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.
fn clear(&self) -> Painted<&T>
resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.Source§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);