org.eclipse.ocl.examples.domain.library
Interface LibraryOperation

All Superinterfaces:
LibraryFeature
All Known Subinterfaces:
LibraryBinaryOperation, LibrarySimpleBinaryOperation, LibrarySimpleOperation, LibrarySimpleTernaryOperation, LibrarySimpleUnaryOperation, LibraryTernaryOperation, LibraryUnaryOperation, LibraryUntypedBinaryOperation, LibraryUntypedOperation, LibraryUntypedTernaryOperation, LibraryUntypedUnaryOperation
All Known Implementing Classes:
AbstractBinaryOperation, AbstractOperation, AbstractPolyOperation, AbstractSimpleBinaryOperation, AbstractSimpleTernaryOperation, AbstractSimpleUnaryOperation, AbstractTernaryOperation, AbstractUnaryOperation, AbstractUntypedBinaryOperation, AbstractUntypedTernaryOperation, AbstractUntypedUnaryOperation, BooleanAllInstancesOperation, BooleanAndOperation, BooleanImpliesOperation, BooleanNotOperation, BooleanOrOperation, BooleanXorOperation, ClassifierAllInstancesOperation, ClassifierOclContainerOperation, ClassifierOclContentsOperation, CollectionAsBagOperation, CollectionAsOrderedSetOperation, CollectionAsSequenceOperation, CollectionAsSetOperation, CollectionCountOperation, CollectionExcludesAllOperation, CollectionExcludesOperation, CollectionExcludingOperation, CollectionFlattenOperation, CollectionIncludesAllOperation, CollectionIncludesOperation, CollectionIncludingOperation, CollectionIntersectionOperation, CollectionIsEmptyOperation, CollectionMaxOperation, CollectionMinOperation, CollectionNotEmptyOperation, CollectionProductOperation, CollectionSelectByKindOperation, CollectionSelectByTypeOperation, CollectionSizeOperation, CollectionSumOperation, CollectionUnionOperation, ConstrainedOperation, EInvokeOperation, EnumerationAllInstancesOperation, EObjectOperation, IntegerCompareToOperation, IntegerMinusOperation, IntegerPlusOperation, JavaCompareToOperation, NumericAbsOperation, NumericCompareToOperation, NumericDivideOperation, NumericDivOperation, NumericFloorOperation, NumericGreaterThanEqualOperation, NumericGreaterThanOperation, NumericLessThanEqualOperation, NumericLessThanOperation, NumericMaxOperation, NumericMinOperation, NumericMinusOperation, NumericModOperation, NumericNegateOperation, NumericPlusOperation, NumericRoundOperation, NumericTimesOperation, OclAnyEqualOperation, OclAnyNotEqualOperation, OclAnyOclAsSetOperation, OclAnyOclAsTypeOperation, OclAnyOclIsInStateOperation, OclAnyOclIsInvalidOperation, OclAnyOclIsKindOfOperation, OclAnyOclIsTypeOfOperation, OclAnyOclIsUndefinedOperation, OclAnyOclLogOperation, OclAnyOclTypeOperation, OclAnyToStringOperation, OclAnyUnsupportedOperation, OclComparableCompareToOperation, OclComparableComparisonOperation, OclComparableGreaterThanEqualOperation, OclComparableGreaterThanOperation, OclComparableLessThanEqualOperation, OclComparableLessThanOperation, OclInvalidAllInstancesOperation, OclTypeConformsToOperation, OclVoidAllInstancesOperation, OclVoidAndOperation, OclVoidImpliesOperation, OclVoidOrOperation, OperationInliners.UnboxedInvocationOperation, OrderedCollectionAppendOperation, OrderedCollectionAtOperation, OrderedCollectionFirstOperation, OrderedCollectionIndexOfOperation, OrderedCollectionInsertAtOperation, OrderedCollectionLastOperation, OrderedCollectionPrependOperation, OrderedCollectionReverseOperation, OrderedSetSubOrderedSetOperation, RealCompareToOperation, RealMinusOperation, RealPlusOperation, SequenceSubSequenceOperation, SetMinusOperation, SetSymmetricDifferenceOperation, StringAtOperation, StringCharactersOperation, StringCompareToOperation, StringConcatOperation, StringEndsWithOperation, StringEqualsIgnoreCaseOperation, StringGreaterThanEqualOperation, StringGreaterThanOperation, StringIndexOfOperation, StringLastIndexOfOperation, StringLessThanEqualOperation, StringLessThanOperation, StringMatchesOperation, StringReplaceAllOperation, StringReplaceFirstOperation, StringSizeOperation, StringStartsWithOperation, StringSubstituteAllOperation, StringSubstituteFirstOperation, StringSubstringOperation, StringToBooleanOperation, StringToIntegerOperation, StringTokenizeOperation, StringToLowerCaseOperation, StringToRealOperation, StringToUpperCaseOperation, StringTrimOperation, UnlimitedNaturalOclAsTypeOperation, UnsupportedOperation

public interface LibraryOperation
extends LibraryFeature


Method Summary
 java.lang.Object evaluate(DomainEvaluator evaluator, DomainCallExp callExp, java.lang.Object sourceValue, java.lang.Object... argumentValues)
          Return the result of evaluating operationCall upon sourceVal within the environment provided by EvaluationVisitor.
 

Method Detail

evaluate

@Nullable
java.lang.Object evaluate(@NonNull
                                   DomainEvaluator evaluator,
                                   @NonNull
                                   DomainCallExp callExp,
                                   @Nullable
                                   java.lang.Object sourceValue,
                                   java.lang.Object... argumentValues)
Return the result of evaluating operationCall upon sourceVal within the environment provided by EvaluationVisitor. An invalid return may be indicated by throwing an exception returning Java null or OCL invalid.

Parameters:
evaluationVisitor - the evaluation context
sourceVal - the source operand for the operation
operationCall - the operation and additional arguments
Returns:
the evaluated value
Throws:
java.lang.Exception
InvalidValueException