## net.sf.saxon.pattern
Class NodeKindTest

    java.lang.Object
      net.sf.saxon.pattern.NodeTest
          net.sf.saxon.pattern.NodeKindTest

All Implemented Interfaces:
  ItemType, java.io.Serializable

public class NodeKindTest
extends NodeTest

NodeTest is an interface that enables a test of whether a node has a particular name and kind. A NodeKindTest matches the node kind only.

See Also:
  Serialized Form

Field Summary
`static NodeKindTest` `ATTRIBUTE`
`static NodeKindTest` `COMMENT`
`static NodeKindTest` `DOCUMENT`
`static NodeKindTest` `ELEMENT`
`static NodeKindTest` `NAMESPACE`
`static NodeKindTest` `PROCESSING_INSTRUCTION`
`static NodeKindTest` `TEXT`

Method Summary
`double` `getDefaultPriority()` Determine the default priority of this node test when used on its own as a Pattern
`int` `getNodeKindMask()` Get a mask indicating which kinds of nodes this NodeTest can match.
`int` `getPrimitiveType()` Determine the types of nodes to which this pattern applies.
`int` `hashCode()` Returns a hash code value for the object.
`static NodeTest` `makeNodeKindTest(int kind)` Make a test for a given kind of node
`boolean` `matches(int nodeKind, int fingerprint, int annotation)` Test whether this node test is satisfied by a given node
`boolean` `matches(NodeInfo node)` Test whether this node test is satisfied by a given node.
`java.lang.String` `toString()`
`static java.lang.String` `toString(int kind)`

Methods inherited from class net.sf.saxon.pattern.NodeTest
`getAtomizedItemType, getContentType, getFingerprint, getPrimitiveItemType, getRequiredNodeNames, getSuperType, matchesItem, toString`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, notify, notifyAll, wait, wait, wait`

Field Detail

### DOCUMENT

    public static final NodeKindTest DOCUMENT

### ELEMENT

    public static final NodeKindTest ELEMENT

### ATTRIBUTE

    public static final NodeKindTest ATTRIBUTE

### TEXT

    public static final NodeKindTest TEXT

### COMMENT

    public static final NodeKindTest COMMENT

### PROCESSING_INSTRUCTION

    public static final NodeKindTest PROCESSING_INSTRUCTION

### NAMESPACE

    public static final NodeKindTest NAMESPACE

Method Detail

### makeNodeKindTest

    public static NodeTest makeNodeKindTest(int kind)

  Make a test for a given kind of node

### matches

    public boolean matches(int nodeKind,
                           int fingerprint,
                           int annotation)

  Test whether this node test is satisfied by a given node

  Specified by:
    `matches` in class `NodeTest`
  Parameters:
    `nodeKind` - The type of node to be matched
    `fingerprint` - identifies the expanded name of the node to be matched
    `annotation` - The actual content type of the node

### matches

    public boolean matches(NodeInfo node)

  Test whether this node test is satisfied by a given node. This alternative method is used in the case of nodes where calculating the fingerprint is expensive, for example DOM or JDOM nodes.

  Specified by:
    `matches` in class `NodeTest`
  Parameters:
    `node` - the node to be matched

### getDefaultPriority

    public final double getDefaultPriority()

  Determine the default priority of this node test when used on its own as a Pattern

  Specified by:
    `getDefaultPriority` in class `NodeTest`

### getPrimitiveType

    public int getPrimitiveType()

  Determine the types of nodes to which this pattern applies. Used for optimisation.

  Specified by:
    `getPrimitiveType` in interface `ItemType`
  Overrides:
    `getPrimitiveType` in class `NodeTest`
  Returns:
    the type of node matched by this pattern. e.g. Type.ELEMENT or Type.TEXT

### getNodeKindMask

    public int getNodeKindMask()

  Get a mask indicating which kinds of nodes this NodeTest can match. This is a combination of bits: 1<<Type.ELEMENT for element nodes, 1<<Type.TEXT for text nodes, and so on.

  Specified by:
    `getNodeKindMask` in class `NodeTest`

### toString

    public java.lang.String toString()

### toString

    public static java.lang.String toString(int kind)

### hashCode

    public int hashCode()

  Returns a hash code value for the object.