public class SequenceTool extends Object
| Modifier and Type | Field and Description |
|---|---|
static int |
INDETERMINATE_ORDERING
Constant returned by compareTo() method to indicate an indeterminate ordering between two values
|
| Constructor and Description |
|---|
SequenceTool() |
| Modifier and Type | Method and Description |
|---|---|
static Item |
asItem(Sequence sequence)
Static method to make an Item from a Value
|
static Object |
convertToJava(Item item)
Convert an XPath value to a Java object.
|
static int |
getCardinality(Sequence sequence)
Get the cardinality of a sequence
|
static ItemType |
getItemType(Sequence sequence,
TypeHierarchy th)
Get the item type of the items in a sequence.
|
static int |
getLength(Sequence sequence)
Get the length of a sequence (the number of items it contains)
|
static String |
getStringValue(Sequence sequence)
Get the string value of a sequence.
|
static boolean |
isUnrepeatable(Sequence seq) |
static Item |
itemAt(Sequence sequence,
int index)
Get the item at a given offset in a sequence.
|
static Sequence |
makeRepeatable(Sequence seq) |
static void |
process(Sequence value,
XPathContext context,
Location locationId)
Process a supplied value by copying it to the current output destination
|
static GroundedValue |
toGroundedValue(Sequence sequence)
Produce a GroundedValue containing the same values as a supplied sequence.
|
static GroundedValue |
toGroundedValue(SequenceIterator iterator)
Produce a GroundedValue containing the same values as a supplied sequence.
|
static Sequence |
toLazySequence(SequenceIterator iterator)
Construct a sequence capable of returning the same items as an iterator,
without incurring the cost of evaluating the iterator and storing all
the items.
|
static Sequence |
toMemoSequence(SequenceIterator iterator)
Produce a Sequence containing the same values as a supplied sequence; the input is
read progressively as required, and saved in a buffer as it is read in case it is needed
again.
|
public static final int INDETERMINATE_ORDERING
public static GroundedValue toGroundedValue(Sequence sequence) throws XPathException
sequence - the supplied sequenceXPathException - for example if the value is a closure that needs to be evaluated,
and evaluation failspublic static GroundedValue toGroundedValue(SequenceIterator iterator) throws XPathException
iterator - the supplied sequence. The iterator may or may not be consumed as a result of
passing it to this method.XPathException - if a failure occurs reading the input iteratorpublic static Sequence toMemoSequence(SequenceIterator iterator) throws XPathException
iterator - the supplied sequence. The iterator may or may not be consumed as a result of
passing it to this method.XPathException - if a failure occurs reading the input iteratorpublic static Sequence toLazySequence(SequenceIterator iterator) throws XPathException
iterator - the supplied sequence. The iterator may or may not be consumed as a result of
passing it to this method.XPathException - if a failure occurs reading the input iteratorpublic static boolean isUnrepeatable(Sequence seq)
public static Sequence makeRepeatable(Sequence seq) throws XPathException
XPathExceptionpublic static int getLength(Sequence sequence) throws XPathException
sequence - the sequenceXPathException - if an error occurs (due to lazy evaluation)public static Item itemAt(Sequence sequence, int index) throws XPathException
sequence - the input sequenceindex - the 0-based subscriptXPathException - for example if the value is a closure that needs to be
evaluated, and evaluation failspublic static Item asItem(Sequence sequence) throws XPathException
sequence - the value to be convertedXPathException - if the supplied Sequence contains multiple itemspublic static Object convertToJava(Item item) throws XPathException
item - the item to be convertedXPathException - if an error occurs: for example, if the XPath value is
an integer and is too big to fit in a Java longpublic static String getStringValue(Sequence sequence) throws XPathException
sequence - the input sequenceXPathException - if the sequence contains an item with no string value,
for example a function itempublic static ItemType getItemType(Sequence sequence, TypeHierarchy th)
sequence - the input sequenceth - the Type Hierarchy cachepublic static int getCardinality(Sequence sequence)
sequence - the supplied sequenceStaticProperty.ALLOWS_ZERO (for an empty sequence)
StaticProperty.EXACTLY_ONE (for a singleton), or StaticProperty.ALLOWS_ONE_OR_MORE (for
a sequence with more than one item)public static void process(Sequence value, XPathContext context, Location locationId) throws XPathException
value - the sequence to be processedcontext - The dynamic context, giving access to the current node,
the current variables, etc.locationId - (can be set to -1 if absent) information about the location of the value,
which can be resolved by reference to the PipelineConfiguration of the current output
destinationXPathException - if an error occurs (for example if the value is
a closure that needs to be evaluated)Copyright (c) 2004-2014 Saxonica Limited. All rights reserved.