Struct FixedInterval

Source
pub struct FixedInterval { /* private fields */ }
Expand description

A real number between lo * 2^-bits and hi * 2^-bits.

Implementations§

Source§

impl FixedInterval

Source

pub fn integer(value: i64, bits: u32) -> Self

Exactly value (an integer), at bits fractional bits.

Source

pub fn from_dyadic(value: &Dyadic, bits: u32) -> Self

The narrowest interval at bits holding value.

Source

pub fn from_f64(value: f64, bits: u32) -> Option<Self>

The narrowest interval at bits holding a finite value.

Source

pub fn bits(&self) -> u32

The fractional bits of the bounds.

Source

pub fn add(&self, other: &Self) -> Self

The sum.

Source

pub fn sub(&self, other: &Self) -> Self

The difference.

Source

pub fn neg(&self) -> Self

The negation.

Source

pub fn mul(&self, other: &Self) -> Self

The product, rounded outward.

Source

pub fn mul_int(&self, factor: i128) -> Self

The product with an integer, exactly.

Source

pub fn div_int(&self, divisor: u64) -> Self

The quotient by a positive integer, rounded outward.

Source

pub fn with_bits(&self, bits: u32) -> Self

The same interval at bits fractional bits, rounded outward.

Source

pub fn sign(&self) -> Option<Sign>

The sign every value in the interval shares: Zero only for the single point zero, None where the interval straddles zero.

Source

pub fn enclosure(&self) -> Interval

A sound f64 interval holding this one.

Source

pub fn magnitude(&self) -> (f64, f64)

Bounds on the magnitude of every value in the interval, as sound f64s: (0, _) where the interval holds zero.

Source

pub fn sin_cos(x: &Dyadic, bits: u32) -> Option<(Self, Self)>

Certified sin(x) and cos(x) at bits fractional bits; None for an angle beyond 2^40 in magnitude.

Trait Implementations§

Source§

impl Clone for FixedInterval

Source§

fn clone(&self) -> FixedInterval

Returns a copy 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 FixedInterval

Source§

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

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

impl PartialEq for FixedInterval

Source§

fn eq(&self, other: &FixedInterval) -> 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 Eq for FixedInterval

Source§

impl StructuralPartialEq for FixedInterval

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, 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.