public interface ITypeSystem
AbstractTypeSystem instead.| Modifier and Type | Method and Description |
|---|---|
java.util.Set<IInputKey> |
addTypeInformation(java.util.Set<IInputKey> types,
IInputKey newType)
Adds a new type descriptor to a collection of type descriptors, and minimizes it.
|
java.util.Set<IInputKey> |
addTypeInformation(java.util.Set<IInputKey> types,
java.util.Set<IInputKey> newTypes) |
default Type |
convertToVQLType(org.eclipse.emf.ecore.EObject context,
IInputKey key)
Returns a new Type instance that represents the same type as the parameter input key.
|
Type |
convertToVQLType(org.eclipse.emf.ecore.EObject context,
IInputKey key,
boolean avoidDataType)
Returns a new Type instance that represents the same type as the parameter input key.
|
IInputKey |
extractColumnDescriptor(RelationType type,
int columnIndex)
Extracts the model-specific column type of the given index from a RelationType declaration
|
IInputKey |
extractTypeDescriptor(Type type)
Extracts the model-specific types from a Type declaration.
|
java.util.Set<IInputKey> |
getCompatibleSupertypes(java.util.Set<IInputKey> types)
Returns a set of types that is a common supertype of a set of type parameters
|
boolean |
isConformant(IInputKey expectedType,
IInputKey actualType)
Decides whether the second type is compatible with the first one
|
boolean |
isConformToRelationColumn(IInputKey relationType,
int columnIndex,
IInputKey columnType)
Decides whether the reference can have a selected type at its given column.
|
boolean |
isValidType(Type type)
Returns whether the type declaration represents a valid, resolvable type for the selected type system.
|
java.util.Set<IInputKey> |
minimizeTypeInformation(java.util.Set<IInputKey> types,
boolean mergeWithSupertypes)
Reduces the type descriptor set by providing the most specific set of type descriptors inferrable for a selected
types.
|
org.eclipse.xtext.common.types.JvmTypeReference |
toJvmTypeReference(IInputKey type,
org.eclipse.emf.ecore.EObject context)
Creates a type reference for model inference from a selected type.
|
java.lang.String |
typeString(IInputKey type)
Converts a type object to a user-visible description string.
|
boolean isConformant(IInputKey expectedType, IInputKey actualType)
boolean isConformToRelationColumn(IInputKey relationType, int columnIndex, IInputKey columnType)
IInputKey extractTypeDescriptor(Type type)
type - either the Type or the RelationType instancedefault Type convertToVQLType(org.eclipse.emf.ecore.EObject context, IInputKey key)
IllegalArgumentException will be thrown.Type convertToVQLType(org.eclipse.emf.ecore.EObject context, IInputKey key, boolean avoidDataType)
IllegalArgumentException will be thrown.avoidDataType - If set to true, data type are returned as Java typesIInputKey extractColumnDescriptor(RelationType type, int columnIndex)
type - java.util.Set<IInputKey> minimizeTypeInformation(java.util.Set<IInputKey> types, boolean mergeWithSupertypes)
types - a collection of type definitionsmergeWithSupertypes - if true, the collection is also minimized by calculating common supertypesjava.util.Set<IInputKey> addTypeInformation(java.util.Set<IInputKey> types, IInputKey newType)
#minimizeTypeInformation(Set) with types.add(newType), but might have a more
efficient impementation.types - newType - java.util.Set<IInputKey> addTypeInformation(java.util.Set<IInputKey> types, java.util.Set<IInputKey> newTypes)
org.eclipse.xtext.common.types.JvmTypeReference toJvmTypeReference(IInputKey type, org.eclipse.emf.ecore.EObject context)
java.lang.String typeString(IInputKey type)
type - either a Type, or a model-specific type instancejava.util.Set<IInputKey> getCompatibleSupertypes(java.util.Set<IInputKey> types)
boolean isValidType(Type type)