|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.exist.xquery.value.AbstractSequence
org.exist.xquery.value.PreorderedValueSequence
A sequence that sorts its items in the order specified by the order specs
of an "order by" clause. Used by ForExpr.
For better performance, the whole input sequence is sorted in one single step.
However, this only works if every order expression returns a result of type
node.
| Field Summary |
| Fields inherited from interface org.exist.xquery.value.Sequence |
EMPTY_SEQUENCE |
| Constructor Summary | |
PreorderedValueSequence(OrderSpec[] specs,
Sequence input,
int contextId)
|
|
| Method Summary | |
void |
add(Item item)
Add an item to the current sequence. |
void |
clearContext(int contextId)
For every item in the sequence, clear any context-dependant information that is stored during query processing. |
int |
getItemType()
Return the primary type to which all items in this sequence belong. |
int |
getLength()
Returns the number of items contained in the sequence. |
Item |
itemAt(int pos)
Returns the item located at the specified position within this sequence. |
SequenceIterator |
iterate()
Returns an iterator over all items in the sequence. |
void |
removeDuplicates()
Explicitely remove all duplicate nodes from this sequence. |
NodeSet |
toNodeSet()
Convert the sequence into a NodeSet. |
SequenceIterator |
unorderedIterator()
Returns an iterator over all items in the sequence. |
| Methods inherited from class org.exist.xquery.value.AbstractSequence |
addAll, conversionPreference, convertTo, effectiveBooleanValue, getCardinality, getDocumentSet, getStringValue, isCached, isPersistentSet, setIsCached, setSelfAsContext, toJavaObject, toString |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
public PreorderedValueSequence(OrderSpec[] specs,
Sequence input,
int contextId)
throws XPathException
| Method Detail |
public void clearContext(int contextId)
Sequence
clearContext in interface SequenceclearContext in class AbstractSequencepublic int getItemType()
SequenceType.NODE for node sets, Type.ITEM
for other sequences with mixed items.
getItemType in interface SequencegetItemType in class AbstractSequencepublic SequenceIterator iterate()
Sequence
iterate in interface Sequenceiterate in class AbstractSequencepublic SequenceIterator unorderedIterator()
Sequence
unorderedIterator in interface SequenceunorderedIterator in class AbstractSequencepublic int getLength()
Sequence
getLength in interface SequencegetLength in class AbstractSequence
public void add(Item item)
throws XPathException
SequenceXPathException may be thrown
if the item's type is incompatible with this type of sequence (e.g. if the sequence
is a node set).
The sequence may or may not allow duplicate values.
add in interface Sequenceadd in class AbstractSequenceXPathExceptionpublic Item itemAt(int pos)
Sequence
itemAt in interface SequenceitemAt in class AbstractSequence
public NodeSet toNodeSet()
throws XPathException
Sequence
XPathException - if the sequence contains items which are not nodes.public void removeDuplicates()
Sequence
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||