Trait AstVisitor

Source
pub trait AstVisitor {
    type AdditionalInput: Default;
    type Output: Default;

Show 37 methods // Provided methods fn visit_type(&mut self, input: &Type) { ... } fn visit_array_type(&mut self, input: &ArrayType) { ... } fn visit_composite_type(&mut self, input: &CompositeType) { ... } fn visit_future_type(&mut self, input: &FutureType) { ... } fn visit_mapping_type(&mut self, input: &MappingType) { ... } fn visit_tuple_type(&mut self, input: &TupleType) { ... } fn visit_expression( &mut self, input: &Expression, additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_array_access( &mut self, input: &ArrayAccess, additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_member_access( &mut self, input: &MemberAccess, additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_tuple_access( &mut self, input: &TupleAccess, additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_array( &mut self, input: &ArrayExpression, additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_associated_constant( &mut self, _input: &AssociatedConstantExpression, _additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_associated_function( &mut self, input: &AssociatedFunctionExpression, _additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_async( &mut self, input: &AsyncExpression, _additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_binary( &mut self, input: &BinaryExpression, additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_call( &mut self, input: &CallExpression, additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_cast( &mut self, input: &CastExpression, additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_struct_init( &mut self, input: &StructExpression, additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_err( &mut self, _input: &ErrExpression, _additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_path( &mut self, _input: &Path, _additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_literal( &mut self, _input: &Literal, _additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_locator( &mut self, _input: &LocatorExpression, _additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_repeat( &mut self, input: &RepeatExpression, additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_ternary( &mut self, input: &TernaryExpression, additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_tuple( &mut self, input: &TupleExpression, additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_unary( &mut self, input: &UnaryExpression, additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_unit( &mut self, _input: &UnitExpression, _additional: &Self::AdditionalInput, ) -> Self::Output { ... } fn visit_statement(&mut self, input: &Statement) { ... } fn visit_assert(&mut self, input: &AssertStatement) { ... } fn visit_assign(&mut self, input: &AssignStatement) { ... } fn visit_block(&mut self, input: &Block) { ... } fn visit_conditional(&mut self, input: &ConditionalStatement) { ... } fn visit_const(&mut self, input: &ConstDeclaration) { ... } fn visit_definition(&mut self, input: &DefinitionStatement) { ... } fn visit_expression_statement(&mut self, input: &ExpressionStatement) { ... } fn visit_iteration(&mut self, input: &IterationStatement) { ... } fn visit_return(&mut self, input: &ReturnStatement) { ... }
}
Expand description

A Visitor trait for types in the AST.

Required Associated Types§

Provided Methods§

Source

fn visit_type(&mut self, input: &Type)

Source

fn visit_array_type(&mut self, input: &ArrayType)

Source

fn visit_composite_type(&mut self, input: &CompositeType)

Source

fn visit_future_type(&mut self, input: &FutureType)

Source

fn visit_mapping_type(&mut self, input: &MappingType)

Source

fn visit_tuple_type(&mut self, input: &TupleType)

Source

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

Source

fn visit_array_access( &mut self, input: &ArrayAccess, additional: &Self::AdditionalInput, ) -> Self::Output

Source

fn visit_member_access( &mut self, input: &MemberAccess, additional: &Self::AdditionalInput, ) -> Self::Output

Source

fn visit_tuple_access( &mut self, input: &TupleAccess, additional: &Self::AdditionalInput, ) -> Self::Output

Source

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

Source

fn visit_associated_constant( &mut self, _input: &AssociatedConstantExpression, _additional: &Self::AdditionalInput, ) -> Self::Output

Source

fn visit_associated_function( &mut self, input: &AssociatedFunctionExpression, _additional: &Self::AdditionalInput, ) -> Self::Output

Source

fn visit_async( &mut self, input: &AsyncExpression, _additional: &Self::AdditionalInput, ) -> Self::Output

Source

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

Source

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

Source

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

Source

fn visit_struct_init( &mut self, input: &StructExpression, additional: &Self::AdditionalInput, ) -> Self::Output

Source

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

Source

fn visit_path( &mut self, _input: &Path, _additional: &Self::AdditionalInput, ) -> Self::Output

Source

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

Source

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

Source

fn visit_repeat( &mut self, input: &RepeatExpression, additional: &Self::AdditionalInput, ) -> Self::Output

Source

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

Source

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

Source

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

Source

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

Source

fn visit_statement(&mut self, input: &Statement)

Source

fn visit_assert(&mut self, input: &AssertStatement)

Source

fn visit_assign(&mut self, input: &AssignStatement)

Source

fn visit_block(&mut self, input: &Block)

Source

fn visit_conditional(&mut self, input: &ConditionalStatement)

Source

fn visit_const(&mut self, input: &ConstDeclaration)

Source

fn visit_definition(&mut self, input: &DefinitionStatement)

Source

fn visit_expression_statement(&mut self, input: &ExpressionStatement)

Source

fn visit_iteration(&mut self, input: &IterationStatement)

Source

fn visit_return(&mut self, input: &ReturnStatement)

Implementors§