Package com.vladsch.flexmark.util.ast
Class ClassifyingNodeTracker
- java.lang.Object
-
- com.vladsch.flexmark.util.ast.ClassifyingNodeTracker
-
- All Implemented Interfaces:
NodeTracker
public class ClassifyingNodeTracker extends java.lang.Object implements NodeTracker
-
-
Field Summary
Fields Modifier and Type Field Description private @NotNull OrderedMap<java.lang.Class<?>,java.util.Set<java.lang.Class<?>>>
exclusionMap
private @NotNull OrderedSet<java.lang.Class<?>>
exclusionSet
private @Nullable NodeTracker
host
private @NotNull java.util.HashMap<java.lang.Integer,java.util.BitSet>
nodeAncestryMap
protected @NotNull ClassificationBag<java.lang.Class<?>,Node>
nodeClassifier
-
Constructor Summary
Constructors Constructor Description ClassifyingNodeTracker(@Nullable NodeTracker host, @NotNull java.util.Map<java.lang.Class<? extends Node>,java.util.Set<java.lang.Class<?>>> exclusionMap)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
addNodes(@NotNull ReversiblePeekingIterable<Node> nodes)
<X> @NotNull ReversibleIterable<X>
getCategoryItems(@NotNull java.lang.Class<? extends X> nodeClass, @NotNull java.util.Set<java.lang.Class<?>> classes)
@NotNull OrderedMap<java.lang.Class<?>,java.util.Set<java.lang.Class<?>>>
getExclusionMap()
@NotNull OrderedSet<java.lang.Class<?>>
getExclusionSet()
@NotNull OrderedSet<Node>
getItems()
@NotNull java.util.HashMap<java.lang.Integer,java.util.BitSet>
getNodeAncestryMap()
@NotNull ClassificationBag<java.lang.Class<?>,Node>
getNodeClassifier()
void
nodeAdded(@NotNull Node node)
void
nodeAddedWithChildren(@NotNull Node node)
void
nodeAddedWithDescendants(@NotNull Node node)
void
nodeRemoved(@NotNull Node node)
void
nodeRemovedWithChildren(@NotNull Node node)
void
nodeRemovedWithDescendants(@NotNull Node node)
private void
removeNodes(@NotNull ReversiblePeekingIterable<Node> nodes)
private void
validateLinked(Node node)
private void
validateUnlinked(@NotNull Node node)
-
-
-
Field Detail
-
nodeClassifier
@NotNull protected final @NotNull ClassificationBag<java.lang.Class<?>,Node> nodeClassifier
-
host
@Nullable private final @Nullable NodeTracker host
-
exclusionMap
@NotNull private final @NotNull OrderedMap<java.lang.Class<?>,java.util.Set<java.lang.Class<?>>> exclusionMap
-
exclusionSet
@NotNull private final @NotNull OrderedSet<java.lang.Class<?>> exclusionSet
-
nodeAncestryMap
@NotNull private final @NotNull java.util.HashMap<java.lang.Integer,java.util.BitSet> nodeAncestryMap
-
-
Constructor Detail
-
ClassifyingNodeTracker
public ClassifyingNodeTracker(@Nullable @Nullable NodeTracker host, @NotNull @NotNull java.util.Map<java.lang.Class<? extends Node>,java.util.Set<java.lang.Class<?>>> exclusionMap)
-
-
Method Detail
-
getExclusionMap
@NotNull public @NotNull OrderedMap<java.lang.Class<?>,java.util.Set<java.lang.Class<?>>> getExclusionMap()
-
getNodeAncestryMap
@NotNull public @NotNull java.util.HashMap<java.lang.Integer,java.util.BitSet> getNodeAncestryMap()
-
getExclusionSet
@NotNull public @NotNull OrderedSet<java.lang.Class<?>> getExclusionSet()
-
getNodeClassifier
@NotNull public @NotNull ClassificationBag<java.lang.Class<?>,Node> getNodeClassifier()
-
validateLinked
private void validateLinked(Node node)
-
nodeAdded
public void nodeAdded(@NotNull @NotNull Node node)
- Specified by:
nodeAdded
in interfaceNodeTracker
-
nodeAddedWithChildren
public void nodeAddedWithChildren(@NotNull @NotNull Node node)
- Specified by:
nodeAddedWithChildren
in interfaceNodeTracker
-
nodeAddedWithDescendants
public void nodeAddedWithDescendants(@NotNull @NotNull Node node)
- Specified by:
nodeAddedWithDescendants
in interfaceNodeTracker
-
addNodes
private void addNodes(@NotNull @NotNull ReversiblePeekingIterable<Node> nodes)
-
validateUnlinked
private void validateUnlinked(@NotNull @NotNull Node node)
-
nodeRemoved
public void nodeRemoved(@NotNull @NotNull Node node)
- Specified by:
nodeRemoved
in interfaceNodeTracker
-
nodeRemovedWithChildren
public void nodeRemovedWithChildren(@NotNull @NotNull Node node)
- Specified by:
nodeRemovedWithChildren
in interfaceNodeTracker
-
nodeRemovedWithDescendants
public void nodeRemovedWithDescendants(@NotNull @NotNull Node node)
- Specified by:
nodeRemovedWithDescendants
in interfaceNodeTracker
-
removeNodes
private void removeNodes(@NotNull @NotNull ReversiblePeekingIterable<Node> nodes)
-
getItems
@NotNull public @NotNull OrderedSet<Node> getItems()
-
getCategoryItems
@NotNull public <X> @NotNull ReversibleIterable<X> getCategoryItems(@NotNull @NotNull java.lang.Class<? extends X> nodeClass, @NotNull @NotNull java.util.Set<java.lang.Class<?>> classes)
-
-