Enum blisp::runtime::RTData

source ·
pub enum RTData {
    Str(StrType),
    Char(char),
    Int(IntType),
    Bool(bool),
    Defun(String),
    Lambda(ClojureType),
    LData(LDataType),
    TailCall(TCall, Variables),
}

Variants§

§

Str(StrType)

§

Char(char)

§

Int(IntType)

§

Bool(bool)

§

Defun(String)

§

Lambda(ClojureType)

§

LData(LDataType)

§

TailCall(TCall, Variables)

Trait Implementations§

source§

impl Clone for RTData

source§

fn clone(&self) -> RTData

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 RTData

source§

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

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

impl Ord for RTData

source§

fn cmp(&self, other: &RTData) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · source§

fn max(self, other: Self) -> Selfwhere Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · source§

fn min(self, other: Self) -> Selfwhere Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · source§

fn clamp(self, min: Self, max: Self) -> Selfwhere Self: Sized + PartialOrd<Self>,

Restrict a value to a certain interval. Read more
source§

impl PartialEq<RTData> for RTData

source§

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

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

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

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl PartialOrd<RTData> for RTData

source§

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

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

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

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

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 more
1.0.0 · source§

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

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

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

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

impl<T0, T1> RTDataToRust<(T0, T1)> for RTDatawhere RTData: RTDataToRust<T0> + RTDataToRust<T1>,

Convert a BLisp’s Tuple to a Rust’s Tuple where the length is 2.

source§

fn into(&self) -> (T0, T1)

source§

impl<T0, T1, T2> RTDataToRust<(T0, T1, T2)> for RTDatawhere RTData: RTDataToRust<T0> + RTDataToRust<T1> + RTDataToRust<T2>,

Convert a BLisp’s Tuple to a Rust’s Tuple where the length is 3.

source§

impl<T0, T1, T2, T3> RTDataToRust<(T0, T1, T2, T3)> for RTDatawhere RTData: RTDataToRust<T0> + RTDataToRust<T1> + RTDataToRust<T2> + RTDataToRust<T3>,

Convert a BLisp’s Tuple to a Rust’s Tuple where the length is 4.

source§

impl<T0, T1, T2, T3, T4> RTDataToRust<(T0, T1, T2, T3, T4)> for RTDatawhere RTData: RTDataToRust<T0> + RTDataToRust<T1> + RTDataToRust<T2> + RTDataToRust<T3> + RTDataToRust<T4>,

Convert a BLisp’s Tuple to a Rust’s Tuple where the length is 5.

source§

impl RTDataToRust<BigInt> for RTData

Get a BigInt value.

source§

fn into(&self) -> BigInt

source§

impl<T> RTDataToRust<Option<T>> for RTDatawhere RTData: RTDataToRust<T>,

Convert a BLisp’s Option to a Rust’s Option.

source§

fn into(&self) -> Option<T>

source§

impl<T, E> RTDataToRust<Result<T, E>> for RTDatawhere RTData: RTDataToRust<T> + RTDataToRust<E>,

Convert a BLisp’s Result to a Rust’s Result.

source§

fn into(&self) -> Result<T, E>

source§

impl RTDataToRust<String> for RTData

Get a String value.

source§

fn into(&self) -> String

source§

impl<T> RTDataToRust<Vec<T, Global>> for RTDatawhere RTData: RTDataToRust<T>,

Convert a BLisp’s List to a Rust’s Vec.

source§

fn into(&self) -> Vec<T>

source§

impl RTDataToRust<bool> for RTData

Get a boolean value.

source§

fn into(&self) -> bool

source§

impl RTDataToRust<char> for RTData

Get a char value.

source§

fn into(&self) -> char

source§

impl RustToRTData<()> for RTData

source§

fn from(env: &mut Environment<'_>, _: ()) -> Self

source§

impl<T0, T1> RustToRTData<(T0, T1)> for RTDatawhere RTData: RustToRTData<T0> + RustToRTData<T1>,

source§

fn from(env: &mut Environment<'_>, (v0, v1): (T0, T1)) -> Self

source§

impl<T0, T1, T2> RustToRTData<(T0, T1, T2)> for RTDatawhere RTData: RustToRTData<T0> + RustToRTData<T1> + RustToRTData<T2>,

source§

fn from(env: &mut Environment<'_>, (v0, v1, v2): (T0, T1, T2)) -> Self

source§

impl<T0, T1, T2, T3> RustToRTData<(T0, T1, T2, T3)> for RTDatawhere RTData: RustToRTData<T0> + RustToRTData<T1> + RustToRTData<T2> + RustToRTData<T3>,

source§

fn from(env: &mut Environment<'_>, (v0, v1, v2, v3): (T0, T1, T2, T3)) -> Self

source§

impl<T0, T1, T2, T3, T4> RustToRTData<(T0, T1, T2, T3, T4)> for RTDatawhere RTData: RustToRTData<T0> + RustToRTData<T1> + RustToRTData<T2> + RustToRTData<T3> + RustToRTData<T4>,

source§

fn from( env: &mut Environment<'_>, (v0, v1, v2, v3, v4): (T0, T1, T2, T3, T4) ) -> Self

source§

impl RustToRTData<BigInt> for RTData

source§

fn from(env: &mut Environment<'_>, value: BigInt) -> Self

source§

impl<T> RustToRTData<Option<T>> for RTDatawhere RTData: RustToRTData<T>,

source§

fn from(env: &mut Environment<'_>, value: Option<T>) -> Self

source§

impl<T, E> RustToRTData<Result<T, E>> for RTDatawhere RTData: RustToRTData<T> + RustToRTData<E>,

source§

fn from(env: &mut Environment<'_>, value: Result<T, E>) -> Self

source§

impl RustToRTData<String> for RTData

source§

fn from(env: &mut Environment<'_>, value: String) -> Self

source§

impl RustToRTData<bool> for RTData

source§

fn from(_env: &mut Environment<'_>, value: bool) -> Self

source§

impl RustToRTData<char> for RTData

source§

fn from(_env: &mut Environment<'_>, value: char) -> Self

source§

impl Eq for RTData

source§

impl StructuralEq for RTData

source§

impl StructuralPartialEq for RTData

Auto Trait Implementations§

§

impl RefUnwindSafe for RTData

§

impl !Send for RTData

§

impl !Sync for RTData

§

impl Unpin for RTData

§

impl UnwindSafe for RTData

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. 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 Twhere 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 Twhere T: Clone,

§

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 Twhere U: Into<T>,

§

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 Twhere U: TryFrom<T>,

§

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.