## net.sf.saxon.instruct
Class Comment

    java.lang.Object
      |
      +--net.sf.saxon.expr.ComputedExpression
            |
            +--net.sf.saxon.instruct.Instruction
                  |
                  +--net.sf.saxon.instruct.InstructionWithChildren
                        |
                        +--net.sf.saxon.instruct.SimpleNodeConstructor
                              |
                              +--net.sf.saxon.instruct.Comment

All Implemented Interfaces:
  Container, Expression, InstructionInfoProvider, java.io.Serializable, javax.xml.transform.SourceLocator

public final class Comment
extends SimpleNodeConstructor

An instruction representing an xsl:comment element in the stylesheet.

See Also:
  Serialized Form

Field Summary

Fields inherited from class net.sf.saxon.instruct.SimpleNodeConstructor
`select, separator`

Fields inherited from class net.sf.saxon.instruct.InstructionWithChildren
`children`

Fields inherited from class net.sf.saxon.expr.ComputedExpression
`locationId, staticProperties`

Fields inherited from interface net.sf.saxon.expr.Expression
`EVALUATE_METHOD, ITERATE_METHOD, PROCESS_METHOD`

Constructor Summary
`Comment()` Construct the instruction

Method Summary
`protected java.lang.String` `checkContent(java.lang.String comment, XPathContext context)` Check the content of the node, and adjust it if necessary
`void` `display(int level, NamePool pool, java.io.PrintStream out)` Display this instruction as an expression, for diagnostics
`int` `getCardinality()` Determine the static cardinality of the expression.
`int` `getInstructionNameCode()` Get the instruction name, for diagnostics and tracing return the string "xsl:comment"
`ItemType` `getItemType()` Get the item type of the items returned by evaluating this instruction
`TailCall` `processLeavingTail(XPathContext context)` Process this instruction, to output a Comment Node
`void` `typeCheck(StaticContext env, ItemType contextItemType)`

Methods inherited from class net.sf.saxon.instruct.SimpleNodeConstructor
`analyze, evaluateItem, evaluateNameCode, expandChildren, iterate, iterateSubExpressions, promoteInst, setSelect, setSeparator, simplify`

Methods inherited from class net.sf.saxon.instruct.InstructionWithChildren
`displayChildren, getChildren, processChildren, processChildrenLeavingTail, setChildren`

Methods inherited from class net.sf.saxon.instruct.Instruction
`appendItem, assembleParams, assembleTunnelParams, computeCardinality, computeSpecialProperties, dynamicError, dynamicError, effectiveBooleanValue, evaluateAsString, getImplementationMethod, getInstructionInfo, getSourceLocator, process, promote`

Methods inherited from class net.sf.saxon.expr.ComputedExpression
`adoptChildExpression, computeDependencies, computeStaticProperties, dynamicError, dynamicError, getColumnNumber, getConstructType, getDependencies, getExecutable, getIntrinsicDependencies, getLineNumber, getLocationId, getParentExpression, getPublicId, getSpecialProperties, getSystemId, markTailFunctionCalls, resetStaticProperties, setLocationId, setParentExpression, typeError`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods inherited from interface javax.xml.transform.SourceLocator
`getColumnNumber, getLineNumber, getPublicId, getSystemId`

Constructor Detail

### Comment

    public Comment()

  Construct the instruction

Method Detail

### getInstructionNameCode

    public int getInstructionNameCode()

  Get the instruction name, for diagnostics and tracing return the string "xsl:comment"

  Overrides:
    `getInstructionNameCode` in class `Instruction`

### getItemType

    public ItemType getItemType()

  Description copied from class: `Instruction`
  Get the item type of the items returned by evaluating this instruction

  Specified by:
    `getItemType` in interface `Expression`
  Overrides:
    `getItemType` in class `Instruction`
  Returns:
    the static item type of the instruction

### getCardinality

    public int getCardinality()

  Description copied from class: `ComputedExpression`
  Determine the static cardinality of the expression. This establishes how many items there will be in the result of the expression, at compile time (i.e., without actually evaluating the result.

  Specified by:
    `getCardinality` in interface `Expression`
  Overrides:
    `getCardinality` in class `ComputedExpression`
  Returns:
    one of the values Cardinality.ONE_OR_MORE, Cardinality.ZERO_OR_MORE, Cardinality.EXACTLY_ONE, Cardinality.ZERO_OR_ONE, Cardinality.EMPTY. This default implementation returns ZERO_OR_MORE (which effectively gives no information).

### typeCheck

    public void typeCheck(StaticContext env,
                          ItemType contextItemType)

  Specified by:
    `typeCheck` in class `SimpleNodeConstructor`

### processLeavingTail

    public TailCall processLeavingTail(XPathContext context)
                                throws XPathException

  Process this instruction, to output a Comment Node

  Specified by:
    `processLeavingTail` in class `Instruction`
  Parameters:
    `context` - the dynamic context for this transformation
  Returns:
    a TailCall representing a call delegated to the caller. Always returns null in this implementation
    `XPathException`

### checkContent

    protected java.lang.String checkContent(java.lang.String comment,
                                            XPathContext context)
                                     throws DynamicError

  Check the content of the node, and adjust it if necessary

  Overrides:
    `checkContent` in class `SimpleNodeConstructor`
  Parameters:
    `comment` - the supplied content
    `context` - the dynamic context
  Returns:
    the original content, unless adjustments are needed
  Throws:
    `DynamicError` - if the content is invalid

### display

    public void display(int level,
                        NamePool pool,
                        java.io.PrintStream out)

  Description copied from class: `SimpleNodeConstructor`
  Display this instruction as an expression, for diagnostics

  Specified by:
    `display` in interface `Expression`
  Overrides:
    `display` in class `SimpleNodeConstructor`
  Parameters:
    `level` - indentation level for this expression
    `pool` - NamePool used to expand any names appearing in the expression
    `out` - Output destination