Package net.sf.saxon.tree.tiny

## Class WhitespaceTextImpl

- java.lang.Object
- - net.sf.saxon.tree.tiny.TinyNodeImpl
  - - net.sf.saxon.tree.tiny.WhitespaceTextImpl

- All Implemented Interfaces:
    `javax.xml.transform.Source`, `javax.xml.transform.SourceLocator`, `GroundedValue`, `Item`, `NodeInfo`, `Sequence`, `Location`, `org.xml.sax.Locator`

      public final class WhitespaceTextImpl
      extends TinyNodeImpl

  A node in the XML parse tree representing a text node with compressed whitespace content

- - ### Field Summary

    - ### Fields inherited from class net.sf.saxon.tree.tiny.TinyNodeImpl

      `NODE_LETTER, nodeNr, parent, tree`

    - ### Fields inherited from interface net.sf.saxon.om.NodeInfo

      `IS_DTD_TYPE, IS_NILLED`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `WhitespaceTextImpl​(TinyTree tree, int nodeNr)` | Create a compressed whitespace text node

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `static void` | `appendStringValue​(TinyTree tree, int nodeNr, FastStringBuffer buffer)` | Static method to get the string value of a text node and append it to a supplied buffer without first constructing the node object
    `AtomicSequence` | `atomize()` | Get the typed value.
    `void` | `copy​(Receiver out, int copyOptions, Location locationId)` | Copy this node to a given outputter
    `static long` | `getLongValue​(TinyTree tree, int nodeNr)` | Static method to get the "long" value representing the content of a whitespace text node
    `int` | `getNodeKind()` | Return the type of node.
    `java.lang.String` | `getStringValue()` | Return the character value of the node.
    `java.lang.CharSequence` | `getStringValueCS()` | Get the value of the item as a CharSequence.
    `static java.lang.CharSequence` | `getStringValueCS​(TinyTree tree, int nodeNr)` | Static method to get the string value of a text node without first constructing the node object

    - ### Methods inherited from class net.sf.saxon.tree.tiny.TinyNodeImpl

      `compareOrder, equals, generateId, getAllNamespaces, getAttributeValue, getBaseURI, getColumnNumber, getConfiguration, getDeclaredNamespaces, getDisplayName, getFingerprint, getGenre, getLineNumber, getLocalPart, getNamePool, getNodeNumber, getParent, getPrefix, getRoot, getSchemaType, getSequenceNumber, getSystemId, getTree, getTreeInfo, getURI, hasChildNodes, hasFingerprint, hashCode, head, isAncestorOrSelf, isId, isIdref, isNilled, isSameNodeInfo, isStreamed, iterateAxis, iterateAxis, saveLocation, setParentNode, setSystemId`

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

      `clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface net.sf.saxon.om.GroundedValue

      `asIterable, concatenate, containsNode, effectiveBooleanValue, materialize`

    - ### Methods inherited from interface net.sf.saxon.om.Item

      `getLength, itemAt, iterate, reduce, subsequence`

    - ### Methods inherited from interface net.sf.saxon.om.NodeInfo

      `attributes, children, children, getPublicId, toShortString`

    - ### Methods inherited from interface net.sf.saxon.om.Sequence

      `makeRepeatable`

    - ### Methods inherited from interface javax.xml.transform.Source

      `isEmpty`

- - ### Constructor Detail

    - #### WhitespaceTextImpl

          public WhitespaceTextImpl​(TinyTree tree,
                                    int nodeNr)

      Create a compressed whitespace text node
      Parameters:
        `tree` - the tree to contain the node
        `nodeNr` - the internal node number

  - ### Method Detail

    - #### getStringValue

          public java.lang.String getStringValue()

      Return the character value of the node.
      Returns:
        the string value of the node
      See Also:
        `Item.getStringValueCS()`

    - #### getStringValueCS

          public java.lang.CharSequence getStringValueCS()

      Get the value of the item as a CharSequence. This is in some cases more efficient than the version of the method that returns a String. For a WhitespaceTextImpl node, it avoids the cost of decompressing the whitespace
      Specified by:
        `getStringValueCS` in interface `GroundedValue`
      Specified by:
        `getStringValueCS` in interface `Item`
      Overrides:
        `getStringValueCS` in class `TinyNodeImpl`
      Returns:
        the string value of the item
      See Also:
        `Item.getStringValue()`

    - #### getStringValueCS

          public static java.lang.CharSequence getStringValueCS​(TinyTree tree,
                                                                int nodeNr)

      Static method to get the string value of a text node without first constructing the node object
      Parameters:
        `tree` - the tree
        `nodeNr` - the node number of the text node
      Returns:
        the string value of the text node

    - #### appendStringValue

          public static void appendStringValue​(TinyTree tree,
                                               int nodeNr,
                                               FastStringBuffer buffer)

      Static method to get the string value of a text node and append it to a supplied buffer without first constructing the node object
      Parameters:
        `tree` - the tree
        `nodeNr` - the node number of the text node
        `buffer` - a buffer to which the string value will be appended

    - #### atomize

          public AtomicSequence atomize()

      Get the typed value.
      Returns:
        the typed value. This will either be a single AtomicValue or a Value whose items are atomic values.
      Since:
        8.5

    - #### getLongValue

          public static long getLongValue​(TinyTree tree,
                                          int nodeNr)

      Static method to get the "long" value representing the content of a whitespace text node
      Parameters:
        `tree` - the TinyTree
        `nodeNr` - the internal node number
      Returns:
        a value representing the compressed whitespace content
      See Also:
        `CompressedWhitespace`

    - #### getNodeKind

          public final int getNodeKind()

      Return the type of node.
      Returns:
        Type.TEXT
      See Also:
        `Type`

    - #### copy

          public void copy​(Receiver out,
                           int copyOptions,
                           Location locationId)
                    throws XPathException

      Copy this node to a given outputter
      Parameters:
        `out` - the Receiver to which the node should be copied. It is the caller's responsibility to ensure that this Receiver is open before the method is called (or that it is self-opening), and that it is closed after use.
        `copyOptions` - a selection of the options defined in `CopyOptions`
        `locationId` - If non-null, identifies the location of the instruction that requested this copy. If zero, indicates that the location information is not available
      Throws:
        `XPathException` - if any downstream error occurs