Crate swc_ecma_visit[][src]

Macros

assert_eq_ignore_span
noop_fold_type

Note: Ignoring more types is not considered as a breaking change.

noop_visit_mut_type

Note: Ignoring more types is not considered as a breaking change.

noop_visit_type

Note: Ignoring more types is not considered as a breaking change.

Structs

All

Visit all children nodes. This converts VisitAll to Visit. The type parameter V should implement VisitAll and All<V> implements Visit.

Folder

Wrap a VisitMut as a Fold

Traits

Fold
FoldWith
Node

Visitable nodes.

Visit
VisitAll
VisitAllWith
VisitMut
VisitMutWith
VisitWith

Functions

as_folder
fold_accessibility
fold_array_lit
fold_array_pat
fold_arrow_expr
fold_assign_expr
fold_assign_op
fold_assign_pat
fold_assign_pat_prop
fold_assign_prop
fold_await_expr
fold_big_int
fold_big_int_value
fold_bin_expr
fold_binary_op
fold_binding_ident
fold_block_stmt
fold_block_stmt_or_expr
fold_bool
fold_break_stmt
fold_call_expr
fold_catch_clause
fold_class
fold_class_decl
fold_class_expr
fold_class_member
fold_class_members
fold_class_method
fold_class_prop
fold_computed_prop_name
fold_cond_expr
fold_constructor
fold_continue_stmt
fold_debugger_stmt
fold_decl
fold_decorator
fold_decorators
fold_default_decl
fold_do_while_stmt
fold_empty_stmt
fold_export_all
fold_export_decl
fold_export_default_decl
fold_export_default_expr
fold_export_default_specifier
fold_export_named_specifier
fold_export_namespace_specifier
fold_export_specifier
fold_export_specifiers
fold_expr
fold_expr_or_spread
fold_expr_or_spreads
fold_expr_or_super
fold_expr_stmt
fold_exprs
fold_fn_decl
fold_fn_expr
fold_for_in_stmt
fold_for_of_stmt
fold_for_stmt
fold_function
fold_getter_prop
fold_ident
fold_if_stmt
fold_import_decl
fold_import_default_specifier
fold_import_named_specifier
fold_import_specifier
fold_import_specifiers
fold_import_star_as_specifier
fold_invalid
fold_js_word
fold_jsx_attr
fold_jsx_attr_name
fold_jsx_attr_or_spread
fold_jsx_attr_or_spreads
fold_jsx_attr_value
fold_jsx_closing_element
fold_jsx_closing_fragment
fold_jsx_element
fold_jsx_element_child
fold_jsx_element_children
fold_jsx_element_name
fold_jsx_empty_expr
fold_jsx_expr
fold_jsx_expr_container
fold_jsx_fragment
fold_jsx_member_expr
fold_jsx_namespaced_name
fold_jsx_object
fold_jsx_opening_element
fold_jsx_opening_fragment
fold_jsx_spread_child
fold_jsx_text
fold_key_value_pat_prop
fold_key_value_prop
fold_labeled_stmt
fold_lit
fold_member_expr
fold_meta_prop_expr
fold_method_kind
fold_method_prop
fold_module
fold_module_decl
fold_module_item
fold_module_items
fold_named_export
fold_new_expr
fold_null
fold_number
fold_object_lit
fold_object_pat
fold_object_pat_prop
fold_object_pat_props
fold_opt_accessibility
fold_opt_block_stmt
fold_opt_catch_clause
fold_opt_chain_expr
fold_opt_expr
fold_opt_expr_or_spread
fold_opt_expr_or_spreads
fold_opt_ident
fold_opt_js_word
fold_opt_jsx_attr_value
fold_opt_jsx_closing_element
fold_opt_object_lit
fold_opt_pat
fold_opt_span
fold_opt_stmt
fold_opt_str
fold_opt_true_plus_minus
fold_opt_ts_entity_name
fold_opt_ts_namespace_body
fold_opt_ts_type
fold_opt_ts_type_ann
fold_opt_ts_type_param_decl
fold_opt_ts_type_param_instantiation
fold_opt_var_decl_or_expr
fold_opt_vec_expr_or_spreads
fold_opt_vec_pats
fold_param
fold_param_or_ts_param_prop
fold_param_or_ts_param_props
fold_params
fold_paren_expr
fold_pat
fold_pat_or_expr
fold_pats
fold_private_method
fold_private_name
fold_private_prop
fold_program
fold_prop
fold_prop_name
fold_prop_or_spread
fold_prop_or_spreads
fold_regex
fold_rest_pat
fold_return_stmt
fold_script
fold_seq_expr
fold_setter_prop
fold_span
fold_spread_element
fold_stmt
fold_stmts
fold_str
fold_str_kind
fold_super
fold_switch_case
fold_switch_cases
fold_switch_stmt
fold_tagged_tpl
fold_this_expr
fold_throw_stmt
fold_tpl
fold_tpl_element
fold_tpl_elements
fold_true_plus_minus
fold_try_stmt
fold_ts_array_type
fold_ts_as_expr
fold_ts_call_signature_decl
fold_ts_conditional_type
fold_ts_const_assertion
fold_ts_construct_signature_decl
fold_ts_constructor_type
fold_ts_entity_name
fold_ts_enum_decl
fold_ts_enum_member
fold_ts_enum_member_id
fold_ts_enum_members
fold_ts_export_assignment
fold_ts_expr_with_type_args
fold_ts_expr_with_type_args_vec
fold_ts_external_module_ref
fold_ts_fn_or_constructor_type
fold_ts_fn_param
fold_ts_fn_params
fold_ts_fn_type
fold_ts_import_equals_decl
fold_ts_import_type
fold_ts_index_signature
fold_ts_indexed_access_type
fold_ts_infer_type
fold_ts_interface_body
fold_ts_interface_decl
fold_ts_intersection_type
fold_ts_keyword_type
fold_ts_keyword_type_kind
fold_ts_lit
fold_ts_lit_type
fold_ts_mapped_type
fold_ts_method_signature
fold_ts_module_block
fold_ts_module_decl
fold_ts_module_name
fold_ts_module_ref
fold_ts_namespace_body
fold_ts_namespace_decl
fold_ts_namespace_export_decl
fold_ts_non_null_expr
fold_ts_optional_type
fold_ts_param_prop
fold_ts_param_prop_param
fold_ts_parenthesized_type
fold_ts_property_signature
fold_ts_qualified_name
fold_ts_rest_type
fold_ts_signature_decl
fold_ts_this_type
fold_ts_this_type_or_ident
fold_ts_tpl_lit_type
fold_ts_tuple_element
fold_ts_tuple_elements
fold_ts_tuple_type
fold_ts_type
fold_ts_type_alias_decl
fold_ts_type_ann
fold_ts_type_assertion
fold_ts_type_element
fold_ts_type_elements
fold_ts_type_lit
fold_ts_type_operator
fold_ts_type_operator_op
fold_ts_type_param
fold_ts_type_param_decl
fold_ts_type_param_instantiation
fold_ts_type_params
fold_ts_type_predicate
fold_ts_type_query
fold_ts_type_query_expr
fold_ts_type_ref
fold_ts_types
fold_ts_union_or_intersection_type
fold_ts_union_type
fold_unary_expr
fold_unary_op
fold_update_expr
fold_update_op
fold_var_decl
fold_var_decl_kind
fold_var_decl_or_expr
fold_var_decl_or_pat
fold_var_declarator
fold_var_declarators
fold_while_stmt
fold_with_stmt
fold_yield_expr
span_remover

Returns a Fold which changes all span into DUMMY_SP.

visit_accessibility
visit_array_lit
visit_array_pat
visit_arrow_expr
visit_assign_expr
visit_assign_op
visit_assign_pat
visit_assign_pat_prop
visit_assign_prop
visit_await_expr
visit_big_int
visit_big_int_value
visit_bin_expr
visit_binary_op
visit_binding_ident
visit_block_stmt
visit_block_stmt_or_expr
visit_bool
visit_break_stmt
visit_call_expr
visit_catch_clause
visit_class
visit_class_decl
visit_class_expr
visit_class_member
visit_class_members
visit_class_method
visit_class_prop
visit_computed_prop_name
visit_cond_expr
visit_constructor
visit_continue_stmt
visit_debugger_stmt
visit_decl
visit_decorator
visit_decorators
visit_default_decl
visit_do_while_stmt
visit_empty_stmt
visit_export_all
visit_export_decl
visit_export_default_decl
visit_export_default_expr
visit_export_default_specifier
visit_export_named_specifier
visit_export_namespace_specifier
visit_export_specifier
visit_export_specifiers
visit_expr
visit_expr_or_spread
visit_expr_or_spreads
visit_expr_or_super
visit_expr_stmt
visit_exprs
visit_fn_decl
visit_fn_expr
visit_for_in_stmt
visit_for_of_stmt
visit_for_stmt
visit_function
visit_getter_prop
visit_ident
visit_if_stmt
visit_import_decl
visit_import_default_specifier
visit_import_named_specifier
visit_import_specifier
visit_import_specifiers
visit_import_star_as_specifier
visit_invalid
visit_js_word
visit_jsx_attr
visit_jsx_attr_name
visit_jsx_attr_or_spread
visit_jsx_attr_or_spreads
visit_jsx_attr_value
visit_jsx_closing_element
visit_jsx_closing_fragment
visit_jsx_element
visit_jsx_element_child
visit_jsx_element_children
visit_jsx_element_name
visit_jsx_empty_expr
visit_jsx_expr
visit_jsx_expr_container
visit_jsx_fragment
visit_jsx_member_expr
visit_jsx_namespaced_name
visit_jsx_object
visit_jsx_opening_element
visit_jsx_opening_fragment
visit_jsx_spread_child
visit_jsx_text
visit_key_value_pat_prop
visit_key_value_prop
visit_labeled_stmt
visit_lit
visit_member_expr
visit_meta_prop_expr
visit_method_kind
visit_method_prop
visit_module
visit_module_decl
visit_module_item
visit_module_items
visit_mut_accessibility
visit_mut_array_lit
visit_mut_array_pat
visit_mut_arrow_expr
visit_mut_assign_expr
visit_mut_assign_op
visit_mut_assign_pat
visit_mut_assign_pat_prop
visit_mut_assign_prop
visit_mut_await_expr
visit_mut_big_int
visit_mut_big_int_value
visit_mut_bin_expr
visit_mut_binary_op
visit_mut_binding_ident
visit_mut_block_stmt
visit_mut_block_stmt_or_expr
visit_mut_bool
visit_mut_break_stmt
visit_mut_call_expr
visit_mut_catch_clause
visit_mut_class
visit_mut_class_decl
visit_mut_class_expr
visit_mut_class_member
visit_mut_class_members
visit_mut_class_method
visit_mut_class_prop
visit_mut_computed_prop_name
visit_mut_cond_expr
visit_mut_constructor
visit_mut_continue_stmt
visit_mut_debugger_stmt
visit_mut_decl
visit_mut_decorator
visit_mut_decorators
visit_mut_default_decl
visit_mut_do_while_stmt
visit_mut_empty_stmt
visit_mut_export_all
visit_mut_export_decl
visit_mut_export_default_decl
visit_mut_export_default_expr
visit_mut_export_default_specifier
visit_mut_export_named_specifier
visit_mut_export_namespace_specifier
visit_mut_export_specifier
visit_mut_export_specifiers
visit_mut_expr
visit_mut_expr_or_spread
visit_mut_expr_or_spreads
visit_mut_expr_or_super
visit_mut_expr_stmt
visit_mut_exprs
visit_mut_fn_decl
visit_mut_fn_expr
visit_mut_for_in_stmt
visit_mut_for_of_stmt
visit_mut_for_stmt
visit_mut_function
visit_mut_getter_prop
visit_mut_ident
visit_mut_if_stmt
visit_mut_import_decl
visit_mut_import_default_specifier
visit_mut_import_named_specifier
visit_mut_import_specifier
visit_mut_import_specifiers
visit_mut_import_star_as_specifier
visit_mut_invalid
visit_mut_js_word
visit_mut_jsx_attr
visit_mut_jsx_attr_name
visit_mut_jsx_attr_or_spread
visit_mut_jsx_attr_or_spreads
visit_mut_jsx_attr_value
visit_mut_jsx_closing_element
visit_mut_jsx_closing_fragment
visit_mut_jsx_element
visit_mut_jsx_element_child
visit_mut_jsx_element_children
visit_mut_jsx_element_name
visit_mut_jsx_empty_expr
visit_mut_jsx_expr
visit_mut_jsx_expr_container
visit_mut_jsx_fragment
visit_mut_jsx_member_expr
visit_mut_jsx_namespaced_name
visit_mut_jsx_object
visit_mut_jsx_opening_element
visit_mut_jsx_opening_fragment
visit_mut_jsx_spread_child
visit_mut_jsx_text
visit_mut_key_value_pat_prop
visit_mut_key_value_prop
visit_mut_labeled_stmt
visit_mut_lit
visit_mut_member_expr
visit_mut_meta_prop_expr
visit_mut_method_kind
visit_mut_method_prop
visit_mut_module
visit_mut_module_decl
visit_mut_module_item
visit_mut_module_items
visit_mut_named_export
visit_mut_new_expr
visit_mut_null
visit_mut_number
visit_mut_object_lit
visit_mut_object_pat
visit_mut_object_pat_prop
visit_mut_object_pat_props
visit_mut_opt_accessibility
visit_mut_opt_block_stmt
visit_mut_opt_catch_clause
visit_mut_opt_chain_expr
visit_mut_opt_expr
visit_mut_opt_expr_or_spread
visit_mut_opt_expr_or_spreads
visit_mut_opt_ident
visit_mut_opt_js_word
visit_mut_opt_jsx_attr_value
visit_mut_opt_jsx_closing_element
visit_mut_opt_object_lit
visit_mut_opt_pat
visit_mut_opt_span
visit_mut_opt_stmt
visit_mut_opt_str
visit_mut_opt_true_plus_minus
visit_mut_opt_ts_entity_name
visit_mut_opt_ts_namespace_body
visit_mut_opt_ts_type
visit_mut_opt_ts_type_ann
visit_mut_opt_ts_type_param_decl
visit_mut_opt_ts_type_param_instantiation
visit_mut_opt_var_decl_or_expr
visit_mut_opt_vec_expr_or_spreads
visit_mut_opt_vec_pats
visit_mut_param
visit_mut_param_or_ts_param_prop
visit_mut_param_or_ts_param_props
visit_mut_params
visit_mut_paren_expr
visit_mut_pat
visit_mut_pat_or_expr
visit_mut_pats
visit_mut_private_method
visit_mut_private_name
visit_mut_private_prop
visit_mut_program
visit_mut_prop
visit_mut_prop_name
visit_mut_prop_or_spread
visit_mut_prop_or_spreads
visit_mut_regex
visit_mut_rest_pat
visit_mut_return_stmt
visit_mut_script
visit_mut_seq_expr
visit_mut_setter_prop
visit_mut_span
visit_mut_spread_element
visit_mut_stmt
visit_mut_stmts
visit_mut_str
visit_mut_str_kind
visit_mut_super
visit_mut_switch_case
visit_mut_switch_cases
visit_mut_switch_stmt
visit_mut_tagged_tpl
visit_mut_this_expr
visit_mut_throw_stmt
visit_mut_tpl
visit_mut_tpl_element
visit_mut_tpl_elements
visit_mut_true_plus_minus
visit_mut_try_stmt
visit_mut_ts_array_type
visit_mut_ts_as_expr
visit_mut_ts_call_signature_decl
visit_mut_ts_conditional_type
visit_mut_ts_const_assertion
visit_mut_ts_construct_signature_decl
visit_mut_ts_constructor_type
visit_mut_ts_entity_name
visit_mut_ts_enum_decl
visit_mut_ts_enum_member
visit_mut_ts_enum_member_id
visit_mut_ts_enum_members
visit_mut_ts_export_assignment
visit_mut_ts_expr_with_type_args
visit_mut_ts_expr_with_type_args_vec
visit_mut_ts_external_module_ref
visit_mut_ts_fn_or_constructor_type
visit_mut_ts_fn_param
visit_mut_ts_fn_params
visit_mut_ts_fn_type
visit_mut_ts_import_equals_decl
visit_mut_ts_import_type
visit_mut_ts_index_signature
visit_mut_ts_indexed_access_type
visit_mut_ts_infer_type
visit_mut_ts_interface_body
visit_mut_ts_interface_decl
visit_mut_ts_intersection_type
visit_mut_ts_keyword_type
visit_mut_ts_keyword_type_kind
visit_mut_ts_lit
visit_mut_ts_lit_type
visit_mut_ts_mapped_type
visit_mut_ts_method_signature
visit_mut_ts_module_block
visit_mut_ts_module_decl
visit_mut_ts_module_name
visit_mut_ts_module_ref
visit_mut_ts_namespace_body
visit_mut_ts_namespace_decl
visit_mut_ts_namespace_export_decl
visit_mut_ts_non_null_expr
visit_mut_ts_optional_type
visit_mut_ts_param_prop
visit_mut_ts_param_prop_param
visit_mut_ts_parenthesized_type
visit_mut_ts_property_signature
visit_mut_ts_qualified_name
visit_mut_ts_rest_type
visit_mut_ts_signature_decl
visit_mut_ts_this_type
visit_mut_ts_this_type_or_ident
visit_mut_ts_tpl_lit_type
visit_mut_ts_tuple_element
visit_mut_ts_tuple_elements
visit_mut_ts_tuple_type
visit_mut_ts_type
visit_mut_ts_type_alias_decl
visit_mut_ts_type_ann
visit_mut_ts_type_assertion
visit_mut_ts_type_element
visit_mut_ts_type_elements
visit_mut_ts_type_lit
visit_mut_ts_type_operator
visit_mut_ts_type_operator_op
visit_mut_ts_type_param
visit_mut_ts_type_param_decl
visit_mut_ts_type_param_instantiation
visit_mut_ts_type_params
visit_mut_ts_type_predicate
visit_mut_ts_type_query
visit_mut_ts_type_query_expr
visit_mut_ts_type_ref
visit_mut_ts_types
visit_mut_ts_union_or_intersection_type
visit_mut_ts_union_type
visit_mut_unary_expr
visit_mut_unary_op
visit_mut_update_expr
visit_mut_update_op
visit_mut_var_decl
visit_mut_var_decl_kind
visit_mut_var_decl_or_expr
visit_mut_var_decl_or_pat
visit_mut_var_declarator
visit_mut_var_declarators
visit_mut_while_stmt
visit_mut_with_stmt
visit_mut_yield_expr
visit_named_export
visit_new_expr
visit_null
visit_number
visit_object_lit
visit_object_pat
visit_object_pat_prop
visit_object_pat_props
visit_opt_accessibility
visit_opt_block_stmt
visit_opt_catch_clause
visit_opt_chain_expr
visit_opt_expr
visit_opt_expr_or_spread
visit_opt_expr_or_spreads
visit_opt_ident
visit_opt_js_word
visit_opt_jsx_attr_value
visit_opt_jsx_closing_element
visit_opt_object_lit
visit_opt_pat
visit_opt_span
visit_opt_stmt
visit_opt_str
visit_opt_true_plus_minus
visit_opt_ts_entity_name
visit_opt_ts_namespace_body
visit_opt_ts_type
visit_opt_ts_type_ann
visit_opt_ts_type_param_decl
visit_opt_ts_type_param_instantiation
visit_opt_var_decl_or_expr
visit_opt_vec_expr_or_spreads
visit_opt_vec_pats
visit_param
visit_param_or_ts_param_prop
visit_param_or_ts_param_props
visit_params
visit_paren_expr
visit_pat
visit_pat_or_expr
visit_pats
visit_private_method
visit_private_name
visit_private_prop
visit_program
visit_prop
visit_prop_name
visit_prop_or_spread
visit_prop_or_spreads
visit_regex
visit_rest_pat
visit_return_stmt
visit_script
visit_seq_expr
visit_setter_prop
visit_span
visit_spread_element
visit_stmt
visit_stmts
visit_str
visit_str_kind
visit_super
visit_switch_case
visit_switch_cases
visit_switch_stmt
visit_tagged_tpl
visit_this_expr
visit_throw_stmt
visit_tpl
visit_tpl_element
visit_tpl_elements
visit_true_plus_minus
visit_try_stmt
visit_ts_array_type
visit_ts_as_expr
visit_ts_call_signature_decl
visit_ts_conditional_type
visit_ts_const_assertion
visit_ts_construct_signature_decl
visit_ts_constructor_type
visit_ts_entity_name
visit_ts_enum_decl
visit_ts_enum_member
visit_ts_enum_member_id
visit_ts_enum_members
visit_ts_export_assignment
visit_ts_expr_with_type_args
visit_ts_expr_with_type_args_vec
visit_ts_external_module_ref
visit_ts_fn_or_constructor_type
visit_ts_fn_param
visit_ts_fn_params
visit_ts_fn_type
visit_ts_import_equals_decl
visit_ts_import_type
visit_ts_index_signature
visit_ts_indexed_access_type
visit_ts_infer_type
visit_ts_interface_body
visit_ts_interface_decl
visit_ts_intersection_type
visit_ts_keyword_type
visit_ts_keyword_type_kind
visit_ts_lit
visit_ts_lit_type
visit_ts_mapped_type
visit_ts_method_signature
visit_ts_module_block
visit_ts_module_decl
visit_ts_module_name
visit_ts_module_ref
visit_ts_namespace_body
visit_ts_namespace_decl
visit_ts_namespace_export_decl
visit_ts_non_null_expr
visit_ts_optional_type
visit_ts_param_prop
visit_ts_param_prop_param
visit_ts_parenthesized_type
visit_ts_property_signature
visit_ts_qualified_name
visit_ts_rest_type
visit_ts_signature_decl
visit_ts_this_type
visit_ts_this_type_or_ident
visit_ts_tpl_lit_type
visit_ts_tuple_element
visit_ts_tuple_elements
visit_ts_tuple_type
visit_ts_type
visit_ts_type_alias_decl
visit_ts_type_ann
visit_ts_type_assertion
visit_ts_type_element
visit_ts_type_elements
visit_ts_type_lit
visit_ts_type_operator
visit_ts_type_operator_op
visit_ts_type_param
visit_ts_type_param_decl
visit_ts_type_param_instantiation
visit_ts_type_params
visit_ts_type_predicate
visit_ts_type_query
visit_ts_type_query_expr
visit_ts_type_ref
visit_ts_types
visit_ts_union_or_intersection_type
visit_ts_union_type
visit_unary_expr
visit_unary_op
visit_update_expr
visit_update_op
visit_var_decl
visit_var_decl_kind
visit_var_decl_or_expr
visit_var_decl_or_pat
visit_var_declarator
visit_var_declarators
visit_while_stmt
visit_with_stmt
visit_yield_expr