Package org.htmlunit.xpath.objects
Class XNumber
java.lang.Object
org.htmlunit.xpath.Expression
org.htmlunit.xpath.objects.XObject
org.htmlunit.xpath.objects.XNumber
- All Implemented Interfaces:
SourceLocator
,ExpressionNode
,XPathVisitable
This class represents an XPath number, and is capable of converting the number to other types,
such as a string.
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) final double
Value of the XNumber object.Fields inherited from class org.htmlunit.xpath.objects.XObject
CLASS_BOOLEAN, CLASS_NODESET, CLASS_NULL, CLASS_NUMBER, CLASS_RTREEFRAG, CLASS_STRING, CLASS_UNKNOWN, m_obj
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionboolean
bool()
Cast result object to a boolean.void
callVisitors
(XPathVisitor visitor) This will traverse the hierarchy, calling the visitor for each member.boolean
Tell if two objects are functionally equal.int
getType()
Tell what kind of class this is.Given a request type, return the equivalent string.boolean
Tell if this expression returns a stable number that will not change during iterations within the expression.double
num()
Cast result object to a number.double
num
(XPathContext xctxt) Evaluate expression to a number.object()
Return a java object that's closest to the representation that should be handed to an extension.str()
Cast result object to a string.private static String
zeros
(int n) Return a string of '0' of the given lengthMethods inherited from class org.htmlunit.xpath.objects.XObject
boolWithSideEffects, deepEquals, detach, error, error, execute, greaterThan, greaterThanOrEqual, iter, lessThan, lessThanOrEqual, mutableNodeset, nodelist, nodeset, notEquals, numWithSideEffects, setObject, toString, xstr
Methods inherited from class org.htmlunit.xpath.Expression
asIterator, asNode, assertion, bool, canTraverseOutsideSubtree, error, execute, execute, execute, exprGetParent, exprSetParent, getColumnNumber, getExpressionOwner, getLineNumber, getPublicId, getSystemId, isSameClass
-
Field Details
-
m_val
final double m_valValue of the XNumber object.
-
-
Constructor Details
-
XNumber
public XNumber(double d) Construct a XNodeSet object.- Parameters:
d
- Value of the object
-
-
Method Details
-
getType
public int getType()Tell what kind of class this is. -
getTypeString
Given a request type, return the equivalent string. For diagnostic purposes.- Overrides:
getTypeString
in classXObject
- Returns:
- type string "#UNKNOWN" + object class name
-
num
public double num()Cast result object to a number. Always issues an error. -
num
Evaluate expression to a number.- Overrides:
num
in classExpression
- Parameters:
xctxt
- The XPath runtime context.- Returns:
- The expression evaluated as a double.
- Throws:
TransformerException
- if any
-
bool
public boolean bool()Cast result object to a boolean. Always issues an error. -
str
Cast result object to a string. -
zeros
Return a string of '0' of the given length- Parameters:
n
- Length of the string to be returned- Returns:
- a string of '0' with the given length
-
object
Return a java object that's closest to the representation that should be handed to an extension. -
equals
Tell if two objects are functionally equal. -
isStableNumber
public boolean isStableNumber()Tell if this expression returns a stable number that will not change during iterations within the expression. This is used to determine if a proximity position predicate can indicate that no more searching has to occur.- Overrides:
isStableNumber
in classExpression
- Returns:
- true if the expression represents a stable number.
-
callVisitors
This will traverse the hierarchy, calling the visitor for each member. If the called visitor method returns false, the subtree should not be called.- Specified by:
callVisitors
in interfaceXPathVisitable
- Overrides:
callVisitors
in classXObject
- Parameters:
visitor
- The visitor whose appropriate method will be called.
-