pub trait Visit<'ast> {
Show 81 methods
// Provided methods
fn visit_source_unit(&mut self, source_unit: &'ast SourceUnit) { ... }
fn visit_source_unit_nodes_item(&mut self, node: &'ast SourceUnitNodesItem) { ... }
fn visit_contract_definition(&mut self, contract: &'ast ContractDefinition) { ... }
fn visit_inheritance_specifier(
&mut self,
specifier: &'ast InheritanceSpecifier,
) { ... }
fn visit_contract_definition_node_item(
&mut self,
node: &'ast ContractDefinitionNodesItem,
) { ... }
fn visit_enum_definition(&mut self, enumm: &'ast EnumDefinition) { ... }
fn visit_enum_value(&mut self, _variant: &'ast EnumValue) { ... }
fn visit_error_definition(&mut self, error: &'ast ErrorDefinition) { ... }
fn visit_event_definition(&mut self, event: &'ast EventDefinition) { ... }
fn visit_function_definition(&mut self, function: &'ast FunctionDefinition) { ... }
fn visit_modifier_definition(&mut self, modifier: &'ast ModifierDefinition) { ... }
fn visit_struct_definition(&mut self, strukt: &'ast StructDefinition) { ... }
fn visit_udt(&mut self, _udt: &'ast UserDefinedValueTypeDefinition) { ... }
fn visit_using_for_directive(&mut self, using: &'ast UsingForDirective) { ... }
fn visit_using_for_directive_function_list_item(
&mut self,
item: &'ast UsingForDirectiveFunctionListItem,
) { ... }
fn visit_variable_declaration(
&mut self,
variable: &'ast VariableDeclaration,
) { ... }
fn visit_import_directive(&mut self, import: &'ast ImportDirective) { ... }
fn visit_import_directive_symbol_aliases_item(
&mut self,
alias: &'ast ImportDirectiveSymbolAliasesItem,
) { ... }
fn visit_pragma_directive(&mut self, _pragma: &'ast PragmaDirective) { ... }
fn visit_parameter_list(&mut self, params: &'ast ParameterList) { ... }
fn visit_modifier_invocation(&mut self, modifier: &'ast ModifierInvocation) { ... }
fn visit_type_descriptions(
&mut self,
_type_descriptions: &'ast TypeDescriptions,
) { ... }
fn visit_type_name(&mut self, type_name: &'ast TypeName) { ... }
fn visit_array_type_name(&mut self, array: &'ast ArrayTypeName) { ... }
fn visit_function_type_name(&mut self, function: &'ast FunctionTypeName) { ... }
fn visit_mapping(&mut self, mapping: &'ast Mapping) { ... }
fn visit_user_defined_type_name(&mut self, _udt: &'ast UserDefinedTypeName) { ... }
fn visit_elementary_type_name(
&mut self,
_elementary: &'ast ElementaryTypeName,
) { ... }
fn visit_structured_documentation(
&mut self,
_doc: &'ast StructuredDocumentation,
) { ... }
fn visit_identifier_path(&mut self, _path: &'ast IdentifierPath) { ... }
fn visit_block(&mut self, block: &'ast Block) { ... }
fn visit_statement(&mut self, stmt: &'ast Statement) { ... }
fn visit_break(&mut self, _break_: &'ast Break) { ... }
fn visit_continue(&mut self, _continue: &'ast Continue) { ... }
fn visit_do_while(&mut self, do_while: &'ast DoWhileStatement) { ... }
fn visit_emit(&mut self, emit: &'ast EmitStatement) { ... }
fn visit_expression_statement(&mut self, expr: &'ast ExpressionStatement) { ... }
fn visit_for(&mut self, forr: &'ast ForStatement) { ... }
fn visit_if(&mut self, iff: &'ast IfStatement) { ... }
fn visit_inline_assembly(&mut self, inline: &'ast InlineAssembly) { ... }
fn visit_placeholder(&mut self, _placeholder: &'ast PlaceholderStatement) { ... }
fn visit_return(&mut self, returnn: &'ast Return) { ... }
fn visit_revert(&mut self, revert: &'ast RevertStatement) { ... }
fn visit_try(&mut self, tryy: &'ast TryStatement) { ... }
fn visit_try_catch_clause(&mut self, clause: &'ast TryCatchClause) { ... }
fn visit_unchecked(&mut self, unchecked: &'ast UncheckedBlock) { ... }
fn visit_variable_declaration_statement(
&mut self,
variable: &'ast VariableDeclarationStatement,
) { ... }
fn visit_while(&mut self, while: &'ast WhileStatement) { ... }
fn visit_yul_block(&mut self, block: &'ast YulBlock) { ... }
fn visit_yul_statement(&mut self, stmt: &'ast YulStatement) { ... }
fn visit_yul_assignment(&mut self, assignment: &'ast YulAssignment) { ... }
fn visit_yul_break(&mut self, _break_: &'ast YulBreak) { ... }
fn visit_yul_continue(&mut self, _continue: &'ast YulContinue) { ... }
fn visit_yul_expression_statement(
&mut self,
expr: &'ast YulExpressionStatement,
) { ... }
fn visit_yul_leave(&mut self, _leave: &'ast YulLeave) { ... }
fn visit_yul_for(&mut self, forr: &'ast YulForLoop) { ... }
fn visit_yul_function_definition(
&mut self,
function: &'ast YulFunctionDefinition,
) { ... }
fn visit_yul_if(&mut self, iff: &'ast YulIf) { ... }
fn visit_yul_switch(&mut self, switch: &'ast YulSwitch) { ... }
fn visit_yul_variable_declaration(
&mut self,
variable: &'ast YulVariableDeclaration,
) { ... }
fn visit_yul_case(&mut self, case: &'ast YulCase) { ... }
fn visit_yul_identifier(&mut self, _ident: &'ast YulIdentifier) { ... }
fn visit_yul_literal(&mut self, _literal: &'ast YulLiteral) { ... }
fn visit_yul_function_call(&mut self, call: &'ast YulFunctionCall) { ... }
fn visit_yul_typed_name(&mut self, _name: &'ast YulTypedName) { ... }
fn visit_yul_expression(&mut self, expr: &'ast YulExpression) { ... }
fn visit_expression(&mut self, expr: &'ast Expression) { ... }
fn visit_assignment(&mut self, assignment: &'ast Assignment) { ... }
fn visit_binary_operation(&mut self, binary: &'ast BinaryOperation) { ... }
fn visit_conditional(&mut self, conditional: &'ast Conditional) { ... }
fn visit_elementary_type_name_expression(
&mut self,
elementary: &'ast ElementaryTypeNameExpression,
) { ... }
fn visit_function_call(&mut self, call: &'ast FunctionCall) { ... }
fn visit_function_call_options(
&mut self,
options: &'ast FunctionCallOptions,
) { ... }
fn visit_identifier(&mut self, ident: &'ast Identifier) { ... }
fn visit_index_access(&mut self, index: &'ast IndexAccess) { ... }
fn visit_index_range_access(&mut self, range: &'ast IndexRangeAccess) { ... }
fn visit_literal(&mut self, literal: &'ast Literal) { ... }
fn visit_member_access(&mut self, member: &'ast MemberAccess) { ... }
fn visit_new(&mut self, new: &'ast NewExpression) { ... }
fn visit_tuple(&mut self, tuple: &'ast TupleExpression) { ... }
fn visit_unary_operation(&mut self, unary: &'ast UnaryOperation) { ... }
}
Expand description
Syntax tree traversal to walk a shared borrow of a syntax tree.
See the module documentation for details.