pub struct AdjustedBit { /* private fields */ }Expand description
Generated from the Bit::get_adjusted_unit method or the the Bit::get_appropriate_unit method.
For accuracy representation, utilize the Bit struct.
Implementations§
Source§impl AdjustedBit
Methods for getting values.
impl AdjustedBit
Methods for getting values.
Sourcepub fn get_bit(&self) -> Bit
Available on crate feature bit only.
pub fn get_bit(&self) -> Bit
bit only.Create a new Bit instance from this AdjustedBit instance.
§Examples
use byte_unit::{Bit, Unit};
let bit = Bit::from_u64_with_unit(1555, Unit::Kbit).unwrap();
let adjusted_bit = bit.get_adjusted_unit(Unit::Mbit);
let bit_back = adjusted_bit.get_bit();
assert_eq!(bit, bit_back);§Points to Note
- The result may not be logically equal to the original
Bitinstance due to the accuracy of floating-point numbers.
Trait Implementations§
Source§impl Clone for AdjustedBit
Available on crate feature bit only.
impl Clone for AdjustedBit
bit only.Source§fn clone(&self) -> AdjustedBit
fn clone(&self) -> AdjustedBit
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for AdjustedBit
Available on crate feature bit only.
impl Debug for AdjustedBit
bit only.Source§impl<'de> Deserialize<'de> for AdjustedBit
Available on crate features serde and bit only.
impl<'de> Deserialize<'de> for AdjustedBit
serde and bit 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 AdjustedBit
Available on crate feature bit only.
impl Display for AdjustedBit
bit only.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::{Bit, Unit};
let bit = Bit::from_u64_with_unit(1555, Unit::Kbit).unwrap();
let adjusted_bit = bit.get_adjusted_unit(Unit::Mbit);
assert_eq!("1.555 Mb", adjusted_bit.to_string());use byte_unit::{Bit, UnitType};
let bit = Bit::from_u64(10000);
let adjusted_bit_based_2 = bit.get_appropriate_unit(UnitType::Binary);
let adjusted_bit_based_10 = bit.get_appropriate_unit(UnitType::Decimal);
assert_eq!("9.765625 Kib", format!("{adjusted_bit_based_2}"));
assert_eq!("10 Kb", format!("{adjusted_bit_based_10}"));
// with precision
assert_eq!("9.77 Kib", format!("{adjusted_bit_based_2:.2}"));
assert_eq!("10.00 Kb", format!("{adjusted_bit_based_10:.2}"));
// without any unnecessary fractional part
assert_eq!("9.77 Kib", format!("{adjusted_bit_based_2:#.2}"));
assert_eq!("10 Kb", format!("{adjusted_bit_based_10:#.2}"));
// with a width, left alignment
assert_eq!("9.77 Kib", format!("{adjusted_bit_based_2:10.2}"));
assert_eq!("10.00 Kb", format!("{adjusted_bit_based_10:10.2}"));
// with a width, right alignment
assert_eq!(" 9.77 Kib", format!("{adjusted_bit_based_2:>10.2}"));
assert_eq!(" 10.00 Kb", format!("{adjusted_bit_based_10:>10.2}"));
// with a width, right alignment, more spaces between the value and the unit
assert_eq!(" 9.77 Kib", format!("{adjusted_bit_based_2:>+10.2}"));
assert_eq!(" 10.00 Kb", format!("{adjusted_bit_based_10:>+10.2}"));
// no spaces between the value and the unit
assert_eq!("9.765625Kib", format!("{adjusted_bit_based_2:-}"));
assert_eq!("10Kb", format!("{adjusted_bit_based_10:-}"));Source§impl From<AdjustedBit> for Bit
Available on crate feature bit only.
impl From<AdjustedBit> for Bit
bit only.Source§fn from(value: AdjustedBit) -> Self
fn from(value: AdjustedBit) -> Self
Source§impl From<AdjustedBit> for Unit
Available on crate feature bit only.
impl From<AdjustedBit> for Unit
bit only.Source§fn from(value: AdjustedBit) -> Self
fn from(value: AdjustedBit) -> Self
Source§impl From<AdjustedBit> for f64
Available on crate feature bit only.
impl From<AdjustedBit> for f64
bit only.Source§fn from(value: AdjustedBit) -> Self
fn from(value: AdjustedBit) -> Self
Source§impl From<Bit> for AdjustedBit
Available on crate feature bit only.
impl From<Bit> for AdjustedBit
bit only.Source§fn from(value: Bit) -> Self
fn from(value: Bit) -> Self
unit_type is set to UnitType::Both. See Bit::get_appropriate_unit.
Source§impl<'r> FromFormField<'r> for AdjustedBit
Available on crate features rocket and bit only.
impl<'r> FromFormField<'r> for AdjustedBit
rocket and bit 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 AdjustedBit
Available on crate features rocket and bit only.
impl<'r> FromParam<'r> for AdjustedBit
rocket and bit only.Source§type Error = ParseError
type Error = ParseError
Source§impl FromStr for AdjustedBit
Available on crate feature bit only.
impl FromStr for AdjustedBit
bit only.Source§impl JsonSchema for AdjustedBit
Available on crate features schemars and bit only.
impl JsonSchema for AdjustedBit
schemars and bit only.Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read moreSource§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§impl Ord for AdjustedBit
Available on crate feature bit only.
impl Ord for AdjustedBit
bit only.Source§fn cmp(&self, other: &AdjustedBit) -> Ordering
fn cmp(&self, other: &AdjustedBit) -> Ordering
1.21.0 · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl PartialEq for AdjustedBit
Available on crate feature bit only.
impl PartialEq for AdjustedBit
bit only.Source§impl PartialOrd for AdjustedBit
Available on crate feature bit only.
impl PartialOrd for AdjustedBit
bit only.Source§impl Serialize for AdjustedBit
Available on crate features serde and bit only.
impl Serialize for AdjustedBit
serde and bit only.impl Copy for AdjustedBit
bit only.impl Eq for AdjustedBit
bit only.Auto Trait Implementations§
impl Freeze for AdjustedBit
impl RefUnwindSafe for AdjustedBit
impl Send for AdjustedBit
impl Sync for AdjustedBit
impl Unpin for AdjustedBit
impl UnwindSafe for AdjustedBit
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§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,
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,
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>
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>
Source§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
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>
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>
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>
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>
Source§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
Source§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
Source§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
Source§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
Source§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
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 rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
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);