public class ConstrainedTypeImplementation extends AbstractTypeImplementation_V0105
Constructor and Description |
---|
ConstrainedTypeImplementation(NameIdentifier typeName,
AbstractTypeImplementation_V0105 superTypeImplementation)
Creates the ConstrainedTypeImplementation
|
Modifier and Type | Method and Description |
---|---|
PossRepImplementation |
getDefaultPossrepImplementation()
Gets the possrep implementation that is to be considered the default for the type.
|
int |
getEncodingLength()
Gets the fixed encoding length, if the type employs fixed-length encoding, i.e.
|
OperatorImplementation_V0104 |
getEqualityOperatorImplementation()
Gets the implementation object for the equality operator pertaining to this type.
|
OperatorImplementation_V0104 |
getOrderingOperatorImplementation()
Gets the implementation object for the ordering operator (GT) pertaining to this type.
|
PossRepImplementation |
getPossrepImplementation(java.lang.String componentName)
Gets the PossrepImplementation object implementing the possrep of which the given component name names a component.
|
MyReadOnlySet<PossRepImplementation> |
getPossrepImplementations()
Gets the set of all PossRepImplementations for this type.
|
java.lang.String |
getRootTypeName()
Gets the name of the 'root' type that this type ultimately derives from (through specialization by constraint).
|
AbstractTypeImplementation_V0105 |
getSuperTypeImplementation()
Gets superTypeImplementation
|
boolean |
hasVariableLengthEncoding()
Determines whether the number of bytes used in the physical encoding is the same for any possible value of the type.
|
boolean |
isOfType(AbstractTypeImplementation_V0105 type)
Checks whether this type is either the given type itself, or is a constrainedtype whose [ultimate] base type is the given type
|
void |
readExternal(java.io.ObjectInput in) |
void |
writeExternal(java.io.ObjectOutput out) |
getCommonScalarSuperTypeImplementation, getOrdinalOperatorImplementations, getTypeName, getTypeNameIdentifier, valueFromEscapedExternalRepresentation, valueFromEscapedExternalRepresentation, valueFromEscapedExternalRepresentationWithoutException
public ConstrainedTypeImplementation(NameIdentifier typeName, AbstractTypeImplementation_V0105 superTypeImplementation)
typeName
- the name of this constrained typesuperTypeImplementation
- the implementation object for the supertypepublic final AbstractTypeImplementation_V0105 getSuperTypeImplementation()
public PossRepImplementation getDefaultPossrepImplementation()
AbstractTypeImplementation_V0105
getDefaultPossrepImplementation
in class AbstractTypeImplementation_V0105
public final int getEncodingLength()
AbstractTypeImplementation_V0105
hasVariableLengthEncoding()
method returns 'false'. Types that employ variable-length encodings are required to return a negative value.getEncodingLength
in class AbstractTypeImplementation_V0105
hasVariableLengthEncoding()
method returns 'false'. Types that employ variable-length encodings are required to return a negative value.public final OperatorImplementation_V0104 getEqualityOperatorImplementation()
AbstractTypeImplementation_V0105
getEqualityOperatorImplementation
in class AbstractTypeImplementation_V0105
public final OperatorImplementation_V0104 getOrderingOperatorImplementation() throws TypeIsNotOrderedException
AbstractTypeImplementation_V0105
getOrderingOperatorImplementation
in class AbstractTypeImplementation_V0105
TypeIsNotOrderedException
- If the type is not orderedpublic PossRepImplementation getPossrepImplementation(java.lang.String componentName) throws NotFoundException
AbstractTypeImplementation_V0105
getPossrepImplementation
in class AbstractTypeImplementation_V0105
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 MyReadOnlySet<PossRepImplementation> getPossrepImplementations()
AbstractTypeImplementation_V0105
getPossrepImplementations
in class AbstractTypeImplementation_V0105
public final java.lang.String getRootTypeName()
AbstractTypeImplementation_V0105
getRootTypeName
in class AbstractTypeImplementation_V0105
public final boolean hasVariableLengthEncoding()
AbstractTypeImplementation_V0105
hasVariableLengthEncoding
in class AbstractTypeImplementation_V0105
public final boolean isOfType(AbstractTypeImplementation_V0105 type)
AbstractTypeImplementation_V0105
isOfType
in class AbstractTypeImplementation_V0105
type
- The type for which it is to be tested whether this type is a "subtype" of itpublic void readExternal(java.io.ObjectInput in) throws java.io.IOException
java.io.IOException
public void writeExternal(java.io.ObjectOutput out) throws java.io.IOException
java.io.IOException