Trait swc_ecma_visit::VisitWithPath
source · pub trait VisitWithPath<V: ?Sized + VisitAstPath> {
// Required methods
fn visit_with_path<'ast, 'r>(
&'ast self,
v: &mut V,
ast_path: &mut AstNodePath<'r>
)
where 'ast: 'r;
fn visit_children_with_path<'ast, 'r>(
&'ast self,
v: &mut V,
ast_path: &mut AstNodePath<'r>
)
where 'ast: 'r;
}
Available on crate feature
path
only.Expand description
A utility trait implemented for ast nodes, and allow to visit them with a visitor.
Required Methods§
sourcefn visit_with_path<'ast, 'r>(
&'ast self,
v: &mut V,
ast_path: &mut AstNodePath<'r>
)where
'ast: 'r,
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
Calls a visitor method (v.visit_xxx) with self and the ast path.
sourcefn visit_children_with_path<'ast, 'r>(
&'ast self,
v: &mut V,
ast_path: &mut AstNodePath<'r>
)where
'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, v: &mut V, ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
Visit children nodes with v and ast path appended
AstParentNodeRef describing self
. The ast path will
be resotred when this method returns.
This is the default implementaton of a handler method in VisitAstPath.
Implementations on Foreign Types§
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for Vec<TsExprWithTypeArgs>
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for Vec<TsExprWithTypeArgs>
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for JSXExprContainer
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for JSXExprContainer
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for Import
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for Import
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for ImportDecl
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for ImportDecl
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for JSXNamespacedName
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for JSXNamespacedName
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for TsPropertySignature
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for TsPropertySignature
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for TsFnOrConstructorType
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for TsFnOrConstructorType
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for TsLit
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for TsLit
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for PatOrExpr
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for PatOrExpr
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for Vec<Pat>
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for Vec<Pat>
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for Vec<TsTypeParam>
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for Vec<TsTypeParam>
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for ExportAll
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for ExportAll
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for MemberExpr
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for MemberExpr
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for Bool
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for Bool
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for Vec<SwitchCase>
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for Vec<SwitchCase>
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for ExportDefaultDecl
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for ExportDefaultDecl
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for TsTupleElement
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for TsTupleElement
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for TsUnionOrIntersectionType
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for TsUnionOrIntersectionType
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for NewExpr
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for NewExpr
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for [VarDeclarator]
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for [VarDeclarator]
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for TaggedTpl
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for TaggedTpl
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for Option<Box<TsTypeParamDecl>>
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for Option<Box<TsTypeParamDecl>>
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for ExportSpecifier
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for ExportSpecifier
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for CatchClause
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for CatchClause
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for TsEntityName
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for TsEntityName
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for JSXAttrOrSpread
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for JSXAttrOrSpread
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for TsThisTypeOrIdent
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for TsThisTypeOrIdent
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for [ClassMember]
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for [ClassMember]
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for MethodProp
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for MethodProp
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for TsIndexedAccessType
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for TsIndexedAccessType
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for ParamOrTsParamProp
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for ParamOrTsParamProp
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for TsInterfaceDecl
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for TsInterfaceDecl
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for Vec<ObjectPatProp>
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for Vec<ObjectPatProp>
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for AutoAccessor
impl<V: ?Sized + VisitAstPath> VisitWithPath<V> for AutoAccessor
fn visit_with_path<'ast, 'r>( &'ast self, v: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, _visitor: &mut V, __ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
source§impl<V, T> VisitWithPath<V> for Box<T>where
V: ?Sized + VisitAstPath,
T: 'static + VisitWithPath<V>,
impl<V, T> VisitWithPath<V> for Box<T>where V: ?Sized + VisitAstPath, T: 'static + VisitWithPath<V>,
source§fn visit_children_with_path<'ast, 'r>(
&'ast self,
v: &mut V,
ast_path: &mut AstNodePath<'r>
)where
'ast: 'r,
fn visit_children_with_path<'ast, 'r>( &'ast self, v: &mut V, ast_path: &mut AstNodePath<'r> )where 'ast: 'r,
Visit children nodes of self with v