Module gen.tree

Class TreeNodeVisitorHandlerExtensions

java.lang.Object
io.github.astrapi69.gen.tree.handler.TreeNodeVisitorHandlerExtensions

public class TreeNodeVisitorHandlerExtensions extends Object
The class TreeNodeVisitorHandlerExtensions provides handler methods for the visit all field in the class ITreeNode
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static <V, T extends ITreeNode<V, T>>
    void
    accept(T treeNode, @NonNull io.github.astrapi69.design.pattern.visitor.Visitor<T> visitor)
    Accepts the given visitor that provides a custom algorithm for processing all elements
    static <V, T extends ITreeNode<V, T>>
    void
    accept(T treeNode, @NonNull io.github.astrapi69.design.pattern.visitor.Visitor<T> visitor, boolean visitBefore)
    Accepts the given visitor that provides a custom algorithm for processing all elements
    static <V, T extends ITreeNode<V, T>>
    Collection<T>
    traverse(T treeNode)
    Traverse the given ITreeNode object and add all descendants with the given ITreeNode object included in to the returned Collection object

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • TreeNodeVisitorHandlerExtensions

      public TreeNodeVisitorHandlerExtensions()
  • Method Details

    • traverse

      public static <V, T extends ITreeNode<V, T>> Collection<T> traverse(@NonNull T treeNode)
      Traverse the given ITreeNode object and add all descendants with the given ITreeNode object included in to the returned Collection object
      Type Parameters:
      V - the generic type of the value
      T - the generic type of the concrete tree node
      Parameters:
      treeNode - the tree node
      Returns:
      a Collection object with the given ITreeNode object and add all descendants
    • accept

      public static <V, T extends ITreeNode<V, T>> void accept(@NonNull T treeNode, @NonNull @NonNull io.github.astrapi69.design.pattern.visitor.Visitor<T> visitor)
      Accepts the given visitor that provides a custom algorithm for processing all elements
      Type Parameters:
      V - the generic type of the value
      T - the generic type of the concrete tree node
      Parameters:
      treeNode - the tree node
      visitor - the visitor
    • accept

      public static <V, T extends ITreeNode<V, T>> void accept(@NonNull T treeNode, @NonNull @NonNull io.github.astrapi69.design.pattern.visitor.Visitor<T> visitor, boolean visitBefore)
      Accepts the given visitor that provides a custom algorithm for processing all elements
      Type Parameters:
      V - the generic type of the value
      T - the generic type of the concrete tree node
      Parameters:
      treeNode - the tree node
      visitor - the visitor
      visitBefore - the flag if this flag is true the visit of the given ITreeNode object is before visit the children otherwise the visit is after visit the children