pub trait Visitor<'ast> {
Show 388 methods fn visit_argument(&mut self, : &'ast Argument) -> Control { ... } fn visit_array(&mut self, : &'ast Array) -> Control { ... } fn visit_array_explicit(&mut self, : &'ast ArrayExplicit) -> Control { ... } fn visit_array_repeated(&mut self, : &'ast ArrayRepeated) -> Control { ... } fn visit_as_type(&mut self, : &'ast AsType) -> Control { ... } fn visit_ascription(&mut self, : &'ast Ascription) -> Control { ... } fn visit_associated_type(&mut self, : &'ast AssociatedType) -> Control { ... } fn visit_attribute(&mut self, : &'ast Attribute) -> Control { ... } fn visit_attribute_literal(&mut self, : &'ast AttributeLiteral) -> Control { ... } fn visit_attribute_containing(
        &mut self,
        : &'ast AttributeContaining
    ) -> Control { ... } fn visit_attribute_containing_literal(
        &mut self,
        : &'ast AttributeContainingLiteral
    ) -> Control { ... } fn visit_attributed_enum_variant(
        &mut self,
        : &'ast Attributed<EnumVariant>
    ) -> Control { ... } fn visit_attributed_expression(
        &mut self,
        : &'ast Attributed<Expression>
    ) -> Control { ... } fn visit_attributed_extern_block_member(
        &mut self,
        : &'ast Attributed<ExternBlockMember>
    ) -> Control { ... } fn visit_attributed_generic_declaration_lifetime(
        &mut self,
        : &'ast Attributed<GenericDeclarationLifetime>
    ) -> Control { ... } fn visit_attributed_generic_declaration_type(
        &mut self,
        : &'ast Attributed<GenericDeclarationType>
    ) -> Control { ... } fn visit_attributed_impl_member(
        &mut self,
        : &'ast Attributed<ImplMember>
    ) -> Control { ... } fn visit_attributed_item(&mut self, : &'ast Attributed<Item>) -> Control { ... } fn visit_attributed_struct_definition_field_named(
        &mut self,
        : &'ast Attributed<StructDefinitionFieldNamed>
    ) -> Control { ... } fn visit_attributed_struct_definition_field_unnamed(
        &mut self,
        : &'ast Attributed<StructDefinitionFieldUnnamed>
    ) -> Control { ... } fn visit_attributed_trait_member(
        &mut self,
        : &'ast Attributed<TraitMember>
    ) -> Control { ... } fn visit_binary(&mut self, : &'ast Binary) -> Control { ... } fn visit_block(&mut self, : &'ast Block) -> Control { ... } fn visit_break(&mut self, : &'ast Break) -> Control { ... } fn visit_byte(&mut self, : &'ast Byte) -> Control { ... } fn visit_byte_string(&mut self, : &'ast ByteString) -> Control { ... } fn visit_call(&mut self, : &'ast Call) -> Control { ... } fn visit_character(&mut self, : &'ast Character) -> Control { ... } fn visit_closure(&mut self, : &'ast Closure) -> Control { ... } fn visit_closure_arg(&mut self, : &'ast ClosureArg) -> Control { ... } fn visit_comment(&mut self, : &'ast Comment) -> Control { ... } fn visit_const(&mut self, : &'ast Const) -> Control { ... } fn visit_continue(&mut self, : &'ast Continue) -> Control { ... } fn visit_crate(&mut self, : &'ast Crate) -> Control { ... } fn visit_dereference(&mut self, : &'ast Dereference) -> Control { ... } fn visit_disambiguation(&mut self, : &'ast Disambiguation) -> Control { ... } fn visit_enum(&mut self, : &'ast Enum) -> Control { ... } fn visit_enum_variant(&mut self, : &'ast EnumVariant) -> Control { ... } fn visit_enum_variant_body(&mut self, : &'ast EnumVariantBody) -> Control { ... } fn visit_expression(&mut self, : &'ast Expression) -> Control { ... } fn visit_expression_box(&mut self, : &'ast ExpressionBox) -> Control { ... } fn visit_extern_block(&mut self, : &'ast ExternBlock) -> Control { ... } fn visit_extern_block_member(&mut self, : &'ast ExternBlockMember) -> Control { ... } fn visit_extern_block_member_function(
        &mut self,
        : &'ast ExternBlockMemberFunction
    ) -> Control { ... } fn visit_extern_block_member_function_argument(
        &mut self,
        : &'ast ExternBlockMemberFunctionArgument
    ) -> Control { ... } fn visit_extern_block_member_function_argument_named(
        &mut self,
        : &'ast ExternBlockMemberFunctionArgumentNamed
    ) -> Control { ... } fn visit_extern_block_member_function_argument_variadic(
        &mut self,
        : &'ast ExternBlockMemberFunctionArgumentVariadic
    ) -> Control { ... } fn visit_extern_block_member_static(
        &mut self,
        : &'ast ExternBlockMemberStatic
    ) -> Control { ... } fn visit_extern_block_member_type(
        &mut self,
        : &'ast ExternBlockMemberType
    ) -> Control { ... } fn visit_field_access(&mut self, : &'ast FieldAccess) -> Control { ... } fn visit_field_name(&mut self, : &'ast FieldName) -> Control { ... } fn visit_file(&mut self, : &'ast File) -> Control { ... } fn visit_for_loop(&mut self, : &'ast ForLoop) -> Control { ... } fn visit_function(&mut self, : &'ast Function) -> Control { ... } fn visit_function_header(&mut self, : &'ast FunctionHeader) -> Control { ... } fn visit_function_qualifiers(
        &mut self,
        : &'ast FunctionQualifiers
    ) -> Control { ... } fn visit_generic_declaration_lifetime(
        &mut self,
        : &'ast GenericDeclarationLifetime
    ) -> Control { ... } fn visit_generic_declaration_type(
        &mut self,
        : &'ast GenericDeclarationType
    ) -> Control { ... } fn visit_generic_declarations(
        &mut self,
        : &'ast GenericDeclarations
    ) -> Control { ... } fn visit_ident(&mut self, : &'ast Ident) -> Control { ... } fn visit_if(&mut self, : &'ast If) -> Control { ... } fn visit_if_let(&mut self, : &'ast IfLet) -> Control { ... } fn visit_impl(&mut self, : &'ast Impl) -> Control { ... } fn visit_impl_const(&mut self, : &'ast ImplConst) -> Control { ... } fn visit_impl_function(&mut self, : &'ast ImplFunction) -> Control { ... } fn visit_impl_kind(&mut self, : &'ast ImplKind) -> Control { ... } fn visit_impl_member(&mut self, : &'ast ImplMember) -> Control { ... } fn visit_impl_of_inherent(&mut self, : &'ast ImplOfInherent) -> Control { ... } fn visit_impl_of_trait(&mut self, : &'ast ImplOfTrait) -> Control { ... } fn visit_impl_of_trait_type(&mut self, : &'ast ImplOfTraitType) -> Control { ... } fn visit_impl_type(&mut self, : &'ast ImplType) -> Control { ... } fn visit_item(&mut self, : &'ast Item) -> Control { ... } fn visit_let(&mut self, : &'ast Let) -> Control { ... } fn visit_lifetime(&mut self, : &'ast Lifetime) -> Control { ... } fn visit_loop(&mut self, : &'ast Loop) -> Control { ... } fn visit_macro_call(&mut self, : &'ast MacroCall) -> Control { ... } fn visit_macro_call_args(&mut self, : &'ast MacroCallArgs) -> Control { ... } fn visit_match(&mut self, : &'ast Match) -> Control { ... } fn visit_match_arm(&mut self, : &'ast MatchArm) -> Control { ... } fn visit_match_hand(&mut self, : &'ast MatchHand) -> Control { ... } fn visit_module(&mut self, : &'ast Module) -> Control { ... } fn visit_named_argument(&mut self, : &'ast NamedArgument) -> Control { ... } fn visit_number(&mut self, : &'ast Number) -> Control { ... } fn visit_number_value(&mut self, : &'ast NumberValue) -> Control { ... } fn visit_number_binary(&mut self, : &'ast NumberBinary) -> Control { ... } fn visit_number_decimal(&mut self, : &'ast NumberDecimal) -> Control { ... } fn visit_number_hexadecimal(&mut self, : &'ast NumberHexadecimal) -> Control { ... } fn visit_number_octal(&mut self, : &'ast NumberOctal) -> Control { ... } fn visit_parenthetical(&mut self, : &'ast Parenthetical) -> Control { ... } fn visit_path(&mut self, : &'ast Path) -> Control { ... } fn visit_path_component(&mut self, : &'ast PathComponent) -> Control { ... } fn visit_pathed_ident(&mut self, : &'ast PathedIdent) -> Control { ... } fn visit_pattern(&mut self, : &'ast Pattern) -> Control { ... } fn visit_pattern_box(&mut self, : &'ast PatternBox) -> Control { ... } fn visit_pattern_byte(&mut self, : &'ast PatternByte) -> Control { ... } fn visit_pattern_byte_string(&mut self, : &'ast PatternByteString) -> Control { ... } fn visit_pattern_character(&mut self, : &'ast PatternCharacter) -> Control { ... } fn visit_pattern_ident(&mut self, : &'ast PatternIdent) -> Control { ... } fn visit_pattern_kind(&mut self, : &'ast PatternKind) -> Control { ... } fn visit_pattern_macro_call(&mut self, : &'ast PatternMacroCall) -> Control { ... } fn visit_pattern_name(&mut self, : &'ast PatternName) -> Control { ... } fn visit_pattern_number(&mut self, : &'ast PatternNumber) -> Control { ... } fn visit_pattern_range_component(
        &mut self,
        : &'ast PatternRangeComponent
    ) -> Control { ... } fn visit_pattern_range_exclusive(
        &mut self,
        : &'ast PatternRangeExclusive
    ) -> Control { ... } fn visit_pattern_range_inclusive(
        &mut self,
        : &'ast PatternRangeInclusive
    ) -> Control { ... } fn visit_pattern_reference(&mut self, : &'ast PatternReference) -> Control { ... } fn visit_pattern_slice(&mut self, : &'ast PatternSlice) -> Control { ... } fn visit_pattern_slice_member(
        &mut self,
        : &'ast PatternSliceMember
    ) -> Control { ... } fn visit_pattern_slice_subslice(
        &mut self,
        : &'ast PatternSliceSubslice
    ) -> Control { ... } fn visit_pattern_string(&mut self, : &'ast PatternString) -> Control { ... } fn visit_pattern_struct(&mut self, : &'ast PatternStruct) -> Control { ... } fn visit_pattern_struct_field(
        &mut self,
        : &'ast PatternStructField
    ) -> Control { ... } fn visit_pattern_struct_field_long(
        &mut self,
        : &'ast PatternStructFieldLong
    ) -> Control { ... } fn visit_pattern_struct_field_short(
        &mut self,
        : &'ast PatternStructFieldShort
    ) -> Control { ... } fn visit_pattern_tuple(&mut self, : &'ast PatternTuple) -> Control { ... } fn visit_pattern_tuple_member(
        &mut self,
        : &'ast PatternTupleMember
    ) -> Control { ... } fn visit_range(&mut self, : &'ast Range) -> Control { ... } fn visit_range_inclusive(&mut self, : &'ast RangeInclusive) -> Control { ... } fn visit_reference(&mut self, : &'ast Reference) -> Control { ... } fn visit_return(&mut self, : &'ast Return) -> Control { ... } fn visit_self_argument(&mut self, : &'ast SelfArgument) -> Control { ... } fn visit_self_argument_longhand(
        &mut self,
        : &'ast SelfArgumentLonghand
    ) -> Control { ... } fn visit_self_argument_shorthand(
        &mut self,
        : &'ast SelfArgumentShorthand
    ) -> Control { ... } fn visit_self_argument_shorthand_qualifier(
        &mut self,
        : &'ast SelfArgumentShorthandQualifier
    ) -> Control { ... } fn visit_slice(&mut self, : &'ast Slice) -> Control { ... } fn visit_statement(&mut self, : &'ast Statement) -> Control { ... } fn visit_static(&mut self, : &'ast Static) -> Control { ... } fn visit_string(&mut self, : &'ast String) -> Control { ... } fn visit_struct(&mut self, : &'ast Struct) -> Control { ... } fn visit_struct_definition_body(
        &mut self,
        : &'ast StructDefinitionBody
    ) -> Control { ... } fn visit_struct_definition_body_brace(
        &mut self,
        : &'ast StructDefinitionBodyBrace
    ) -> Control { ... } fn visit_struct_definition_body_tuple(
        &mut self,
        : &'ast StructDefinitionBodyTuple
    ) -> Control { ... } fn visit_struct_definition_field_named(
        &mut self,
        : &'ast StructDefinitionFieldNamed
    ) -> Control { ... } fn visit_struct_definition_field_unnamed(
        &mut self,
        : &'ast StructDefinitionFieldUnnamed
    ) -> Control { ... } fn visit_struct_literal(&mut self, : &'ast StructLiteral) -> Control { ... } fn visit_struct_literal_field(
        &mut self,
        : &'ast StructLiteralField
    ) -> Control { ... } fn visit_trait(&mut self, : &'ast Trait) -> Control { ... } fn visit_trait_bound(&mut self, : &'ast TraitBound) -> Control { ... } fn visit_trait_bound_lifetime(
        &mut self,
        : &'ast TraitBoundLifetime
    ) -> Control { ... } fn visit_trait_bound_normal(&mut self, : &'ast TraitBoundNormal) -> Control { ... } fn visit_trait_bound_relaxed(&mut self, : &'ast TraitBoundRelaxed) -> Control { ... } fn visit_trait_bound_type(&mut self, : &'ast TraitBoundType) -> Control { ... } fn visit_trait_bounds(&mut self, : &'ast TraitBounds) -> Control { ... } fn visit_trait_impl_argument(&mut self, : &'ast TraitImplArgument) -> Control { ... } fn visit_trait_impl_argument_named(
        &mut self,
        : &'ast TraitImplArgumentNamed
    ) -> Control { ... } fn visit_trait_impl_function_header(
        &mut self,
        : &'ast TraitImplFunctionHeader
    ) -> Control { ... } fn visit_trait_member(&mut self, : &'ast TraitMember) -> Control { ... } fn visit_trait_member_const(&mut self, : &'ast TraitMemberConst) -> Control { ... } fn visit_trait_member_function(
        &mut self,
        : &'ast TraitMemberFunction
    ) -> Control { ... } fn visit_trait_member_type(&mut self, : &'ast TraitMemberType) -> Control { ... } fn visit_try_operator(&mut self, : &'ast TryOperator) -> Control { ... } fn visit_tuple(&mut self, : &'ast Tuple) -> Control { ... } fn visit_turbofish(&mut self, : &'ast Turbofish) -> Control { ... } fn visit_type(&mut self, : &'ast Type) -> Control { ... } fn visit_type_additional(&mut self, : &'ast TypeAdditional) -> Control { ... } fn visit_type_alias(&mut self, : &'ast TypeAlias) -> Control { ... } fn visit_type_array(&mut self, : &'ast TypeArray) -> Control { ... } fn visit_type_disambiguation(
        &mut self,
        : &'ast TypeDisambiguation
    ) -> Control { ... } fn visit_type_function(&mut self, : &'ast TypeFunction) -> Control { ... } fn visit_type_function_argument(
        &mut self,
        : &'ast TypeFunctionArgument
    ) -> Control { ... } fn visit_type_function_argument_named(
        &mut self,
        : &'ast TypeFunctionArgumentNamed
    ) -> Control { ... } fn visit_type_generics(&mut self, : &'ast TypeGenerics) -> Control { ... } fn visit_type_generics_angle(&mut self, : &'ast TypeGenericsAngle) -> Control { ... } fn visit_type_generics_angle_member(
        &mut self,
        : &'ast TypeGenericsAngleMember
    ) -> Control { ... } fn visit_type_generics_function(
        &mut self,
        : &'ast TypeGenericsFunction
    ) -> Control { ... } fn visit_type_higher_ranked_trait_bounds(
        &mut self,
        : &'ast TypeHigherRankedTraitBounds
    ) -> Control { ... } fn visit_type_higher_ranked_trait_bounds_child(
        &mut self,
        : &'ast TypeHigherRankedTraitBoundsChild
    ) -> Control { ... } fn visit_type_impl_trait(&mut self, : &'ast TypeImplTrait) -> Control { ... } fn visit_type_kind(&mut self, : &'ast TypeKind) -> Control { ... } fn visit_type_named(&mut self, : &'ast TypeNamed) -> Control { ... } fn visit_type_named_component(
        &mut self,
        : &'ast TypeNamedComponent
    ) -> Control { ... } fn visit_type_pointer(&mut self, : &'ast TypePointer) -> Control { ... } fn visit_type_reference(&mut self, : &'ast TypeReference) -> Control { ... } fn visit_type_reference_kind(&mut self, : &'ast TypeReferenceKind) -> Control { ... } fn visit_type_slice(&mut self, : &'ast TypeSlice) -> Control { ... } fn visit_type_tuple(&mut self, : &'ast TypeTuple) -> Control { ... } fn visit_unary(&mut self, : &'ast Unary) -> Control { ... } fn visit_union(&mut self, : &'ast Union) -> Control { ... } fn visit_unsafe_block(&mut self, : &'ast UnsafeBlock) -> Control { ... } fn visit_use(&mut self, : &'ast Use) -> Control { ... } fn visit_use_path(&mut self, : &'ast UsePath) -> Control { ... } fn visit_use_tail(&mut self, : &'ast UseTail) -> Control { ... } fn visit_use_tail_glob(&mut self, : &'ast UseTailGlob) -> Control { ... } fn visit_use_tail_ident(&mut self, : &'ast UseTailIdent) -> Control { ... } fn visit_use_tail_multi(&mut self, : &'ast UseTailMulti) -> Control { ... } fn visit_value(&mut self, : &'ast Value) -> Control { ... } fn visit_visibility(&mut self, : &'ast Visibility) -> Control { ... } fn visit_where(&mut self, : &'ast Where) -> Control { ... } fn visit_where_kind(&mut self, : &'ast WhereKind) -> Control { ... } fn visit_where_lifetime(&mut self, : &'ast WhereLifetime) -> Control { ... } fn visit_where_type(&mut self, : &'ast WhereType) -> Control { ... } fn visit_while(&mut self, : &'ast While) -> Control { ... } fn visit_while_let(&mut self, : &'ast WhileLet) -> Control { ... } fn visit_whitespace(&mut self, : &'ast Whitespace) -> Control { ... } fn exit_argument(&mut self, : &'ast Argument) { ... } fn exit_array(&mut self, : &'ast Array) { ... } fn exit_array_explicit(&mut self, : &'ast ArrayExplicit) { ... } fn exit_array_repeated(&mut self, : &'ast ArrayRepeated) { ... } fn exit_as_type(&mut self, : &'ast AsType) { ... } fn exit_ascription(&mut self, : &'ast Ascription) { ... } fn exit_associated_type(&mut self, : &'ast AssociatedType) { ... } fn exit_attribute(&mut self, : &'ast Attribute) { ... } fn exit_attribute_literal(&mut self, : &'ast AttributeLiteral) { ... } fn exit_attribute_containing(&mut self, : &'ast AttributeContaining) { ... } fn exit_attribute_containing_literal(
        &mut self,
        : &'ast AttributeContainingLiteral
    ) { ... } fn exit_attributed_enum_variant(&mut self, : &'ast Attributed<EnumVariant>) { ... } fn exit_attributed_expression(&mut self, : &'ast Attributed<Expression>) { ... } fn exit_attributed_extern_block_member(
        &mut self,
        : &'ast Attributed<ExternBlockMember>
    ) { ... } fn exit_attributed_generic_declaration_lifetime(
        &mut self,
        : &'ast Attributed<GenericDeclarationLifetime>
    ) { ... } fn exit_attributed_generic_declaration_type(
        &mut self,
        : &'ast Attributed<GenericDeclarationType>
    ) { ... } fn exit_attributed_impl_member(&mut self, : &'ast Attributed<ImplMember>) { ... } fn exit_attributed_item(&mut self, : &'ast Attributed<Item>) { ... } fn exit_attributed_struct_definition_field_named(
        &mut self,
        : &'ast Attributed<StructDefinitionFieldNamed>
    ) { ... } fn exit_attributed_struct_definition_field_unnamed(
        &mut self,
        : &'ast Attributed<StructDefinitionFieldUnnamed>
    ) { ... } fn exit_attributed_trait_member(&mut self, : &'ast Attributed<TraitMember>) { ... } fn exit_binary(&mut self, : &'ast Binary) { ... } fn exit_block(&mut self, : &'ast Block) { ... } fn exit_break(&mut self, : &'ast Break) { ... } fn exit_byte(&mut self, : &'ast Byte) { ... } fn exit_byte_string(&mut self, : &'ast ByteString) { ... } fn exit_call(&mut self, : &'ast Call) { ... } fn exit_character(&mut self, : &'ast Character) { ... } fn exit_closure(&mut self, : &'ast Closure) { ... } fn exit_closure_arg(&mut self, : &'ast ClosureArg) { ... } fn exit_comment(&mut self, : &'ast Comment) { ... } fn exit_const(&mut self, : &'ast Const) { ... } fn exit_continue(&mut self, : &'ast Continue) { ... } fn exit_crate(&mut self, : &'ast Crate) { ... } fn exit_dereference(&mut self, : &'ast Dereference) { ... } fn exit_disambiguation(&mut self, : &'ast Disambiguation) { ... } fn exit_enum(&mut self, : &'ast Enum) { ... } fn exit_enum_variant(&mut self, : &'ast EnumVariant) { ... } fn exit_enum_variant_body(&mut self, : &'ast EnumVariantBody) { ... } fn exit_expression(&mut self, : &'ast Expression) { ... } fn exit_expression_box(&mut self, : &'ast ExpressionBox) { ... } fn exit_extern_block(&mut self, : &'ast ExternBlock) { ... } fn exit_extern_block_member(&mut self, : &'ast ExternBlockMember) { ... } fn exit_extern_block_member_function(
        &mut self,
        : &'ast ExternBlockMemberFunction
    ) { ... } fn exit_extern_block_member_function_argument(
        &mut self,
        : &'ast ExternBlockMemberFunctionArgument
    ) { ... } fn exit_extern_block_member_function_argument_named(
        &mut self,
        : &'ast ExternBlockMemberFunctionArgumentNamed
    ) { ... } fn exit_extern_block_member_function_argument_variadic(
        &mut self,
        : &'ast ExternBlockMemberFunctionArgumentVariadic
    ) { ... } fn exit_extern_block_member_static(
        &mut self,
        : &'ast ExternBlockMemberStatic
    ) { ... } fn exit_extern_block_member_type(&mut self, : &'ast ExternBlockMemberType) { ... } fn exit_field_access(&mut self, : &'ast FieldAccess) { ... } fn exit_field_name(&mut self, : &'ast FieldName) { ... } fn exit_file(&mut self, : &'ast File) { ... } fn exit_for_loop(&mut self, : &'ast ForLoop) { ... } fn exit_function(&mut self, : &'ast Function) { ... } fn exit_function_header(&mut self, : &'ast FunctionHeader) { ... } fn exit_function_qualifiers(&mut self, : &'ast FunctionQualifiers) { ... } fn exit_generic_declaration_lifetime(
        &mut self,
        : &'ast GenericDeclarationLifetime
    ) { ... } fn exit_generic_declaration_type(&mut self, : &'ast GenericDeclarationType) { ... } fn exit_generic_declarations(&mut self, : &'ast GenericDeclarations) { ... } fn exit_ident(&mut self, : &'ast Ident) { ... } fn exit_if(&mut self, : &'ast If) { ... } fn exit_if_let(&mut self, : &'ast IfLet) { ... } fn exit_impl(&mut self, : &'ast Impl) { ... } fn exit_impl_const(&mut self, : &'ast ImplConst) { ... } fn exit_impl_function(&mut self, : &'ast ImplFunction) { ... } fn exit_impl_kind(&mut self, : &'ast ImplKind) { ... } fn exit_impl_member(&mut self, : &'ast ImplMember) { ... } fn exit_impl_of_inherent(&mut self, : &'ast ImplOfInherent) { ... } fn exit_impl_of_trait(&mut self, : &'ast ImplOfTrait) { ... } fn exit_impl_of_trait_type(&mut self, : &'ast ImplOfTraitType) { ... } fn exit_impl_type(&mut self, : &'ast ImplType) { ... } fn exit_item(&mut self, : &'ast Item) { ... } fn exit_let(&mut self, : &'ast Let) { ... } fn exit_lifetime(&mut self, : &'ast Lifetime) { ... } fn exit_loop(&mut self, : &'ast Loop) { ... } fn exit_macro_call(&mut self, : &'ast MacroCall) { ... } fn exit_macro_call_args(&mut self, : &'ast MacroCallArgs) { ... } fn exit_match(&mut self, : &'ast Match) { ... } fn exit_match_arm(&mut self, : &'ast MatchArm) { ... } fn exit_match_hand(&mut self, : &'ast MatchHand) { ... } fn exit_module(&mut self, : &'ast Module) { ... } fn exit_named_argument(&mut self, : &'ast NamedArgument) { ... } fn exit_number(&mut self, : &'ast Number) { ... } fn exit_number_value(&mut self, : &'ast NumberValue) { ... } fn exit_number_binary(&mut self, : &'ast NumberBinary) { ... } fn exit_number_decimal(&mut self, : &'ast NumberDecimal) { ... } fn exit_number_hexadecimal(&mut self, : &'ast NumberHexadecimal) { ... } fn exit_number_octal(&mut self, : &'ast NumberOctal) { ... } fn exit_parenthetical(&mut self, : &'ast Parenthetical) { ... } fn exit_path(&mut self, : &'ast Path) { ... } fn exit_path_component(&mut self, : &'ast PathComponent) { ... } fn exit_pathed_ident(&mut self, : &'ast PathedIdent) { ... } fn exit_pattern(&mut self, : &'ast Pattern) { ... } fn exit_pattern_box(&mut self, : &'ast PatternBox) { ... } fn exit_pattern_byte(&mut self, : &'ast PatternByte) { ... } fn exit_pattern_byte_string(&mut self, : &'ast PatternByteString) { ... } fn exit_pattern_character(&mut self, : &'ast PatternCharacter) { ... } fn exit_pattern_ident(&mut self, : &'ast PatternIdent) { ... } fn exit_pattern_kind(&mut self, : &'ast PatternKind) { ... } fn exit_pattern_macro_call(&mut self, : &'ast PatternMacroCall) { ... } fn exit_pattern_name(&mut self, : &'ast PatternName) { ... } fn exit_pattern_number(&mut self, : &'ast PatternNumber) { ... } fn exit_pattern_range_component(&mut self, : &'ast PatternRangeComponent) { ... } fn exit_pattern_range_exclusive(&mut self, : &'ast PatternRangeExclusive) { ... } fn exit_pattern_range_inclusive(&mut self, : &'ast PatternRangeInclusive) { ... } fn exit_pattern_reference(&mut self, : &'ast PatternReference) { ... } fn exit_pattern_slice(&mut self, : &'ast PatternSlice) { ... } fn exit_pattern_slice_member(&mut self, : &'ast PatternSliceMember) { ... } fn exit_pattern_slice_subslice(&mut self, : &'ast PatternSliceSubslice) { ... } fn exit_pattern_string(&mut self, : &'ast PatternString) { ... } fn exit_pattern_struct(&mut self, : &'ast PatternStruct) { ... } fn exit_pattern_struct_field(&mut self, : &'ast PatternStructField) { ... } fn exit_pattern_struct_field_long(&mut self, : &'ast PatternStructFieldLong) { ... } fn exit_pattern_struct_field_short(
        &mut self,
        : &'ast PatternStructFieldShort
    ) { ... } fn exit_pattern_tuple(&mut self, : &'ast PatternTuple) { ... } fn exit_pattern_tuple_member(&mut self, : &'ast PatternTupleMember) { ... } fn exit_range(&mut self, : &'ast Range) { ... } fn exit_range_inclusive(&mut self, : &'ast RangeInclusive) { ... } fn exit_reference(&mut self, : &'ast Reference) { ... } fn exit_return(&mut self, : &'ast Return) { ... } fn exit_self_argument(&mut self, : &'ast SelfArgument) { ... } fn exit_self_argument_longhand(&mut self, : &'ast SelfArgumentLonghand) { ... } fn exit_self_argument_shorthand(&mut self, : &'ast SelfArgumentShorthand) { ... } fn exit_self_argument_shorthand_qualifier(
        &mut self,
        : &'ast SelfArgumentShorthandQualifier
    ) { ... } fn exit_slice(&mut self, : &'ast Slice) { ... } fn exit_statement(&mut self, : &'ast Statement) { ... } fn exit_static(&mut self, : &'ast Static) { ... } fn exit_string(&mut self, : &'ast String) { ... } fn exit_struct(&mut self, : &'ast Struct) { ... } fn exit_struct_definition_body(&mut self, : &'ast StructDefinitionBody) { ... } fn exit_struct_definition_body_brace(
        &mut self,
        : &'ast StructDefinitionBodyBrace
    ) { ... } fn exit_struct_definition_body_tuple(
        &mut self,
        : &'ast StructDefinitionBodyTuple
    ) { ... } fn exit_struct_definition_field_named(
        &mut self,
        : &'ast StructDefinitionFieldNamed
    ) { ... } fn exit_struct_definition_field_unnamed(
        &mut self,
        : &'ast StructDefinitionFieldUnnamed
    ) { ... } fn exit_struct_literal(&mut self, : &'ast StructLiteral) { ... } fn exit_struct_literal_field(&mut self, : &'ast StructLiteralField) { ... } fn exit_trait(&mut self, : &'ast Trait) { ... } fn exit_trait_bound(&mut self, : &'ast TraitBound) { ... } fn exit_trait_bound_lifetime(&mut self, : &'ast TraitBoundLifetime) { ... } fn exit_trait_bound_normal(&mut self, : &'ast TraitBoundNormal) { ... } fn exit_trait_bound_relaxed(&mut self, : &'ast TraitBoundRelaxed) { ... } fn exit_trait_bound_type(&mut self, : &'ast TraitBoundType) { ... } fn exit_trait_bounds(&mut self, : &'ast TraitBounds) { ... } fn exit_trait_impl_argument(&mut self, : &'ast TraitImplArgument) { ... } fn exit_trait_impl_argument_named(&mut self, : &'ast TraitImplArgumentNamed) { ... } fn exit_trait_impl_function_header(
        &mut self,
        : &'ast TraitImplFunctionHeader
    ) { ... } fn exit_trait_member(&mut self, : &'ast TraitMember) { ... } fn exit_trait_member_const(&mut self, : &'ast TraitMemberConst) { ... } fn exit_trait_member_function(&mut self, : &'ast TraitMemberFunction) { ... } fn exit_trait_member_type(&mut self, : &'ast TraitMemberType) { ... } fn exit_try_operator(&mut self, : &'ast TryOperator) { ... } fn exit_tuple(&mut self, : &'ast Tuple) { ... } fn exit_turbofish(&mut self, : &'ast Turbofish) { ... } fn exit_type(&mut self, : &'ast Type) { ... } fn exit_type_additional(&mut self, : &'ast TypeAdditional) { ... } fn exit_type_alias(&mut self, : &'ast TypeAlias) { ... } fn exit_type_array(&mut self, : &'ast TypeArray) { ... } fn exit_type_disambiguation(&mut self, : &'ast TypeDisambiguation) { ... } fn exit_type_function(&mut self, : &'ast TypeFunction) { ... } fn exit_type_function_argument(&mut self, : &'ast TypeFunctionArgument) { ... } fn exit_type_function_argument_named(
        &mut self,
        : &'ast TypeFunctionArgumentNamed
    ) { ... } fn exit_type_generics(&mut self, : &'ast TypeGenerics) { ... } fn exit_type_generics_angle(&mut self, : &'ast TypeGenericsAngle) { ... } fn exit_type_generics_angle_member(
        &mut self,
        : &'ast TypeGenericsAngleMember
    ) { ... } fn exit_type_generics_function(&mut self, : &'ast TypeGenericsFunction) { ... } fn exit_type_higher_ranked_trait_bounds(
        &mut self,
        : &'ast TypeHigherRankedTraitBounds
    ) { ... } fn exit_type_higher_ranked_trait_bounds_child(
        &mut self,
        : &'ast TypeHigherRankedTraitBoundsChild
    ) { ... } fn exit_type_impl_trait(&mut self, : &'ast TypeImplTrait) { ... } fn exit_type_kind(&mut self, : &'ast TypeKind) { ... } fn exit_type_named(&mut self, : &'ast TypeNamed) { ... } fn exit_type_named_component(&mut self, : &'ast TypeNamedComponent) { ... } fn exit_type_pointer(&mut self, : &'ast TypePointer) { ... } fn exit_type_reference(&mut self, : &'ast TypeReference) { ... } fn exit_type_reference_kind(&mut self, : &'ast TypeReferenceKind) { ... } fn exit_type_slice(&mut self, : &'ast TypeSlice) { ... } fn exit_type_tuple(&mut self, : &'ast TypeTuple) { ... } fn exit_unary(&mut self, : &'ast Unary) { ... } fn exit_union(&mut self, : &'ast Union) { ... } fn exit_unsafe_block(&mut self, : &'ast UnsafeBlock) { ... } fn exit_use(&mut self, : &'ast Use) { ... } fn exit_use_path(&mut self, : &'ast UsePath) { ... } fn exit_use_tail(&mut self, : &'ast UseTail) { ... } fn exit_use_tail_glob(&mut self, : &'ast UseTailGlob) { ... } fn exit_use_tail_ident(&mut self, : &'ast UseTailIdent) { ... } fn exit_use_tail_multi(&mut self, : &'ast UseTailMulti) { ... } fn exit_value(&mut self, : &'ast Value) { ... } fn exit_visibility(&mut self, : &'ast Visibility) { ... } fn exit_where(&mut self, : &'ast Where) { ... } fn exit_where_kind(&mut self, : &'ast WhereKind) { ... } fn exit_where_lifetime(&mut self, : &'ast WhereLifetime) { ... } fn exit_where_type(&mut self, : &'ast WhereType) { ... } fn exit_while(&mut self, : &'ast While) { ... } fn exit_while_let(&mut self, : &'ast WhileLet) { ... } fn exit_whitespace(&mut self, : &'ast Whitespace) { ... }
}
Expand description

A visitor of AST nodes

On entry of a node, the corresponding visit_* method will be called. This method may return a Control to avoid descending into child nodes.

After visiting all the children of a node, the corresponding exit_* method will be called.

For ease-of-use, all methods in this trait have a default implementation. Consumers of the trait only need to implement methods for the nodes they are interested in. The default implementations for the visit_* methods continues processing on every node.

Provided Methods§

Implementors§