Class TypeImpl

  • All Implemented Interfaces:
    java.lang.Comparable<TypeImpl>, Type
    Direct Known Subclasses:
    StringTypeImpl

    public class TypeImpl
    extends java.lang.Object
    implements Type, java.lang.Comparable<TypeImpl>
    The implementation of types in the type system.
    Version:
    $Revision: 1.3 $
    • Method Detail

      • getName

        public java.lang.String getName()
        Get the name of the type.
        Specified by:
        getName in interface Type
        Returns:
        The name of the type.
      • getSuperType

        public Type getSuperType()
        Get the super type.
        Returns:
        The super type or null for Top.
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • getAppropriateFeatures

        @Deprecated
        public java.util.Vector<Feature> getAppropriateFeatures()
        Deprecated.
        Get a vector of the features for which this type is the domain. Features will be returned in no particular order.
        Specified by:
        getAppropriateFeatures in interface Type
        Returns:
        The vector.
      • getNumberOfFeatures

        public int getNumberOfFeatures()
        Get the number of features for which this type defines the range.
        Specified by:
        getNumberOfFeatures in interface Type
        Returns:
        The number of features.
      • isAnnotationType

        public boolean isAnnotationType()
        Check if this is an annotation type.
        Returns:
        true, if this is an annotation type; false, else.
      • getTypeSystem

        public TypeSystem getTypeSystem()
        Get the type hierarchy that this type belongs to.
        Returns:
        The type hierarchy.
      • getCode

        public int getCode()
        Return the internal integer code for this type. This is only useful if you want to work with the low-level API.
        Returns:
        The internal code for this type, >=0.
      • compareTo

        public int compareTo​(TypeImpl t)
        Note: you can only compare types from the same type system. If you compare types from different type systems, the result is undefined.
        Specified by:
        compareTo in interface java.lang.Comparable<TypeImpl>
      • getFeatureByBaseName

        public Feature getFeatureByBaseName​(java.lang.String featureName)
        Description copied from interface: Type
        Retrieve a feature for this type. Inherited features can also be retrieved this way.
        Specified by:
        getFeatureByBaseName in interface Type
        Parameters:
        featureName - The short, unqualified name of the feature.
        Returns:
        The feature, if it exists; null, else.
        See Also:
        Type.getFeatureByBaseName(String)
      • isPrimitive

        public boolean isPrimitive()
        Description copied from interface: Type
        Check if the type is one of the primitive types.
        Specified by:
        isPrimitive in interface Type
        Returns:
        true iff type is a primitive type.
        See Also:
        Type.isPrimitive()
      • isFeatureFinal

        public boolean isFeatureFinal()
        Description copied from interface: Type
        Check if type is feature final, i.e., if no more new features may be defined for it.
        Specified by:
        isFeatureFinal in interface Type
        Returns:
        If type is feature final.
        See Also:
        Type.isFeatureFinal()
      • isInheritanceFinal

        public boolean isInheritanceFinal()
        Description copied from interface: Type
        Check if type is inheritance final, i.e., if new types can be derived from it.
        Specified by:
        isInheritanceFinal in interface Type
        Returns:
        If type is inheritance final.
        See Also:
        Type.isInheritanceFinal()
      • getFeature

        @Deprecated
        public Feature getFeature​(java.lang.String featureName)
        Deprecated.
        Parameters:
        featureName - -
        Returns:
        -
      • getFeatures

        public java.util.List<Feature> getFeatures()
        guaranteed to be non-null, but might be empty list
        Specified by:
        getFeatures in interface Type
        Returns:
        -
      • isArray

        public boolean isArray()
        Description copied from interface: Type
        Check if the type is an array type.
        Specified by:
        isArray in interface Type
        Returns:
        true iff the type is an array type.
      • getComponentType

        public Type getComponentType()
        Description copied from interface: Type
        For array types, returns the component type of the array type. For all other types, it will return null.
        Specified by:
        getComponentType in interface Type
        Returns:
        The component type of an array type.