Package gnu.xquery.util
Class RelativeStepFilter
java.lang.Object
gnu.lists.FilterConsumer
gnu.xquery.util.RelativeStepFilter
- All Implemented Interfaces:
Consumer
,PositionConsumer
,XConsumer
,Appendable
,Consumer<Object>
,DoubleConsumer
,IntConsumer
,LongConsumer
Used to filter the output of RelativeStep.
Atomic values are passed though as-is, while node values are sorted
by document order and duplicates removed. An exception is thrown
if there is a mix of atoms and nodes.
Informally:
E1/E2
is implemented as:
RelativeStepFilter(for $dot in E1 return E2)
.-
Field Summary
Fields inherited from class gnu.lists.FilterConsumer
attributeType, base, inAttribute, skipping
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected void
void
finish()
void
void
writePosition
(AbstractSequence seq, int ipos) Consume a single position pair.void
writePosition
(SeqPosition position) Consume node at current position.Methods inherited from class gnu.lists.FilterConsumer
append, append, append, beforeNode, beginEntity, endAttribute, endDocument, endElement, endEntity, ignoring, startAttribute, startDocument, startElement, write, write, write, write, writeBoolean, writeCDATA, writeComment, writeDouble, writeFloat, writeInt, writeLong, writeProcessingInstruction
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface java.util.function.DoubleConsumer
andThen
Methods inherited from interface java.util.function.IntConsumer
andThen
Methods inherited from interface java.util.function.LongConsumer
andThen
-
Constructor Details
-
RelativeStepFilter
-
-
Method Details
-
writePosition
Description copied from interface:PositionConsumer
Consume node at current position. The caller may invalidate or change the position after consume returns, so if the consumer wants to save it, it needs to copy it.- Specified by:
writePosition
in interfacePositionConsumer
-
writeObject
- Specified by:
writeObject
in interfaceConsumer
- Overrides:
writeObject
in classFilterConsumer
-
beforeContent
protected void beforeContent()- Overrides:
beforeContent
in classFilterConsumer
-
writePosition
Description copied from interface:PositionConsumer
Consume a single position pair. This PositionConsumer may assume the sequence does no reference management; i.e. that copyPos is trivial and releasePos is a no-op. If that is not the case, use consume(TreePosition) instead.- Specified by:
writePosition
in interfacePositionConsumer
-
finish
public void finish()
-