Skip to main content

Constant

Enum Constant 

Source
pub enum Constant {
    None,
    Bool(bool),
    Str(String),
    Bytes(Vec<u8>),
    Int(BigInt),
    Tuple(Vec<Constant>),
    Float(f64),
    Complex {
        real: f64,
        imag: f64,
    },
    Ellipsis,
}

Variants§

§

None

§

Bool(bool)

§

Str(String)

§

Bytes(Vec<u8>)

§

Int(BigInt)

§

Tuple(Vec<Constant>)

§

Float(f64)

§

Complex

Fields

§real: f64
§imag: f64
§

Ellipsis

Implementations§

Source§

impl Constant

Source

pub const fn is_none(&self) -> bool

Returns true if self is of variant None.

Source

pub const fn is_bool(&self) -> bool

Returns true if self is of variant Bool.

Source

pub fn as_bool(&self) -> Option<&bool>

Returns Some if self is a reference of variant Bool, and None otherwise.

Source

pub fn as_mut_bool(&mut self) -> Option<&mut bool>

Returns Some if self is a mutable reference of variant Bool, and None otherwise.

Source

pub fn expect_bool(self) -> bool
where Self: Debug,

Unwraps the value, yielding the content of Bool.

§Panics

Panics if the value is not Bool. In debug builds the panic message includes the content of self.

Source

pub fn bool(self) -> Option<bool>

Returns Some if self is of variant Bool, and None otherwise.

Source

pub const fn is_str(&self) -> bool

Returns true if self is of variant Str.

Source

pub fn as_str(&self) -> Option<&String>

Returns Some if self is a reference of variant Str, and None otherwise.

Source

pub fn as_mut_str(&mut self) -> Option<&mut String>

Returns Some if self is a mutable reference of variant Str, and None otherwise.

Source

pub fn expect_str(self) -> String
where Self: Debug,

Unwraps the value, yielding the content of Str.

§Panics

Panics if the value is not Str. In debug builds the panic message includes the content of self.

Source

pub fn str(self) -> Option<String>

Returns Some if self is of variant Str, and None otherwise.

Source

pub const fn is_bytes(&self) -> bool

Returns true if self is of variant Bytes.

Source

pub fn as_bytes(&self) -> Option<&Vec<u8>>

Returns Some if self is a reference of variant Bytes, and None otherwise.

Source

pub fn as_mut_bytes(&mut self) -> Option<&mut Vec<u8>>

Returns Some if self is a mutable reference of variant Bytes, and None otherwise.

Source

pub fn expect_bytes(self) -> Vec<u8>
where Self: Debug,

Unwraps the value, yielding the content of Bytes.

§Panics

Panics if the value is not Bytes. In debug builds the panic message includes the content of self.

Source

pub fn bytes(self) -> Option<Vec<u8>>

Returns Some if self is of variant Bytes, and None otherwise.

Source

pub const fn is_int(&self) -> bool

Returns true if self is of variant Int.

Source

pub fn as_int(&self) -> Option<&BigInt>

Returns Some if self is a reference of variant Int, and None otherwise.

Source

pub fn as_mut_int(&mut self) -> Option<&mut BigInt>

Returns Some if self is a mutable reference of variant Int, and None otherwise.

Source

pub fn expect_int(self) -> BigInt
where Self: Debug,

Unwraps the value, yielding the content of Int.

§Panics

Panics if the value is not Int. In debug builds the panic message includes the content of self.

Source

pub fn int(self) -> Option<BigInt>

Returns Some if self is of variant Int, and None otherwise.

Source

pub const fn is_tuple(&self) -> bool

Returns true if self is of variant Tuple.

Source

pub fn as_tuple(&self) -> Option<&Vec<Constant>>

Returns Some if self is a reference of variant Tuple, and None otherwise.

Source

pub fn as_mut_tuple(&mut self) -> Option<&mut Vec<Constant>>

Returns Some if self is a mutable reference of variant Tuple, and None otherwise.

Source

pub fn expect_tuple(self) -> Vec<Constant>
where Self: Debug,

Unwraps the value, yielding the content of Tuple.

§Panics

Panics if the value is not Tuple. In debug builds the panic message includes the content of self.

Source

pub fn tuple(self) -> Option<Vec<Constant>>

Returns Some if self is of variant Tuple, and None otherwise.

Source

pub const fn is_float(&self) -> bool

Returns true if self is of variant Float.

Source

pub fn as_float(&self) -> Option<&f64>

Returns Some if self is a reference of variant Float, and None otherwise.

Source

pub fn as_mut_float(&mut self) -> Option<&mut f64>

Returns Some if self is a mutable reference of variant Float, and None otherwise.

Source

pub fn expect_float(self) -> f64
where Self: Debug,

Unwraps the value, yielding the content of Float.

§Panics

Panics if the value is not Float. In debug builds the panic message includes the content of self.

Source

pub fn float(self) -> Option<f64>

Returns Some if self is of variant Float, and None otherwise.

Source

pub const fn is_complex(&self) -> bool

Returns true if self is of variant Complex.

Source

pub const fn is_ellipsis(&self) -> bool

Returns true if self is of variant Ellipsis.

Source§

impl Constant

Source

pub fn is_true(self) -> bool

Source

pub fn is_false(self) -> bool

Source

pub fn complex(self) -> Option<(f64, f64)>

Trait Implementations§

Source§

impl Clone for Constant

Source§

fn clone(&self) -> Constant

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 Debug for Constant

Source§

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

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

impl<T, U> Foldable<T, U> for Constant

Source§

type Mapped = Constant

Source§

fn fold<F: Fold<T, TargetU = U> + ?Sized>( self, _folder: &mut F, ) -> Result<Self::Mapped, F::Error>

Source§

impl From<BigInt> for Constant

Source§

fn from(i: BigInt) -> Constant

Converts to this type from the input type.
Source§

impl From<String> for Constant

Source§

fn from(s: String) -> Constant

Converts to this type from the input type.
Source§

impl From<Vec<u8>> for Constant

Source§

fn from(b: Vec<u8>) -> Constant

Converts to this type from the input type.
Source§

impl From<bool> for Constant

Source§

fn from(b: bool) -> Constant

Converts to this type from the input type.
Source§

impl PartialEq for Constant

Source§

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

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

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

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for Constant

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<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, U> ExactFrom<T> for U
where U: TryFrom<T>,

Source§

fn exact_from(value: T) -> U

Source§

impl<T, U> ExactInto<U> for T
where U: ExactFrom<T>,

Source§

fn exact_into(self) -> U

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, U> OverflowingInto<U> for T
where U: OverflowingFrom<T>,

Source§

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

Source§

impl<T, U> RoundingInto<U> for T
where U: RoundingFrom<T>,

Source§

impl<T, U> SaturatingInto<U> for T
where U: SaturatingFrom<T>,

Source§

impl<T> ToDebugString for T
where T: Debug,

Source§

fn to_debug_string(&self) -> String

Returns the String produced by Ts Debug implementation.

§Examples
use malachite_base::strings::ToDebugString;

assert_eq!([1, 2, 3].to_debug_string(), "[1, 2, 3]");
assert_eq!(
    [vec![2, 3], vec![], vec![4]].to_debug_string(),
    "[[2, 3], [], [4]]"
);
assert_eq!(Some(5).to_debug_string(), "Some(5)");
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.
Source§

impl<T, U> WrappingInto<U> for T
where U: WrappingFrom<T>,

Source§

fn wrapping_into(self) -> U