Class O_Traverser<T>

    • Constructor Detail

      • O_Traverser

        protected O_Traverser()
      • O_Traverser

        public O_Traverser​(T t)
    • Method Detail

      • getTags

        public Set<String> getTags()
        Description copied from interface: Traverser.Admin
        Get the tags associated with the traverser. Tags are used to categorize historic behavior of a traverser. The returned set is mutable.
        Returns:
        the set of tags associated with the traverser.
      • split

        public <R> Traverser.Admin<R> split​(R r,
                                            Step<T,​R> step)
        Description copied from interface: Traverser.Admin
        Generate a child traverser of the current traverser for current as step and new object location. The child has the path history, future, and loop information of the parent. The child extends that path history with the current as and provided R-object.
        Specified by:
        split in interface Traverser.Admin<T>
        Overrides:
        split in class AbstractTraverser<T>
        Type Parameters:
        R - The current object type of the child
        Parameters:
        r - The current object of the child
        step - The step yielding the split
        Returns:
        The split traverser
      • merge

        public void merge​(Traverser.Admin<?> other)
        Description copied from interface: Traverser.Admin
        When two traversers are have equality with each other, then they can be merged. This method is used to merge the traversers into a single traverser. This is used for optimization where instead of enumerating all traversers, they can be counted.
        Specified by:
        merge in interface Traverser.Admin<T>
        Overrides:
        merge in class AbstractTraverser<T>
        Parameters:
        other - the other traverser to merge into this traverser. Once merged, the other can be garbage collected.
      • equals

        protected final boolean equals​(O_Traverser other)