Class 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 Detail

      • m_val

        final double m_val
        Value of the XNumber object.
    • Constructor Detail

      • XNumber

        public XNumber​(double d)
        Construct a XNodeSet object.
        Parameters:
        d - Value of the object
    • Method Detail

      • getType

        public int getType()
        Tell what kind of class this is.
        Overrides:
        getType in class XObject
        Returns:
        CLASS_UNKNOWN
      • getTypeString

        public java.lang.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 javax.xml.transform.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:
        javax.xml.transform.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 java.lang.String str()
        Cast result object to a string.
        Overrides:
        str in class XObject
        Returns:
        The object as 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.
        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.