Module gen.tree

Class BaseTreeNodeVisitorHandlerExtensions

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

public class BaseTreeNodeVisitorHandlerExtensions extends Object
The class BaseTreeNodeVisitorHandlerExtensions provides handler methods for the visit all field in the class IBaseTreeNode
  • Constructor Details

    • BaseTreeNodeVisitorHandlerExtensions

      public BaseTreeNodeVisitorHandlerExtensions()
  • Method Details

    • traverse

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

      public static <V, K, T extends IBaseTreeNode<V, K, 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
      K - the generic type of the id of the node
      T - the generic type of the concrete tree node
      Parameters:
      treeNode - the tree node
      visitor - the visitor
    • accept

      public static <V, K, T extends IBaseTreeNode<V, K, 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
      K - the generic type of the id of the node
      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 IBaseTreeNode object is before visit the children otherwise the visit is after visit the children