pub enum ExprKind {
}Variants§
Atom(Atom)
If(Box<If>)
Let(Box<Let>)
Define(Box<Define>)
LambdaFunction(Box<LambdaFunction>)
Begin(Box<Begin>)
Return(Box<Return>)
Quote(Box<Quote>)
Macro(Box<Macro>)
SyntaxRules(Box<SyntaxRules>)
List(List)
Set(Box<Set>)
Require(Box<Require>)
Vector(Vector)
Implementations§
Source§impl ExprKind
impl ExprKind
pub fn span(&self) -> Span
pub fn to_string_literal(&self) -> Option<String>
pub fn into_lambda_function(self) -> Option<Box<LambdaFunction>>
pub fn quoted_list() -> ExprKind
pub fn empty() -> ExprKind
pub fn integer_literal(value: isize, span: Span) -> ExprKind
pub fn atom<T: Into<InternedString>>(name: T) -> ExprKind
pub fn ident(name: &str) -> ExprKind
pub fn ident_with_span(name: &str, span: Span) -> ExprKind
pub fn string_lit(input: String) -> ExprKind
pub fn bool_lit(b: bool) -> ExprKind
pub fn default_if(test: ExprKind, then: ExprKind, els: ExprKind) -> ExprKind
pub fn into_atom_syntax_object(self) -> Option<SyntaxObject>
pub fn atom_syntax_object(&self) -> Option<&SyntaxObject>
pub fn atom_syntax_object_mut(&mut self) -> Option<&mut SyntaxObject>
pub fn define_syntax_ident(&self) -> bool
pub fn atom_identifier_mut(&mut self) -> Option<&mut InternedString>
pub fn lambda_function(&self) -> Option<&LambdaFunction>
pub fn atom_identifier_or_else<E, F: FnOnce() -> E>( &self, err: F, ) -> Result<&InternedString, E>
pub fn atom_identifier(&self) -> Option<&InternedString>
pub fn string_literal(&self) -> Option<&str>
pub fn list(&self) -> Option<&List>
pub fn list_mut(&mut self) -> Option<&mut List>
pub fn list_or_else<E, F: FnOnce() -> E>(&self, err: F) -> Result<&List, E>
pub fn list_mut_or_else<E, F: FnOnce() -> E>( &mut self, err: F, ) -> Result<&mut List, E>
pub fn into_list_or_else<E, F: FnOnce() -> E>(self, err: F) -> Result<List, E>
pub fn into_list(self) -> List
pub fn unwrap_function(self) -> Option<Box<LambdaFunction>>
pub fn get_list(&self) -> Option<&List>
pub fn update_string_in_atom(&mut self, ident: InternedString)
Trait Implementations§
Source§impl<'de> Deserialize<'de> for ExprKind
impl<'de> Deserialize<'de> for ExprKind
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl From<LambdaFunction> for ExprKind
impl From<LambdaFunction> for ExprKind
Source§fn from(val: LambdaFunction) -> Self
fn from(val: LambdaFunction) -> Self
Converts to this type from the input type.
Source§impl From<SyntaxRules> for ExprKind
impl From<SyntaxRules> for ExprKind
Source§fn from(val: SyntaxRules) -> Self
fn from(val: SyntaxRules) -> Self
Converts to this type from the input type.
impl StructuralPartialEq for ExprKind
Auto Trait Implementations§
impl Freeze for ExprKind
impl RefUnwindSafe for ExprKind
impl Send for ExprKind
impl Sync for ExprKind
impl Unpin for ExprKind
impl UnsafeUnpin for ExprKind
impl UnwindSafe for ExprKind
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> ToCompactString for Twhere
T: Display,
impl<T> ToCompactString for Twhere
T: Display,
Source§fn try_to_compact_string(&self) -> Result<CompactString, ToCompactStringError>
fn try_to_compact_string(&self) -> Result<CompactString, ToCompactStringError>
Fallible version of
ToCompactString::to_compact_string() Read moreSource§fn to_compact_string(&self) -> CompactString
fn to_compact_string(&self) -> CompactString
Converts the given value to a
CompactString. Read more