## net.sf.saxon.pattern
Class LocalNameTest

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

All Implemented Interfaces:
  Serializable, QNameTest, ItemType

    public final class LocalNameTest

extends NodeTest
implements QNameTest

NodeTest is an interface that enables a test of whether a node has a particular name and type. A LocalNameTest matches the node type and the local name, it represents an XPath 2.0 test of the form *:name.

Author:
  Michael H. Kay
See Also:
  Serialized Form

Constructor Summary
`LocalNameTest(NamePool pool, int nodeKind, String localName)`

Method Summary
`boolean` `equals(Object other)` Indicates whether some other object is "equal to" this one.
`double` `getDefaultPriority()` Determine the default priority of this node test when used on its own as a Pattern
`String` `getLocalName()` Get the local name used in this LocalNameTest
`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.
`boolean` `matches(int nodeType, 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.
`boolean` `matches(StructuredQName qname)` Test whether this QNameTest matches a given QName
`boolean` `matches(TinyTree tree, int nodeNr)` Test whether this node test is satisfied by a given node on a TinyTree.
`String` `toString()`

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

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

Constructor Detail

### LocalNameTest

    public LocalNameTest(NamePool pool,
                         int nodeKind,
                         String localName)

Method Detail

### matches

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

  Test whether this node test is satisfied by a given node

  Specified by:
    `matches` in class `NodeTest`
  Parameters:
    `nodeType` - 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(TinyTree tree,
                           int nodeNr)

  Test whether this node test is satisfied by a given node on a TinyTree. The node must be a document, element, text, comment, or processing instruction node. This method is provided so that when navigating a TinyTree a node can be rejected without actually instantiating a NodeInfo object.

  Overrides:
    `matches` in class `NodeTest`
  Parameters:
    `tree` - the TinyTree containing the node
    `nodeNr` - the number of the node within the TinyTree
  Returns:
    true if the node matches the NodeTest, otherwise false

### 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.

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

### matches

    public boolean matches(StructuredQName qname)

  Test whether this QNameTest matches a given QName

  Specified by:
    `matches` in interface `QNameTest`
  Parameters:
    `qname` - the QName to be matched
  Returns:
    true if the name matches, false if not

### 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`

### getLocalName

    public String getLocalName()

  Get the local name used in this LocalNameTest

### getPrimitiveType

    public int getPrimitiveType()

  Determine the types of nodes to which this pattern applies. Used for optimisation. For patterns that match nodes of several types, return Type.NODE

  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.

  Overrides:
    `getNodeKindMask` in class `NodeTest`

### toString

    public String toString()

  Overrides:
    `toString` in class `Object`

### hashCode

    public int hashCode()

  Returns a hash code value for the object.

  Overrides:
    `hashCode` in class `Object`

### equals

    public boolean equals(Object other)

  Indicates whether some other object is "equal to" this one.

  Overrides:
    `equals` in class `Object`

Copyright (c) 2004-2010 Saxonica Limited. All rights reserved.