public class CombinedNodeTest extends NodeTest
Constructor and Description |
---|
CombinedNodeTest(NodeTest nt1,
int operator,
NodeTest nt2)
Create a NodeTest that combines two other node tests
|
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object other)
Indicates whether some other object is "equal to" this one.
|
void |
export(ExpressionPresenter presenter) |
AtomicType |
getAtomizedItemType()
Get the item type of the atomic values that will be produced when an item
of this type is atomized (assuming that atomization succeeds)
|
NodeTest[] |
getComponentNodeTests()
Get the two parts of the combined node test
|
SchemaType |
getContentType()
Get the content type allowed by this NodeTest (that is, the type annotation of the matched nodes).
|
double |
getDefaultPriority()
Get the default priority of this nodeTest when used as a pattern.
|
int |
getFingerprint()
Get the name of the nodes matched by this nodetest, if it matches a specific name.
|
StructuredQName |
getMatchingNodeName()
Get the name of the nodes matched by this nodetest, if it matches a specific name.
|
int |
getNodeKindMask()
Get a mask indicating which kinds of nodes this NodeTest can match.
|
int |
getOperator()
Get the operator used to combine the two node tests: one of
Token.UNION ,
Token.INTERSECT , Token.EXCEPT , |
int |
getPrimitiveType()
Get the basic kind of object that this ItemType matches: for a NodeTest, this is the kind of node,
or Type.Node if it matches different kinds of nodes.
|
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 |
isAtomizable()
Ask whether values of this type are atomizable
|
boolean |
isNillable()
Determine whether the content type (if present) is nillable
|
boolean |
matches(int nodeKind,
NodeName name,
SchemaType annotation)
Test whether this node test is satisfied by a given node.
|
boolean |
matches(TinyTree tree,
int nodeNr)
Test whether this node test is satisfied by a given node on a TinyTree.
|
boolean |
matchesNode(NodeInfo node)
Test whether this node test is satisfied by a given node.
|
String |
toString() |
void |
visitNamedSchemaComponents(SchemaComponentVisitor visitor)
Visit all the schema components used in this ItemType definition
|
copy, getPrimitiveItemType, isAtomicType, isPlainType, matches
public CombinedNodeTest(NodeTest nt1, int operator, NodeTest nt2)
nt1
- the first operand. Note that if the defaultPriority of the pattern
is required, it will be taken from that of the first operand.operator
- one of Token.UNION, Token.INTERSECT, Token.EXCEPTnt2
- the second operandpublic UType getUType()
UType
. A UType is a union of primitive item
types.public boolean matches(int nodeKind, NodeName name, SchemaType annotation)
matches
in class NodeTest
nodeKind
- 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 boolean matches(TinyTree tree, int nodeNr)
public boolean matchesNode(NodeInfo node)
matchesNode
in class NodeTest
node
- the node to be matchedpublic int getNodeKindMask()
getNodeKindMask
in class NodeTest
public int getPrimitiveType()
getPrimitiveType
in interface ItemType
getPrimitiveType
in class NodeTest
public IntSet getRequiredNodeNames()
getRequiredNodeNames
in class NodeTest
public SchemaType getContentType()
getContentType
in class NodeTest
public AtomicType getAtomizedItemType()
getAtomizedItemType
in interface ItemType
getAtomizedItemType
in class NodeTest
public boolean isAtomizable()
isAtomizable
in interface ItemType
isAtomizable
in class NodeTest
public int getFingerprint()
getFingerprint
in class NodeTest
public StructuredQName getMatchingNodeName()
NodeTest
getMatchingNodeName
in class NodeTest
public boolean isNillable()
isNillable
in class NodeTest
public int hashCode()
public boolean equals(Object other)
public double getDefaultPriority()
getDefaultPriority
in class NodeTest
public NodeTest[] getComponentNodeTests()
public int getOperator()
Token.UNION
,
Token.INTERSECT
, Token.EXCEPT
,public void visitNamedSchemaComponents(SchemaComponentVisitor visitor) throws XPathException
visitNamedSchemaComponents
in interface ItemType
visitNamedSchemaComponents
in class NodeTest
visitor
- the visitor class to be called when each component is visitedXPathException
- if an error occurspublic void export(ExpressionPresenter presenter)
Copyright (c) 2004-2014 Saxonica Limited. All rights reserved.