pub struct Byte { /* private fields */ }
Expand description
Represent the n-bytes data. Use associated functions: from_unit
, from_bytes
, from_string
, to create the instance.
Implementations
sourceimpl Byte
impl Byte
sourcepub fn from_unit(value: f64, unit: ByteUnit) -> Result<Byte, ByteError>
pub fn from_unit(value: f64, unit: ByteUnit) -> Result<Byte, ByteError>
Create a new Byte
object from a specified value and a unit. Accuracy should be taken care of.
Examples
extern crate byte_unit;
use byte_unit::{Byte, ByteUnit};
let result = Byte::from_unit(1500f64, ByteUnit::KB).unwrap();
assert_eq!(result.get_bytes(), 1500000u128);
sourcepub fn from_bytes(bytes: u128) -> Byte
pub fn from_bytes(bytes: u128) -> Byte
Create a new Byte
object from bytes.
Examples
extern crate byte_unit;
use byte_unit::{Byte, ByteUnit};
let result = Byte::from_bytes(1500000u128);
assert_eq!(result.get_bytes(), 1500000u128);
sourcepub fn from_string<S: AsRef<str>>(string: S) -> Result<Byte, ByteError>
pub fn from_string<S: AsRef<str>>(string: S) -> Result<Byte, ByteError>
Create a new Byte
object from string. Accuracy should be taken care of.
Examples
extern crate byte_unit;
use byte_unit::{Byte, ByteUnit};
let result = Byte::from_string("123KiB").unwrap();
assert_eq!(result, Byte::from_unit(123f64, ByteUnit::KiB).unwrap());
extern crate byte_unit;
use byte_unit::{Byte, ByteUnit};
let result = Byte::from_string("50.84 MB").unwrap();
assert_eq!(result, Byte::from_unit(50.84f64, ByteUnit::MB).unwrap());
extern crate byte_unit;
use byte_unit::{Byte, ByteUnit};
let result = Byte::from_string("8 b").unwrap(); // 8 bits
assert_eq!(result.get_bytes(), 1u128);
sourcepub fn get_bytes(&self) -> u128
pub fn get_bytes(&self) -> u128
Get bytes represented by a Byte
object.
Examples
extern crate byte_unit;
use byte_unit::Byte;
let byte = Byte::from_string("123KiB").unwrap();
let result = byte.get_bytes();
assert_eq!(result, 125952);
extern crate byte_unit;
use byte_unit::Byte;
let byte = Byte::from_string("50.84 MB").unwrap();
let result = byte.get_bytes();
assert_eq!(result, 50840000);
sourcepub fn get_appropriate_unit(&self, binary_multiples: bool) -> AdjustedByte
pub fn get_appropriate_unit(&self, binary_multiples: bool) -> AdjustedByte
Find the appropriate unit and value for Byte
object. Accuracy should be taken care of.
Examples
extern crate byte_unit;
use byte_unit::Byte;
let byte = Byte::from_string("123KiB").unwrap();
let adjusted_byte = byte.get_appropriate_unit(false);
assert_eq!(adjusted_byte.to_string(), "125.95 KB");
extern crate byte_unit;
use byte_unit::Byte;
let byte = Byte::from_string("50.84 MB").unwrap();
let adjusted_byte = byte.get_appropriate_unit(true);
assert_eq!(adjusted_byte.to_string(), "48.48 MiB");
sourcepub fn get_adjusted_unit(&self, unit: ByteUnit) -> AdjustedByte
pub fn get_adjusted_unit(&self, unit: ByteUnit) -> AdjustedByte
Adjust the unit and value for Byte
object. Accuracy should be taken care of.
Examples
extern crate byte_unit;
use byte_unit::{Byte, ByteUnit};
let byte = Byte::from_string("123KiB").unwrap();
let adjusted_byte = byte.get_adjusted_unit(ByteUnit::KB);
assert_eq!(adjusted_byte.to_string(), "125.95 KB");
extern crate byte_unit;
use byte_unit::{Byte, ByteUnit};
let byte = Byte::from_string("50.84 MB").unwrap();
let adjusted_byte = byte.get_adjusted_unit(ByteUnit::MiB);
assert_eq!(adjusted_byte.to_string(), "48.48 MiB");
Trait Implementations
sourceimpl Ord for Byte
impl Ord for Byte
1.21.0 · sourcefn 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
1.21.0 · sourcefn min(self, other: Self) -> Selfwhere
Self: Sized,
fn min(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the minimum of two values. Read more
1.50.0 · sourcefn clamp(self, min: Self, max: Self) -> Selfwhere
Self: Sized + PartialOrd<Self>,
fn clamp(self, min: Self, max: Self) -> Selfwhere
Self: Sized + PartialOrd<Self>,
Restrict a value to a certain interval. Read more
sourceimpl PartialOrd<Byte> for Byte
impl PartialOrd<Byte> for Byte
sourcefn partial_cmp(&self, other: &Byte) -> Option<Ordering>
fn partial_cmp(&self, other: &Byte) -> Option<Ordering>
1.0.0 · sourcefn 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 moreimpl Copy for Byte
impl Eq for Byte
impl StructuralEq for Byte
impl StructuralPartialEq for Byte
Auto Trait Implementations
impl RefUnwindSafe for Byte
impl Send for Byte
impl Sync for Byte
impl Unpin for Byte
impl UnwindSafe for Byte
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more