Trait leo_ast::passes::visitor::ExpressionVisitor

source ·
pub trait ExpressionVisitor<'a> {
    type AdditionalInput: Default;
    type Output: Default;

Show 15 methods // Provided methods fn visit_expression( &mut self, input: &'a Expression, additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_access( &mut self, input: &'a AccessExpression, additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_array( &mut self, input: &'a ArrayExpression, additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_binary( &mut self, input: &'a BinaryExpression, additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_call( &mut self, input: &'a CallExpression, additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_cast( &mut self, input: &'a CastExpression, additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_struct_init( &mut self, _input: &'a StructExpression, _additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_err( &mut self, _input: &'a ErrExpression, _additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_identifier( &mut self, _input: &'a Identifier, _additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_literal( &mut self, _input: &'a Literal, _additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_locator( &mut self, _input: &'a LocatorExpression, _additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_ternary( &mut self, input: &'a TernaryExpression, additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_tuple( &mut self, input: &'a TupleExpression, additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_unary( &mut self, input: &'a UnaryExpression, additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_unit( &mut self, _input: &'a UnitExpression, _additional: &Self::AdditionalInput, ) -> Self::Output { ... }
}
Expand description

A Visitor trait for expressions in the AST.

Required Associated Types§

Provided Methods§

source

fn visit_expression( &mut self, input: &'a Expression, additional: &Self::AdditionalInput, ) -> Self::Output

source

fn visit_access( &mut self, input: &'a AccessExpression, additional: &Self::AdditionalInput, ) -> Self::Output

source

fn visit_array( &mut self, input: &'a ArrayExpression, additional: &Self::AdditionalInput, ) -> Self::Output

source

fn visit_binary( &mut self, input: &'a BinaryExpression, additional: &Self::AdditionalInput, ) -> Self::Output

source

fn visit_call( &mut self, input: &'a CallExpression, additional: &Self::AdditionalInput, ) -> Self::Output

source

fn visit_cast( &mut self, input: &'a CastExpression, additional: &Self::AdditionalInput, ) -> Self::Output

source

fn visit_struct_init( &mut self, _input: &'a StructExpression, _additional: &Self::AdditionalInput, ) -> Self::Output

source

fn visit_err( &mut self, _input: &'a ErrExpression, _additional: &Self::AdditionalInput, ) -> Self::Output

source

fn visit_identifier( &mut self, _input: &'a Identifier, _additional: &Self::AdditionalInput, ) -> Self::Output

source

fn visit_literal( &mut self, _input: &'a Literal, _additional: &Self::AdditionalInput, ) -> Self::Output

source

fn visit_locator( &mut self, _input: &'a LocatorExpression, _additional: &Self::AdditionalInput, ) -> Self::Output

source

fn visit_ternary( &mut self, input: &'a TernaryExpression, additional: &Self::AdditionalInput, ) -> Self::Output

source

fn visit_tuple( &mut self, input: &'a TupleExpression, additional: &Self::AdditionalInput, ) -> Self::Output

source

fn visit_unary( &mut self, input: &'a UnaryExpression, additional: &Self::AdditionalInput, ) -> Self::Output

source

fn visit_unit( &mut self, _input: &'a UnitExpression, _additional: &Self::AdditionalInput, ) -> Self::Output

Implementors§