A SequenceIterator is used to iterate over a sequence. An AxisIterator
is a SequenceIterator that always iterates over a set of nodes, and that
throws no exceptions; it also supports the ability
to find the last() position, again with no exceptions.
This class is an abstract implementation of AxisIterator that is used
as a base class for many concrete implementations. The main functionality
that it provides is maintaining the current position.
Close the iterator. This indicates to the supplier of the data that the client
does not require any more items to be delivered by the iterator. This may enable the
supplier to release resources. After calling close(), no further calls on the
iterator should be made; if further calls are made, the effect of such calls is undefined.
(Currently, closing an iterator is important only when the data is being "pushed" in
another thread. Closing the iterator terminates that thread and means that it needs to do
no additional work. Indeed, failing to close the iterator may cause the push thread to hang
waiting for the buffer to be emptied.)