org.eclipse.ocl.examples.codegen.java.iteration
Class OneIteration2Java

java.lang.Object
  extended by org.eclipse.ocl.examples.codegen.java.iteration.AbstractIteration2Java
      extended by org.eclipse.ocl.examples.codegen.java.iteration.AbstractAccumulation2Java
          extended by org.eclipse.ocl.examples.codegen.java.iteration.OneIteration2Java
All Implemented Interfaces:
IterationHelper, Iteration2Java

public class OneIteration2Java
extends AbstractAccumulation2Java


Field Summary
static OneIteration2Java INSTANCE
           
 
Constructor Summary
OneIteration2Java()
           
 
Method Summary
 void appendAccumulatorInit(JavaStream js, CGBuiltInIterationCallExp cgIterationCallExp)
           
 boolean appendUpdate(JavaStream js, CGBuiltInIterationCallExp cgIterationCallExp)
          Append the code to update the accumulator
 CGTypeId getAccumulatorTypeId(CodeGenAnalyzer analyzer, CGBuiltInIterationCallExp cgIterationCallExp)
           
 
Methods inherited from class org.eclipse.ocl.examples.codegen.java.iteration.AbstractAccumulation2Java
appendFinalValue, getAccumulator, getAccumulatorClass
 
Methods inherited from class org.eclipse.ocl.examples.codegen.java.iteration.AbstractIteration2Java
getBody, getIterator
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

INSTANCE

@NonNull
public static final OneIteration2Java INSTANCE
Constructor Detail

OneIteration2Java

public OneIteration2Java()
Method Detail

appendAccumulatorInit

public void appendAccumulatorInit(@NonNull
                                  JavaStream js,
                                  @NonNull
                                  CGBuiltInIterationCallExp cgIterationCallExp)
Specified by:
appendAccumulatorInit in interface Iteration2Java
Overrides:
appendAccumulatorInit in class AbstractAccumulation2Java

appendUpdate

public boolean appendUpdate(@NonNull
                            JavaStream js,
                            @NonNull
                            CGBuiltInIterationCallExp cgIterationCallExp)
Description copied from interface: Iteration2Java
Append the code to update the accumulator

Returns true if control flow continues to loop again, false if terminated by a throw.


getAccumulatorTypeId

@Nullable
public CGTypeId getAccumulatorTypeId(@NonNull
                                              CodeGenAnalyzer analyzer,
                                              @NonNull
                                              CGBuiltInIterationCallExp cgIterationCallExp)
Specified by:
getAccumulatorTypeId in interface IterationHelper
Overrides:
getAccumulatorTypeId in class AbstractAccumulation2Java