Trait NodeContentDisplay

Source
pub trait NodeContentDisplay {
    // Required methods
    fn name() -> Option<&'static str>;
    fn display_extra(&self, f: &mut Formatter<'_>) -> Result;
    fn display_children(&self, level: usize, f: &mut Formatter<'_>) -> Result;
}
Expand description

Trait for displaying an AST node’s content

Required Methods§

Source

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

Name of the node

§Returns

None if this node is just a transparent wrapper (and should not be displayed), otherwise the name of the node type.

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", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl NodeContentDisplay for bool

Source§

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

Source§

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

Source§

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

Source§

impl NodeContentDisplay for f32

Source§

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

Source§

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

Source§

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

Source§

impl NodeContentDisplay for f64

Source§

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

Source§

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

Source§

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

Source§

impl NodeContentDisplay for i32

Source§

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

Source§

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

Source§

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

Source§

impl NodeContentDisplay for u16

Source§

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

Source§

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

Source§

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

Source§

impl NodeContentDisplay for u32

Source§

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

Source§

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

Source§

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

Source§

impl NodeContentDisplay for String

Source§

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

Source§

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

Source§

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

Source§

impl<T: NodeDisplay> NodeContentDisplay for Option<T>

Source§

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

Source§

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

Source§

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

Source§

impl<T: NodeDisplay> NodeContentDisplay for Box<T>

Source§

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

Source§

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

Source§

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

Source§

impl<T: NodeDisplay> NodeContentDisplay for Vec<T>

Source§

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

Source§

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

Source§

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

Implementors§

Source§

impl NodeContentDisplay for SmolStr

impl NodeContentDisplay for ArraySpecifierDimensionData

impl NodeContentDisplay for AssignmentOpData

impl NodeContentDisplay for BinaryOpData

impl NodeContentDisplay for CaseLabelData

impl NodeContentDisplay for CommentData

impl NodeContentDisplay for ConditionData

impl NodeContentDisplay for DeclarationData

impl NodeContentDisplay for ExprData

impl NodeContentDisplay for ExternalDeclarationData

impl NodeContentDisplay for ForInitStatementData

impl NodeContentDisplay for FunIdentifierData

impl NodeContentDisplay for FunctionParameterDeclarationData

impl NodeContentDisplay for InitializerData

impl NodeContentDisplay for InterpolationQualifierData

impl NodeContentDisplay for IterationStatementData

impl NodeContentDisplay for JumpStatementData

impl NodeContentDisplay for LayoutQualifierSpecData

impl NodeContentDisplay for PathData

impl NodeContentDisplay for PrecisionQualifierData

impl NodeContentDisplay for PreprocessorData

impl NodeContentDisplay for PreprocessorDefineData

impl NodeContentDisplay for PreprocessorExtensionBehaviorData

impl NodeContentDisplay for PreprocessorExtensionNameData

impl NodeContentDisplay for PreprocessorVersionProfileData

impl NodeContentDisplay for SelectionRestStatementData

impl NodeContentDisplay for StatementData

impl NodeContentDisplay for StorageQualifierData

impl NodeContentDisplay for TypeQualifierSpecData

impl NodeContentDisplay for TypeSpecifierNonArrayData

impl NodeContentDisplay for UnaryOpData

impl NodeContentDisplay for ArraySpecifierData

impl NodeContentDisplay for ArrayedIdentifierData

impl NodeContentDisplay for BlockData

impl NodeContentDisplay for CompoundStatementData

impl NodeContentDisplay for ExprStatementData

impl NodeContentDisplay for ForRestStatementData

impl NodeContentDisplay for FullySpecifiedTypeData

impl NodeContentDisplay for FunctionDefinitionData

impl NodeContentDisplay for FunctionParameterDeclaratorData

impl NodeContentDisplay for FunctionPrototypeData

impl NodeContentDisplay for IdentifierData

impl NodeContentDisplay for InitDeclaratorListData

impl NodeContentDisplay for LayoutQualifierData

impl NodeContentDisplay for PreprocessorElseIfData

impl NodeContentDisplay for PreprocessorErrorData

impl NodeContentDisplay for PreprocessorExtensionData

impl NodeContentDisplay for PreprocessorIfData

impl NodeContentDisplay for PreprocessorIfDefData

impl NodeContentDisplay for PreprocessorIfNDefData

impl NodeContentDisplay for PreprocessorIncludeData

impl NodeContentDisplay for PreprocessorLineData

impl NodeContentDisplay for PreprocessorPragmaData

impl NodeContentDisplay for PreprocessorUndefData

impl NodeContentDisplay for PreprocessorVersionData

impl NodeContentDisplay for SelectionStatementData

impl NodeContentDisplay for SingleDeclarationData

impl NodeContentDisplay for SingleDeclarationNoTypeData

impl NodeContentDisplay for StructFieldSpecifierData

impl NodeContentDisplay for StructSpecifierData

impl NodeContentDisplay for SwitchStatementData

impl NodeContentDisplay for TranslationUnit

impl NodeContentDisplay for TypeNameData

impl NodeContentDisplay for TypeQualifierData

impl NodeContentDisplay for TypeSpecifierData