public class O_OB_S_SE_SL_Traverser<T> extends O_Traverser<T>
Traverser.Admin<T>
Attachable.Exceptions, Attachable.Method
Modifier and Type | Field and Description |
---|---|
protected String |
future |
protected short |
loops |
protected Object |
sack |
protected TraversalSideEffects |
sideEffects |
t
HALT
Modifier | Constructor and Description |
---|---|
protected |
O_OB_S_SE_SL_Traverser() |
|
O_OB_S_SE_SL_Traverser(T t,
Step<T,?> step) |
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object object) |
TraversalSideEffects |
getSideEffects()
Get the sideEffects associated with the traversal of the traverser.
|
String |
getStepId()
Get the step id of where the traverser is located.
|
int |
hashCode() |
void |
incrLoops(String stepLabel)
Increment the number of times the traverser has gone through a looping section of traversal.
|
int |
loops()
Return the number of times the traverser has gone through a looping section of a traversal.
|
void |
merge(Traverser.Admin<?> other)
When two traversers are have equality with each other, then they can be merged.
|
void |
resetLoops()
Set the number of times the traverser has gone through a loop back to 0.
|
<S> S |
sack()
Get the sack local sack object of this traverser.
|
<S> void |
sack(S object)
Set the traversers sack object to the provided value ("sack the value").
|
void |
setSideEffects(TraversalSideEffects sideEffects)
Set the sideEffects of the
Traversal . |
void |
setStepId(String stepId)
Set the step id of where the traverser is located.
|
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.
|
addLabels, attach, bulk, clone, detach, get, path, set, setBulk, toString
finalize, getClass, notify, notifyAll, wait, wait, wait
isHalted
asAdmin, compareTo, path, path, sideEffects, sideEffects
protected Object sack
protected short loops
protected transient TraversalSideEffects sideEffects
protected String future
public <S> S sack()
Traverser
public <S> void sack(S object)
Traverser
public int loops()
Traverser
public void incrLoops(String stepLabel)
Traverser.Admin
incrLoops
in interface Traverser.Admin<T>
incrLoops
in class AbstractTraverser<T>
stepLabel
- the label of the step that is doing the incrementingpublic void resetLoops()
Traverser.Admin
resetLoops
in interface Traverser.Admin<T>
resetLoops
in class AbstractTraverser<T>
public String getStepId()
Traverser.Admin
getStepId
in interface Traverser.Admin<T>
getStepId
in class AbstractTraverser<T>
public void setStepId(String stepId)
Traverser.Admin
Traverser.Admin.HALT
, then Traverser.Admin.isHalted()
is true.setStepId
in interface Traverser.Admin<T>
setStepId
in class AbstractTraverser<T>
stepId
- The future step of the traverserpublic TraversalSideEffects getSideEffects()
Traverser.Admin
getSideEffects
in interface Traverser.Admin<T>
getSideEffects
in class AbstractTraverser<T>
public void setSideEffects(TraversalSideEffects sideEffects)
Traverser.Admin
Traversal
. Given that traversers can move between machines,
it may be important to re-set this when the traverser crosses machine boundaries.setSideEffects
in interface Traverser.Admin<T>
setSideEffects
in class AbstractTraverser<T>
sideEffects
- the sideEffects of the traversal.public <R> Traverser.Admin<R> split(R r, Step<T,R> step)
Traverser.Admin
split
in interface Traverser.Admin<T>
split
in class AbstractTraverser<T>
R
- The current object type of the childr
- The current object of the childstep
- The step yielding the splitpublic Traverser.Admin<T> split()
Traverser.Admin
split
in interface Traverser.Admin<T>
split
in class AbstractTraverser<T>
public void merge(Traverser.Admin<?> other)
Traverser.Admin
merge
in interface Traverser.Admin<T>
merge
in class AbstractTraverser<T>
other
- the other traverser to merge into this traverser. Once merged, the other can be garbage collected.public int hashCode()
hashCode
in class AbstractTraverser<T>
public boolean equals(Object object)
equals
in class AbstractTraverser<T>
Copyright © 2013–2015 Apache Software Foundation. All rights reserved.