|
|||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||
java.lang.Objectnet.sf.saxon.value.Value
net.sf.saxon.value.AtomicValue
net.sf.saxon.value.NumericValue
net.sf.saxon.value.IntegerValue
public abstract class IntegerValue
This class represents the XPath built-in type xs:integer. It is used for all
subtypes of xs:integer, other than user-defined subtypes. There are two implementations
of IntegerValue: Int64Value, which accommodates values up to 2^63, and
BigIntegerValue, which accommodates unlimited-length integers.
| Field Summary | |
|---|---|
static Int64Value |
MAX_LONG
IntegerValue representing the maximum value for a long |
static Int64Value |
MIN_LONG
IntegerValue representing the minimum value for a long |
static Int64Value |
MINUS_ONE
IntegerValue representing the value -1 |
static Int64Value |
PLUS_ONE
IntegerValue representing the value +1 |
static Int64Value[] |
SMALL_INTEGERS
Array of small integer values |
static Int64Value |
ZERO
IntegerValue representing the value zero |
| Fields inherited from class net.sf.saxon.value.AtomicValue |
|---|
typeLabel |
| Fields inherited from class net.sf.saxon.value.Value |
|---|
EMPTY_CLASS_ARRAY, INDETERMINATE_ORDERING |
| Fields inherited from interface net.sf.saxon.om.ValueRepresentation |
|---|
EMPTY_VALUE_ARRAY |
| Fields inherited from interface net.sf.saxon.om.ValueRepresentation |
|---|
EMPTY_VALUE_ARRAY |
| Constructor Summary | |
|---|---|
IntegerValue()
|
|
| Method Summary | |
|---|---|
abstract java.math.BigInteger |
asBigInteger()
Get the value as a BigInteger |
static boolean |
checkBigRange(java.math.BigInteger big,
BuiltInAtomicType type)
Check that a BigInteger is within the required range for a given integer subtype. |
static boolean |
checkRange(long value,
BuiltInAtomicType type)
Check that a value is in range for the specified subtype of xs:integer |
abstract ValidationFailure |
convertToSubType(BuiltInAtomicType type,
boolean validate)
This class allows subtypes of xs:integer to be held, as well as xs:integer values. |
abstract NumericValue |
div(IntegerValue other)
Divide by another integer |
BuiltInAtomicType |
getPrimitiveType()
Determine the primitive type of the value. |
abstract IntegerValue |
idiv(IntegerValue other)
Integer divide by another integer |
boolean |
isWholeNumber()
Determine whether the value is a whole number, that is, whether it compares equal to some integer |
static IntegerValue |
makeIntegerValue(java.math.BigInteger value)
Factory method: makes either an Int64Value or a BigIntegerValue depending on the value supplied |
abstract IntegerValue |
minus(IntegerValue other)
Subtract another integer |
abstract IntegerValue |
mod(IntegerValue other)
Take modulo another integer |
abstract IntegerValue |
plus(IntegerValue other)
Add another integer |
protected static int |
signum(int i)
Get the signum of an int |
static ConversionResult |
stringToInteger(java.lang.CharSequence s)
Static factory method to convert strings to integers. |
abstract IntegerValue |
times(IntegerValue other)
Multiply by another integer |
abstract ValidationFailure |
validateAgainstSubType(BuiltInAtomicType type)
This class allows subtypes of xs:integer to be held, as well as xs:integer values. |
| Methods inherited from class net.sf.saxon.value.NumericValue |
|---|
ceiling, compareTo, compareTo, equals, floor, getDecimalValue, getDoubleValue, getFloatValue, getXPathComparable, hashCode, isInteger, longValue, negate, parseNumber, promote, round, roundHalfToEven, signum, toString |
| Methods inherited from class net.sf.saxon.value.AtomicValue |
|---|
asAtomic, checkPermittedContents, convert, convert, convertPrimitive, copyAsSubType, effectiveBooleanValue, getCardinality, getComponent, getItemType, getLength, getSchemaComparable, getStringValue, getStringValueCS, getTypedValue, getTypeLabel, isNaN, itemAt, iterate, process, setTypeLabel, subsequence |
| Methods inherited from class net.sf.saxon.value.Value |
|---|
asItem, asItem, asIterator, asValue, convertToJava, fromItem, getCanonicalLexicalRepresentation, getIterator, iterate, makeQNameValue, reduce, stringToNumber |
| Methods inherited from class java.lang.Object |
|---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
public static final Int64Value MINUS_ONE
public static final Int64Value ZERO
public static final Int64Value PLUS_ONE
public static final Int64Value[] SMALL_INTEGERS
public static final Int64Value MAX_LONG
public static final Int64Value MIN_LONG
| Constructor Detail |
|---|
public IntegerValue()
| Method Detail |
|---|
public static IntegerValue makeIntegerValue(java.math.BigInteger value)
value - the supplied integer value
public abstract ValidationFailure convertToSubType(BuiltInAtomicType type,
boolean validate)
type - the subtype of integer requiredvalidate - true if validation is required, false if the caller warrants that the value
is valid for the subtype
public abstract ValidationFailure validateAgainstSubType(BuiltInAtomicType type)
type - the subtype of integer required
public static boolean checkRange(long value,
BuiltInAtomicType type)
value - the value to be checkedtype - the required item type, a subtype of xs:integer
public static boolean checkBigRange(java.math.BigInteger big,
BuiltInAtomicType type)
big - the supplied BigIntegertype - the derived type (a built-in restriction of xs:integer) to check the value against
public static ConversionResult stringToInteger(java.lang.CharSequence s)
s - CharSequence representing the string to be converted
public BuiltInAtomicType getPrimitiveType()
getPrimitiveType in class AtomicValuepublic boolean isWholeNumber()
isWholeNumber in class NumericValuepublic abstract IntegerValue plus(IntegerValue other)
other - the other integer
public abstract IntegerValue minus(IntegerValue other)
other - the other integer
public abstract IntegerValue times(IntegerValue other)
other - the other integer
public abstract NumericValue div(IntegerValue other)
throws XPathException
other - the other integer
XPathException - if the other integer is zero
public abstract IntegerValue mod(IntegerValue other)
throws XPathException
other - the other integer
XPathException - if the other integer is zero
public abstract IntegerValue idiv(IntegerValue other)
throws XPathException
other - the other integer
XPathException - if the other integer is zeropublic abstract java.math.BigInteger asBigInteger()
protected static int signum(int i)
i - the int
|
|||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||