Class PostorderNodeListGenerator

  • All Implemented Interfaces:
    DependencyVisitor

    public final class PostorderNodeListGenerator
    extends AbstractDepthFirstNodeListGenerator
    Generates a sequence of dependency nodes from a dependeny graph by traversing the graph in postorder. This visitor visits each node exactly once regardless how many paths within the dependency graph lead to the node such that the resulting node sequence is free of duplicates.
    • Field Detail

      • visits

        private final Stack<java.lang.Boolean> visits
    • Constructor Detail

      • PostorderNodeListGenerator

        public PostorderNodeListGenerator()
        Creates a new postorder list generator.
    • Method Detail

      • visitLeave

        public boolean visitLeave​(DependencyNode node)
        Description copied from interface: DependencyVisitor
        Notifies the visitor of a node visit after its children have been processed. Note that this method is always invoked regardless whether any children have actually been visited.
        Specified by:
        visitLeave in interface DependencyVisitor
        Specified by:
        visitLeave in class AbstractDepthFirstNodeListGenerator
        Parameters:
        node - The dependency node being visited, must not be null.
        Returns:
        true to visit siblings nodes of the specified node as well, false to skip siblings.