org.eclipse.ocl.examples.domain.values
Interface OCLValue

All Known Subinterfaces:
AnyType, AssociationClass, BagType, Behavior, Class, CollectionType, DataType, DomainCollectionType, DomainEnumeration, DomainInheritance, DomainInvalidType, DomainLambdaType, DomainMetaclass, DomainTupleType, DomainType, DynamicType, ElementExtension, Enumeration, ExecutorTypeArgument, IntegerValue, IntegerValue.Accumulator, InvalidType, InvalidValue, LambdaType, MessageType, Metaclass<T>, NullValue, OrderedSetType, PrimitiveType, RealValue, SelfType, SequenceType, SetType, StateMachine, Stereotype, TemplateParameterType, TupleType, Type, TypeServer, UnlimitedValue, UnspecifiedType, VoidType
All Known Implementing Classes:
AbstractCollectionType, AbstractInheritance, AbstractMetaclass, AbstractSpecializedType, AbstractTupleType, AbstractType, AbstractTypeServer, AnyTypeImpl, AnyTypeServer, AssociationClassImpl, BagTypeImpl, BehaviorImpl, BigIntegerValueImpl, ClassImpl, CollectionTypeImpl, CollectionTypeServer, DataTypeImpl, DomainInvalidTypeImpl, DomainReflectiveType, DynamicTypeImpl, EcoreExecutorEnumeration, EcoreExecutorInvalidType, EcoreExecutorType, EcoreExecutorVoidType, EcoreReflectiveEnumeration, EcoreReflectiveType, ElementExtensionImpl, EnumerationImpl, EnumerationTypeServer, EvaluationHaltedException, ExecutorLambdaType, ExecutorSpecializedType, ExecutorTupleType, ExecutorType, ExecutorTypeParameter, ExtensibleTypeServer, ExtensionTypeServer, IntegerValueImpl, IntIntegerValueImpl, InvalidTypeImpl, InvalidTypeServer, InvalidValueException, JavaType, LambdaTypeImpl, LongIntegerValueImpl, MessageTypeImpl, MetaclassImpl, MetaclassServer, NullValueImpl, OrderedSetTypeImpl, OrphanTypeServer, PrimitiveTypeImpl, PrimitiveTypeServer, RealValueImpl, ReflectiveType, SelfTypeImpl, SequenceTypeImpl, SetTypeImpl, StateMachineImpl, StereotypeImpl, TemplateableTypeServer, TemplateParameterTypeImpl, TupleTypeImpl, TypeImpl, UndefinedValueImpl, UnlimitedValueImpl, UnspecifiedTypeImpl, VMException, VMInterruptedExecutionException, VMRuntimeException, VMStackOverFlowError, VoidTypeImpl

public interface OCLValue

The OCLValue interface must be implemented by any datatype for which Java's Object.equals is inappropriate when OCL datatype equivalence is required.


Method Summary
 boolean oclEquals(OCLValue thatValue)
          Return true if this is an equivalent OCL value to thatValue.
 int oclHashCode()
           
 

Method Detail

oclEquals

boolean oclEquals(@NonNull
                  OCLValue thatValue)
Return true if this is an equivalent OCL value to thatValue.

Note that the caller must check that the argument is an OCLValue and should also check for the shortcut case that this == thatValue. Implementations are therefore wasting time if they re-implement the shortcut.


oclHashCode

int oclHashCode()