org.eclipse.ocl.internal.evaluation
Class IterationTemplate<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

java.lang.Object
  extended by org.eclipse.ocl.internal.evaluation.IterationTemplate<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>
Direct Known Subclasses:
IterationTemplateAny, IterationTemplateClosure, IterationTemplateCollect, IterationTemplateCollectNested, IterationTemplateExists, IterationTemplateForAll, IterationTemplateIsUnique, IterationTemplateOne, IterationTemplateReject, IterationTemplateSelect, IterationTemplateSortedBy

public class IterationTemplate<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>
extends java.lang.Object


Constructor Summary
protected IterationTemplate(EvaluationVisitor<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E> v)
           
 
Method Summary
protected  void advanceIterators(java.util.List<Variable<C,PM>> iterators, java.util.Iterator<?>[] javaIters, java.util.Collection<?> c, int curr)
           
 java.lang.Object evaluate(java.util.Collection<?> coll, java.util.List<Variable<C,PM>> iterators, OCLExpression<C> body, java.lang.String resultName)
           
protected  java.lang.Object evaluateResult(java.util.List<Variable<C,PM>> iterators, java.lang.String resultName, java.lang.Object bodyVal)
           
 EvaluationEnvironment<C,O,P,CLS,E> getEvalEnvironment()
           
 EvaluationVisitor<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E> getEvaluationVisitor()
           
static
<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>
IterationTemplate<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>
getInstance(EvaluationVisitor<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E> v)
           
protected  java.lang.Object getInvalid()
           
protected  int getNextUnfinishedIterator(java.util.Iterator<?>[] javaIters)
           
protected  OCLStandardLibrary<C> getOCLStandardLibrary()
           
protected  void initializeIterators(java.util.List<Variable<C,PM>> iterators, java.util.Iterator<?>[] javaIters, java.util.Collection<?> c)
           
 boolean isDone()
           
protected  boolean moreToGo(int curr, int numIters)
           
protected  void removeIterators(java.util.List<Variable<C,PM>> iterators)
           
 void setDone(boolean done)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

IterationTemplate

protected IterationTemplate(EvaluationVisitor<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E> v)
Method Detail

getInstance

public static <PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E> IterationTemplate<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E> getInstance(EvaluationVisitor<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E> v)

getEvaluationVisitor

public EvaluationVisitor<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E> getEvaluationVisitor()

getEvalEnvironment

public EvaluationEnvironment<C,O,P,CLS,E> getEvalEnvironment()

setDone

public final void setDone(boolean done)

isDone

public final boolean isDone()

evaluate

public java.lang.Object evaluate(java.util.Collection<?> coll,
                                 java.util.List<Variable<C,PM>> iterators,
                                 OCLExpression<C> body,
                                 java.lang.String resultName)

initializeIterators

protected void initializeIterators(java.util.List<Variable<C,PM>> iterators,
                                   java.util.Iterator<?>[] javaIters,
                                   java.util.Collection<?> c)

getNextUnfinishedIterator

protected int getNextUnfinishedIterator(java.util.Iterator<?>[] javaIters)

advanceIterators

protected void advanceIterators(java.util.List<Variable<C,PM>> iterators,
                                java.util.Iterator<?>[] javaIters,
                                java.util.Collection<?> c,
                                int curr)

removeIterators

protected void removeIterators(java.util.List<Variable<C,PM>> iterators)

moreToGo

protected boolean moreToGo(int curr,
                           int numIters)

evaluateResult

protected java.lang.Object evaluateResult(java.util.List<Variable<C,PM>> iterators,
                                          java.lang.String resultName,
                                          java.lang.Object bodyVal)

getOCLStandardLibrary

protected OCLStandardLibrary<C> getOCLStandardLibrary()

getInvalid

protected java.lang.Object getInvalid()