Trait lang_util::node::NodeDisplay

source ·
pub trait NodeDisplay: Sized {
    // Required methods
    fn name() -> Option<&'static str>;
    fn start(&self) -> Option<TextSize>;
    fn end(&self) -> Option<TextSize>;
    fn source_id(&self) -> Option<FileId>;
    fn display(&self) -> NodeDisplayWrapper<'_, Self>;
    fn display_extra(&self, f: &mut Formatter<'_>) -> Result;
    fn display_children(&self, level: usize, f: &mut Formatter<'_>) -> Result;
}
Expand description

Trait for displaying a syntax node

Required Methods§

source

fn name() -> Option<&'static str>

Name of the syntax node’s type

source

fn start(&self) -> Option<TextSize>

Starting position of the node

source

fn end(&self) -> Option<TextSize>

Ending position of the node

source

fn source_id(&self) -> Option<FileId>

Source id of the node

source

fn display(&self) -> NodeDisplayWrapper<'_, Self>

Obtain a display wrapper for the current node

source

fn display_extra(&self, f: &mut Formatter<'_>) -> Result

Display extra information for the node

§Parameters
  • f: formatter to output to
source

fn display_children(&self, level: usize, f: &mut Formatter<'_>) -> Result

Display the node’s children

§Parameters
  • level: current indentation level
  • f: formatter to output to

Object Safety§

This trait is not object safe.

Implementors§