org.eclipse.ocl.examples.library.numeric
Class NumericMaxOperation

java.lang.Object
  extended by org.eclipse.ocl.examples.domain.library.AbstractFeature
      extended by org.eclipse.ocl.examples.domain.library.AbstractOperation
          extended by org.eclipse.ocl.examples.domain.library.AbstractBinaryOperation
              extended by org.eclipse.ocl.examples.library.numeric.AbstractNumericBinaryOperation
                  extended by org.eclipse.ocl.examples.library.numeric.NumericMaxOperation
All Implemented Interfaces:
LibraryBinaryOperation, LibraryFeature, LibraryOperation

public class NumericMaxOperation
extends AbstractNumericBinaryOperation

MaxOperation realises the max() library operation.


Field Summary
static NumericMaxOperation INSTANCE
           
 
Constructor Summary
NumericMaxOperation()
           
 
Method Summary
protected  IntegerValue evaluateInteger(DomainEvaluator evaluator, IntegerValue left, IntegerValue right)
          Evaluate an operation for which both left and right are Integer.
protected  RealValue evaluateReal(DomainEvaluator evaluator, RealValue left, RealValue right)
          Evaluate an operation for which both left and right are Real.
protected  Value evaluateUnlimited(DomainEvaluator evaluator, Value left, Value right)
          Evaluate an operation for which at least one of left and right are unlimited and for which neither left nor right are invalid or null.
 
Methods inherited from class org.eclipse.ocl.examples.library.numeric.AbstractNumericBinaryOperation
evaluate, evaluate
 
Methods inherited from class org.eclipse.ocl.examples.domain.library.AbstractBinaryOperation
evaluate
 
Methods inherited from class org.eclipse.ocl.examples.domain.library.AbstractOperation
argumentsMayBeInvalid
 
Methods inherited from class org.eclipse.ocl.examples.domain.library.AbstractFeature
getLibraryValidator, getValidator
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.eclipse.ocl.examples.domain.library.LibraryOperation
argumentsMayBeInvalid
 
Methods inherited from interface org.eclipse.ocl.examples.domain.library.LibraryFeature
getValidator
 

Field Detail

INSTANCE

public static final NumericMaxOperation INSTANCE
Constructor Detail

NumericMaxOperation

public NumericMaxOperation()
Method Detail

evaluateInteger

protected IntegerValue evaluateInteger(DomainEvaluator evaluator,
                                       IntegerValue left,
                                       IntegerValue right)
                                throws InvalidValueException
Description copied from class: AbstractNumericBinaryOperation
Evaluate an operation for which both left and right are Integer.

Specified by:
evaluateInteger in class AbstractNumericBinaryOperation
left - argument
right - argument
Returns:
result
Throws:
InvalidValueException

evaluateReal

protected RealValue evaluateReal(DomainEvaluator evaluator,
                                 RealValue left,
                                 RealValue right)
                          throws InvalidValueException
Description copied from class: AbstractNumericBinaryOperation
Evaluate an operation for which both left and right are Real.

Overrides:
evaluateReal in class AbstractNumericBinaryOperation
left - argument
right - argument
Returns:
result
Throws:
InvalidValueException

evaluateUnlimited

protected Value evaluateUnlimited(DomainEvaluator evaluator,
                                  Value left,
                                  Value right)
Description copied from class: AbstractNumericBinaryOperation
Evaluate an operation for which at least one of left and right are unlimited and for which neither left nor right are invalid or null.

Overrides:
evaluateUnlimited in class AbstractNumericBinaryOperation
left - argument
right - argument
Returns:
result