pub enum Expr<I: Interner> {
Show 16 variants
Symbol(I::Sym),
Syntax(Position, Box<Self>),
Bool(bool),
Fixnum(Fixnum),
BigInt(BigInt),
Rational(Rational),
BigRational(BigRational),
Float(f64),
Complex(Complex64),
Char(char),
Str(String),
Pair(Box<Expr<I>>, Box<Expr<I>>),
ImmutableVector(Box<[Box<Expr<I>>]>),
GrowableVector(Box<[Box<Expr<I>>]>),
ByteVector(Box<[u8]>),
Null,
}
Variants§
Symbol(I::Sym)
Syntax(Position, Box<Self>)
Bool(bool)
Fixnum(Fixnum)
BigInt(BigInt)
Rational(Rational)
BigRational(BigRational)
Float(f64)
Complex(Complex64)
Char(char)
Str(String)
Pair(Box<Expr<I>>, Box<Expr<I>>)
ImmutableVector(Box<[Box<Expr<I>>]>)
GrowableVector(Box<[Box<Expr<I>>]>)
ByteVector(Box<[u8]>)
Null
Implementations§
Source§impl<I: Interner> Expr<I>
impl<I: Interner> Expr<I>
pub fn datum(self: Box<Self>) -> Box<Self>
pub fn from_slice(exprs: Vec<Box<Expr<I>>>, append: Box<Expr<I>>) -> Box<Self>
pub fn make_list_unchecked( from_stack: Vec<Box<Expr<I>>>, append: Box<Expr<I>>, ) -> Box<Self>
pub fn to_string(&self, interner: &I, escape: bool) -> String
Auto Trait Implementations§
impl<I> Freeze for Expr<I>
impl<I> RefUnwindSafe for Expr<I>
impl<I> Send for Expr<I>
impl<I> Sync for Expr<I>
impl<I> Unpin for Expr<I>
impl<I> UnwindSafe for Expr<I>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more