|
|||||||
| 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
public class 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 |
getItemCount()
Returns the number of items contained in the sequence. |
int |
getItemType()
Return the primary type to which all items in this sequence belong. |
boolean |
hasOne()
Returns whether the sequence has just one item or not. |
boolean |
isEmpty()
Returns whether the sequence is empty or not. |
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. |
MemoryNodeSet |
toMemNodeSet()
Convert the sequence into an in-memory node set. |
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, getCollectionIterator, getDocumentSet, getState, getStringValue, hasChanged, hasMany, isCacheable, isCached, isPersistentSet, nodeMoved, setIsCached, setSelfAsContext, toJavaObject, toString |
| Methods inherited from class java.lang.Object |
|---|
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
|---|
public PreorderedValueSequence(OrderSpec[] specs,
Sequence input,
int contextId)
throws XPathException
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 AbstractSequence
public SequenceIterator iterate()
throws XPathException
Sequence
iterate in interface Sequenceiterate in class AbstractSequenceXPathException - TODOpublic SequenceIterator unorderedIterator()
Sequence
unorderedIterator in interface SequenceunorderedIterator in class AbstractSequencepublic int getItemCount()
Sequence
getItemCount in interface SequencegetItemCount in class AbstractSequencepublic boolean isEmpty()
Sequence
isEmpty in interface SequenceisEmpty in class AbstractSequencetrue is the sequence is emptypublic boolean hasOne()
Sequence
hasOne in interface SequencehasOne in class AbstractSequencetrue is the sequence has just one item
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 MemoryNodeSet toMemNodeSet()
throws XPathException
SequenceSequence.isPersistentSet() to check
if the sequence is a persistent node set.
XPathException - if the sequence contains items which are not nodes or is
a persistent node setpublic void removeDuplicates()
Sequence
|
|||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||