org.eclipse.ocl.examples.library.ecore
Class EcoreExecutorType

java.lang.Object
  extended by org.eclipse.ocl.examples.domain.types.AbstractInheritance
      extended by org.eclipse.ocl.examples.library.executor.ExecutorType
          extended by org.eclipse.ocl.examples.library.ecore.EcoreExecutorType
All Implemented Interfaces:
DomainElement, DomainInheritance, DomainNamedElement, DomainNamespace, DomainType, Nameable, OCLValue, ExecutorTypeArgument
Direct Known Subclasses:
EcoreExecutorEnumeration, EcoreExecutorInvalidType, EcoreExecutorVoidType

public class EcoreExecutorType
extends ExecutorType


Nested Class Summary
 
Nested classes/interfaces inherited from class org.eclipse.ocl.examples.domain.types.AbstractInheritance
AbstractInheritance.FragmentIterable
 
Field Summary
protected  org.eclipse.emf.ecore.EClassifier eClassifier
           
 
Fields inherited from class org.eclipse.ocl.examples.domain.types.AbstractInheritance
evaluationPackage, flags, name, operationMap, ORDERED, propertyMap, UNIQUE
 
Fields inherited from interface org.eclipse.ocl.examples.domain.elements.DomainInheritance
EMPTY_ARRAY
 
Constructor Summary
EcoreExecutorType(BuiltInTypeId typeId, ExecutorPackage evaluationPackage, int flags, ExecutorTypeParameter... typeParameters)
          Construct an executable type descriptor in the absence of a known EClassifier.
EcoreExecutorType(org.eclipse.emf.ecore.EClassifier eClassifier, EcoreExecutorPackage evaluationPackage, int flags, ExecutorTypeParameter... typeParameters)
          Construct an executable type descriptor for a known EClassifier.
EcoreExecutorType(java.lang.String name, ExecutorPackage evaluationPackage, int flags, ExecutorTypeParameter... typeParameters)
          Construct an executable type descriptor in the absence of a known EClassifier.
 
Method Summary
 java.lang.Object createInstance()
          Return a new instance of this type from valueFactory.
 java.lang.Object createInstance(java.lang.String value)
          Return a new instance of this data type from valueFactory.
 org.eclipse.emf.ecore.EClassifier getEClassifier()
           
 java.lang.String getMetaTypeName()
          Return the name of the meta-type of this type.
 TypeId getTypeId()
          Return a unique StandardLibrary-independent identifier for this type.
 EcoreExecutorType initFragments(ExecutorFragment[] fragments, int[] depthCounts, org.eclipse.emf.ecore.EClassifier eClassifier)
          Define the EClassifier associated with an executable type.
 
Methods inherited from class org.eclipse.ocl.examples.library.executor.ExecutorType
getAllOperations, getAllProperties, getAllSuperFragments, getDepth, getFragment, getIndex, getIndexes, getLocalOperations, getLocalProperties, getLocalSuperTypes, getMemberProperty, getOwnedAttribute, getOwnedOperation, getSelfFragment, getStandardLibrary, getSuperFragments, getType, getTypeParameters, initFragments
 
Methods inherited from class org.eclipse.ocl.examples.domain.types.AbstractInheritance
conformsTo, getCommonInheritance, getCommonType, getFragment, getInheritance, getMemberOperation, getName, getNormalizedType, getOclAnyInheritance, getOwnedInvariant, getOwnedRule, getPackage, initStatics, isEqualTo, isEqualToUnspecializedType, isInvalid, isOrdered, isSubInheritanceOf, isSuperInheritanceOf, isUndefined, isUnique, lookupImplementation, lookupLocalOperation, oclEquals, oclHashCode, specializeIn, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.eclipse.ocl.examples.domain.elements.DomainType
conformsTo, getCommonType, getInheritance, getName, getNormalizedType, getOwnedInvariant, getPackage, isEqualTo, isEqualToUnspecializedType, isInvalid, isOrdered, isUnique, lookupImplementation, specializeIn
 
Methods inherited from interface org.eclipse.ocl.examples.domain.elements.DomainNamespace
getOwnedRule
 
Methods inherited from interface org.eclipse.ocl.examples.domain.values.OCLValue
oclEquals, oclHashCode
 

Field Detail

eClassifier

@Nullable
protected org.eclipse.emf.ecore.EClassifier eClassifier
Constructor Detail

EcoreExecutorType

public EcoreExecutorType(@NonNull
                         java.lang.String name,
                         @NonNull
                         ExecutorPackage evaluationPackage,
                         int flags,
                         @NonNull
                         ExecutorTypeParameter... typeParameters)
Construct an executable type descriptor in the absence of a known EClassifier. A subsequent call of initFragments(ExecutorFragment[], int[], EClassifier) may define an EClassifier.


EcoreExecutorType

public EcoreExecutorType(@NonNull
                         BuiltInTypeId typeId,
                         @NonNull
                         ExecutorPackage evaluationPackage,
                         int flags,
                         @NonNull
                         ExecutorTypeParameter... typeParameters)
Construct an executable type descriptor in the absence of a known EClassifier. A subsequent call of initFragments(ExecutorFragment[], int[], EClassifier) may define an EClassifier.


EcoreExecutorType

public EcoreExecutorType(org.eclipse.emf.ecore.EClassifier eClassifier,
                         @NonNull
                         EcoreExecutorPackage evaluationPackage,
                         int flags,
                         @NonNull
                         ExecutorTypeParameter... typeParameters)
Construct an executable type descriptor for a known EClassifier.

Method Detail

createInstance

@NonNull
public java.lang.Object createInstance()
Description copied from interface: DomainType
Return a new instance of this type from valueFactory. Properties may be initialised using DomainProperty.initValue(Object, Object) provided no side-effect free OCL functionality is permitted to use the ObjectValue until initialisation has completed.


createInstance

@Nullable
public java.lang.Object createInstance(@NonNull
                                                java.lang.String value)
Description copied from interface: DomainType
Return a new instance of this data type from valueFactory.

Parameters:
value - string initial value

getEClassifier

public final org.eclipse.emf.ecore.EClassifier getEClassifier()

getMetaTypeName

@NonNull
public java.lang.String getMetaTypeName()
Description copied from interface: DomainType
Return the name of the meta-type of this type.

Specified by:
getMetaTypeName in interface DomainType
Overrides:
getMetaTypeName in class ExecutorType

getTypeId

@NonNull
public TypeId getTypeId()
Description copied from interface: DomainType
Return a unique StandardLibrary-independent identifier for this type.

Specified by:
getTypeId in interface DomainType
Overrides:
getTypeId in class ExecutorType

initFragments

@NonNull
public EcoreExecutorType initFragments(@NonNull
                                               ExecutorFragment[] fragments,
                                               int[] depthCounts,
                                               org.eclipse.emf.ecore.EClassifier eClassifier)
Define the EClassifier associated with an executable type. This initialization may be performed once to allow an Ecore-aware package of type descriptors to re-use and enhance an Ecore-unaware package. This occurs for the PivotTables that enhance the OCLstdlibTables.