rustre_parser::ast

Trait AstNode

Source
pub trait AstNode {
    // Required methods
    fn can_cast(kind: Token) -> bool
       where Self: Sized;
    fn cast(syntax: SyntaxNode) -> Option<Self>
       where Self: Sized;
    fn expect(syntax: SyntaxNode) -> Self
       where Self: Sized;
    fn syntax(&self) -> &SyntaxNode;

    // Provided methods
    fn clone_for_update(&self) -> Self
       where Self: Sized { ... }
    fn clone_subtree(&self) -> Self
       where Self: Sized { ... }
}

Required Methods§

Source

fn can_cast(kind: Token) -> bool
where Self: Sized,

Source

fn cast(syntax: SyntaxNode) -> Option<Self>
where Self: Sized,

Source

fn expect(syntax: SyntaxNode) -> Self
where Self: Sized,

Source

fn syntax(&self) -> &SyntaxNode

Provided Methods§

Source

fn clone_for_update(&self) -> Self
where Self: Sized,

Source

fn clone_subtree(&self) -> Self
where Self: Sized,

Implementors§

Source§

impl AstNode for ExpressionNode

Source§

impl AstNode for LeftItemNode

Source§

impl AstNode for AddExpressionNode

Source§

impl AstNode for AndExpressionNode

Source§

impl AstNode for ArrayAccessExpressionNode

Source§

impl AstNode for ArrowExpressionNode

Source§

impl AstNode for AssertEquationNode

Source§

impl AstNode for BodyNode

Source§

impl AstNode for CallByPosExpressionNode

Source§

impl AstNode for ClockExpressionNode

Source§

impl AstNode for ConstantDeclNode

Source§

impl AstNode for ConstantNode

Source§

impl AstNode for CurrentExpressionNode

Source§

impl AstNode for DieseExpressionNode

Source§

impl AstNode for DivExpressionNode

Source§

impl AstNode for EffectiveNodeNode

Source§

impl AstNode for EnumDeclNode

Source§

impl AstNode for EqExpressionNode

Source§

impl AstNode for EqualsEquationNode

Source§

impl AstNode for ExpressionListNode

Source§

impl AstNode for ExternalNodeDeclNode

Source§

impl AstNode for FbyExpressionNode

Source§

impl AstNode for GtExpressionNode

Source§

impl AstNode for GteExpressionNode

Source§

impl AstNode for HatExpressionNode

Source§

impl AstNode for IdNode

Source§

impl AstNode for IdRefNode

Source§

impl AstNode for IdentExpressionNode

Source§

impl AstNode for IfExpressionNode

Source§

impl AstNode for ImplExpressionNode

Source§

impl AstNode for IncludeStatement

Source§

impl AstNode for IntExpressionNode

Source§

impl AstNode for LeftFieldAccessNode

Source§

impl AstNode for LeftNode

Source§

impl AstNode for LeftTableAccessNode

Source§

impl AstNode for LtExpressionNode

Source§

impl AstNode for LteExpressionNode

Source§

impl AstNode for ModExpressionNode

Source§

impl AstNode for ModelDeclNode

Source§

impl AstNode for MulExpressionNode

Source§

impl AstNode for NegExpressionNode

Source§

impl AstNode for NeqExpressionNode

Source§

impl AstNode for NodeNode

Source§

impl AstNode for NodeProfileNode

Source§

impl AstNode for NorExpressionNode

Source§

impl AstNode for NotExpressionNode

Source§

impl AstNode for OneConstantDeclNode

Source§

impl AstNode for OneTypeDeclNode

Source§

impl AstNode for OrExpressionNode

Source§

impl AstNode for PackageAliasNode

Source§

impl AstNode for PackageDeclNode

Source§

impl AstNode for ParExpressionNode

Source§

impl AstNode for ParamsNode

Source§

impl AstNode for PowerExpressionNode

Source§

impl AstNode for PragmaNode

Source§

impl AstNode for PreExpressionNode

Source§

impl AstNode for ProvidesListNode

Source§

impl AstNode for ProvidesNode

Source§

impl AstNode for RealExpressionNode

Source§

impl AstNode for Root

Source§

impl AstNode for SelectNode

Source§

impl AstNode for StaticArgNode

Source§

impl AstNode for StaticArgsNode

Source§

impl AstNode for StaticParamNode

Source§

impl AstNode for StaticParamsNode

Source§

impl AstNode for StepNode

Source§

impl AstNode for StructDeclNode

Source§

impl AstNode for SubExpressionNode

Source§

impl AstNode for TypeDeclNode

Source§

impl AstNode for TypeNode

Source§

impl AstNode for TypedIdsNode

Source§

impl AstNode for UsesNode

Source§

impl AstNode for VarDeclNode

Source§

impl AstNode for WhenExpressionNode

Source§

impl AstNode for WithExpressionNode

Source§

impl AstNode for XorExpressionNode