[−][src]Trait full_moon::node::Node
Used to represent nodes such as tokens or function definitions
This trait is sealed and cannot be implemented for types outside of full-moon
Required methods
pub fn start_position(&self) -> Option<Position>
[src]
The start position of a node. None if can't be determined
pub fn end_position(&self) -> Option<Position>
[src]
The end position of a node. None if it can't be determined
pub fn similar(&self, other: &Self) -> bool where
Self: Sized,
[src]
Self: Sized,
Whether another node of the same type is the same as this one semantically, ignoring position
pub fn tokens<'b>(&'b self) -> Tokens<'ast, 'b>ⓘ
[src]
The token references that comprise a node
Provided methods
pub fn range(&self) -> Option<(Position, Position)>
[src]
The full range of a node, if it has both start and end positions
pub fn surrounding_trivia<'b>(
&'b self
) -> (Vec<Cow<'b, Token<'ast>>>, Vec<Cow<'b, Token<'ast>>>)
[src]
&'b self
) -> (Vec<Cow<'b, Token<'ast>>>, Vec<Cow<'b, Token<'ast>>>)
The tokens surrounding a node that are ignored and not accessible through the node's own accessors. Use this if you want to get surrounding comments or whitespace. Returns a tuple of the leading and trailing trivia.