public final class LocalNameTest extends NodeTest implements QNameTest
ItemType.WithSequenceTypeCache| Constructor and Description |
|---|
LocalNameTest(NamePool pool,
int nodeKind,
java.lang.String localName) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
equals(java.lang.Object other)
Indicates whether some other object is "equal to" this one.
|
java.util.Optional<java.lang.String> |
explainMismatch(Item item,
TypeHierarchy th)
Get extra diagnostic information about why a supplied item does not conform to this
item type, if available.
|
java.lang.String |
generateJavaScriptItemTypeTest(ItemType knownToBe,
int targetVersion)
Generate Javascript code to test whether an item conforms to this item type
|
java.lang.String |
generateJavaScriptNameTest(int targetVersion)
Generate Javascript code to test if a name matches the test.
|
double |
getDefaultPriority()
Determine the default priority of this node test when used on its own as a Pattern
|
java.lang.String |
getLocalName()
Get the local name used in this LocalNameTest
|
java.util.function.IntPredicate |
getMatcher(NodeVectorTree tree)
Get a matching function that can be used to test whether numbered nodes in a TinyTree
or DominoTree satisfy the node test.
|
NamePool |
getNamePool() |
int |
getNodeKind()
Get the node kind matched by this test
|
int |
getPrimitiveType()
Determine the types of nodes to which this pattern applies.
|
java.util.Optional<IntSet> |
getRequiredNodeNames()
Get the set of node names allowed by this NodeTest.
|
UType |
getUType()
Get the corresponding
UType. |
int |
hashCode()
Returns a hash code value for the object.
|
boolean |
matches(int nodeKind,
NodeName name,
SchemaType annotation)
Test whether this node test is satisfied by a given node.
|
boolean |
matches(StructuredQName qname)
Test whether this QNameTest matches a given QName
|
boolean |
matchesNode(NodeInfo node)
Test whether this node test is satisfied by a given node.
|
java.lang.String |
toString() |
copy, generateJavaScriptItemTypeAcceptor, getAlphaCode, getAtomizedItemType, getContentType, getFingerprint, getGenre, getMatchingNodeName, getPrimitiveItemType, isAtomicType, isAtomizable, isNillable, isPlainType, matches, one, oneOrMore, toShortString, zeroOrMore, zeroOrOneclone, finalize, getClass, notify, notifyAll, wait, wait, waitisTrueItemType, toExportStringpublic LocalNameTest(NamePool pool, int nodeKind, java.lang.String localName)
public int getNodeKind()
public UType getUType()
UType. A UType is a union of primitive item
types.public java.util.Optional<IntSet> getRequiredNodeNames()
getRequiredNodeNames in class NodeTestpublic boolean matches(int nodeKind,
NodeName name,
SchemaType annotation)
matches in class NodeTestnodeKind - The kind of node to be matchedname - identifies the expanded name of the node to be matched.
The value should be null for a node with no name.annotation - The actual content type of the nodepublic java.util.function.IntPredicate getMatcher(NodeVectorTree tree)
NodeTestmatchesNode(tree.getNode(nodeNr)), but it may well be faster).getMatcher in class NodeTesttree - the tree against which the returned function will operatepublic boolean matchesNode(NodeInfo node)
matchesNode in class NodeTestnode - the node to be matchedpublic boolean matches(StructuredQName qname)
public final double getDefaultPriority()
getDefaultPriority in class NodeTestpublic java.lang.String getLocalName()
public int getPrimitiveType()
getPrimitiveType in interface ItemTypegetPrimitiveType in class NodeTestpublic java.lang.String toString()
public int hashCode()
hashCode in class java.lang.Objectpublic boolean equals(java.lang.Object other)
equals in class java.lang.Objectpublic NamePool getNamePool()
public java.lang.String generateJavaScriptNameTest(int targetVersion)
generateJavaScriptNameTest in interface QNameTesttargetVersion - the version of Saxon-JS being targetedpublic java.lang.String generateJavaScriptItemTypeTest(ItemType knownToBe, int targetVersion)
generateJavaScriptItemTypeTest in interface ItemTypeknownToBe - An item type that the supplied item is known to conform to; the generated code
can assume that the item is an instance of this type.targetVersion - The version of Saxon-JS for which code is being generated. Currently either 1 or 2.public java.util.Optional<java.lang.String> explainMismatch(Item item, TypeHierarchy th)
explainMismatch in interface ItemTypeexplainMismatch in class NodeTestitem - the item that doesn't match this typeth - the type hierarchy cacheCopyright (c) 2004-2020 Saxonica Limited. All rights reserved.