|
||||||||||
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.BigIntegerValue
An integer value: note this is a subtype of decimal in XML Schema, not a primitive type. The class IntegerValue is used to represent xs:integer values that fit comfortably in a Java long; this class is used to represent xs:integer values outside this range, including the built-in subtype xs:unsignedLong
Field Summary | |
static java.math.BigInteger |
MAX_UNSIGNED_LONG
|
static BigIntegerValue |
ZERO
|
Fields inherited from class net.sf.saxon.value.Value |
EMPTY_CLASS_ARRAY |
Fields inherited from interface net.sf.saxon.om.ValueRepresentation |
EMPTY_VALUE_ARRAY |
Fields inherited from interface net.sf.saxon.expr.Expression |
EVALUATE_METHOD, ITERATE_METHOD, PROCESS_METHOD |
Constructor Summary | |
BigIntegerValue(java.math.BigInteger value)
|
|
BigIntegerValue(long value)
|
Method Summary | |
NumericValue |
arithmetic(int operator,
NumericValue other,
XPathContext context)
Evaluate a binary arithmetic operator. |
java.math.BigDecimal |
asDecimal()
|
NumericValue |
ceiling()
Implement the XPath ceiling() function |
int |
compareTo(java.lang.Object other)
Compare the value to another numeric value |
AtomicValue |
convertPrimitive(BuiltInAtomicType requiredType,
boolean validate,
XPathContext context)
Convert to target data type |
java.lang.Object |
convertToJava(java.lang.Class target,
XPathContext context)
Convert to Java object (for passing to external functions) |
ValidationException |
convertToSubType(AtomicType type,
boolean validate)
This class allows subtypes of xs:integer to be held, as well as xs:integer values. |
boolean |
effectiveBooleanValue(XPathContext context)
Return the effective boolean value of this integer |
NumericValue |
floor()
Implement the XPath floor() function |
java.math.BigInteger |
getBigInteger()
Get the value as a BigInteger |
ItemType |
getItemType(TypeHierarchy th)
Determine the data type of the expression |
java.lang.String |
getStringValue()
Get the value as a String |
int |
hashCode()
Get the hashCode. |
boolean |
isWholeNumber()
Determine whether the value is a whole number, that is, whether it compares equal to some integer |
boolean |
isWithinLongRange()
|
long |
longValue()
Get the value as a long |
static NumericValue |
makeValue(java.math.BigInteger value)
Factory method: makes either an IntegerValue or a BigIntegerValue depending on the value supplied |
NumericValue |
negate()
Negate the value |
NumericValue |
round()
Implement the XPath round() function |
NumericValue |
roundToHalfEven(int scale)
Implement the XPath round-to-half-even() function |
boolean |
schemaEquals(Value obj)
Compare two values for equality. |
double |
signum()
Determine whether the value is negative, zero, or positive |
Methods inherited from class net.sf.saxon.value.NumericValue |
equals, getDoubleValue, isInteger, isNaN, parseNumber, promote, toString |
Methods inherited from class net.sf.saxon.value.AtomicValue |
checkPermittedContents, convert, convert, display, evaluateAsString, evaluateItem, getCardinality, getComponent, getImplementationMethod, getLength, getPrimitiveValue, getStringValueCS, getTypedValue, hasBuiltInType, iterate, process |
Methods inherited from class net.sf.saxon.value.Value |
asItem, asIterator, asValue, collapseWhitespace, convert, convertJavaObjectToXPath, getDependencies, getIterator, getParentExpression, getSpecialProperties, itemAt, iterateSubExpressions, makeQNameValue, normalizeWhitespace, optimize, promote, reduce, simplify, stringToNumber, trimWhitespace, typeCheck |
Methods inherited from class java.lang.Object |
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
public static final java.math.BigInteger MAX_UNSIGNED_LONG
public static final BigIntegerValue ZERO
Constructor Detail |
public BigIntegerValue(java.math.BigInteger value)
public BigIntegerValue(long value)
Method Detail |
public ValidationException convertToSubType(AtomicType type, boolean validate)
type
- the subtype of integer required
public static NumericValue makeValue(java.math.BigInteger value)
public int hashCode()
hashCode
in class NumericValue
NumericValue.hashCode()
public long longValue()
longValue
in class NumericValue
public java.math.BigInteger getBigInteger()
public boolean isWithinLongRange()
public java.math.BigDecimal asDecimal()
public boolean effectiveBooleanValue(XPathContext context)
effectiveBooleanValue
in interface Expression
effectiveBooleanValue
in class AtomicValue
context
- The dynamic evaluation context; ignored in this
implementation of the method
public int compareTo(java.lang.Object other)
compareTo
in interface java.lang.Comparable
compareTo
in class NumericValue
other
- the numeric value to be compared to this value
public boolean schemaEquals(Value obj)
schemaEquals
in class AtomicValue
public AtomicValue convertPrimitive(BuiltInAtomicType requiredType, boolean validate, XPathContext context)
convertPrimitive
in class AtomicValue
requiredType
- an integer identifying the required atomic typecontext
- validate
- true if validation is required. If set to false, the caller guarantees that
the value is valid for the target data type, and that further validation is therefore not required.
Note that a validation failure may be reported even if validation was not requested.
public java.lang.String getStringValue()
getStringValue
in interface Item
getStringValue
in class AtomicValue
public NumericValue negate()
negate
in class NumericValue
public NumericValue floor()
floor
in class NumericValue
public NumericValue ceiling()
ceiling
in class NumericValue
public NumericValue round()
round
in class NumericValue
public NumericValue roundToHalfEven(int scale)
roundToHalfEven
in class NumericValue
scale
- number of digits required after the decimal point; the
value -2 (for example) means round to a multiple of 100
public double signum()
signum
in class NumericValue
public boolean isWholeNumber()
isWholeNumber
in class NumericValue
public NumericValue arithmetic(int operator, NumericValue other, XPathContext context) throws XPathException
arithmetic
in class NumericValue
operator
- the operator to be applied, identified by a constant in
the Tokenizer classother
- the other operand of the arithmetic expression
XPathException
- if an arithmetic failure occurs, e.g. divide
by zeroTokenizer
public ItemType getItemType(TypeHierarchy th)
getItemType
in interface Expression
getItemType
in class Value
th
-
public java.lang.Object convertToJava(java.lang.Class target, XPathContext context) throws XPathException
convertToJava
in class Value
target
- The Java class to which conversion is required
XPathException
- if conversion is not possible, or fails
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |