Skip to main content

Ceil

Struct Ceil 

Source
pub struct Ceil(pub Tolerance);
Expand description

Tolerant::ceil, or TolerantComplex::complex_ceil for complex items, at the tolerance it holds, as a function object.

Tuple Fields§

§0: Tolerance

Trait Implementations§

Source§

impl Clone for Ceil

Source§

fn clone(&self) -> Ceil

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Copy for Ceil

Source§

impl Debug for Ceil

Source§

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

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

impl Formula<1> for Ceil

Source§

const HAS_EXACT: bool = true

Whether exact computes this formula on rationals.
Source§

const INTEGER_FORMULA: bool = true

Whether integer runs this formula’s emit on integers, so that range arithmetic over emit_valid bounds an integer kernel’s failures (may_raise). A row with a native_integer body supports integers and leaves this false.
Source§

fn exact(&self, _: [&Ratio<BigInt>; 1]) -> Result<Option<Ratio<BigInt>>, Error>

Source§

fn supports(&self, dtype: DType) -> bool

Source§

fn emit<F, O>( &self, o: &O, _: [<O as Ops<F>>::V; 1], ) -> Option<<O as Ops<F>>::V>
where F: Float, O: Ops<F> + ?Sized,

Source§

fn emit_partials<F, O>( &self, o: &O, _: [<O as Ops<F>>::V; 1], _: <O as Ops<F>>::V, _: [bool; 1], ) -> [Option<<O as Ops<F>>::V>; 1]
where F: Float, O: Ops<F> + ?Sized,

Source§

fn integer<I>(&self, o: &IntegerOps<I>, x: [I; 1]) -> Option<I>
where I: Overflowing,

Source§

fn complex<F>( &self, o: &NativeOps<rustymath_core::::facts::{impl#92}::complex::{constant#0}>, _: [Complex<F>; 1], ) -> Option<Complex<F>>
where F: Native,

Source§

fn native_slices(&self) -> Option<NativeSlices<Ceil, 1>>

Source§

const BOOLEAN: bool = false

Source§

const FAILS_NAN: bool = false

Whether a NaN result from arguments that aren’t NaN is a Domain error, which the default emit_valid checks (nan_valid). A constant, so a checked loop over items reads it at compile time and never calls a method for it.
Source§

const MAP_ONLY: bool = false

Whether kernels of this formula only map. Modified writes, folds, scans and walks of adjacent items build no code for it: each refuses it at compile time, as it refuses a formula of another arity. A derivative’s slope (derivative::Slope) only maps.
Source§

fn result_dtype(&self, input: DType) -> DType

Source§

fn computing_dtype(&self, input: DType) -> Option<DType>

Source§

fn character_rule(&self) -> Option<Rule>

Source§

fn ordered_kinds(&self, _: [i32; 2]) -> Option<i32>

Source§

fn character_policy(&self, types: [DType; 2]) -> Result<Option<Policy>, Error>

Source§

fn range(&self, _args: [Range; N]) -> Range

Source§

fn domain(&self, _dtype: DType, _args: [Range; N]) -> Option<[Range; N]>

A box at the computing dtype containing args on which graph-numeric results do not raise a data error.
Source§

fn identity(&self) -> [Option<f64>; N]

Source§

fn fold(&self) -> Option<Reduce>

Source§

fn inverse_fold(&self) -> Option<Reduce>

Source§

fn truth_table(&self) -> Option<u8>

The function’s results on Booleans, as bits: bit 2x+y for two arguments, bit x for one. A Boolean kernel computes by it (operation::map_truth).
Source§

fn truth(&self) -> Option<Reduce>

Source§

fn same(&self, _arg: Range) -> Option<Range>

Refines the real result interval when both operands denote the same value.
Source§

fn reads(&self) -> Reads

Source§

fn emit_test<F, O>( &self, _o: &O, _x: [<O as Ops<F>>::V; N], ) -> Option<<O as Ops<F>>::B>
where F: Float, O: Ops<F> + ?Sized,

Source§

fn emit_against<F, O>( &self, _o: &O, _c: F, _v: <O as Ops<F>>::V, _left: bool, ) -> Option<<O as Ops<F>>::B>
where F: Float, O: Ops<F> + ?Sized,

This comparison of v with the one number c through o, where that has a cheaper recipe than comparing item by item, as a held constant has. left says whether v is the left argument. None for other formulas.
Source§

fn bands(&self) -> Option<(Tolerance, Band, Band)>

This comparison’s tolerance, and the bands that an item on the left and on the right of one number must lie in (tolerant::Banding), through which it compares many items with one number (tolerant::against). None for other formulas.
Source§

fn emit_repair<F, O>( &self, _o: &O, _x: [<O as Ops<F>>::V; N], ) -> Option<<O as Ops<F>>::B>
where F: Float, O: Ops<F> + ?Sized,

Source§

fn repair_routine(&self) -> Option<Repair>

Source§

fn emit_valid<F, O>( &self, _variant: Variant, o: &O, x: [<O as Ops<F>>::V; N], result: <O as Ops<F>>::V, ) -> Option<(Kind, <O as Ops<F>>::B)>
where F: Float, O: Ops<F> + ?Sized,

Source§

fn real<F>( &self, ops: &NativeOps<rustymath_core::::facts::Formula::real::{constant#0}>, x: [F; N], ) -> Option<F>
where F: Native,

Source§

const REAL_COMPLEX: bool = false

Whether real_complex gives this formula’s complex results from real arguments.
Source§

fn real_complex<F>( &self, _ops: &NativeOps<rustymath_core::::facts::Formula::real_complex::{constant#0}>, _x: [F; N], ) -> Option<Complex<F>>
where F: Native,

The complex result from real arguments, where that costs less than from the arguments as complex numbers. None sends the item to complex.
Source§

impl PartialEq for Ceil

Source§

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

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

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

Inequality operator !=. Read more
Source§

impl Results<Complex<f32>, 1> for Ceil

Source§

const TOTAL: bool

Whether no result fails: checked always gives Some, and many and many_into always give true. A total float function gives NaN from arguments that aren’t NaN only where NaN is its value, as Subtract gives for ∞ - ∞ and Sin for ±∞.
Source§

type Out = Complex<f32>

The type of each result.
Source§

impl Results<Complex<f64>, 1> for Ceil

Source§

const TOTAL: bool

Whether no result fails: checked always gives Some, and many and many_into always give true. A total float function gives NaN from arguments that aren’t NaN only where NaN is its value, as Subtract gives for ∞ - ∞ and Sin for ±∞.
Source§

type Out = Complex<f64>

The type of each result.
Source§

impl Results<f16, 1> for Ceil

Source§

const TOTAL: bool

Whether no result fails: checked always gives Some, and many and many_into always give true. A total float function gives NaN from arguments that aren’t NaN only where NaN is its value, as Subtract gives for ∞ - ∞ and Sin for ±∞.
Source§

type Out = f16

The type of each result.
Source§

impl Results<f32, 1> for Ceil

Source§

const TOTAL: bool

Whether no result fails: checked always gives Some, and many and many_into always give true. A total float function gives NaN from arguments that aren’t NaN only where NaN is its value, as Subtract gives for ∞ - ∞ and Sin for ±∞.
Source§

type Out = f32

The type of each result.
Source§

impl Results<f64, 1> for Ceil

Source§

const TOTAL: bool

Whether no result fails: checked always gives Some, and many and many_into always give true. A total float function gives NaN from arguments that aren’t NaN only where NaN is its value, as Subtract gives for ∞ - ∞ and Sin for ±∞.
Source§

type Out = f64

The type of each result.
Source§

impl StructuralPartialEq for Ceil

Source§

impl Unary<Complex<f32>> for Ceil

Source§

fn one(&self, y: Complex<f32>) -> Complex<f32>

Source§

fn judged(&self, y: Complex<f32>) -> (Complex<f32>, bool)

Source§

fn slice( &self, _: [Arg<'_, Complex<f32>>; 1], n: usize, out: &mut [MaybeUninit<Complex<f32>>], ) -> bool

Source§

fn checked(&self, x: T) -> Option<Self::Out>

Source§

fn many(&self, x: Arg<'_, T>, n: usize, out: &mut Vec<Self::Out>) -> bool
where T: Copy + Sync,

Source§

fn many_into( &self, x: Arg<'_, T>, n: usize, out: &mut Slots<'_, Self::Out>, ) -> bool
where T: Copy,

Source§

impl Unary<Complex<f64>> for Ceil

Source§

fn one(&self, y: Complex<f64>) -> Complex<f64>

Source§

fn judged(&self, y: Complex<f64>) -> (Complex<f64>, bool)

Source§

fn slice( &self, _: [Arg<'_, Complex<f64>>; 1], n: usize, out: &mut [MaybeUninit<Complex<f64>>], ) -> bool

Source§

fn checked(&self, x: T) -> Option<Self::Out>

Source§

fn many(&self, x: Arg<'_, T>, n: usize, out: &mut Vec<Self::Out>) -> bool
where T: Copy + Sync,

Source§

fn many_into( &self, x: Arg<'_, T>, n: usize, out: &mut Slots<'_, Self::Out>, ) -> bool
where T: Copy,

Source§

impl Unary<f16> for Ceil

Source§

fn one(&self, y: f16) -> f16

Source§

fn judged(&self, y: f16) -> (f16, bool)

Source§

fn slice( &self, x: [Arg<'_, f16>; 1], n: usize, out: &mut [MaybeUninit<f16>], ) -> bool

Source§

fn checked(&self, x: T) -> Option<Self::Out>

Source§

fn many(&self, x: Arg<'_, T>, n: usize, out: &mut Vec<Self::Out>) -> bool
where T: Copy + Sync,

Source§

fn many_into( &self, x: Arg<'_, T>, n: usize, out: &mut Slots<'_, Self::Out>, ) -> bool
where T: Copy,

Source§

impl Unary<f32> for Ceil

Source§

fn one(&self, y: f32) -> f32

Source§

fn judged(&self, y: f32) -> (f32, bool)

Source§

fn slice( &self, _: [Arg<'_, f32>; 1], n: usize, out: &mut [MaybeUninit<f32>], ) -> bool

Source§

fn checked(&self, x: T) -> Option<Self::Out>

Source§

fn many(&self, x: Arg<'_, T>, n: usize, out: &mut Vec<Self::Out>) -> bool
where T: Copy + Sync,

Source§

fn many_into( &self, x: Arg<'_, T>, n: usize, out: &mut Slots<'_, Self::Out>, ) -> bool
where T: Copy,

Source§

impl Unary<f64> for Ceil

Source§

fn one(&self, y: f64) -> f64

Source§

fn judged(&self, y: f64) -> (f64, bool)

Source§

fn slice( &self, _: [Arg<'_, f64>; 1], n: usize, out: &mut [MaybeUninit<f64>], ) -> bool

Source§

fn checked(&self, x: T) -> Option<Self::Out>

Source§

fn many(&self, x: Arg<'_, T>, n: usize, out: &mut Vec<Self::Out>) -> bool
where T: Copy + Sync,

Source§

fn many_into( &self, x: Arg<'_, T>, n: usize, out: &mut Slots<'_, Self::Out>, ) -> bool
where T: Copy,

Auto Trait Implementations§

§

impl Forget for Ceil

§

impl Freeze for Ceil

§

impl RefUnwindSafe for Ceil

§

impl Send for Ceil

§

impl Sync for Ceil

§

impl Unpin for Ceil

§

impl UnsafeUnpin for Ceil

§

impl UnwindSafe for Ceil

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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

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> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

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 = !

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

fn try_from(value: U) -> Result<T, !>

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.