Module gen.tree

Class TreeNodeVisitorHandlerExtensions

    • Method Summary

      All Methods Static Methods Concrete Methods 
      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>>
      java.util.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 Detail

      • TreeNodeVisitorHandlerExtensions

        public TreeNodeVisitorHandlerExtensions()
    • Method Detail

      • traverse

        public static <V,​T extends ITreeNode<V,​T>> java.util.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 id of the 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 id of the 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 id of the 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