Skip to main content

Volume

Struct Volume 

Source
pub struct Volume(/* private fields */);
Expand description

A volume quantity, stored canonically in cubic meters (m³).

§Construction

use space_units::Volume;
let v = Volume::from_l(500.0);

§Typed arithmetic

Implementations§

Source§

impl Volume

Source

pub const fn from_m3(val: f64) -> Self

Create from cubic meters (m³).

Source

pub const fn from_l(val: f64) -> Self

Create from liters (L).

Source

pub const fn from_cm3(val: f64) -> Self

Create from cubic centimeters (cm³).

Source

pub const fn from_ft3(val: f64) -> Self

Create from cubic feet (ft³).

Source

pub const fn from_gal(val: f64) -> Self

Create from US gallons (gal).

Source

pub const fn in_m3(self) -> f64

Get value in cubic meters (m³).

Source

pub const fn in_l(self) -> f64

Get value in liters (L).

Source

pub const fn in_cm3(self) -> f64

Get value in cubic centimeters (cm³).

Source

pub const fn in_ft3(self) -> f64

Get value in cubic feet (ft³).

Source

pub const fn in_gal(self) -> f64

Get value in US gallons (gal).

Source

pub fn in_unit(self, unit: VolumeUnit) -> f64

Get value in the specified VolumeUnit.

Source

pub fn display_as(self, unit: VolumeUnit) -> DisplayWithUnit

Return a display wrapper that formats this volume in the given unit.

Source

pub fn abs(self) -> Self

Return the absolute value of this volume.

Trait Implementations§

Source§

impl Add for Volume

Source§

type Output = Volume

The resulting type after applying the + operator.
Source§

fn add(self, rhs: Self) -> Self

Performs the + operation. Read more
Source§

impl AddAssign for Volume

Source§

fn add_assign(&mut self, rhs: Self)

Performs the += operation. Read more
Source§

impl Clone for Volume

Source§

fn clone(&self) -> Volume

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Volume

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for Volume

Source§

fn default() -> Volume

Returns the “default value” for a type. Read more
Source§

impl Display for Volume

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Div<Area> for Volume

Source§

type Output = Length

The resulting type after applying the / operator.
Source§

fn div(self, rhs: Area) -> Length

Performs the / operation. Read more
Source§

impl Div<Length> for Volume

Source§

type Output = Area

The resulting type after applying the / operator.
Source§

fn div(self, rhs: Length) -> Area

Performs the / operation. Read more
Source§

impl Div<Volume> for Mass

Source§

type Output = Density

The resulting type after applying the / operator.
Source§

fn div(self, rhs: Volume) -> Density

Performs the / operation. Read more
Source§

impl Div<f64> for Volume

Source§

type Output = Volume

The resulting type after applying the / operator.
Source§

fn div(self, rhs: f64) -> Self

Performs the / operation. Read more
Source§

impl Div for Volume

Source§

type Output = f64

The resulting type after applying the / operator.
Source§

fn div(self, rhs: Self) -> f64

Performs the / operation. Read more
Source§

impl DivAssign<f64> for Volume

Source§

fn div_assign(&mut self, rhs: f64)

Performs the /= operation. Read more
Source§

impl Mul<Density> for Volume

Source§

type Output = Mass

The resulting type after applying the * operator.
Source§

fn mul(self, rhs: Density) -> Mass

Performs the * operation. Read more
Source§

impl Mul<Volume> for Density

Source§

type Output = Mass

The resulting type after applying the * operator.
Source§

fn mul(self, rhs: Volume) -> Mass

Performs the * operation. Read more
Source§

impl Mul<Volume> for f64

Source§

type Output = Volume

The resulting type after applying the * operator.
Source§

fn mul(self, rhs: Volume) -> Volume

Performs the * operation. Read more
Source§

impl Mul<f64> for Volume

Source§

type Output = Volume

The resulting type after applying the * operator.
Source§

fn mul(self, rhs: f64) -> Self

Performs the * operation. Read more
Source§

impl MulAssign<f64> for Volume

Source§

fn mul_assign(&mut self, rhs: f64)

Performs the *= operation. Read more
Source§

impl Neg for Volume

Source§

type Output = Volume

The resulting type after applying the - operator.
Source§

fn neg(self) -> Self

Performs the unary - operation. Read more
Source§

impl PartialEq for Volume

Source§

fn eq(&self, other: &Volume) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialOrd for Volume

Source§

fn partial_cmp(&self, other: &Volume) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · Source§

fn lt(&self, other: &Rhs) -> bool

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

fn le(&self, other: &Rhs) -> bool

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

fn gt(&self, other: &Rhs) -> bool

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

fn ge(&self, other: &Rhs) -> bool

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
Source§

impl Sub for Volume

Source§

type Output = Volume

The resulting type after applying the - operator.
Source§

fn sub(self, rhs: Self) -> Self

Performs the - operation. Read more
Source§

impl SubAssign for Volume

Source§

fn sub_assign(&mut self, rhs: Self)

Performs the -= operation. Read more
Source§

impl Sum for Volume

Source§

fn sum<I: Iterator<Item = Self>>(iter: I) -> Self

Takes an iterator and generates Self from the elements by “summing up” the items.
Source§

impl Copy for Volume

Source§

impl StructuralPartialEq for Volume

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.