Struct usvg::strict_num::NormalizedF64
pub struct NormalizedF64(/* private fields */);
Expand description
An immutable, finite f64
in a 0..=1 range.
Implementations§
§impl NormalizedF64
impl NormalizedF64
pub const ZERO: NormalizedF64 = _
pub const ZERO: NormalizedF64 = _
A NormalizedF64
value initialized with zero.
pub const ONE: NormalizedF64 = _
pub const ONE: NormalizedF64 = _
A NormalizedF64
value initialized with one.
pub fn new(n: f64) -> Option<NormalizedF64>
pub fn new(n: f64) -> Option<NormalizedF64>
Creates a NormalizedF64
if the given value is in a 0..=1 range.
pub const unsafe fn new_unchecked(n: f64) -> NormalizedF64
pub const unsafe fn new_unchecked(n: f64) -> NormalizedF64
pub fn new_clamped(n: f64) -> NormalizedF64
pub fn new_clamped(n: f64) -> NormalizedF64
Creates a NormalizedF64
clamping the given value to a 0..=1 range.
Returns zero in case of NaN or infinity.
pub fn new_u8(n: u8) -> NormalizedF64
pub fn new_u8(n: u8) -> NormalizedF64
Creates a NormalizedF64
by dividing the given value by 255.
pub fn new_u16(n: u16) -> NormalizedF64
pub fn new_u16(n: u16) -> NormalizedF64
Creates a NormalizedF64
by dividing the given value by 65535.
pub const fn get_finite(&self) -> FiniteF64
pub const fn get_finite(&self) -> FiniteF64
Returns the value as a FiniteF64
.
Trait Implementations§
§impl ApproxEq for NormalizedF64
impl ApproxEq for NormalizedF64
§type Margin = F64Margin
type Margin = F64Margin
This type type defines a margin within which two values are to be
considered approximately equal. It must implement
Default
so that
approx_eq()
can be called on unknown types.§fn approx_eq<M>(self, other: NormalizedF64, margin: M) -> bool
fn approx_eq<M>(self, other: NormalizedF64, margin: M) -> bool
This method tests that the
self
and other
values are equal within margin
of each other.§impl ApproxEqUlps for NormalizedF64
impl ApproxEqUlps for NormalizedF64
type Flt = f64
§fn approx_eq_ulps(&self, other: &NormalizedF64, ulps: i64) -> bool
fn approx_eq_ulps(&self, other: &NormalizedF64, ulps: i64) -> bool
This method tests for
self
and other
values to be approximately equal
within ULPs (Units of Least Precision) floating point representations.
Differing signs are always unequal with this method, and zeroes are only
equal to zeroes. Use approx_eq() from the ApproxEq trait if that is more
appropriate.§fn approx_ne_ulps(&self, other: &Self, ulps: <Self::Flt as Ulps>::U) -> bool
fn approx_ne_ulps(&self, other: &Self, ulps: <Self::Flt as Ulps>::U) -> bool
This method tests for
self
and other
values to be not approximately
equal within ULPs (Units of Least Precision) floating point representations.
Differing signs are always unequal with this method, and zeroes are only
equal to zeroes. Use approx_eq() from the ApproxEq trait if that is more
appropriate.§impl Clone for NormalizedF64
impl Clone for NormalizedF64
§fn clone(&self) -> NormalizedF64
fn clone(&self) -> NormalizedF64
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 more§impl Debug for NormalizedF64
impl Debug for NormalizedF64
§impl Display for NormalizedF64
impl Display for NormalizedF64
§impl Hash for NormalizedF64
impl Hash for NormalizedF64
§impl Mul for NormalizedF64
impl Mul for NormalizedF64
§type Output = NormalizedF64
type Output = NormalizedF64
The resulting type after applying the
*
operator.§fn mul(self, rhs: NormalizedF64) -> <NormalizedF64 as Mul>::Output
fn mul(self, rhs: NormalizedF64) -> <NormalizedF64 as Mul>::Output
Performs the
*
operation. Read more§impl Ord for NormalizedF64
impl Ord for NormalizedF64
§impl PartialEq<f64> for NormalizedF64
impl PartialEq<f64> for NormalizedF64
§impl PartialEq for NormalizedF64
impl PartialEq for NormalizedF64
§fn eq(&self, other: &NormalizedF64) -> bool
fn eq(&self, other: &NormalizedF64) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.§impl PartialOrd for NormalizedF64
impl PartialOrd for NormalizedF64
§fn partial_cmp(&self, other: &NormalizedF64) -> Option<Ordering>
fn partial_cmp(&self, other: &NormalizedF64) -> 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 moreimpl Copy for NormalizedF64
impl Eq for NormalizedF64
impl StructuralEq for NormalizedF64
impl StructuralPartialEq for NormalizedF64
Auto Trait Implementations§
impl RefUnwindSafe for NormalizedF64
impl Send for NormalizedF64
impl Sync for NormalizedF64
impl Unpin for NormalizedF64
impl UnwindSafe for NormalizedF64
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