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, DomainType, ExecutorTypeArgument
Direct Known Subclasses:
EcoreExecutorEnumeration

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, ORDERED, UNIQUE
 
Constructor Summary
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
 ObjectValue createInstance(ValueFactory valueFactory)
          Return a new instance of this type from valueFactory.
 Value createInstance(ValueFactory valueFactory, 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.
 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
getAllSuperFragments, getDepth, getFragment, getIndex, getIndexes, getLocalOperations, getLocalProperties, getLocalSuperTypes, getSelfFragment, getStandardLibrary, getSuperFragments, getType, initFragments
 
Methods inherited from class org.eclipse.ocl.examples.domain.types.AbstractInheritance
conformsTo, getCommonInheritance, getCommonType, getFragment, getInheritance, getName, getNormalizedType, getOclAnyInheritance, getPackage, isEqualTo, isEqualToUnspecializedType, isOrdered, isSubInheritanceOf, isSuperInheritanceOf, isUndefined, isUnique, lookupImplementation, lookupLocalOperation, 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, getPackage, isEqualTo, isEqualToUnspecializedType, isOrdered, isUnique, lookupImplementation
 

Field Detail

eClassifier

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

EcoreExecutorType

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


EcoreExecutorType

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

Method Detail

createInstance

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

Specified by:
createInstance in interface DomainType
Overrides:
createInstance in class AbstractInheritance

createInstance

public Value createInstance(ValueFactory valueFactory,
                            java.lang.String value)
Description copied from interface: DomainType
Return a new instance of this data type from valueFactory.

Specified by:
createInstance in interface DomainType
Overrides:
createInstance in class AbstractInheritance
value - string initial value

getEClassifier

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

getMetaTypeName

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

initFragments

public EcoreExecutorType initFragments(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.