org.eclipse.ocl.examples.pivot.library
Class EInvokeOperation
java.lang.Object
org.eclipse.ocl.examples.domain.values.util.ValuesUtil
org.eclipse.ocl.examples.domain.library.AbstractFeature
org.eclipse.ocl.examples.domain.library.AbstractOperation
org.eclipse.ocl.examples.pivot.library.EInvokeOperation
- All Implemented Interfaces:
- LibraryFeature, LibraryOperation
public class EInvokeOperation
- extends AbstractOperation
An EInvokeOperation supports evaluation of an operation call by using eInvoke on the underlying eObject.
Field Summary |
protected org.eclipse.emf.ecore.EOperation |
eOperation
|
Fields inherited from class org.eclipse.ocl.examples.domain.values.util.ValuesUtil |
EMPTY_BAG, EMPTY_SET, FALSE_VALUE, INTEGER_MAX_VALUE, INTEGER_MIN_VALUE, INVALID_VALUE, LONG_MAX_VALUE, LONG_MIN_VALUE, NULL_STRING, NULL_VALUE, ONE_VALUE, TRUE_VALUE, UNLIMITED_VALUE, ZERO_VALUE |
Constructor Summary |
EInvokeOperation(org.eclipse.emf.ecore.EOperation eOperation)
|
Methods inherited from class org.eclipse.ocl.examples.domain.values.util.ValuesUtil |
asBagValue, asBoolean, asCollectionType, asCollectionValue, asInteger, asIntegerValue, asMetaclass, asNavigableObject, asObject, asOrderedCollectionValue, asOrderedSetValue, asRealValue, asSequenceValue, asSetValue, asString, asTupleValue, asType, asUniqueCollectionValue, asUnlimitedNaturalValue, asValue, bigDecimalValueOf, bigIntegerValueOf, characterValueOf, createBagAccumulatorValue, createBagOfEach, createBagRange, createBagValue, createCollectionAccumulatorValue, createInvalidValue, createObjectValue, createOrderedSetAccumulatorValue, createOrderedSetOfEach, createOrderedSetRange, createOrderedSetValue, createRange, createSequenceAccumulatorValue, createSequenceOfEach, createSequenceRange, createSequenceRange, createSequenceValue, createSetAccumulatorValue, createSetOfEach, createSetRange, createSetValue, createTupleOfEach, createTupleValue, createTupleValue, createTypeValue, getEcoreNumber, getTypeName, initAllStatics, integerValueOf, integerValueOf, integerValueOf, integerValueOf, integerValueOf, isBoxed, isCollectionValue, isIntegerNumber, isIntegerValue, isRealNumber, isUnboxed, isUnlimited, oclToString, realValueOf, realValueOf, realValueOf, realValueOf, realValueOf, stringValueOf, throwBooleanInvalidValueException, throwInvalidValueException, toString |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
eOperation
@NonNull
protected final org.eclipse.emf.ecore.EOperation eOperation
EInvokeOperation
public EInvokeOperation(@NonNull
org.eclipse.emf.ecore.EOperation eOperation)
dispatch
@Nullable
public java.lang.Object dispatch(@NonNull
DomainEvaluator evaluator,
@NonNull
DomainCallExp callExp,
@Nullable
java.lang.Object sourceValue)
- Description copied from interface:
LibraryOperation
- Return the result of evaluating callExp and its arguments upon sourceValue within the environment
provided by evaluator. An invalid return may be indicated by throwing an exception,
returning Java null, or returning OCL invalid.
This invocation evaluates the arguments as required. Derived implementations may implement short circuit processing
to skip redundant evlaution of later arguments.
Invocations may bypass dispatch if a derived LibraryOperation such as LibrarySimpleBinaryOperation
makes its internal evaluate signature available for use after a type test and cast.
evaluate
@Nullable
public java.lang.Object evaluate(@NonNull
DomainEvaluator evaluator,
@NonNull
TypeId returnTypeId,
@Nullable
java.lang.Object sourceValue,
@NonNull
java.lang.Object... argumentValues)
getResultValue
@Nullable
protected java.lang.Object getResultValue(@NonNull
DomainEvaluator evaluator,
@NonNull
TypeId returnTypeId,
@Nullable
java.lang.Object eResult)