Enum srclang::parser::ast::Node
pub enum Node {
BinaryExpression(BinaryOperation),
Bool(bool),
Integer(i64),
Float(f64),
Ident(Spanned<Ident>),
Binding(Binding),
FnCall(FnCall),
String(String),
FnDef(FnDef),
EffectDef(EffectDef),
StructDef(StructDef),
UseDef(UseDef),
Keyword(Keyword),
ImplDef(ImplDef),
Branch(BranchDef),
FieldAccess(FieldAccess),
Visibility(Visibility),
Error,
}
Variants
BinaryExpression(BinaryOperation)
Bool(bool)
Integer(i64)
Float(f64)
Ident(Spanned<Ident>)
Binding(Binding)
FnCall(FnCall)
String(String)
FnDef(FnDef)
EffectDef(EffectDef)
StructDef(StructDef)
UseDef(UseDef)
Keyword(Keyword)
ImplDef(ImplDef)
Branch(BranchDef)
FieldAccess(FieldAccess)
Visibility(Visibility)
Error
Trait Implementations
impl Clone for Node
fn clone(&self) -> Node
Returns a copy of the value. Read more1.0.0 ·
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
impl Debug for Node
fn fmt(&self, f: &mut Formatter<'_>) -> Result
Formats the value using the given formatter. Read more
impl Display for Node
fn fmt(&self, f: &mut Formatter<'_>) -> Result
Formats the value using the given formatter. Read more
impl PartialEq for Node
fn eq(&self, other: &Node) -> bool
This method tests for self
and other
values to be equal, and is used by ==
.1.0.0 ·
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.
impl Eq for Node
impl StructuralPartialEq for Node
Auto Trait Implementations
impl Freeze for Node
impl RefUnwindSafe for Node
impl Send for Node
impl Sync for Node
impl Unpin for Node
impl UnwindSafe for Node
Blanket Implementations
impl<T> Any for Twhere T: 'static + ?Sized,
fn type_id(&self) -> TypeId
Gets the TypeId
of self
. Read more
impl<T> Borrow<T> for Twhere T: ?Sized,
fn borrow(&self) -> &T
Immutably borrows from an owned value. Read more
impl<T> BorrowMut<T> for Twhere T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
fn equivalent(&self, key: &K) -> bool
Compare self to key
and return true
if they are equal.
impl<T> From<T> for T
fn from(t: T) -> T
Returns the argument unchanged.
impl<T, U> Into<U> for Twhere U: From<T>,
fn into(self) -> U
Calls U::from(self)
.
That is, this conversion is whatever the implementation of From<T> for U
chooses to do.
impl<T> Pointable for T
const ALIGN: usize = _
The alignment of pointer.
type Init = T
The type for initializers.
unsafe fn init(init: <T as Pointable>::Init) -> usize
Initializes a with the given initializer. Read more
unsafe fn deref<'a>(ptr: usize) -> &'a T
Dereferences the given pointer. Read more
unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T
Mutably dereferences the given pointer. Read more
unsafe fn drop(ptr: usize)
Drops the object pointed to by the given pointer. Read more
impl<T> ToOwned for Twhere T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
fn clone_into(&self, target: &mut T)
Uses borrowed data to replace owned data, usually by cloning. Read more
impl<T> ToString for Twhere T: Display + ?Sized,
default fn to_string(&self) -> String
Converts the given value to a String
. Read more
impl<T, U> TryFrom<U> for Twhere U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
Performs the conversion.
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.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
Performs the conversion.