org.jaxen.function
public class NumberFunction extends Object implements Function
4.4 number number(object)
The number function converts its argument to a number as follows:
a string that consists of optional whitespace followed by an optional minus sign followed by a Number followed by whitespace is converted to the IEEE 754 number that is nearest (according to the IEEE 754 round-to-nearest rule) to the mathematical value represented by the string; any other string is converted to NaN
boolean true is converted to 1; boolean false is converted to 0
a node-set is first converted to a string as if by a call to the string function and then converted in the same way as a string argument
an object of a type other than the four basic types is converted to a number in a way that is dependent on that type
If the argument is omitted, it defaults to a node-set with the context node as its only member.
NOTE: The number function should not be used for conversion of numeric data occurring in an element in an XML document unless the element is of a type that represents numeric data in a language-neutral format (which would typically be transformed into a language-specific format for presentation to a user). In addition, the number function cannot be used unless the language-neutral format used by the element is consistent with the XPath syntax for a Number.
See Also: Section 4.4 of the XPath Specification
Field Summary | |
---|---|
static Double | NaN |
Constructor Summary | |
---|---|
NumberFunction()
Create a new NumberFunction object. |
Method Summary | |
---|---|
Object | call(Context context, List args)
Returns the number value of args.get(0) ,
or the number value of the context node if args
is empty.
|
static Double | evaluate(Object obj, Navigator nav)
Returns the number value of obj .
|
static boolean | isNaN(double val)
Determines whether the argument is not a number (NaN) as defined
by IEEE 754.
|
static boolean | isNaN(Double val)
Determines whether the argument is not a number (NaN) as defined
by IEEE 754.
|
NumberFunction
object.args.get(0)
,
or the number value of the context node if args
is empty.
Parameters: context the context at the point in the
expression when the function is called args a list containing the single item to be converted to a
Double
Returns: a Double
Throws: FunctionCallException if args
has more than one item
obj
.
Parameters: obj the object to be converted to a number nav the Navigator
used to calculate the string-value
of node-sets
Returns: a Double
Parameters: val the double to test
Returns: true if the value is NaN, false otherwise
Parameters: val the Double
to test
Returns: true if the value is NaN, false otherwise