public class ZeroOrOne<T extends Item<?>> extends java.lang.Object implements GroundedValue<T>
Constructor and Description |
---|
ZeroOrOne(T item)
Create a sequence containing zero or one items
|
Modifier and Type | Method and Description |
---|---|
boolean |
effectiveBooleanValue()
Get the effective boolean value
|
static <T extends Item<?>> |
empty()
Return the instance of ZeroOrOne that represents the empty sequence
|
int |
getLength()
Get the length of the sequence
|
java.lang.String |
getStringValue()
Convert the value to a string, using the serialization rules.
|
java.lang.CharSequence |
getStringValueCS()
Get the string value of this sequence.
|
T |
head()
Get the first item in the sequence.
|
T |
itemAt(int n)
Get the n'th item in the sequence (starting from 0).
|
UnfailingIterator<T> |
iterate()
Return an enumeration of this nodeset value.
|
GroundedValue<T> |
reduce()
Reduce the sequence to its simplest form.
|
GroundedValue<T> |
subsequence(int start,
int length)
Get a subsequence of the value
|
java.lang.String |
toString()
Returns a string representation of the object (used only for diagnostics).
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
asIterable, iterator, materialize, toShortString
makeRepeatable
public ZeroOrOne(T item)
item
- The item to be contained in the sequence, or null if the sequence
is to be emptypublic static <T extends Item<?>> ZeroOrOne<T> empty()
public java.lang.CharSequence getStringValueCS()
getStringValueCS
in interface GroundedValue<T extends Item<?>>
public java.lang.String getStringValue()
getStringValue
in interface GroundedValue<T extends Item<?>>
public T head()
public int getLength()
getLength
in interface GroundedValue<T extends Item<?>>
public T itemAt(int n)
itemAt
in interface GroundedValue<T extends Item<?>>
n
- the index of the required item, with 0 representing the first item in the sequencepublic GroundedValue<T> subsequence(int start, int length)
subsequence
in interface GroundedValue<T extends Item<?>>
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 UnfailingIterator<T> iterate()
iterate
in interface GroundedValue<T extends Item<?>>
iterate
in interface Sequence<T extends Item<?>>
SequenceIterator
rather than a Java
Iterator
) over all the items in this Sequence.public boolean effectiveBooleanValue() throws XPathException
effectiveBooleanValue
in interface GroundedValue<T extends Item<?>>
XPathException
- if the sequence has no effective boolean value (for example a sequence of two integers)public java.lang.String toString()
toString
in class java.lang.Object
public GroundedValue<T> reduce()
reduce
in interface GroundedValue<T extends Item<?>>
Copyright (c) 2004-2020 Saxonica Limited. All rights reserved.