net.sf.saxon.tree.linked
Class CommentImpl

java.lang.Object
  extended by net.sf.saxon.tree.linked.NodeImpl
      extended by net.sf.saxon.tree.linked.CommentImpl
All Implemented Interfaces:
javax.xml.transform.Source, javax.xml.transform.SourceLocator, PullEvent, FingerprintedNode, Item, MutableNodeInfo, NodeInfo, ValueRepresentation, SiblingCountingNode

final class CommentImpl
extends NodeImpl

CommentImpl is an implementation of a Comment node

Author:
Michael H. Kay

Field Summary
(package private)  java.lang.String comment
           
 
Fields inherited from class net.sf.saxon.tree.linked.NodeImpl
NODE_LETTER
 
Fields inherited from interface net.sf.saxon.om.NodeInfo
ALL_NAMESPACES, EMPTY_NAMESPACE_LIST, IS_DTD_TYPE, IS_NILLED, LOCAL_NAMESPACES, NO_NAMESPACES
 
Constructor Summary
CommentImpl(java.lang.String content)
           
 
Method Summary
 Value atomize()
          Get the typed value of this node.
 void copy(Receiver out, int copyOptions, int locationId)
          Copy this node to a given outputter
 int getNodeKind()
          Get the kind of node.
 java.lang.String getStringValue()
          Get the value of the item as a string.
 SequenceIterator getTypedValue()
          Get the typed value of this node.
 void replaceStringValue(java.lang.CharSequence stringValue)
          Replace the string-value of this node
 
Methods inherited from class net.sf.saxon.tree.linked.NodeImpl
addAttribute, addNamespace, compareOrder, delete, equals, generateId, getAttributeValue, getBaseURI, getColumnNumber, getConfiguration, getDeclaredNamespaces, getDisplayName, getDocumentNumber, getDocumentRoot, getFingerprint, getFirstChild, getLastChild, getLineNumber, getLocalPart, getNameCode, getNamePool, getNextInDocument, getNextSibling, getParent, getPhysicalRoot, getPrefix, getPreviousInDocument, getPreviousSibling, getPublicId, getRawParent, getRoot, getSequenceNumber, getSiblingPosition, getStringValueCS, getSystemId, getTypeAnnotation, getURI, hasChildNodes, insertChildren, insertSiblings, isDeleted, isId, isIdref, isNilled, isSameNodeInfo, iterateAxis, iterateAxis, newBuilder, removeAttribute, removeTypeAnnotation, rename, replace, setRawParent, setSiblingPosition, setSystemId, setTypeAnnotation
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface net.sf.saxon.om.NodeInfo
hashCode
 

Field Detail

comment

java.lang.String comment
Constructor Detail

CommentImpl

public CommentImpl(java.lang.String content)
Method Detail

getStringValue

public final java.lang.String getStringValue()
Description copied from interface: Item
Get the value of the item as a string. For nodes, this is the string value of the node as defined in the XPath 2.0 data model, except that all nodes are treated as being untyped: it is not an error to get the string value of a node with a complex type. For atomic values, the method returns the result of casting the atomic value to a string.

If the calling code can handle any CharSequence, the method Item.getStringValueCS() should be used. If the caller requires a string, this method is preferred.

Returns:
the string value of the item
See Also:
Item.getStringValueCS()

getTypedValue

public SequenceIterator getTypedValue()
Get the typed value of this node. Returns the string value, as an instance of xs:string

Specified by:
getTypedValue in interface Item
Overrides:
getTypedValue in class NodeImpl
Returns:
an iterator over the items in the typed value of the node or atomic value. The items returned by this iterator will always be atomic values.

atomize

public Value atomize()
Get the typed value of this node. Returns the string value, as an instance of xs:string

Specified by:
atomize in interface NodeInfo
Overrides:
atomize in class NodeImpl
Returns:
the typed value. If requireSingleton is set to true, the result will always be an AtomicValue. In other cases it may be a Value representing a sequence whose items are atomic values.

getNodeKind

public final int getNodeKind()
Description copied from interface: NodeInfo
Get the kind of node. This will be a value such as Type.ELEMENT or Type.ATTRIBUTE. There are seven kinds of node: documents, elements, attributes, text, comments, processing-instructions, and namespaces.

Returns:
an integer identifying the kind of node. These integer values are the same as those used in the DOM
See Also:
Type

copy

public void copy(Receiver out,
                 int copyOptions,
                 int 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-zero, identifies the location of the instruction that requested this copy. If zero, indicates that the location information
Throws:
XPathException

replaceStringValue

public void replaceStringValue(java.lang.CharSequence stringValue)
Replace the string-value of this node

Parameters:
stringValue - the new string value