pub trait VisitMut<'ast> {
type BreakValue;
Show 78 methods
// Provided methods
fn visit_source_unit_mut(
&mut self,
source_unit: &'ast mut SourceUnit<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_item_mut(
&mut self,
item: &'ast mut Item<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_pragma_directive_mut(
&mut self,
pragma: &'ast mut PragmaDirective<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_import_directive_mut(
&mut self,
import: &'ast mut ImportDirective<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_using_directive_mut(
&mut self,
using: &'ast mut UsingDirective<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_item_contract_mut(
&mut self,
contract: &'ast mut ItemContract<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_item_function_mut(
&mut self,
function: &'ast mut ItemFunction<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_item_struct_mut(
&mut self,
strukt: &'ast mut ItemStruct<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_item_enum_mut(
&mut self,
enum_: &'ast mut ItemEnum<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_item_udvt_mut(
&mut self,
udvt: &'ast mut ItemUdvt<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_item_error_mut(
&mut self,
error: &'ast mut ItemError<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_item_event_mut(
&mut self,
event: &'ast mut ItemEvent<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_variable_definition_mut(
&mut self,
var: &'ast mut VariableDefinition<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_ty_mut(
&mut self,
ty: &'ast mut Type<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_function_header_mut(
&mut self,
header: &'ast mut FunctionHeader<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_modifier_mut(
&mut self,
modifier: &'ast mut Modifier<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_override_mut(
&mut self,
override_: &'ast mut Override<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_call_args_mut(
&mut self,
args: &'ast mut CallArgs<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_named_args_mut(
&mut self,
args: &'ast mut &'ast mut RawThinSlice<(), NamedArg<'ast>>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_stmt_mut(
&mut self,
stmt: &'ast mut Stmt<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_stmt_assembly_mut(
&mut self,
assembly: &'ast mut StmtAssembly<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_stmt_try_mut(
&mut self,
try_: &'ast mut StmtTry<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_try_catch_clause_mut(
&mut self,
catch: &'ast mut TryCatchClause<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_block_mut(
&mut self,
block: &'ast mut Block<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_expr_mut(
&mut self,
expr: &'ast mut Expr<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_parameter_list_mut(
&mut self,
list: &'ast mut ParameterList<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_lit_mut(
&mut self,
lit: &'ast mut Lit<'_>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_yul_stmt_mut(
&mut self,
stmt: &'ast mut Stmt<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_yul_block_mut(
&mut self,
block: &'ast mut Block<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_yul_stmt_switch_mut(
&mut self,
switch: &'ast mut StmtSwitch<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_yul_stmt_case_mut(
&mut self,
case: &'ast mut StmtSwitchCase<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_yul_function_mut(
&mut self,
function: &'ast mut Function<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_yul_expr_mut(
&mut self,
expr: &'ast mut Expr<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_yul_expr_call_mut(
&mut self,
call: &'ast mut ExprCall<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_doc_comments_mut(
&mut self,
doc_comments: &'ast mut DocComments<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_doc_comment_mut(
&mut self,
doc_comment: &'ast mut DocComment,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_path_mut(
&mut self,
path: &'ast mut PathSlice,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_ident_mut(
&mut self,
ident: &'ast mut Ident,
) -> ControlFlow<Self::BreakValue> { ... }
fn visit_span_mut(
&mut self,
span: &'ast mut Span,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_source_unit_mut(
&mut self,
source_unit: &'ast mut SourceUnit<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_item_mut(
&mut self,
item: &'ast mut Item<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_pragma_directive_mut(
&mut self,
pragma: &'ast mut PragmaDirective<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_import_directive_mut(
&mut self,
import: &'ast mut ImportDirective<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_using_directive_mut(
&mut self,
using: &'ast mut UsingDirective<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_item_contract_mut(
&mut self,
contract: &'ast mut ItemContract<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_item_function_mut(
&mut self,
function: &'ast mut ItemFunction<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_item_struct_mut(
&mut self,
strukt: &'ast mut ItemStruct<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_item_enum_mut(
&mut self,
enum_: &'ast mut ItemEnum<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_item_udvt_mut(
&mut self,
udvt: &'ast mut ItemUdvt<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_item_error_mut(
&mut self,
error: &'ast mut ItemError<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_item_event_mut(
&mut self,
event: &'ast mut ItemEvent<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_variable_definition_mut(
&mut self,
var: &'ast mut VariableDefinition<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_ty_mut(
&mut self,
ty: &'ast mut Type<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_function_header_mut(
&mut self,
header: &'ast mut FunctionHeader<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_modifier_mut(
&mut self,
modifier: &'ast mut Modifier<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_override_mut(
&mut self,
override_: &'ast mut Override<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_call_args_mut(
&mut self,
args: &'ast mut CallArgs<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_named_args_mut(
&mut self,
args: &'ast mut &'ast mut RawThinSlice<(), NamedArg<'ast>>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_stmt_mut(
&mut self,
stmt: &'ast mut Stmt<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_stmt_assembly_mut(
&mut self,
assembly: &'ast mut StmtAssembly<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_stmt_try_mut(
&mut self,
try_: &'ast mut StmtTry<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_try_catch_clause_mut(
&mut self,
catch: &'ast mut TryCatchClause<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_block_mut(
&mut self,
block: &'ast mut Block<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_expr_mut(
&mut self,
expr: &'ast mut Expr<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_parameter_list_mut(
&mut self,
list: &'ast mut ParameterList<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_lit_mut(
&mut self,
lit: &'ast mut Lit<'_>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_yul_stmt_mut(
&mut self,
stmt: &'ast mut Stmt<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_yul_block_mut(
&mut self,
block: &'ast mut Block<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_yul_stmt_switch_mut(
&mut self,
switch: &'ast mut StmtSwitch<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_yul_stmt_case_mut(
&mut self,
case: &'ast mut StmtSwitchCase<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_yul_function_mut(
&mut self,
function: &'ast mut Function<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_yul_expr_mut(
&mut self,
expr: &'ast mut Expr<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_yul_expr_call_mut(
&mut self,
call: &'ast mut ExprCall<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_doc_comments_mut(
&mut self,
doc_comments: &'ast mut DocComments<'ast>,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_doc_comment_mut(
&mut self,
doc_comment: &'ast mut DocComment,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_path_mut(
&mut self,
path: &'ast mut PathSlice,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_ident_mut(
&mut self,
ident: &'ast mut Ident,
) -> ControlFlow<Self::BreakValue> { ... }
fn walk_span_mut(
&mut self,
span: &'ast mut Span,
) -> ControlFlow<Self::BreakValue> { ... }
}Expand description
AST traversal.
Required Associated Types§
Sourcetype BreakValue
type BreakValue
The value returned when breaking from the traversal.
This can be Never to indicate that the traversal
should never break.