pub trait Visitor<'ast> {
Show 144 methods
// Provided methods
fn enter_ast_node(&mut self, _id: NodeId) -> Traverse { ... }
fn exit_ast_node(&mut self, _id: NodeId) -> Traverse { ... }
fn enter_item(&mut self, _item: &'ast Item) -> Traverse { ... }
fn exit_item(&mut self, _item: &'ast Item) -> Traverse { ... }
fn enter_ddl(&mut self, _ddl: &'ast Ddl) -> Traverse { ... }
fn exit_ddl(&mut self, _ddl: &'ast Ddl) -> Traverse { ... }
fn enter_ddl_op(&mut self, _ddl_op: &'ast DdlOp) -> Traverse { ... }
fn exit_ddl_op(&mut self, _ddl_op: &'ast DdlOp) -> Traverse { ... }
fn enter_create_table(
&mut self,
_create_table: &'ast CreateTable
) -> Traverse { ... }
fn exit_create_table(
&mut self,
_create_table: &'ast CreateTable
) -> Traverse { ... }
fn enter_drop_table(&mut self, _drop_table: &'ast DropTable) -> Traverse { ... }
fn exit_drop_table(&mut self, _drop_table: &'ast DropTable) -> Traverse { ... }
fn enter_create_index(
&mut self,
_create_index: &'ast CreateIndex
) -> Traverse { ... }
fn exit_create_index(
&mut self,
_create_index: &'ast CreateIndex
) -> Traverse { ... }
fn enter_drop_index(&mut self, _drop_index: &'ast DropIndex) -> Traverse { ... }
fn exit_drop_index(&mut self, _drop_index: &'ast DropIndex) -> Traverse { ... }
fn enter_dml(&mut self, _dml: &'ast Dml) -> Traverse { ... }
fn exit_dml(&mut self, _dml: &'ast Dml) -> Traverse { ... }
fn enter_dml_op(&mut self, _dml_op: &'ast DmlOp) -> Traverse { ... }
fn exit_dml_op(&mut self, _dml_op: &'ast DmlOp) -> Traverse { ... }
fn enter_returning_expr(
&mut self,
_returning_expr: &'ast ReturningExpr
) -> Traverse { ... }
fn exit_returning_expr(
&mut self,
_returning_expr: &'ast ReturningExpr
) -> Traverse { ... }
fn enter_returning_elem(
&mut self,
_returning_elem: &'ast ReturningElem
) -> Traverse { ... }
fn exit_returning_elem(
&mut self,
_returning_elem: &'ast ReturningElem
) -> Traverse { ... }
fn enter_insert(&mut self, _insert: &'ast Insert) -> Traverse { ... }
fn exit_insert(&mut self, _insert: &'ast Insert) -> Traverse { ... }
fn enter_insert_value(
&mut self,
_insert_value: &'ast InsertValue
) -> Traverse { ... }
fn exit_insert_value(
&mut self,
_insert_value: &'ast InsertValue
) -> Traverse { ... }
fn enter_set(&mut self, _set: &'ast Set) -> Traverse { ... }
fn exit_set(&mut self, _set: &'ast Set) -> Traverse { ... }
fn enter_assignment(&mut self, _assignment: &'ast Assignment) -> Traverse { ... }
fn exit_assignment(&mut self, _assignment: &'ast Assignment) -> Traverse { ... }
fn enter_remove(&mut self, _remove: &'ast Remove) -> Traverse { ... }
fn exit_remove(&mut self, _remove: &'ast Remove) -> Traverse { ... }
fn enter_delete(&mut self, _delete: &'ast Delete) -> Traverse { ... }
fn exit_delete(&mut self, _delete: &'ast Delete) -> Traverse { ... }
fn enter_on_conflict(&mut self, _on_conflict: &'ast OnConflict) -> Traverse { ... }
fn exit_on_conflict(&mut self, _on_conflict: &'ast OnConflict) -> Traverse { ... }
fn enter_top_level_query(&mut self, _query: &'ast TopLevelQuery) -> Traverse { ... }
fn exit_top_level_query(&mut self, _query: &'ast TopLevelQuery) -> Traverse { ... }
fn enter_query(&mut self, _query: &'ast Query) -> Traverse { ... }
fn exit_query(&mut self, _query: &'ast Query) -> Traverse { ... }
fn enter_with_clause(&mut self, _query: &'ast WithClause) -> Traverse { ... }
fn exit_with_clause(&mut self, _query: &'ast WithClause) -> Traverse { ... }
fn enter_with_element(&mut self, _query: &'ast WithElement) -> Traverse { ... }
fn exit_with_element(&mut self, _query: &'ast WithElement) -> Traverse { ... }
fn enter_query_set(&mut self, _query_set: &'ast QuerySet) -> Traverse { ... }
fn exit_query_set(&mut self, _query_set: &'ast QuerySet) -> Traverse { ... }
fn enter_bag_op_expr(&mut self, _set_expr: &'ast BagOpExpr) -> Traverse { ... }
fn exit_bag_op_expr(&mut self, _set_expr: &'ast BagOpExpr) -> Traverse { ... }
fn enter_select(&mut self, _select: &'ast Select) -> Traverse { ... }
fn exit_select(&mut self, _select: &'ast Select) -> Traverse { ... }
fn enter_query_table(&mut self, _table: &'ast QueryTable) -> Traverse { ... }
fn exit_query_table(&mut self, _table: &'ast QueryTable) -> Traverse { ... }
fn enter_projection(&mut self, _projection: &'ast Projection) -> Traverse { ... }
fn exit_projection(&mut self, _projection: &'ast Projection) -> Traverse { ... }
fn enter_projection_kind(
&mut self,
_projection_kind: &'ast ProjectionKind
) -> Traverse { ... }
fn exit_projection_kind(
&mut self,
_projection_kind: &'ast ProjectionKind
) -> Traverse { ... }
fn enter_project_item(
&mut self,
_project_item: &'ast ProjectItem
) -> Traverse { ... }
fn exit_project_item(
&mut self,
_project_item: &'ast ProjectItem
) -> Traverse { ... }
fn enter_project_pivot(
&mut self,
_project_pivot: &'ast ProjectPivot
) -> Traverse { ... }
fn exit_project_pivot(
&mut self,
_project_pivot: &'ast ProjectPivot
) -> Traverse { ... }
fn enter_project_all(&mut self, _project_all: &'ast ProjectAll) -> Traverse { ... }
fn exit_project_all(&mut self, _project_all: &'ast ProjectAll) -> Traverse { ... }
fn enter_project_expr(
&mut self,
_project_expr: &'ast ProjectExpr
) -> Traverse { ... }
fn exit_project_expr(
&mut self,
_project_expr: &'ast ProjectExpr
) -> Traverse { ... }
fn enter_expr(&mut self, _expr: &'ast Expr) -> Traverse { ... }
fn exit_expr(&mut self, _expr: &'ast Expr) -> Traverse { ... }
fn enter_lit(&mut self, _lit: &'ast Lit) -> Traverse { ... }
fn exit_lit(&mut self, _lit: &'ast Lit) -> Traverse { ... }
fn enter_var_ref(&mut self, _var_ref: &'ast VarRef) -> Traverse { ... }
fn exit_var_ref(&mut self, _var_ref: &'ast VarRef) -> Traverse { ... }
fn enter_bin_op(&mut self, _bin_op: &'ast BinOp) -> Traverse { ... }
fn exit_bin_op(&mut self, _bin_op: &'ast BinOp) -> Traverse { ... }
fn enter_uni_op(&mut self, _uni_op: &'ast UniOp) -> Traverse { ... }
fn exit_uni_op(&mut self, _uni_op: &'ast UniOp) -> Traverse { ... }
fn enter_like(&mut self, _like: &'ast Like) -> Traverse { ... }
fn exit_like(&mut self, _like: &'ast Like) -> Traverse { ... }
fn enter_between(&mut self, _between: &'ast Between) -> Traverse { ... }
fn exit_between(&mut self, _between: &'ast Between) -> Traverse { ... }
fn enter_in(&mut self, _in: &'ast In) -> Traverse { ... }
fn exit_in(&mut self, _in: &'ast In) -> Traverse { ... }
fn enter_case(&mut self, _case: &'ast Case) -> Traverse { ... }
fn exit_case(&mut self, _case: &'ast Case) -> Traverse { ... }
fn enter_simple_case(&mut self, _simple_case: &'ast SimpleCase) -> Traverse { ... }
fn exit_simple_case(&mut self, _simple_case: &'ast SimpleCase) -> Traverse { ... }
fn enter_searched_case(
&mut self,
_searched_case: &'ast SearchedCase
) -> Traverse { ... }
fn exit_searched_case(
&mut self,
_searched_case: &'ast SearchedCase
) -> Traverse { ... }
fn enter_expr_pair(&mut self, _expr_pair: &'ast ExprPair) -> Traverse { ... }
fn exit_expr_pair(&mut self, _expr_pair: &'ast ExprPair) -> Traverse { ... }
fn enter_struct(&mut self, _struct: &'ast Struct) -> Traverse { ... }
fn exit_struct(&mut self, _struct: &'ast Struct) -> Traverse { ... }
fn enter_bag(&mut self, _bag: &'ast Bag) -> Traverse { ... }
fn exit_bag(&mut self, _bag: &'ast Bag) -> Traverse { ... }
fn enter_list(&mut self, _list: &'ast List) -> Traverse { ... }
fn exit_list(&mut self, _list: &'ast List) -> Traverse { ... }
fn enter_sexp(&mut self, _sexp: &'ast Sexp) -> Traverse { ... }
fn exit_sexp(&mut self, _sexp: &'ast Sexp) -> Traverse { ... }
fn enter_call(&mut self, _call: &'ast Call) -> Traverse { ... }
fn exit_call(&mut self, _call: &'ast Call) -> Traverse { ... }
fn enter_call_arg(&mut self, _call_arg: &'ast CallArg) -> Traverse { ... }
fn exit_call_arg(&mut self, _call_arg: &'ast CallArg) -> Traverse { ... }
fn enter_call_arg_named(
&mut self,
_call_arg_named: &'ast CallArgNamed
) -> Traverse { ... }
fn exit_call_arg_named(
&mut self,
_call_arg_named: &'ast CallArgNamed
) -> Traverse { ... }
fn enter_call_arg_named_type(
&mut self,
_call_arg_named_type: &'ast CallArgNamedType
) -> Traverse { ... }
fn exit_call_arg_named_type(
&mut self,
_call_arg_named_type: &'ast CallArgNamedType
) -> Traverse { ... }
fn enter_call_agg(&mut self, _call_agg: &'ast CallAgg) -> Traverse { ... }
fn exit_call_agg(&mut self, _call_agg: &'ast CallAgg) -> Traverse { ... }
fn enter_path(&mut self, _path: &'ast Path) -> Traverse { ... }
fn exit_path(&mut self, _path: &'ast Path) -> Traverse { ... }
fn enter_path_step(&mut self, _path_step: &'ast PathStep) -> Traverse { ... }
fn exit_path_step(&mut self, _path_step: &'ast PathStep) -> Traverse { ... }
fn enter_path_expr(&mut self, _path_expr: &'ast PathExpr) -> Traverse { ... }
fn exit_path_expr(&mut self, _path_expr: &'ast PathExpr) -> Traverse { ... }
fn enter_let(&mut self, _let: &'ast Let) -> Traverse { ... }
fn exit_let(&mut self, _let: &'ast Let) -> Traverse { ... }
fn enter_let_binding(&mut self, _let_binding: &'ast LetBinding) -> Traverse { ... }
fn exit_let_binding(&mut self, _let_binding: &'ast LetBinding) -> Traverse { ... }
fn enter_from_clause(&mut self, _from_clause: &'ast FromClause) -> Traverse { ... }
fn exit_from_clause(&mut self, _from_clause: &'ast FromClause) -> Traverse { ... }
fn enter_from_source(&mut self, _from_clause: &'ast FromSource) -> Traverse { ... }
fn exit_from_source(&mut self, _from_clause: &'ast FromSource) -> Traverse { ... }
fn enter_where_clause(
&mut self,
_where_clause: &'ast WhereClause
) -> Traverse { ... }
fn exit_where_clause(
&mut self,
_where_clause: &'ast WhereClause
) -> Traverse { ... }
fn enter_having_clause(
&mut self,
_having_clause: &'ast HavingClause
) -> Traverse { ... }
fn exit_having_clause(
&mut self,
_having_clause: &'ast HavingClause
) -> Traverse { ... }
fn enter_from_let(&mut self, _from_let: &'ast FromLet) -> Traverse { ... }
fn exit_from_let(&mut self, _from_let: &'ast FromLet) -> Traverse { ... }
fn enter_join(&mut self, _join: &'ast Join) -> Traverse { ... }
fn exit_join(&mut self, _join: &'ast Join) -> Traverse { ... }
fn enter_join_spec(&mut self, _join_spec: &'ast JoinSpec) -> Traverse { ... }
fn exit_join_spec(&mut self, _join_spec: &'ast JoinSpec) -> Traverse { ... }
fn enter_group_by_expr(
&mut self,
_group_by_expr: &'ast GroupByExpr
) -> Traverse { ... }
fn exit_group_by_expr(
&mut self,
_group_by_expr: &'ast GroupByExpr
) -> Traverse { ... }
fn enter_group_key(&mut self, _group_key: &'ast GroupKey) -> Traverse { ... }
fn exit_group_key(&mut self, _group_key: &'ast GroupKey) -> Traverse { ... }
fn enter_order_by_expr(
&mut self,
_order_by_expr: &'ast OrderByExpr
) -> Traverse { ... }
fn exit_order_by_expr(
&mut self,
_order_by_expr: &'ast OrderByExpr
) -> Traverse { ... }
fn enter_limit_offset_clause(
&mut self,
_limit_offset: &'ast LimitOffsetClause
) -> Traverse { ... }
fn exit_limit_offset_clause(
&mut self,
_limit_offset: &'ast LimitOffsetClause
) -> Traverse { ... }
fn enter_sort_spec(&mut self, _sort_spec: &'ast SortSpec) -> Traverse { ... }
fn exit_sort_spec(&mut self, _sort_spec: &'ast SortSpec) -> Traverse { ... }
fn enter_custom_type(&mut self, _custom_type: &'ast CustomType) -> Traverse { ... }
fn exit_custom_type(&mut self, _custom_type: &'ast CustomType) -> Traverse { ... }
}