All Implemented Interfaces:
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.
  • 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.
      Overrides:
      getType in class XObject
      Returns:
      CLASS_UNKNOWN
    • getTypeString

      public String getTypeString()
      Given a request type, return the equivalent string. For diagnostic purposes.
      Overrides:
      getTypeString in class XObject
      Returns:
      type string "#UNKNOWN" + object class name
    • num

      public double num()
      Cast result object to a number. Always issues an error.
      Overrides:
      num in class XObject
      Returns:
      0.0
    • num

      public double num(XPathContext xctxt) throws TransformerException
      Evaluate expression to a number.
      Overrides:
      num in class Expression
      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.
      Overrides:
      bool in class XObject
      Returns:
      false
    • str

      public String str()
      Cast result object to a string.
      Overrides:
      str in class XObject
      Returns:
      The object as a string
    • object

      public Object object()
      Return a java object that's closest to the representation that should be handed to an extension.
      Overrides:
      object in class XObject
      Returns:
      The object that this class wraps
    • equals

      public boolean equals(XObject obj2)
      Tell if two objects are functionally equal.
      Overrides:
      equals in class XObject
      Parameters:
      obj2 - Object to compare this to
      Returns:
      True if this object is equal to the given object
    • 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 class Expression
      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 interface XPathVisitable
      Overrides:
      callVisitors in class XObject
      Parameters:
      visitor - The visitor whose appropriate method will be called.