public abstract class AbstractTypeImplementation_V0105
extends java.lang.Object
implements java.io.Externalizable
Constructor and Description |
---|
AbstractTypeImplementation_V0105()
Deprecated.
- This constructor is publicly available only for reasons to do with the Externalizable machinery. The preferred way of instantiating the class is through the
one-arg constructor |
AbstractTypeImplementation_V0105(NameIdentifier typeName)
Creates the AbstractTypeImplementation_V0105
|
AbstractTypeImplementation_V0105(java.lang.String typeName)
Creates the AbstractTypeImplementation_V0105
|
Modifier and Type | Method and Description |
---|---|
static AbstractTypeImplementation_V0105 |
getCommonScalarSuperTypeImplementation(ConstrainedTypeImplementation typeImplementation1,
AbstractTypeImplementation_V0105 typeImplementation2)
Gets the implementation object that implements the most specific supertype of the types of which the given implementation objects are the type implementation.
|
abstract PossRepImplementation |
getDefaultPossrepImplementation()
Gets the possrep implementation that is to be considered the default for the type.
|
abstract int |
getEncodingLength()
Gets the fixed encoding length, if the type employs fixed-length encoding, i.e.
|
abstract OperatorImplementation_V0104 |
getEqualityOperatorImplementation()
Gets the implementation object for the equality operator pertaining to this type.
|
abstract OperatorImplementation_V0104 |
getOrderingOperatorImplementation()
Gets the implementation object for the ordering operator (GT) pertaining to this type.
|
OrdinalOperatorImplementations |
getOrdinalOperatorImplementations()
Gets an object holding the four ordinal operator implementations defined for the type : FIRSTxxx(), PRIOR(xxx), NEXT(xxx), and LASTxxx()
|
abstract PossRepImplementation |
getPossrepImplementation(java.lang.String componentName)
Gets the PossrepImplementation object implementing the possrep of which the given component name names a component.
|
abstract MyReadOnlySet<PossRepImplementation> |
getPossrepImplementations()
Gets the set of all PossRepImplementations for this type.
|
abstract java.lang.String |
getRootTypeName()
Gets the name of the 'root' type that this type ultimately derives from (through specialization by constraint).
|
java.lang.String |
getTypeName()
Gets the type name (= invocation name for the value selector operator of this type)
|
NameIdentifier |
getTypeNameIdentifier()
Gets the type name (= invocation name for the value selector operator of this type)
|
abstract boolean |
hasVariableLengthEncoding()
Determines whether the number of bytes used in the physical encoding is the same for any possible value of the type.
|
abstract boolean |
isOfType(AbstractTypeImplementation_V0105 type)
Deprecated.
- replace with TypeDeclaration.matchesExpectedTypeDeclaration. This method cannot properly handle subtype relationships between nonscalar types
|
static ValueBuffer |
valueFromEscapedExternalRepresentation(AbstractTypeImplementation_V0105 typeImplementation,
java.lang.String valueText,
Heading nonScalarHeading)
Utility method to obtain a value from an external representation of that value, given a type implementation, a Heading further defining the type if the type is nonscalar, and the external representation of the value.
|
ValueBuffer |
valueFromEscapedExternalRepresentation(java.lang.String valueText,
Heading nonScalarHeading)
Gets the Value obejct holding the value of which s is the external representation
|
ValueBuffer |
valueFromEscapedExternalRepresentationWithoutException(java.lang.String valueText,
Heading nonScalarHeading)
Gets the Value object holding the value of which s is the external representation
|
@Deprecated public AbstractTypeImplementation_V0105()
one-arg constructor
public AbstractTypeImplementation_V0105(NameIdentifier typeName)
typeName
- The name of the type being implementedpublic AbstractTypeImplementation_V0105(java.lang.String typeName)
typeName
- The name of the type being implementedpublic static AbstractTypeImplementation_V0105 getCommonScalarSuperTypeImplementation(ConstrainedTypeImplementation typeImplementation1, AbstractTypeImplementation_V0105 typeImplementation2) throws NotFoundException
typeImplementation1
- The ConstrainedTypeImplementation for which a common supertype with the other type is to be searched.typeImplementation2
- The other type, the most specific common supertype with typeimplementation1 is to be searched.NotFoundException
- If no common scalar supertype exists.public static ValueBuffer valueFromEscapedExternalRepresentation(AbstractTypeImplementation_V0105 typeImplementation, java.lang.String valueText, Heading nonScalarHeading) throws InvalidValueException
typeImplementation
- The implementation of the type, some value of which the valueText argument is an external representation forvalueText
- The external representation to be parsednonScalarHeading
- The Heading further defining the type is the type is nonscalarInvalidValueException
- If valueText is not a valid external representation for any value of the given typepublic abstract PossRepImplementation getDefaultPossrepImplementation()
public abstract int getEncodingLength()
hasVariableLengthEncoding()
method returns 'false'. Types that employ variable-length encodings are required to return a negative value.hasVariableLengthEncoding()
method returns 'false'. Types that employ variable-length encodings are required to return a negative value.public abstract OperatorImplementation_V0104 getEqualityOperatorImplementation()
public abstract OperatorImplementation_V0104 getOrderingOperatorImplementation() throws TypeIsNotOrderedException
TypeIsNotOrderedException
- If the type is not orderedpublic final OrdinalOperatorImplementations getOrdinalOperatorImplementations() throws TypeIsNotOrdinalException
OperatorImplementationsManager
.TypeIsNotOrdinalException
- if the type is not ordinal (i.e. if not all four operators previously mentioned have been definedpublic abstract PossRepImplementation getPossrepImplementation(java.lang.String componentName) throws NotFoundException
componentName
- The name of a component of some possrep of this type (and for which the corresponding PossrepImplementation object is to be returned)NotFoundException
- If the type does not have any possrep with a component of the given namepublic abstract MyReadOnlySet<PossRepImplementation> getPossrepImplementations()
public abstract java.lang.String getRootTypeName()
public final java.lang.String getTypeName()
public final NameIdentifier getTypeNameIdentifier()
public abstract boolean hasVariableLengthEncoding()
@Deprecated public abstract boolean isOfType(AbstractTypeImplementation_V0105 type)
type
- The type for which it is to be tested whether this type is a "subtype" of itpublic final ValueBuffer valueFromEscapedExternalRepresentation(java.lang.String valueText, Heading nonScalarHeading) throws InvalidValueException
valueText
- The external representation to be parsednonScalarHeading
- The Heading further defining the type is the type is nonscalarInvalidValueException
- If valueText is not a valid external representation for any value of the given typepublic final ValueBuffer valueFromEscapedExternalRepresentationWithoutException(java.lang.String valueText, Heading nonScalarHeading)
valueText
- The external representation to be parsednonScalarHeading
- The Heading further defining the type is the type is nonscalarjava.lang.IllegalArgumentException
- If valueText is not a valid external representation for any value of the given type