public class IndexedValue<T extends Item> extends Object implements GroundedValue
Constructor and Description |
---|
IndexedValue(SequenceIterator<? extends T> iter)
Construct an indexed value (that is, a value that is capable of being indexed).
|
Modifier and Type | Method and Description |
---|---|
boolean |
effectiveBooleanValue()
Get the effective boolean value of this sequence
|
SequenceIterator<T> |
findItems(Expression use,
SequenceIterator values,
boolean convertUntypedToOther,
boolean firstOnly,
AtomicComparer comparer,
XPathContext context)
Retrieve items that match a given index value
|
int |
getLength()
Get the length of the sequence
|
String |
getStringValue()
Get the string value of this sequence.
|
CharSequence |
getStringValueCS()
Get the string value of this sequence.
|
Item |
head()
Get the first item in the sequence.
|
T |
itemAt(int n)
Get the n'th item in the sequence (starting from 0).
|
SequenceIterator<T> |
iterate()
Return an Iterator to iterate over the values of a sequence.
|
GroundedValue |
reduce()
Reduce the sequence to its simplest form.
|
GroundedValue |
subsequence(int start,
int length)
Get a subsequence of the value
|
public IndexedValue(SequenceIterator<? extends T> iter) throws XPathException
iter
- iterator over the items to be included in the indexed valueXPathException
- if an error occurs reading the iteratorpublic SequenceIterator<T> iterate() throws XPathException
iterate
in interface Sequence
XPathException
- if any dynamic error occurs evaluating the
expressionpublic T itemAt(int n)
itemAt
in interface GroundedValue
n
- position of the required item, counting from zero.public int getLength()
getLength
in interface GroundedValue
public SequenceIterator<T> findItems(Expression use, SequenceIterator values, boolean convertUntypedToOther, boolean firstOnly, AtomicComparer comparer, XPathContext context) throws XPathException
use
- the expression whose value is to be matchedvalues
- the set of values to be foundconvertUntypedToOther
- true if untypedAtomic values are to be converted to the
type of the other operandfirstOnly
- true if only the first matching item is requiredcomparer
- AtomicComparer used to compare values for equality (encapsulates a collation
if necessary)context
- the dynamic evaluation context @return an iterator over the items that match the specified valuesXPathException
public GroundedValue subsequence(int start, int length)
subsequence
in interface GroundedValue
start
- the index of the first item to be included in the result, counting from zero.
A negative value is taken as zero. If the value is beyond the end of the sequence, an empty
sequence is returnedlength
- the number of items to be included in the result. Specify Integer.MAX_VALUE to
get the subsequence up to the end of the base sequence. If the value is negative, an empty sequence
is returned. If the value goes off the end of the sequence, the result returns items up to the end
of the sequencepublic boolean effectiveBooleanValue() throws XPathException
GroundedValue
effectiveBooleanValue
in interface GroundedValue
XPathException
- if the sequence has no effective boolean value (for example a sequence of two integers)public String getStringValue() throws XPathException
GroundedValue
getStringValue
in interface GroundedValue
XPathException
- if the sequence contains items that have no string value (for example, function items)public CharSequence getStringValueCS() throws XPathException
GroundedValue
getStringValueCS
in interface GroundedValue
XPathException
- if the sequence contains items that have no string value (for example, function items)public Item head() throws XPathException
head
in interface Sequence
XPathException
- in the situation where the sequence is evaluated lazily, and
evaluation of the first item causes a dynamic error.public GroundedValue reduce()
reduce
in interface GroundedValue
Copyright (c) 2004-2013 Saxonica Limited. All rights reserved.