public abstract class ReflectiveInheritance extends AbstractExecutorClass
AbstractInheritance.FragmentIterable
ABSTRACT, OCL_ANY, OCL_INVALID, OCL_VOID, ORDERED, UNIQUE
EMPTY_ARRAY
Constructor and Description |
---|
ReflectiveInheritance(String name,
int flags,
ExecutorTypeParameter... typeParameters) |
Modifier and Type | Method and Description |
---|---|
void |
addSubInheritance(ReflectiveInheritance subInheritance) |
EObject |
createInstance()
Return a new instance of this type from valueFactory.
|
Object |
createInstance(String value)
Return a new instance of this data type from valueFactory.
|
boolean |
gatherUninstalledInheritances(List<ReflectiveInheritance> inheritances)
Add this Inheritance and all un-installed super-Inheritances to inheritances, returning true if this
inheritance was already installed.
|
AbstractInheritance.FragmentIterable |
getAllProperSuperFragments()
Return a depth ordered, OclAny-first, OclSelf-last, Iterable of all the super-adapters excluding this one.
|
AbstractInheritance.FragmentIterable |
getAllSuperFragments()
Return a depth ordered, OclAny-first, OclSelf-last, Iterable of all the super-adapters including this one.
|
int |
getDepth()
Return the inheritance depth of the target type: OclAny is at depth 0.
|
InheritanceFragment |
getFragment(int fragmentNumber) |
Iterable<InheritanceFragment> |
getFragments() |
int |
getIndex(int fragmentNumber) |
int |
getIndexes() |
InheritanceFragment |
getSelfFragment() |
AbstractInheritance.FragmentIterable |
getSuperFragments(int depth)
Return an Iterable of all the super-inheritances at a specified depth, between 0 and getDepth() inclusive.
|
boolean |
install()
Install this Inheritance establishing its superClass tables and registering
it to be notified of any changes.
|
boolean |
isInstallable()
Return true if this is installed or able to be installed.
|
boolean |
isInstalled()
Return true if this is installed.
|
void |
removeSubInheritance(ReflectiveInheritance subInheritance) |
void |
uninstall() |
getBehavioralClass, getExtenders, getInheritance, getInstanceClassName, getMetaTypeName, getOwnedBehaviors, getOwnedBindings, getOwnedConstraints, getOwnedInvariants, getOwnedOperations, getOwnedProperties, getOwnedSignature, getOwningPackage, getSuperClasses, getTypeParameters, getUnspecializedElement, isIsAbstract, isIsActive, isIsInterface, isIsSerializable, isOrdered, isUnique, setBehavioralClass, setInstanceClassName, setIsAbstract, setIsActive, setIsInterface, setIsSerializable, setOwnedSignature, setOwningPackage, setUnspecializedElement, validateNameIsNotNull, validateUniqueInvariantName
conformsTo, flattenedType, getCommonType, getMemberOperation, getMemberProperty, getNormalizedType, getPivotClass, getTypeId, isClass, isEqualTo, isEqualToUnspecializedType, isTemplateParameter, oclEquals, oclHashCode, specializeIn
getCommonInheritance, getFragment, getType, initStatics, isInvalid, isOclAny, isSubInheritanceOf, isSuperInheritanceOf, isUndefined, lookupActualOperation, lookupImplementation, lookupLocalOperation
getName, setName
accept, allOwnedElements, eAdapters, eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eDeliver, eGet, eGet, eInvoke, eIsProxy, eIsSet, eNotify, eResource, eSet, eSetDeliver, eUnset, getAnnotatingComments, getESObject, getETarget, getOwnedAnnotations, getOwnedComments, getOwnedExtensions, getValue
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
lookupActualOperation, lookupImplementation
conformsTo, flattenedType, getCommonType, getNormalizedType, getTypeId, isClass, isEqualTo, isEqualToUnspecializedType, isTemplateParameter, specializeIn
oclEquals, oclHashCode
getName, setName
accept, allOwnedElements, getAnnotatingComments, getESObject, getETarget, getOwnedAnnotations, getOwnedComments, getOwnedExtensions, getValue
public ReflectiveInheritance(String name, int flags, ExecutorTypeParameter... typeParameters)
public void addSubInheritance(ReflectiveInheritance subInheritance)
public EObject createInstance()
Class
Property.initValue(Object, Object)
provided no side-effect free
OCL functionality is permitted to use the ObjectValue until initialisation has completed.createInstance
in interface Class
createInstance
in class AbstractExecutorClass
public Object createInstance(String value)
Class
createInstance
in interface Class
createInstance
in class AbstractExecutorClass
value
- string initial valuepublic boolean gatherUninstalledInheritances(List<ReflectiveInheritance> inheritances)
public final AbstractInheritance.FragmentIterable getAllProperSuperFragments()
CompleteInheritance
getAllProperSuperFragments
in interface CompleteInheritance
getAllProperSuperFragments
in class AbstractExecutorType
public final AbstractInheritance.FragmentIterable getAllSuperFragments()
CompleteInheritance
getAllSuperFragments
in interface CompleteInheritance
getAllSuperFragments
in class AbstractExecutorType
public final int getDepth()
CompleteInheritance
getDepth
in interface CompleteInheritance
getDepth
in class AbstractExecutorType
public InheritanceFragment getFragment(int fragmentNumber)
getFragment
in interface CompleteInheritance
getFragment
in class AbstractExecutorType
public Iterable<InheritanceFragment> getFragments()
getFragments
in interface CompleteInheritance
getFragments
in class AbstractExecutorType
public int getIndex(int fragmentNumber)
getIndex
in interface CompleteInheritance
getIndex
in class AbstractExecutorType
public int getIndexes()
getIndexes
in interface CompleteInheritance
getIndexes
in class AbstractExecutorType
public InheritanceFragment getSelfFragment()
getSelfFragment
in interface CompleteInheritance
getSelfFragment
in class AbstractExecutorType
public final AbstractInheritance.FragmentIterable getSuperFragments(int depth)
CompleteInheritance
getSuperFragments
in interface CompleteInheritance
getSuperFragments
in class AbstractExecutorType
public boolean install()
public boolean isInstallable()
public boolean isInstalled()
public void removeSubInheritance(ReflectiveInheritance subInheritance)
public void uninstall()
Copyright © 2005, 2018 IBM Corporation and others. All Rights Reserved.