Package org.eclipse.ocl.examples.domain.ids

Interface Summary
BindingsId BindingsId provides a hashable list of elementIds suitable for use when indexing specializations.
BuiltInTypeId A BuiltInTypeId provides a unique identifier for a built-in' primitive type or collection such as Boolean or Set.
ClassId A ClassId provides a unique hierarchical identifier for a class which is nested by unique name in a parent package.
CollectionTypeId A CollectionTypeId provides a unique identifier for an unspecialized collection type such as Set(T).
DataTypeId A DataTypeId provides a unique hierarchical identifier for a datatype which is nested by unique name in a parent package.
ElementId An ElementId provides a unique hierarchical identifier for a metamodel element.
EnumerationId A EnumerationId provides a unique hierarchical for an enumeration which may have many 'actual' type variants.
EnumerationLiteralId A EnumerationLiteralId provides a unique hierarchical identifier for an enumeration literal.
IdVisitor<R> An IdVisitor supports visting an ElementId to react according to the derived Element type.
LambdaTypeId A LambdaTypeId provides a unique hierarchical identifier a Lambda function name and parameters.
MetaclassId A MetaclassId provides a unique identifier for an unspecialized metaclass type such as Metaclass(T).
NestedPackageId A NestedPackageId provides a unique hierarchical identifier for a package which is nested by unique name in a parent package.
NestedTypeId A NestedTypeId provides a unique hierarchical identifier for a type which is nested by unique name in a parent package.
NsURIPackageId An NsURIPackageId provides a unique hierarchical identifier for a package which has an nsURI.
OclInvalidTypeId OclInvalidTypeId provides a unique identifier for the invalid type; OclInvalid.
OclVoidTypeId OclVoidTypeId provides a unique identifier for the null type; OclVoid.
OperationId An OperationId provides a unique hierarchical identifier for an operation name, operation parameter-types and template parameters.
PackageId A PackageId provides a unique hierarchical identifier for a package.
ParametersId ParametersId provides a hashable list of operation parameter ids suitable for use when indexing operation overloads.
PrimitiveTypeId A PrimitiveTypeId provides a unique identifier for a primitive type such as Boolean.
PropertyId A PropertyId provides a unique hierarchical identifier for a property name.
RootPackageId A RootPackageId provides a possibly unique hierarchical identifier for an unnested package which has a name but no nsURI.
SpecializedId A SpecializedId defines a unique hierarchical specialization for a parameterized type which may have many 'actual' type variants.
TemplateableId A TypeId provides a unique hierarchical for type which may have many 'actual' type variants.
TemplateableTypeId A NestedTypeId provides a unique hierarchical identifier for a type which is nested by unique name in a parent package.
TemplateBinding  
TemplateParameterId A TemplateParameterId provides a unique identifier for a template parameter such as Set or product(...).
TuplePartId A TuplePartId provides a unique identifier for a TuplePart such as first:String.
TupleTypeId A TupleTypeid provides a unique hierarchical identifier a Tuple such as Tuple{first:String,second:Integer}.
TypeId A TypeId provides a unique hierarchical for type which may have many 'actual' type variants.
UnspecifiedId A UnspecifiedTypeId provides a unique identifier for an unspecified type such as a wildcard or under-specified type.
 

Class Summary
IdHash  
IdManager IdManager supervises the thread-safe allocation of unique hierarchical identifier to each metamodel element.