VisitMut

Trait VisitMut 

pub trait VisitMut {
Show 66 methods // Provided methods fn visit_mut<N>(&mut self, i: &mut N) where N: Node, Self: Sized { ... } fn visit_assignment_mut(&mut self, i: &mut Assignment) { ... } fn visit_assignments_mut(&mut self, i: &mut Assignments) { ... } fn visit_association_mut(&mut self, i: &mut Association) { ... } fn visit_cte_mut(&mut self, i: &mut Cte) { ... } fn visit_expr_mut(&mut self, i: &mut Expr) { ... } fn visit_expr_and_mut(&mut self, i: &mut ExprAnd) { ... } fn visit_expr_any_mut(&mut self, i: &mut ExprAny) { ... } fn visit_expr_arg_mut(&mut self, i: &mut ExprArg) { ... } fn visit_expr_binary_op_mut(&mut self, i: &mut ExprBinaryOp) { ... } fn visit_expr_cast_mut(&mut self, i: &mut ExprCast) { ... } fn visit_expr_column_mut(&mut self, i: &mut ExprColumn) { ... } fn visit_expr_default_mut(&mut self) { ... } fn visit_expr_error_mut(&mut self, i: &mut ExprError) { ... } fn visit_expr_exists_mut(&mut self, i: &mut ExprExists) { ... } fn visit_expr_func_mut(&mut self, i: &mut ExprFunc) { ... } fn visit_expr_func_count_mut(&mut self, i: &mut FuncCount) { ... } fn visit_expr_func_last_insert_id_mut(&mut self, i: &mut FuncLastInsertId) { ... } fn visit_expr_in_list_mut(&mut self, i: &mut ExprInList) { ... } fn visit_expr_in_subquery_mut(&mut self, i: &mut ExprInSubquery) { ... } fn visit_expr_is_null_mut(&mut self, i: &mut ExprIsNull) { ... } fn visit_expr_is_variant_mut(&mut self, i: &mut ExprIsVariant) { ... } fn visit_expr_let_mut(&mut self, i: &mut ExprLet) { ... } fn visit_expr_map_mut(&mut self, i: &mut ExprMap) { ... } fn visit_expr_match_mut(&mut self, i: &mut ExprMatch) { ... } fn visit_expr_not_mut(&mut self, i: &mut ExprNot) { ... } fn visit_expr_or_mut(&mut self, i: &mut ExprOr) { ... } fn visit_expr_list_mut(&mut self, i: &mut ExprList) { ... } fn visit_expr_record_mut(&mut self, i: &mut ExprRecord) { ... } fn visit_expr_reference_mut(&mut self, i: &mut ExprReference) { ... } fn visit_expr_set_mut(&mut self, i: &mut ExprSet) { ... } fn visit_expr_set_op_mut(&mut self, i: &mut ExprSetOp) { ... } fn visit_expr_stmt_mut(&mut self, i: &mut ExprStmt) { ... } fn visit_filter_mut(&mut self, i: &mut Filter) { ... } fn visit_condition_mut(&mut self, i: &mut Condition) { ... } fn visit_expr_project_mut(&mut self, i: &mut ExprProject) { ... } fn visit_insert_target_mut(&mut self, i: &mut InsertTarget) { ... } fn visit_join_mut(&mut self, i: &mut Join) { ... } fn visit_limit_mut(&mut self, i: &mut Limit) { ... } fn visit_limit_cursor_mut(&mut self, i: &mut LimitCursor) { ... } fn visit_limit_offset_mut(&mut self, i: &mut LimitOffset) { ... } fn visit_order_by_mut(&mut self, i: &mut OrderBy) { ... } fn visit_order_by_expr_mut(&mut self, i: &mut OrderByExpr) { ... } fn visit_path_mut(&mut self, i: &mut Path) { ... } fn visit_projection_mut(&mut self, i: &mut Projection) { ... } fn visit_returning_mut(&mut self, i: &mut Returning) { ... } fn visit_source_mut(&mut self, i: &mut Source) { ... } fn visit_source_model_mut(&mut self, i: &mut SourceModel) { ... } fn visit_source_table_mut(&mut self, i: &mut SourceTable) { ... } fn visit_source_table_id_mut(&mut self, i: &mut SourceTableId) { ... } fn visit_stmt_mut(&mut self, i: &mut Statement) { ... } fn visit_stmt_delete_mut(&mut self, i: &mut Delete) { ... } fn visit_stmt_insert_mut(&mut self, i: &mut Insert) { ... } fn visit_stmt_query_mut(&mut self, i: &mut Query) { ... } fn visit_stmt_select_mut(&mut self, i: &mut Select) { ... } fn visit_stmt_update_mut(&mut self, i: &mut Update) { ... } fn visit_table_derived_mut(&mut self, i: &mut TableDerived) { ... } fn visit_table_ref_mut(&mut self, i: &mut TableRef) { ... } fn visit_table_factor_mut(&mut self, i: &mut TableFactor) { ... } fn visit_table_with_joins_mut(&mut self, i: &mut TableWithJoins) { ... } fn visit_type_mut(&mut self, i: &mut Type) { ... } fn visit_update_target_mut(&mut self, i: &mut UpdateTarget) { ... } fn visit_value_mut(&mut self, i: &mut Value) { ... } fn visit_value_record(&mut self, i: &mut ValueRecord) { ... } fn visit_values_mut(&mut self, i: &mut Values) { ... } fn visit_with_mut(&mut self, i: &mut With) { ... }
}
Expand description

Mutable visitor trait for the statement AST.

Implement this trait to walk and modify the AST in place. Each visit_*_mut method has a default implementation that recurses into child nodes via the corresponding free function (e.g., visit_expr_mut). Override specific methods to transform nodes of interest.

Companion helpers:

§Examples

use toasty_core::stmt::{visit_mut, Expr, Value, Node};

let mut expr = Expr::from(Value::from(42_i64));
visit_mut::for_each_expr_mut(&mut expr, |e| {
    // transform expressions in place
});

Provided Methods§

fn visit_mut<N>(&mut self, i: &mut N)
where N: Node, Self: Sized,

Dispatches to the appropriate visit_*_mut method via Node::visit_mut.

fn visit_assignment_mut(&mut self, i: &mut Assignment)

Visits an Assignment node mutably.

The default implementation delegates to visit_assignment_mut.

fn visit_assignments_mut(&mut self, i: &mut Assignments)

Visits an Assignments node mutably.

The default implementation delegates to visit_assignments_mut.

fn visit_association_mut(&mut self, i: &mut Association)

Visits an Association node mutably.

The default implementation delegates to visit_association_mut.

fn visit_cte_mut(&mut self, i: &mut Cte)

Visits a Cte (common table expression) node mutably.

The default implementation delegates to visit_cte_mut.

fn visit_expr_mut(&mut self, i: &mut Expr)

Visits an Expr node mutably.

The default implementation delegates to visit_expr_mut.

fn visit_expr_and_mut(&mut self, i: &mut ExprAnd)

Visits an ExprAnd node mutably.

The default implementation delegates to visit_expr_and_mut.

fn visit_expr_any_mut(&mut self, i: &mut ExprAny)

Visits an ExprAny node mutably.

The default implementation delegates to visit_expr_any_mut.

fn visit_expr_arg_mut(&mut self, i: &mut ExprArg)

Visits an ExprArg node mutably.

The default implementation delegates to visit_expr_arg_mut.

fn visit_expr_binary_op_mut(&mut self, i: &mut ExprBinaryOp)

Visits an ExprBinaryOp node mutably.

The default implementation delegates to visit_expr_binary_op_mut.

fn visit_expr_cast_mut(&mut self, i: &mut ExprCast)

Visits an ExprCast node mutably.

The default implementation delegates to visit_expr_cast_mut.

fn visit_expr_column_mut(&mut self, i: &mut ExprColumn)

Visits an ExprColumn node mutably.

The default implementation delegates to visit_expr_column_mut.

fn visit_expr_default_mut(&mut self)

Visits a default expression node mutably.

The default implementation delegates to visit_expr_default_mut.

fn visit_expr_error_mut(&mut self, i: &mut ExprError)

Visits an ExprError node mutably.

The default implementation delegates to visit_expr_error_mut.

fn visit_expr_exists_mut(&mut self, i: &mut ExprExists)

Visits an ExprExists node mutably.

The default implementation delegates to visit_expr_exists_mut.

fn visit_expr_func_mut(&mut self, i: &mut ExprFunc)

Visits an ExprFunc node mutably.

The default implementation delegates to visit_expr_func_mut.

fn visit_expr_func_count_mut(&mut self, i: &mut FuncCount)

Visits a FuncCount node mutably.

The default implementation delegates to visit_expr_func_count_mut.

fn visit_expr_func_last_insert_id_mut(&mut self, i: &mut FuncLastInsertId)

Visits a FuncLastInsertId node mutably.

The default implementation delegates to visit_expr_func_last_insert_id_mut.

fn visit_expr_in_list_mut(&mut self, i: &mut ExprInList)

Visits an ExprInList node mutably.

The default implementation delegates to visit_expr_in_list_mut.

fn visit_expr_in_subquery_mut(&mut self, i: &mut ExprInSubquery)

Visits an ExprInSubquery node mutably.

The default implementation delegates to visit_expr_in_subquery_mut.

fn visit_expr_is_null_mut(&mut self, i: &mut ExprIsNull)

Visits an ExprIsNull node mutably.

The default implementation delegates to visit_expr_is_null_mut.

fn visit_expr_is_variant_mut(&mut self, i: &mut ExprIsVariant)

Visits an ExprIsVariant node mutably.

The default implementation delegates to visit_expr_is_variant_mut.

fn visit_expr_let_mut(&mut self, i: &mut ExprLet)

Visits an ExprLet node mutably.

The default implementation delegates to visit_expr_let_mut.

fn visit_expr_map_mut(&mut self, i: &mut ExprMap)

Visits an ExprMap node mutably.

The default implementation delegates to visit_expr_map_mut.

fn visit_expr_match_mut(&mut self, i: &mut ExprMatch)

Visits an ExprMatch node mutably.

The default implementation delegates to visit_expr_match_mut.

fn visit_expr_not_mut(&mut self, i: &mut ExprNot)

Visits an ExprNot node mutably.

The default implementation delegates to visit_expr_not_mut.

fn visit_expr_or_mut(&mut self, i: &mut ExprOr)

Visits an ExprOr node mutably.

The default implementation delegates to visit_expr_or_mut.

fn visit_expr_list_mut(&mut self, i: &mut ExprList)

Visits an ExprList node mutably.

The default implementation delegates to visit_expr_list_mut.

fn visit_expr_record_mut(&mut self, i: &mut ExprRecord)

Visits an ExprRecord node mutably.

The default implementation delegates to visit_expr_record_mut.

fn visit_expr_reference_mut(&mut self, i: &mut ExprReference)

Visits an ExprReference node mutably.

The default implementation delegates to visit_expr_reference_mut.

fn visit_expr_set_mut(&mut self, i: &mut ExprSet)

Visits an ExprSet node mutably.

The default implementation delegates to visit_expr_set_mut.

fn visit_expr_set_op_mut(&mut self, i: &mut ExprSetOp)

Visits an ExprSetOp node mutably.

The default implementation delegates to visit_expr_set_op_mut.

fn visit_expr_stmt_mut(&mut self, i: &mut ExprStmt)

Visits an ExprStmt node mutably.

The default implementation delegates to visit_expr_stmt_mut.

fn visit_filter_mut(&mut self, i: &mut Filter)

Visits a Filter node mutably.

The default implementation delegates to visit_filter_mut.

fn visit_condition_mut(&mut self, i: &mut Condition)

Visits a Condition node mutably.

The default implementation delegates to visit_condition_mut.

fn visit_expr_project_mut(&mut self, i: &mut ExprProject)

Visits an ExprProject node mutably.

The default implementation delegates to visit_expr_project_mut.

fn visit_insert_target_mut(&mut self, i: &mut InsertTarget)

Visits an InsertTarget node mutably.

The default implementation delegates to visit_insert_target_mut.

fn visit_join_mut(&mut self, i: &mut Join)

Visits a Join node mutably.

The default implementation delegates to visit_join_mut.

fn visit_limit_mut(&mut self, i: &mut Limit)

Visits a Limit node mutably.

The default implementation delegates to visit_limit_mut.

fn visit_limit_cursor_mut(&mut self, i: &mut LimitCursor)

Visits a LimitCursor node mutably.

The default implementation delegates to visit_limit_cursor_mut.

fn visit_limit_offset_mut(&mut self, i: &mut LimitOffset)

Visits a LimitOffset node mutably.

The default implementation delegates to visit_limit_offset_mut.

fn visit_order_by_mut(&mut self, i: &mut OrderBy)

Visits an OrderBy node mutably.

The default implementation delegates to visit_order_by_mut.

fn visit_order_by_expr_mut(&mut self, i: &mut OrderByExpr)

Visits an OrderByExpr node mutably.

The default implementation delegates to visit_order_by_expr_mut.

fn visit_path_mut(&mut self, i: &mut Path)

Visits a Path node mutably.

The default implementation delegates to visit_path_mut.

fn visit_projection_mut(&mut self, i: &mut Projection)

Visits a Projection node mutably.

The default implementation delegates to visit_projection_mut.

fn visit_returning_mut(&mut self, i: &mut Returning)

Visits a Returning node mutably.

The default implementation delegates to visit_returning_mut.

fn visit_source_mut(&mut self, i: &mut Source)

Visits a Source node mutably.

The default implementation delegates to visit_source_mut.

fn visit_source_model_mut(&mut self, i: &mut SourceModel)

Visits a SourceModel node mutably.

The default implementation delegates to visit_source_model_mut.

fn visit_source_table_mut(&mut self, i: &mut SourceTable)

Visits a SourceTable node mutably.

The default implementation delegates to visit_source_table_mut.

fn visit_source_table_id_mut(&mut self, i: &mut SourceTableId)

Visits a SourceTableId node mutably.

The default implementation delegates to visit_source_table_id_mut.

fn visit_stmt_mut(&mut self, i: &mut Statement)

Visits a [Statement] node mutably.

The default implementation delegates to visit_stmt_mut.

fn visit_stmt_delete_mut(&mut self, i: &mut Delete)

Visits a Delete statement node mutably.

The default implementation delegates to visit_stmt_delete_mut.

fn visit_stmt_insert_mut(&mut self, i: &mut Insert)

Visits an Insert statement node mutably.

The default implementation delegates to visit_stmt_insert_mut.

fn visit_stmt_query_mut(&mut self, i: &mut Query)

Visits a Query statement node mutably.

The default implementation delegates to visit_stmt_query_mut.

fn visit_stmt_select_mut(&mut self, i: &mut Select)

Visits a Select statement node mutably.

The default implementation delegates to visit_stmt_select_mut.

fn visit_stmt_update_mut(&mut self, i: &mut Update)

Visits an Update statement node mutably.

The default implementation delegates to visit_stmt_update_mut.

fn visit_table_derived_mut(&mut self, i: &mut TableDerived)

Visits a TableDerived node mutably.

The default implementation delegates to visit_table_derived_mut.

fn visit_table_ref_mut(&mut self, i: &mut TableRef)

Visits a TableRef node mutably.

The default implementation delegates to visit_table_ref_mut.

fn visit_table_factor_mut(&mut self, i: &mut TableFactor)

Visits a TableFactor node mutably.

The default implementation delegates to visit_table_factor_mut.

fn visit_table_with_joins_mut(&mut self, i: &mut TableWithJoins)

Visits a TableWithJoins node mutably.

The default implementation delegates to visit_table_with_joins_mut.

fn visit_type_mut(&mut self, i: &mut Type)

Visits a Type node mutably.

The default implementation delegates to visit_type_mut.

fn visit_update_target_mut(&mut self, i: &mut UpdateTarget)

Visits an UpdateTarget node mutably.

The default implementation delegates to visit_update_target_mut.

fn visit_value_mut(&mut self, i: &mut Value)

Visits a Value node mutably.

The default implementation delegates to visit_value_mut.

fn visit_value_record(&mut self, i: &mut ValueRecord)

Visits a ValueRecord node mutably.

The default implementation delegates to visit_value_record.

fn visit_values_mut(&mut self, i: &mut Values)

Visits a Values node mutably.

The default implementation delegates to visit_values_mut.

fn visit_with_mut(&mut self, i: &mut With)

Visits a With node mutably.

The default implementation delegates to visit_with_mut.

Implementations on Foreign Types§

§

impl<V> VisitMut for &mut V
where V: VisitMut,

§

fn visit_assignment_mut(&mut self, i: &mut Assignment)

§

fn visit_assignments_mut(&mut self, i: &mut Assignments)

§

fn visit_association_mut(&mut self, i: &mut Association)

§

fn visit_cte_mut(&mut self, i: &mut Cte)

§

fn visit_expr_mut(&mut self, i: &mut Expr)

§

fn visit_expr_and_mut(&mut self, i: &mut ExprAnd)

§

fn visit_expr_arg_mut(&mut self, i: &mut ExprArg)

§

fn visit_expr_binary_op_mut(&mut self, i: &mut ExprBinaryOp)

§

fn visit_expr_cast_mut(&mut self, i: &mut ExprCast)

§

fn visit_expr_column_mut(&mut self, i: &mut ExprColumn)

§

fn visit_expr_default_mut(&mut self)

§

fn visit_expr_error_mut(&mut self, i: &mut ExprError)

§

fn visit_expr_exists_mut(&mut self, i: &mut ExprExists)

§

fn visit_expr_func_mut(&mut self, i: &mut ExprFunc)

§

fn visit_expr_func_count_mut(&mut self, i: &mut FuncCount)

§

fn visit_expr_in_list_mut(&mut self, i: &mut ExprInList)

§

fn visit_expr_in_subquery_mut(&mut self, i: &mut ExprInSubquery)

§

fn visit_expr_is_null_mut(&mut self, i: &mut ExprIsNull)

§

fn visit_expr_is_variant_mut(&mut self, i: &mut ExprIsVariant)

§

fn visit_expr_let_mut(&mut self, i: &mut ExprLet)

§

fn visit_expr_map_mut(&mut self, i: &mut ExprMap)

§

fn visit_expr_match_mut(&mut self, i: &mut ExprMatch)

§

fn visit_expr_not_mut(&mut self, i: &mut ExprNot)

§

fn visit_expr_or_mut(&mut self, i: &mut ExprOr)

§

fn visit_expr_list_mut(&mut self, i: &mut ExprList)

§

fn visit_expr_record_mut(&mut self, i: &mut ExprRecord)

§

fn visit_expr_reference_mut(&mut self, i: &mut ExprReference)

§

fn visit_expr_set_mut(&mut self, i: &mut ExprSet)

§

fn visit_expr_set_op_mut(&mut self, i: &mut ExprSetOp)

§

fn visit_expr_stmt_mut(&mut self, i: &mut ExprStmt)

§

fn visit_filter_mut(&mut self, i: &mut Filter)

§

fn visit_condition_mut(&mut self, i: &mut Condition)

§

fn visit_expr_project_mut(&mut self, i: &mut ExprProject)

§

fn visit_insert_target_mut(&mut self, i: &mut InsertTarget)

§

fn visit_join_mut(&mut self, i: &mut Join)

§

fn visit_limit_mut(&mut self, i: &mut Limit)

§

fn visit_limit_cursor_mut(&mut self, i: &mut LimitCursor)

§

fn visit_limit_offset_mut(&mut self, i: &mut LimitOffset)

§

fn visit_order_by_mut(&mut self, i: &mut OrderBy)

§

fn visit_order_by_expr_mut(&mut self, i: &mut OrderByExpr)

§

fn visit_path_mut(&mut self, i: &mut Path)

§

fn visit_projection_mut(&mut self, i: &mut Projection)

§

fn visit_returning_mut(&mut self, i: &mut Returning)

§

fn visit_source_mut(&mut self, i: &mut Source)

§

fn visit_source_model_mut(&mut self, i: &mut SourceModel)

§

fn visit_source_table_mut(&mut self, i: &mut SourceTable)

§

fn visit_source_table_id_mut(&mut self, i: &mut SourceTableId)

§

fn visit_stmt_mut(&mut self, i: &mut Statement)

§

fn visit_stmt_delete_mut(&mut self, i: &mut Delete)

§

fn visit_stmt_insert_mut(&mut self, i: &mut Insert)

§

fn visit_stmt_query_mut(&mut self, i: &mut Query)

§

fn visit_stmt_select_mut(&mut self, i: &mut Select)

§

fn visit_stmt_update_mut(&mut self, i: &mut Update)

§

fn visit_table_derived_mut(&mut self, i: &mut TableDerived)

§

fn visit_table_ref_mut(&mut self, i: &mut TableRef)

§

fn visit_table_factor_mut(&mut self, i: &mut TableFactor)

§

fn visit_table_with_joins_mut(&mut self, i: &mut TableWithJoins)

§

fn visit_type_mut(&mut self, i: &mut Type)

§

fn visit_update_target_mut(&mut self, i: &mut UpdateTarget)

§

fn visit_value_mut(&mut self, i: &mut Value)

§

fn visit_value_record(&mut self, i: &mut ValueRecord)

§

fn visit_values_mut(&mut self, i: &mut Values)

§

fn visit_with_mut(&mut self, i: &mut With)

Implementors§