public class IntegerRange extends java.lang.Object implements AtomicSequence
Constructor and Description |
---|
IntegerRange(long start,
long end)
Construct an integer range expression
|
Modifier and Type | Method and Description |
---|---|
boolean |
effectiveBooleanValue()
Get the effective boolean value of this sequence
|
java.lang.CharSequence |
getCanonicalLexicalRepresentation()
Get the canonical lexical representation as defined in XML Schema.
|
long |
getEnd()
Get the last integer in the sequence (inclusive)
|
int |
getLength()
Get the length of the sequence
|
java.lang.Comparable |
getSchemaComparable()
Get a Comparable value that implements the XML Schema ordering comparison semantics for this value.
|
long |
getStart()
Get the first integer in the sequence (inclusive)
|
java.lang.String |
getStringValue()
Get a string representation of the sequence.
|
java.lang.CharSequence |
getStringValueCS()
Get a string representation of the sequence.
|
IntegerValue |
head()
Get the first item in the sequence
|
IntegerValue |
itemAt(int n)
Get the n'th item in the sequence (starting from 0).
|
AtomicIterator |
iterate()
Return an Iterator to iterate over the values of a sequence.
|
java.util.Iterator<AtomicValue> |
iterator()
Return a Java iterator over the atomic sequence.
|
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() |
public IntegerRange(long start, long end)
start
- the first integer in the sequence (inclusive)end
- the last integer in the sequence (inclusive). Must be >= startpublic long getStart()
public long getEnd()
public AtomicIterator iterate()
iterate
in interface AtomicSequence
iterate
in interface GroundedValue
iterate
in interface Sequence
public IntegerValue itemAt(int n)
itemAt
in interface AtomicSequence
itemAt
in interface GroundedValue
n
- the index of the required item, with 0 representing the first item in the sequencepublic 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 int getLength()
getLength
in interface AtomicSequence
getLength
in interface GroundedValue
public IntegerValue head()
AtomicSequence
head
in interface AtomicSequence
head
in interface GroundedValue
head
in interface Sequence
public java.lang.CharSequence getCanonicalLexicalRepresentation()
getCanonicalLexicalRepresentation
in interface AtomicSequence
public java.lang.Comparable getSchemaComparable()
In the case of data types that are partially ordered, the returned Comparable extends the standard
semantics of the compareTo() method by returning the value SequenceTool.INDETERMINATE_ORDERING
when there
is no defined order relationship between two given values.
getSchemaComparable
in interface AtomicSequence
public java.lang.CharSequence getStringValueCS()
AtomicSequence
getStringValueCS
in interface AtomicSequence
getStringValueCS
in interface GroundedValue
public java.lang.String getStringValue()
AtomicSequence
getStringValue
in interface AtomicSequence
getStringValue
in interface GroundedValue
public 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 GroundedValue reduce()
reduce
in interface GroundedValue
public java.lang.String toString()
toString
in class java.lang.Object
public java.util.Iterator<AtomicValue> iterator()
iterator
in interface java.lang.Iterable<AtomicValue>
Copyright (c) 2004-2018 Saxonica Limited. All rights reserved.