Trait swc_html_visit::FoldWithPath
source · pub trait FoldWithPath<V: ?Sized + FoldAstPath> {
// Required methods
fn fold_with_path(self, v: &mut V, ast_path: &mut AstKindPath) -> Self;
fn fold_children_with_path(
self,
v: &mut V,
ast_path: &mut AstKindPath
) -> Self;
}
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 fold_with_path(self, v: &mut V, ast_path: &mut AstKindPath) -> Self
fn fold_with_path(self, v: &mut V, ast_path: &mut AstKindPath) -> Self
Calls a visitor method (v.fold_xxx) with self and the ast path.
sourcefn fold_children_with_path(self, v: &mut V, ast_path: &mut AstKindPath) -> Self
fn fold_children_with_path(self, v: &mut V, ast_path: &mut AstKindPath) -> Self
Visit children nodes with v and ast path appended
[AstKind] of self
. The ast path will
be resotred when this method returns.
This is the default implementaton of a handler method in FoldAstPath.
Implementations on Foreign Types§
source§impl<V: ?Sized + FoldAstPath> FoldWithPath<V> for Atom
impl<V: ?Sized + FoldAstPath> FoldWithPath<V> for Atom
fn fold_with_path(self, v: &mut V, __ast_path: &mut AstKindPath) -> Self
fn fold_children_with_path(self, v: &mut V, __ast_path: &mut AstKindPath) -> Self
source§impl<V: ?Sized + FoldAstPath> FoldWithPath<V> for JsWord
impl<V: ?Sized + FoldAstPath> FoldWithPath<V> for JsWord
fn fold_with_path(self, v: &mut V, __ast_path: &mut AstKindPath) -> Self
fn fold_children_with_path(self, v: &mut V, __ast_path: &mut AstKindPath) -> Self
source§impl<V: ?Sized + FoldAstPath> FoldWithPath<V> for Document
impl<V: ?Sized + FoldAstPath> FoldWithPath<V> for Document
fn fold_with_path(self, v: &mut V, __ast_path: &mut AstKindPath) -> Self
fn fold_children_with_path(self, v: &mut V, __ast_path: &mut AstKindPath) -> Self
source§impl<V: ?Sized + FoldAstPath> FoldWithPath<V> for Vec<Child>
impl<V: ?Sized + FoldAstPath> FoldWithPath<V> for Vec<Child>
fn fold_with_path(self, v: &mut V, __ast_path: &mut AstKindPath) -> Self
fn fold_children_with_path(self, v: &mut V, __ast_path: &mut AstKindPath) -> Self
source§impl<V: ?Sized + FoldAstPath> FoldWithPath<V> for DocumentFragment
impl<V: ?Sized + FoldAstPath> FoldWithPath<V> for DocumentFragment
fn fold_with_path(self, v: &mut V, __ast_path: &mut AstKindPath) -> Self
fn fold_children_with_path(self, v: &mut V, __ast_path: &mut AstKindPath) -> Self
source§impl<V: ?Sized + FoldAstPath> FoldWithPath<V> for Vec<Attribute>
impl<V: ?Sized + FoldAstPath> FoldWithPath<V> for Vec<Attribute>
fn fold_with_path(self, v: &mut V, __ast_path: &mut AstKindPath) -> Self
fn fold_children_with_path(self, v: &mut V, __ast_path: &mut AstKindPath) -> Self
source§impl<V: ?Sized + FoldAstPath> FoldWithPath<V> for Comment
impl<V: ?Sized + FoldAstPath> FoldWithPath<V> for Comment
fn fold_with_path(self, v: &mut V, __ast_path: &mut AstKindPath) -> Self
fn fold_children_with_path(self, v: &mut V, __ast_path: &mut AstKindPath) -> Self
source§impl<V: ?Sized + FoldAstPath> FoldWithPath<V> for Namespace
impl<V: ?Sized + FoldAstPath> FoldWithPath<V> for Namespace
fn fold_with_path(self, v: &mut V, __ast_path: &mut AstKindPath) -> Self
fn fold_children_with_path(self, v: &mut V, __ast_path: &mut AstKindPath) -> Self
source§impl<V: ?Sized + FoldAstPath> FoldWithPath<V> for DocumentType
impl<V: ?Sized + FoldAstPath> FoldWithPath<V> for DocumentType
fn fold_with_path(self, v: &mut V, __ast_path: &mut AstKindPath) -> Self
fn fold_children_with_path(self, v: &mut V, __ast_path: &mut AstKindPath) -> Self
source§impl<V: ?Sized + FoldAstPath> FoldWithPath<V> for Attribute
impl<V: ?Sized + FoldAstPath> FoldWithPath<V> for Attribute
fn fold_with_path(self, v: &mut V, __ast_path: &mut AstKindPath) -> Self
fn fold_children_with_path(self, v: &mut V, __ast_path: &mut AstKindPath) -> Self
source§impl<V: ?Sized + FoldAstPath> FoldWithPath<V> for Option<JsWord>
impl<V: ?Sized + FoldAstPath> FoldWithPath<V> for Option<JsWord>
fn fold_with_path(self, v: &mut V, __ast_path: &mut AstKindPath) -> Self
fn fold_children_with_path(self, v: &mut V, __ast_path: &mut AstKindPath) -> Self
source§impl<V: ?Sized + FoldAstPath> FoldWithPath<V> for Element
impl<V: ?Sized + FoldAstPath> FoldWithPath<V> for Element
fn fold_with_path(self, v: &mut V, __ast_path: &mut AstKindPath) -> Self
fn fold_children_with_path(self, v: &mut V, __ast_path: &mut AstKindPath) -> Self
source§impl<V: ?Sized + FoldAstPath> FoldWithPath<V> for Option<DocumentFragment>
impl<V: ?Sized + FoldAstPath> FoldWithPath<V> for Option<DocumentFragment>
fn fold_with_path(self, v: &mut V, __ast_path: &mut AstKindPath) -> Self
fn fold_children_with_path(self, v: &mut V, __ast_path: &mut AstKindPath) -> Self
source§impl<V: ?Sized + FoldAstPath> FoldWithPath<V> for Child
impl<V: ?Sized + FoldAstPath> FoldWithPath<V> for Child
fn fold_with_path(self, v: &mut V, __ast_path: &mut AstKindPath) -> Self
fn fold_children_with_path(self, v: &mut V, __ast_path: &mut AstKindPath) -> Self
source§impl<V: ?Sized + FoldAstPath> FoldWithPath<V> for Span
impl<V: ?Sized + FoldAstPath> FoldWithPath<V> for Span
fn fold_with_path(self, v: &mut V, __ast_path: &mut AstKindPath) -> Self
fn fold_children_with_path(self, v: &mut V, __ast_path: &mut AstKindPath) -> Self
source§impl<V, T> FoldWithPath<V> for Box<T>where
V: ?Sized + FoldAstPath,
T: 'static + FoldWithPath<V>,
impl<V, T> FoldWithPath<V> for Box<T>where V: ?Sized + FoldAstPath, T: 'static + FoldWithPath<V>,
source§fn fold_children_with_path(self, v: &mut V, ast_path: &mut AstKindPath) -> Self
fn fold_children_with_path(self, v: &mut V, ast_path: &mut AstKindPath) -> Self
Visit children nodes of self with v