net.sf.saxon.om

Class VirtualUntypedCopy.VirtualUntypedCopier

Enclosing Class:
VirtualUntypedCopy
Implemented Interfaces:
AxisIterator, SequenceIterator, UnfailingIterator

protected class VirtualUntypedCopy.VirtualUntypedCopier
extends VirtualCopy.VirtualCopier

Field Summary

Fields inherited from class net.sf.saxon.om.VirtualCopy.VirtualCopier

base, subtreeRoot

Fields inherited from interface net.sf.saxon.om.SequenceIterator

GROUNDED, LAST_POSITION_FINDER, LOOKAHEAD

Constructor Summary

VirtualUntypedCopier(AxisIterator base, VirtualCopy parent, NodeInfo subtreeRoot)

Method Summary

protected VirtualCopy
createCopy(NodeInfo node, NodeInfo root)
Method to create the virtual copy of a node encountered when navigating.
SequenceIterator
getAnother()
Get another iterator over the same sequence of items, positioned at the start of the sequence

Methods inherited from class net.sf.saxon.om.VirtualCopy.VirtualCopier

atomize, createCopy, current, getAnother, getProperties, getStringValue, iterateAxis, moveNext, next, position

Constructor Details

VirtualUntypedCopier

public VirtualUntypedCopier(AxisIterator base,
                            VirtualCopy parent,
                            NodeInfo subtreeRoot)

Method Details

createCopy

protected VirtualCopy createCopy(NodeInfo node,
                                 NodeInfo root)
Method to create the virtual copy of a node encountered when navigating. This method is separated out so that it can be overridden in a subclass.
Overrides:
createCopy in interface VirtualCopy.VirtualCopier

getAnother

public SequenceIterator getAnother()
Get another iterator over the same sequence of items, positioned at the start of the sequence
Specified by:
getAnother in interface UnfailingIterator
getAnother in interface SequenceIterator
Overrides:
getAnother in interface VirtualCopy.VirtualCopier
Returns:
a new iterator over the same sequence