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:
javax.xml.transform.SourceLocator
,ExpressionNode
,XPathVisitable
public class XNumber extends XObject
This class represents an XPath number, and is capable of converting the number to other types, such as a string.
-
-
Field Summary
Fields Modifier and Type Field Description (package private) double
m_val
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 Constructor Description XNumber(double d)
Construct a XNodeSet object.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
bool()
Cast result object to a boolean.void
callVisitors(XPathVisitor visitor)
This will traverse the hierarchy, calling the visitor for each member.boolean
equals(XObject obj2)
Tell if two objects are functionally equal.int
getType()
Tell what kind of class this is.java.lang.String
getTypeString()
Given a request type, return the equivalent string.boolean
isStableNumber()
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.java.lang.Object
object()
Return a java object that's closest to the representation that should be handed to an extension.java.lang.String
str()
Cast result object to a string.private static java.lang.String
zeros(int n)
Return a string of '0' of the given length-
Methods 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
-
-
-
-
Method Detail
-
getType
public int getType()
Tell what kind of class this is.
-
getTypeString
public java.lang.String 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
public double num(XPathContext xctxt) throws javax.xml.transform.TransformerException
Evaluate expression to a number.- Overrides:
num
in classExpression
- Parameters:
xctxt
- The XPath runtime context.- Returns:
- The expression evaluated as a double.
- Throws:
javax.xml.transform.TransformerException
- if any
-
bool
public boolean bool()
Cast result object to a boolean. Always issues an error.
-
str
public java.lang.String str()
Cast result object to a string.
-
zeros
private static java.lang.String zeros(int n)
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
public java.lang.Object object()
Return a java object that's closest to the representation that should be handed to an extension.
-
equals
public boolean equals(XObject obj2)
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
public void callVisitors(XPathVisitor visitor)
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.
-
-