Skip to main content

NodeDisplay

Trait 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

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§