org.apache.xpath.objects

## Class XNull

- java.lang.Object
- - org.apache.xpath.Expression
  - - org.apache.xpath.objects.XObject
    - - org.apache.xpath.axes.NodeSequence
      - - org.apache.xpath.objects.XNodeSet
        - - org.apache.xpath.objects.XNull

- All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable, javax.xml.transform.SourceLocator, DTMIterator, PathComponent, ExpressionNode, XPathVisitable

      public class XNull
      extends XNodeSet

  This class represents an XPath null object, and is capable of converting the null to other types, such as a string.
  See Also:
    Serialized Form
  Usage:

- - ### Field Summary

    - ### Fields inherited from class org.apache.xpath.objects.XObject

      `CLASS_BOOLEAN, CLASS_NODESET, CLASS_NULL, CLASS_NUMBER, CLASS_RTREEFRAG, CLASS_STRING, CLASS_UNKNOWN, CLASS_UNRESOLVEDVARIABLE`

    - ### Fields inherited from interface org.apache.xml.dtm.DTMIterator

      `FILTER_ACCEPT, FILTER_REJECT, FILTER_SKIP`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `XNull()` Create an XObject.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `bool()` Cast result object to a boolean.
    `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.
    `double` | `num()` Cast result object to a number.
    `int` | `rtf(XPathContext support)` Cast result object to a result tree fragment.
    `java.lang.String` | `str()` Cast result object to a string.

    - ### Methods inherited from class org.apache.xpath.objects.XNodeSet

      `appendToFsb, boolWithSideEffects, compare, dispatchCharactersEvents, getFresh, getNumberFromNode, getStringFromNode, greaterThan, greaterThanOrEqual, iter, iterRaw, lessThan, lessThanOrEqual, mutableNodeset, nodelist, nodeset, notEquals, numWithSideEffects, object, release, xstr`

    - ### Methods inherited from class org.apache.xpath.axes.NodeSequence

      `allowDetachToRelease, clone, cloneWithReset, detach, fixupVariables, getAnalysisBits, getAxis, getContainedIter, getCurrentNode, getCurrentPos, getDTM, getDTMManager, getExpandEntityReferences, getLength, getRoot, getWhatToShow, hasCache, isDocOrdered, isFresh, isMutable, item, nextNode, previousNode, reset, runTo, setCurrentPos, setItem, setIter, setRoot, setShouldCacheNodes`

    - ### Methods inherited from class org.apache.xpath.objects.XObject

      `callVisitors, castToType, create, create, deepEquals, destruct, execute, rtf, rtree, rtree, toString`

    - ### Methods inherited from class org.apache.xpath.Expression

      `asIterator, asIteratorRaw, asNode, assertion, bool, canTraverseOutsideSubtree, error, execute, execute, execute, executeCharsToContentHandler, exprAddChild, exprGetChild, exprGetNumChildren, exprGetParent, exprSetParent, getColumnNumber, getExpressionOwner, getLineNumber, getPublicId, getSystemId, isNodesetExpr, isStableNumber, num, warn, xstr`

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### XNull

          public XNull()

      Create an XObject.

  - ### Method Detail

    - #### getType

          public int getType()

      Tell what kind of class this is.
      Overrides:
        `getType` in class `XNodeSet`
      Returns:
        type CLASS_NULL

    - #### getTypeString

          public java.lang.String getTypeString()

      Given a request type, return the equivalent string. For diagnostic purposes.
      Overrides:
        `getTypeString` in class `XNodeSet`
      Returns:
        type string "#CLASS_NULL"

    - #### num

          public double num()

      Cast result object to a number.
      Overrides:
        `num` in class `XNodeSet`
      Returns:
        0.0

    - #### bool

          public boolean bool()

      Cast result object to a boolean.
      Overrides:
        `bool` in class `XNodeSet`
      Returns:
        false

    - #### str

          public java.lang.String str()

      Cast result object to a string.
      Overrides:
        `str` in class `XNodeSet`
      Returns:
        empty string ""

    - #### rtf

          public int rtf(XPathContext support)

      Cast result object to a result tree fragment.
      Overrides:
        `rtf` in class `XObject`
      Parameters:
        `support` - XPath context to use for the conversion
      Returns:
        The object as a result tree fragment.

    - #### equals

          public boolean equals(XObject obj2)

      Tell if two objects are functionally equal.
      Overrides:
        `equals` in class `XNodeSet`
      Parameters:
        `obj2` - Object to compare this to
      Returns:
        True if the given object is of type CLASS_NULL

Copyright © 2023 Apache XML Project. All Rights Reserved.