public class ArrayItemType extends AnyFunctionType
ItemType.WithSequenceTypeCache
Modifier and Type | Field and Description |
---|---|
static ArrayItemType |
ANY_ARRAY_TYPE |
ANY_FUNCTION
Constructor and Description |
---|
ArrayItemType(SequenceType memberType) |
Modifier and Type | Method and Description |
---|---|
boolean |
equals(java.lang.Object other)
Test whether this array type equals another array type
|
java.lang.String |
generateJavaScriptItemTypeTest(ItemType knownToBe,
int targetVersion)
Generate Javascript code to test whether an item conforms to this item type
|
SequenceType[] |
getArgumentTypes()
Get the argument types of this array, viewed as a function
|
int |
getArity()
Get the arity (number of arguments) of this function type
|
PlainType |
getAtomizedItemType()
Get the item type of the atomic values that will be produced when an item
of this type is atomized
|
SequenceType |
getMemberType()
Get the type of the members of the array
|
SequenceType |
getResultType()
Get the result type of this array, viewed as a function
|
int |
hashCode()
Returns a hash code value for the object.
|
boolean |
isArrayType()
Ask whether this function item type is an array type.
|
boolean |
isAtomizable()
Ask whether values of this type are atomizable
|
boolean |
isMapType()
Ask whether this function item type is a map type.
|
Expression |
makeFunctionSequenceCoercer(Expression exp,
RoleDiagnostic role)
Create an expression whose effect is to apply function coercion to coerce a function from this type to another type
|
boolean |
matches(Item item,
TypeHierarchy th)
Test whether a given item conforms to this type
|
int |
relationship(FunctionItemType other,
TypeHierarchy th)
Determine the relationship of one function item type to another
|
java.lang.String |
toString()
Produce a representation of this type name for use in error messages.
|
void |
visitNamedSchemaComponents(SchemaComponentVisitor visitor)
Visit all the schema components used in this ItemType definition
|
generateJavaScriptItemTypeAcceptor, getAnnotationAssertions, getInstance, getPrimitiveItemType, getPrimitiveType, getUType, isAtomicType, isPlainType, toExportString
public static final ArrayItemType ANY_ARRAY_TYPE
public ArrayItemType(SequenceType memberType)
public SequenceType getMemberType()
public boolean isMapType()
isMapType
in interface FunctionItemType
isMapType
in class AnyFunctionType
public boolean isArrayType()
isArrayType
in interface FunctionItemType
isArrayType
in class AnyFunctionType
public boolean isAtomizable()
isAtomizable
in interface ItemType
isAtomizable
in class AnyFunctionType
public PlainType getAtomizedItemType()
getAtomizedItemType
in interface ItemType
getAtomizedItemType
in class AnyFunctionType
public int getArity()
public SequenceType[] getArgumentTypes()
getArgumentTypes
in interface FunctionItemType
getArgumentTypes
in class AnyFunctionType
public boolean matches(Item item, TypeHierarchy th) throws XPathException
matches
in interface ItemType
matches
in class AnyFunctionType
item
- The item to be testedth
- XPathException
public SequenceType getResultType()
getResultType
in interface FunctionItemType
getResultType
in class AnyFunctionType
public java.lang.String toString()
toString
in interface ItemType
toString
in class AnyFunctionType
public boolean equals(java.lang.Object other)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object
public int relationship(FunctionItemType other, TypeHierarchy th)
relationship
in interface FunctionItemType
relationship
in class AnyFunctionType
TypeHierarchy.SUBSUMES
, TypeHierarchy.SAME_TYPE
public Expression makeFunctionSequenceCoercer(Expression exp, RoleDiagnostic role) throws XPathException
AnyFunctionType
makeFunctionSequenceCoercer
in interface FunctionItemType
makeFunctionSequenceCoercer
in class AnyFunctionType
exp
- the expression that delivers the supplied sequence of function items (the ones in need of coercion)role
- information for use in diagnosticsXPathException
public void visitNamedSchemaComponents(SchemaComponentVisitor visitor) throws XPathException
visitNamedSchemaComponents
in interface ItemType
visitNamedSchemaComponents
in class AnyFunctionType
visitor
- the visitor class to be called when each component is visitedXPathException
- if an error occurspublic java.lang.String generateJavaScriptItemTypeTest(ItemType knownToBe, int targetVersion) throws XPathException
generateJavaScriptItemTypeTest
in interface ItemType
generateJavaScriptItemTypeTest
in class AnyFunctionType
knownToBe
- a type that this item is known to conform totargetVersion
- XPathException
- if JS code cannot be generated for this item type, for example because
the test is schema-aware.Copyright (c) 2004-2018 Saxonica Limited. All rights reserved.