Enum tinychain::scalar::Number[]

pub enum Number {
    Bool(Boolean),
    Complex(Complex),
    Float(Float),
    Int(Int),
    UInt(UInt),
}
Expand description

A generic number.

Variants

Bool(Boolean)
Complex(Complex)
Float(Float)
Int(Int)
UInt(UInt)

Implementations

impl Number

pub fn is_real(&self) -> bool

Trait Implementations

impl Add<Number> for Number

type Output = Number

The resulting type after applying the + operator.

pub fn add(self, other: Number) -> Number

Performs the + operation. Read more

impl AddAssign<Number> for Number

pub fn add_assign(&mut self, other: Number)

Performs the += operation. Read more

impl CastFrom<Number> for Complex

pub fn cast_from(number: Number) -> Complex

impl CastFrom<Number> for Boolean

pub fn cast_from(number: Number) -> Boolean

impl CastFrom<Number> for UInt

pub fn cast_from(number: Number) -> UInt

impl CastFrom<Number> for Float

pub fn cast_from(number: Number) -> Float

impl CastFrom<Number> for Int

pub fn cast_from(number: Number) -> Int

impl Clone for Number

pub fn clone(&self) -> Number

Returns a copy of the value. Read more

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Debug for Number

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

Formats the value using the given formatter. Read more

impl Default for Number

pub fn default() -> Number

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

impl<'de> Deserialize<'de> for Number

pub fn deserialize<D>(
    deserializer: D
) -> Result<Number, <D as Deserializer<'de>>::Error> where
    D: Deserializer<'de>, 

Deserialize this value from the given Serde deserializer. Read more

impl Display for Number

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

Formats the value using the given formatter. Read more

impl Div<Number> for Number

type Output = Number

The resulting type after applying the / operator.

pub fn div(self, other: Number) -> Number

Performs the / operation. Read more

impl DivAssign<Number> for Number

pub fn div_assign(&mut self, other: Number)

Performs the /= operation. Read more

impl From<Boolean> for Number

pub fn from(b: Boolean) -> Number

Performs the conversion.

impl From<Complex<f32>> for Number

pub fn from(c: Complex<f32>) -> Number

Performs the conversion.

impl From<Complex<f64>> for Number

pub fn from(c: Complex<f64>) -> Number

Performs the conversion.

impl From<Complex> for Number

pub fn from(c: Complex) -> Number

Performs the conversion.

impl From<Float> for Number

pub fn from(f: Float) -> Number

Performs the conversion.

impl From<Int> for Number

pub fn from(i: Int) -> Number

Performs the conversion.

impl From<Number> for Value[src]

pub fn from(n: Number) -> Value[src]

Performs the conversion.

impl From<UInt> for Number

pub fn from(u: UInt) -> Number

Performs the conversion.

impl From<bool> for Number

pub fn from(b: bool) -> Number

Performs the conversion.

impl From<f32> for Number

pub fn from(f: f32) -> Number

Performs the conversion.

impl From<f64> for Number

pub fn from(f: f64) -> Number

Performs the conversion.

impl From<i16> for Number

pub fn from(i: i16) -> Number

Performs the conversion.

impl From<i32> for Number

pub fn from(i: i32) -> Number

Performs the conversion.

impl From<i64> for Number

pub fn from(i: i64) -> Number

Performs the conversion.

impl From<i8> for Number

pub fn from(i: i8) -> Number

Performs the conversion.

impl From<u16> for Number

pub fn from(u: u16) -> Number

Performs the conversion.

impl From<u32> for Number

pub fn from(u: u32) -> Number

Performs the conversion.

impl From<u64> for Number

pub fn from(u: u64) -> Number

Performs the conversion.

impl From<u8> for Number

pub fn from(u: u8) -> Number

Performs the conversion.

impl FromStream for Number

type Context = ()

The decoding context of this type, useful in situations where the stream to be decoded may be too large to hold in main memory. Read more

pub fn from_stream<'life0, 'async_trait, D>(
    _context: (),
    decoder: &'life0 mut D
) -> Pin<Box<dyn Future<Output = Result<Number, <D as Decoder>::Error>> + 'async_trait + Send, Global>> where
    'life0: 'async_trait,
    D: Decoder + 'async_trait,
    Number: 'async_trait, 

Parse this value using the given Decoder.

impl Hash for Number

pub fn hash<__H>(&self, state: &mut __H) where
    __H: Hasher

Feeds this value into the given Hasher. Read more

fn hash_slice<H>(data: &[Self], state: &mut H) where
    H: Hasher
1.3.0[src]

Feeds a slice of this type into the given Hasher. Read more

impl<'en> IntoStream<'en> for Number

pub fn into_stream<E>(
    self,
    e: E
) -> Result<<E as Encoder<'en>>::Ok, <E as Encoder<'en>>::Error> where
    E: Encoder<'en>, 

Take ownership of this value and serialize it into the given encoder.

impl Mul<Number> for Number

type Output = Number

The resulting type after applying the * operator.

pub fn mul(self, other: Number) -> Number

Performs the * operation. Read more

impl MulAssign<Number> for Number

pub fn mul_assign(&mut self, other: Number)

Performs the *= operation. Read more

impl NumberInstance for Number

type Abs = Number

type Exp = Number

type Class = NumberType

pub fn class(&self) -> NumberType

Get an impl of NumberClass describing this number.

pub fn into_type(self, dtype: NumberType) -> Number

Cast this number into the specified NumberClass.

pub fn abs(self) -> Number

Calculate the absolute value of this number.

pub fn pow(self, exp: Number) -> Number

Raise this number to the given exponent.

fn and(self, other: Self) -> Self where
    Boolean: CastFrom<Self>, 

Return true if self and other are nonzero.

fn not(self) -> Self where
    Boolean: CastFrom<Self>, 

Return true if this number is zero.

fn or(self, other: Self) -> Self where
    Boolean: CastFrom<Self>, 

Return true if self or other is nonzero.

fn xor(self, other: Self) -> Self where
    Boolean: CastFrom<Self>, 

Return true if exactly one of self and other is zero.

impl PartialEq<Number> for Number

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

This method tests for self and other values to be equal, and is used by ==. Read more

#[must_use]
fn ne(&self, other: &Rhs) -> bool
1.0.0[src]

This method tests for !=.

impl PartialOrd<Number> for Number

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

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

#[must_use]
fn lt(&self, other: &Rhs) -> bool
1.0.0[src]

This method tests less than (for self and other) and is used by the < operator. Read more

#[must_use]
fn le(&self, other: &Rhs) -> bool
1.0.0[src]

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

#[must_use]
fn gt(&self, other: &Rhs) -> bool
1.0.0[src]

This method tests greater than (for self and other) and is used by the > operator. Read more

#[must_use]
fn ge(&self, other: &Rhs) -> bool
1.0.0[src]

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

impl Product<Number> for Number

pub fn product<I>(iter: I) -> Number where
    I: Iterator<Item = Number>, 

Method which takes an iterator and generates Self from the elements by multiplying the items. Read more

impl Serialize for Number

pub fn serialize<S>(
    &self,
    s: S
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error> where
    S: Serializer

Serialize this value into the given Serde serializer. Read more

impl Sub<Number> for Number

type Output = Number

The resulting type after applying the - operator.

pub fn sub(self, other: Number) -> Number

Performs the - operation. Read more

impl SubAssign<Number> for Number

pub fn sub_assign(&mut self, other: Number)

Performs the -= operation. Read more

impl Sum<Number> for Number

pub fn sum<I>(iter: I) -> Number where
    I: Iterator<Item = Number>, 

Method which takes an iterator and generates Self from the elements by “summing up” the items. Read more

impl<'en> ToStream<'en> for Number

pub fn to_stream<E>(
    &'en self,
    e: E
) -> Result<<E as Encoder<'en>>::Ok, <E as Encoder<'en>>::Error> where
    E: Encoder<'en>, 

Serialize this value into the given encoder.

impl TryCastFrom<Scalar> for Number[src]

fn can_cast_from(scalar: &Scalar) -> bool[src]

Test if value can be cast into Self.

fn opt_cast_from(scalar: Scalar) -> Option<Self>[src]

Returns Some(Self) if the source value can be cast into Self, otherwise None.

fn try_cast_from<Err, OnErr>(value: T, on_err: OnErr) -> Result<Self, Err> where
    OnErr: FnOnce(&T) -> Err, 
[src]

Returns Ok(Self) if the source value can be cast into Self, otherwise calls on_err.

impl TryCastFrom<Value> for Number[src]

pub fn can_cast_from(value: &Value) -> bool[src]

Test if value can be cast into Self.

pub fn opt_cast_from(value: Value) -> Option<Number>[src]

Returns Some(Self) if the source value can be cast into Self, otherwise None.

fn try_cast_from<Err, OnErr>(value: T, on_err: OnErr) -> Result<Self, Err> where
    OnErr: FnOnce(&T) -> Err, 
[src]

Returns Ok(Self) if the source value can be cast into Self, otherwise calls on_err.

impl Copy for Number

impl Eq for Number

impl StructuralEq for Number

Auto Trait Implementations

impl RefUnwindSafe for Number

impl Send for Number

impl Sync for Number

impl Unpin for Number

impl UnwindSafe for Number

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

impl<F, T> CastFrom<F> for T where
    T: From<F>, 
[src]

pub fn cast_from(f: F) -> T[src]

impl<T, F> CastInto<F> for T where
    F: CastFrom<T>, 
[src]

pub fn cast_into(self) -> F[src]

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

pub fn equivalent(&self, key: &K) -> bool[src]

Compare self to key and return true if they are equal.

impl<T> From<T> for T[src]

pub fn from(t: T) -> T[src]

Performs the conversion.

impl<T> Instrument for T[src]

fn instrument(self, span: Span) -> Instrumented<Self>[src]

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

fn in_current_span(self) -> Instrumented<Self>[src]

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

pub fn into(self) -> U[src]

Performs the conversion.

impl<F> Match for F[src]

fn matches<T>(&self) -> bool where
    T: TryCastFrom<Self>, 
[src]

Returns true if self can be cast into the target type T.

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

pub fn to_owned(&self) -> T[src]

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

pub fn clone_into(&self, target: &mut T)[src]

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

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

impl<T> ToString for T where
    T: Display + ?Sized
[src]

pub default fn to_string(&self) -> String[src]

Converts the given value to a String. Read more

impl<F, T> TryCastFrom<F> for T where
    T: CastFrom<F>, 
[src]

pub fn can_cast_from(&F) -> bool[src]

Test if value can be cast into Self.

pub fn opt_cast_from(f: F) -> Option<T>[src]

Returns Some(Self) if the source value can be cast into Self, otherwise None.

fn try_cast_from<Err, OnErr>(value: T, on_err: OnErr) -> Result<Self, Err> where
    OnErr: FnOnce(&T) -> Err, 
[src]

Returns Ok(Self) if the source value can be cast into Self, otherwise calls on_err.

impl<F, T> TryCastInto<T> for F where
    T: TryCastFrom<F>, 
[src]

pub fn can_cast_into(&self) -> bool[src]

Test if self can be cast into T.

pub fn opt_cast_into(self) -> Option<T>[src]

Returns Some(T) if self can be cast into T, otherwise None.

fn try_cast_into<Err, OnErr>(self, on_err: OnErr) -> Result<T, Err> where
    OnErr: FnOnce(&Self) -> Err, 
[src]

Returns Ok(T) if self can be cast into T, otherwise calls on_err.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

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

Performs the conversion.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

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

Performs the conversion.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>, 

pub fn vzip(self) -> V

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]