com.icl.saxon.tinytree
Class AttributeEnumeration

java.lang.Object
  extended by com.icl.saxon.tinytree.AttributeEnumeration
All Implemented Interfaces:
LastPositionFinder, AxisEnumeration, NodeEnumeration

final class AttributeEnumeration
extends Object
implements AxisEnumeration

AttributeEnumeration is an enumeration of all the attribute nodes of an Element.


Constructor Summary
protected AttributeEnumeration(TinyDocumentImpl doc, int element, NodeTest nodeTest)
          Constructor.
 
Method Summary
 int getLastPosition()
          Get the last position, that is the number of nodes in the enumeration
 boolean hasMoreElements()
          Test if there are mode nodes still to come.
 boolean isPeer()
          Determine whether the nodes returned by this enumeration are known to be peers, that is, no node is a descendant or ancestor of another node.
 boolean isReverseSorted()
          Determine whether the nodes returned by this enumeration are known to be in reverse document order.
 boolean isSorted()
          Determine whether the nodes returned by this enumeration are known to be in document order
 NodeInfo nextElement()
          Get the next node in the enumeration.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AttributeEnumeration

protected AttributeEnumeration(TinyDocumentImpl doc,
                               int element,
                               NodeTest nodeTest)
Constructor. Note: this constructor will only be called if the relevant node is an element and if it has one or more attributes. Otherwise an EmptyEnumeration will be constructed instead.

Parameters:
node: - the element whose attributes are required. This may be any type of node, but if it is not an element the enumeration will be empty
nodeType: - the type of node required. This may be any type of node, but if it is not an attribute the enumeration will be empty
nameTest: - condition to be applied to the names of the attributes selected
Method Detail

hasMoreElements

public boolean hasMoreElements()
Test if there are mode nodes still to come. ("elements" is used here in the sense of the Java enumeration class, not in the XML sense)

Specified by:
hasMoreElements in interface AxisEnumeration
Specified by:
hasMoreElements in interface NodeEnumeration
Returns:
true if there are more nodes

nextElement

public NodeInfo nextElement()
Get the next node in the enumeration. ("elements" is used here in the sense of the Java enumeration class, not in the XML sense)

Specified by:
nextElement in interface AxisEnumeration
Specified by:
nextElement in interface NodeEnumeration
Returns:
the next NodeInfo

isSorted

public boolean isSorted()
Description copied from interface: NodeEnumeration
Determine whether the nodes returned by this enumeration are known to be in document order

Specified by:
isSorted in interface NodeEnumeration
Returns:
true if the nodes are guaranteed to be in document order.

isReverseSorted

public boolean isReverseSorted()
Description copied from interface: NodeEnumeration
Determine whether the nodes returned by this enumeration are known to be in reverse document order.

Specified by:
isReverseSorted in interface NodeEnumeration
Returns:
true if the nodes are guaranteed to be in document order.

isPeer

public boolean isPeer()
Description copied from interface: NodeEnumeration
Determine whether the nodes returned by this enumeration are known to be peers, that is, no node is a descendant or ancestor of another node. This significance of this property is that if a peer enumeration is applied to each node in a set derived from another peer enumeration, and if both enumerations are sorted, then the result is also sorted.

Specified by:
isPeer in interface NodeEnumeration

getLastPosition

public int getLastPosition()
Get the last position, that is the number of nodes in the enumeration

Specified by:
getLastPosition in interface LastPositionFinder
Specified by:
getLastPosition in interface AxisEnumeration