public class ZeroOrOne<T extends Item> extends java.lang.Object implements GroundedValue
| 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()
Get the string value of this sequence, as an instance of
String. |
UnicodeString |
getUnicodeStringValue()
Convert the value to a string, using the serialization rules.
|
T |
head()
Get the first item in the sequence.
|
T |
itemAt(int n)
Get the n'th item in the sequence (starting from 0).
|
SequenceIterator |
iterate()
Return an iterator over this value.
|
GroundedValue |
reduce()
Reduce the sequence to its simplest form.
|
GroundedValue |
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, waitasIterable, concatenate, containsNode, materialize, toShortStringmakeRepeatablepublic 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()
T - the static type of the empty sequencepublic UnicodeString getUnicodeStringValue()
getUnicodeStringValue in interface GroundedValuepublic java.lang.String getStringValue()
GroundedValueString.
The string value of an item is the result of applying the XPath string()
function. The string value of a sequence is the space-separated result of applying the string-join() function
using a single space as the separator.
The result of this method is always equivalent to the result of the GroundedValue.getUnicodeStringValue() method.
Use this method in preference either (a) if you need to use the value in a context where a String
is required, or (b) if the underlying value is held as a String, or in a form that is readily
converted to a String. This is typically the case (i) when the value is an attribute node
in a TinyTree, or (ii) any kind of node in a third-party tree model such as DOM.
getStringValue in interface GroundedValuepublic T head()
head in interface GroundedValuehead in interface Sequencepublic int getLength()
getLength in interface GroundedValuepublic T itemAt(int n)
itemAt in interface GroundedValuen - the index of the required item, with 0 representing the first item in the sequencepublic GroundedValue subsequence(int start, int length)
subsequence in interface GroundedValuestart - 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 SequenceIterator iterate()
iterate in interface GroundedValueiterate in interface SequenceSequenceIterator rather than a Java
Iterator) over all the items in this Sequence.public boolean effectiveBooleanValue()
throws XPathException
effectiveBooleanValue in interface GroundedValueXPathException - 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.Objectpublic GroundedValue reduce()
reduce in interface GroundedValueCopyright (c) 2004-2022 Saxonica Limited. All rights reserved.