Class NL_O_OB_S_SE_SL_Traverser<T>
- java.lang.Object
-
- org.apache.tinkerpop.gremlin.process.traversal.traverser.util.AbstractTraverser<T>
-
- org.apache.tinkerpop.gremlin.process.traversal.traverser.O_Traverser<T>
-
- org.apache.tinkerpop.gremlin.process.traversal.traverser.O_OB_S_SE_SL_Traverser<T>
-
- org.apache.tinkerpop.gremlin.process.traversal.traverser.NL_O_OB_S_SE_SL_Traverser<T>
-
- All Implemented Interfaces:
Serializable,Cloneable,Comparable<Traverser<T>>,Traverser<T>,Traverser.Admin<T>,NL_SL_Traverser<T>,Attachable<T>
public class NL_O_OB_S_SE_SL_Traverser<T> extends O_OB_S_SE_SL_Traverser<T> implements NL_SL_Traverser<T>
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.tinkerpop.gremlin.structure.util.Attachable
Attachable.Exceptions, Attachable.Method
-
Nested classes/interfaces inherited from interface org.apache.tinkerpop.gremlin.process.traversal.Traverser
Traverser.Admin<T>
-
-
Field Summary
Fields Modifier and Type Field Description protected org.apache.commons.collections.map.ReferenceMaploopNamesprotected Stack<LabelledCounter>nestedLoops-
Fields inherited from class org.apache.tinkerpop.gremlin.process.traversal.traverser.O_OB_S_SE_SL_Traverser
bulk, future, loopName, loops, sack, sideEffects, stepLabel
-
Fields inherited from class org.apache.tinkerpop.gremlin.process.traversal.traverser.O_Traverser
tags
-
Fields inherited from class org.apache.tinkerpop.gremlin.process.traversal.traverser.util.AbstractTraverser
t
-
Fields inherited from interface org.apache.tinkerpop.gremlin.structure.util.Attachable
logger
-
Fields inherited from interface org.apache.tinkerpop.gremlin.process.traversal.Traverser.Admin
HALT
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedNL_O_OB_S_SE_SL_Traverser()NL_O_OB_S_SE_SL_Traverser(T t, Step<T,?> step)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(Object o)TraverserRequirementgetLoopRequirement()org.apache.commons.collections.map.ReferenceMapgetNestedLoopNames()Override this method to support nested loops.Stack<LabelledCounter>getNestedLoops()Override this method to support nested loops.inthashCode()voidmerge(Traverser.Admin<?> other)When two traversers are have equality with each other, then they can be merged.Traverser.Admin<T>split()Generate a sibling traverser of the current traverser with a full copy of all state within the sibling.<R> Traverser.Admin<R>split(R r, Step<T,R> step)Generate a child traverser of the current traverser for current as step and new object location.-
Methods inherited from class org.apache.tinkerpop.gremlin.process.traversal.traverser.O_OB_S_SE_SL_Traverser
bulk, equals, getSideEffects, getSingleLoopCount, getSingleLoopName, getSingleLoopStepLabel, getStepId, sack, sack, setBulk, setSideEffects, setSingleLoopCount, setSingleLoopName, setSingleLoopStepLabel, setStepId
-
Methods inherited from class org.apache.tinkerpop.gremlin.process.traversal.traverser.O_Traverser
equals, getTags
-
Methods inherited from class org.apache.tinkerpop.gremlin.process.traversal.traverser.util.AbstractTraverser
addLabels, attach, clone, detach, dropLabels, dropPath, get, keepLabels, path, set, toString
-
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.tinkerpop.gremlin.structure.util.Attachable
get
-
Methods inherited from interface org.apache.tinkerpop.gremlin.process.traversal.traverser.NL_SL_Traverser
copyNestedLoops, getLoopNames, getNestedLoopCount, getSingleLoopCount, getSingleLoopName, getSingleLoopStepLabel, getValidLoopRequirement, incrLoops, initialiseLoops, initialiseNestedLoops, loops, loops, resetLoops, setSingleLoopCount, setSingleLoopName, setSingleLoopStepLabel
-
Methods inherited from interface org.apache.tinkerpop.gremlin.process.traversal.Traverser
asAdmin, bulk, clone, compareTo, get, path, path, path, sack, sack, sideEffects, sideEffects
-
Methods inherited from interface org.apache.tinkerpop.gremlin.process.traversal.Traverser.Admin
addLabels, attach, detach, dropLabels, dropPath, getSideEffects, getStepId, getTags, isHalted, keepLabels, set, setBulk, setSideEffects, setStepId
-
-
-
-
Field Detail
-
nestedLoops
protected Stack<LabelledCounter> nestedLoops
-
loopNames
protected org.apache.commons.collections.map.ReferenceMap loopNames
-
-
Method Detail
-
getNestedLoops
public Stack<LabelledCounter> getNestedLoops()
Description copied from interface:NL_SL_TraverserOverride this method to support nested loops.- Specified by:
getNestedLoopsin interfaceNL_SL_Traverser<T>- Returns:
- the
StackofLabelledCounterwhich holds the nested loops.
-
getNestedLoopNames
public org.apache.commons.collections.map.ReferenceMap getNestedLoopNames()
Description copied from interface:NL_SL_TraverserOverride this method to support nested loops.- Specified by:
getNestedLoopNamesin interfaceNL_SL_Traverser<T>- Returns:
- the
ReferenceMapwhere key=loop name and value=reference to theLabelledCounter.
-
getLoopRequirement
public TraverserRequirement getLoopRequirement()
- Specified by:
getLoopRequirementin interfaceNL_SL_Traverser<T>- Overrides:
getLoopRequirementin classO_OB_S_SE_SL_Traverser<T>- Returns:
- the supported loop type - either
TraverserRequirement.NESTED_LOOPorTraverserRequirement.SINGLE_LOOP
-
split
public <R> Traverser.Admin<R> split(R r, Step<T,R> step)
Description copied from interface:Traverser.AdminGenerate 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:
splitin interfaceTraverser.Admin<T>- Overrides:
splitin classO_OB_S_SE_SL_Traverser<T>- Type Parameters:
R- The current object type of the child- Parameters:
r- The current object of the childstep- The step yielding the split- Returns:
- The split traverser
-
split
public Traverser.Admin<T> split()
Description copied from interface:Traverser.AdminGenerate a sibling traverser of the current traverser with a full copy of all state within the sibling.- Specified by:
splitin interfaceTraverser.Admin<T>- Overrides:
splitin classO_OB_S_SE_SL_Traverser<T>- Returns:
- The split traverser
-
merge
public void merge(Traverser.Admin<?> other)
Description copied from interface:Traverser.AdminWhen 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:
mergein interfaceTraverser.Admin<T>- Overrides:
mergein classO_OB_S_SE_SL_Traverser<T>- Parameters:
other- the other traverser to merge into this traverser. Once merged, the other can be garbage collected.
-
equals
public boolean equals(Object o)
- Overrides:
equalsin classO_OB_S_SE_SL_Traverser<T>
-
hashCode
public int hashCode()
- Overrides:
hashCodein classO_OB_S_SE_SL_Traverser<T>
-
-