public interface IterationManager
Modifier and Type | Method and Description |
---|---|
boolean |
advanceIterators()
Advance the iterators to the next iteration, returning false once all possible
iterator states have been exhausted.
|
IterationManager |
createNestedIterationManager(CollectionValue value)
Create a nested iteration supervisor.
|
void |
dispose() |
java.lang.Object |
evaluateBody()
Evaluate the iteration body for the current iterators and return the evaluation result.
|
java.lang.Object |
get()
Get the current state of the iterator.
|
java.lang.Object |
getAccumulatorValue()
Get the current state of the accumulator.
|
Evaluator |
getEvaluator() |
CollectionValue |
getSourceCollection()
Return the source collection over which this (nested) iteration iterates.
|
StandardLibrary |
getStandardLibrary() |
boolean |
hasCurrent()
Return true if the iterators have a step to be evaluated.
|
java.lang.Object |
updateAccumulator(java.lang.Object newValue)
Update the accumulator witrh the result of a body iteration.
|
boolean advanceIterators()
@NonNull IterationManager createNestedIterationManager(@NonNull CollectionValue value)
value
- the nested iteration domainInvalidValueException
void dispose()
@Nullable java.lang.Object evaluateBody()
java.lang.Exception
@Nullable java.lang.Object get()
@Nullable java.lang.Object getAccumulatorValue()
@NonNull CollectionValue getSourceCollection()
@NonNull StandardLibrary getStandardLibrary()
boolean hasCurrent()
@Nullable java.lang.Object updateAccumulator(java.lang.Object newValue)
java.lang.Exception
InvalidValueException