Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## net.sf.saxon.tree.tiny
Class TinyTreeEventIterator

    java.lang.Object
      net.sf.saxon.tree.tiny.TinyTreeEventIterator

All Implemented Interfaces:
  LocationProvider, EventIterator, PullEvent

    public class TinyTreeEventIterator

extends Object
implements EventIterator, LocationProvider

This implementation of the Saxon event-pull interface starts from a document, element, text, comment, or processing-instruction node in a TinyTree, and returns the events corresponding to that node and its descendants (including their attributes and namespaces). The class performs the same function as the general-purpose `Decomposer` class, but is specialized to exploit the TinyTree data structure: in particular, it never materializes any Node objects.

Constructor Summary
`TinyTreeEventIterator(TinyNodeImpl startNode, PipelineConfiguration pipe)` Create a TinyTreeEventIterator to return events associated with a tree or subtree

Method Summary
`int` | `getColumnNumber(long locationId)` Get location information: the column number of the current start element event
`int` | `getLineNumber(long locationId)` Get location information: the line number of the current start element event
`String` | `getSystemId(long locationId)` Get location information: the system Id of the current start element event
`boolean` | `isFlatSequence()` Determine whether the EventIterator returns a flat sequence of events, or whether it can return nested event iterators
`PullEvent` | `next()` Get the next event

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

Constructor Detail

### TinyTreeEventIterator

    public TinyTreeEventIterator(TinyNodeImpl startNode,
                                 PipelineConfiguration pipe)

  Create a TinyTreeEventIterator to return events associated with a tree or subtree

  Parameters:
    `startNode` - the root of the tree or subtree. Must be a document or element node.
    `pipe` - the Saxon pipeline configuration
  Throws:
    `IllegalArgumentException` - if the start node is an attribute or namespace node.

Method Detail

### next

    public PullEvent next()
                   throws XPathException

  Get the next event

  Specified by:
    `next` in interface `EventIterator`
  Returns:
    a PullEvent object representing the next event, or null when the sequence is exhausted
  Throws:
    `XPathException` - if a dynamic evaluation error occurs

### isFlatSequence

    public boolean isFlatSequence()

  Determine whether the EventIterator returns a flat sequence of events, or whether it can return nested event iterators

  Specified by:
    `isFlatSequence` in interface `EventIterator`
  Returns:
    true if the next() method is guaranteed never to return an EventIterator

### getSystemId

    public String getSystemId(long locationId)

  Get location information: the system Id of the current start element event

  Specified by:
    `getSystemId` in interface `LocationProvider`
  Parameters:
    `locationId` - in this case, the node number in the tiny tree
  Returns:
    the system Id of the node: that is its base URI, before taking xml:base into account

### getLineNumber

    public int getLineNumber(long locationId)

  Get location information: the line number of the current start element event

  Specified by:
    `getLineNumber` in interface `LocationProvider`
  Parameters:
    `locationId` - in this case, the node number in the tiny tree
  Returns:
    the line number of the node if known, or -1 otherwise

### getColumnNumber

    public int getColumnNumber(long locationId)

  Get location information: the column number of the current start element event

  Specified by:
    `getColumnNumber` in interface `LocationProvider`
  Parameters:
    `locationId` - in this case, the node number in the tiny tree
  Returns:
    the column number of the node if known, or -1 otherwise

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

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