Struct byte_unit::AdjustedByte
source · pub struct AdjustedByte { /* private fields */ }
Available on crate feature
byte
only.Expand description
Generated from the Byte::get_adjusted_unit
method or the the Byte::get_appropriate_unit
method.
For accuracy representation, utilize the Byte
struct.
Implementations§
source§impl AdjustedByte
impl AdjustedByte
Methods for getting values.
sourcepub fn get_byte(&self) -> Byte
pub fn get_byte(&self) -> Byte
Create a new Byte
instance from this AdjustedByte
instance.
Examples
use byte_unit::{Byte, Unit};
let byte = Byte::from_u64_with_unit(1555, Unit::KB).unwrap();
let adjusted_byte = byte.get_adjusted_unit(Unit::MB);
let byte_back = adjusted_byte.get_byte();
assert_eq!(byte, byte_back);
Points to Note
- The result may not be logically equal to the original
Byte
instance due to the accuracy of floating-point numbers.
Trait Implementations§
source§impl Clone for AdjustedByte
impl Clone for AdjustedByte
source§fn clone(&self) -> AdjustedByte
fn clone(&self) -> AdjustedByte
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for AdjustedByte
impl Debug for AdjustedByte
source§impl<'de> Deserialize<'de> for AdjustedByte
Available on crate feature serde
only.
impl<'de> Deserialize<'de> for AdjustedByte
Available on crate feature
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>,
Deserialize this value from the given Serde deserializer. Read more
source§impl Display for AdjustedByte
impl Display for AdjustedByte
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();
let adjusted_byte = byte.get_adjusted_unit(Unit::MB);
assert_eq!("1.555 MB", adjusted_byte.to_string());
use byte_unit::{Byte, UnitType};
let byte = Byte::from_u64(10000);
let adjusted_byte_based_2 = byte.get_appropriate_unit(UnitType::Binary);
let adjusted_byte_based_10 = byte.get_appropriate_unit(UnitType::Decimal);
assert_eq!("9.765625 KiB", format!("{adjusted_byte_based_2}"));
assert_eq!("10 KB", format!("{adjusted_byte_based_10}"));
// with precision
assert_eq!("9.77 KiB", format!("{adjusted_byte_based_2:.2}"));
assert_eq!("10.00 KB", format!("{adjusted_byte_based_10:.2}"));
// without any unnecessary fractional part
assert_eq!("9.77 KiB", format!("{adjusted_byte_based_2:#.2}"));
assert_eq!("10 KB", format!("{adjusted_byte_based_10:#.2}"));
// with a width, left alignment
assert_eq!("9.77 KiB", format!("{adjusted_byte_based_2:10.2}"));
assert_eq!("10.00 KB", format!("{adjusted_byte_based_10:10.2}"));
// with a width, right alignment
assert_eq!(" 9.77 KiB", format!("{adjusted_byte_based_2:>10.2}"));
assert_eq!(" 10.00 KB", format!("{adjusted_byte_based_10:>10.2}"));
// with a width, right alignment, more spaces between the value and the unit
assert_eq!(" 9.77 KiB", format!("{adjusted_byte_based_2:>+10.2}"));
assert_eq!(" 10.00 KB", format!("{adjusted_byte_based_10:>+10.2}"));
// no spaces between the value and the unit
assert_eq!("9.765625KiB", format!("{adjusted_byte_based_2:-}"));
assert_eq!("10KB", format!("{adjusted_byte_based_10:-}"));
source§impl From<AdjustedByte> for Byte
impl From<AdjustedByte> for Byte
source§fn from(value: AdjustedByte) -> Self
fn from(value: AdjustedByte) -> Self
Converts to this type from the input type.
source§impl From<AdjustedByte> for Unit
impl From<AdjustedByte> for Unit
source§fn from(value: AdjustedByte) -> Self
fn from(value: AdjustedByte) -> Self
Converts to this type from the input type.
source§impl From<AdjustedByte> for f64
impl From<AdjustedByte> for f64
source§fn from(value: AdjustedByte) -> Self
fn from(value: AdjustedByte) -> Self
Converts to this type from the input type.
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 FromStr for AdjustedByte
impl FromStr for AdjustedByte
source§fn from_str(s: &str) -> Result<Self, Self::Err>
fn from_str(s: &str) -> Result<Self, Self::Err>
ignore_case
is set tofalse
. SeeByte::parse_str
.unit_type
is set toUnitType::Both
. SeeByte::get_appropriate_unit
.
§type Err = ParseError
type Err = ParseError
The associated error which can be returned from parsing.
source§impl Ord for AdjustedByte
impl Ord for AdjustedByte
source§fn cmp(&self, other: &AdjustedByte) -> Ordering
fn cmp(&self, other: &AdjustedByte) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
source§impl PartialEq for AdjustedByte
impl PartialEq for AdjustedByte
source§fn eq(&self, other: &AdjustedByte) -> bool
fn eq(&self, other: &AdjustedByte) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.source§impl PartialOrd for AdjustedByte
impl PartialOrd for AdjustedByte
source§fn partial_cmp(&self, other: &AdjustedByte) -> Option<Ordering>
fn partial_cmp(&self, other: &AdjustedByte) -> Option<Ordering>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read moresource§impl Serialize for AdjustedByte
Available on crate feature serde
only.
impl Serialize for AdjustedByte
Available on crate feature
serde
only.impl Copy for AdjustedByte
impl Eq for AdjustedByte
Auto Trait Implementations§
impl RefUnwindSafe for AdjustedByte
impl Send for AdjustedByte
impl Sync for AdjustedByte
impl Unpin for AdjustedByte
impl UnwindSafe for AdjustedByte
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
Mutably borrows from an owned value. Read more