public abstract class AbstractAccumulation2Java extends AbstractIteration2Java
Constructor and Description |
---|
AbstractAccumulation2Java() |
Modifier and Type | Method and Description |
---|---|
void |
appendAccumulatorInit(JavaStream js,
CGBuiltInIterationCallExp cgIterationCallExp) |
boolean |
appendFinalValue(JavaStream js,
CGBuiltInIterationCallExp cgIterationCallExp)
Append the code to assign the final value to the result.
|
protected CGIterator |
getAccumulator(CGBuiltInIterationCallExp cgIterationCallExp) |
protected java.lang.Class<?> |
getAccumulatorClass(CodeGenAnalyzer analyzer,
CollectionTypeId typeId) |
CGTypeId |
getAccumulatorTypeId(CodeGenAnalyzer analyzer,
CGBuiltInIterationCallExp cgIterationCallExp) |
getBody, getIterator
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
appendUpdate
public void appendAccumulatorInit(@NonNull JavaStream js, @NonNull CGBuiltInIterationCallExp cgIterationCallExp)
appendAccumulatorInit
in interface Iteration2Java
appendAccumulatorInit
in class AbstractIteration2Java
public boolean appendFinalValue(@NonNull JavaStream js, @NonNull CGBuiltInIterationCallExp cgIterationCallExp)
Iteration2Java
Returns true if control flow continues into a break, false if terminated by a throw.
@NonNull protected CGIterator getAccumulator(@NonNull CGBuiltInIterationCallExp cgIterationCallExp)
@NonNull protected java.lang.Class<?> getAccumulatorClass(@NonNull CodeGenAnalyzer analyzer, @NonNull CollectionTypeId typeId)
@Nullable public CGTypeId getAccumulatorTypeId(@NonNull CodeGenAnalyzer analyzer, @NonNull CGBuiltInIterationCallExp cgIterationCallExp)
getAccumulatorTypeId
in interface IterationHelper
getAccumulatorTypeId
in class AbstractIteration2Java