pub trait NodeContent:
Sized
+ Debug
+ Clone
+ PartialEq {
// Provided methods
fn into_node<T>(self) -> Node<T>
where T: From<Self> + NodeContent { ... }
fn spanned(self, start: LexerPosition, end: LexerPosition) -> Node<Self> { ... }
}
Expand description
Trait for AST node contents.
All nodes which will be stored in a Node need to implement this.
Provided Methods§
Sourcefn into_node<T>(self) -> Node<T>where
T: From<Self> + NodeContent,
fn into_node<T>(self) -> Node<T>where
T: From<Self> + NodeContent,
Convert the contents into a node
Sourcefn spanned(self, start: LexerPosition, end: LexerPosition) -> Node<Self>
fn spanned(self, start: LexerPosition, end: LexerPosition) -> Node<Self>
Add span information to a syntax node
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.