Package com.saxonica.ee.bytecode

## Class ComputedElementCompiler

- java.lang.Object
- - com.saxonica.ee.bytecode.ExpressionCompiler
  - - com.saxonica.ee.bytecode.ToIteratorCompiler
    - - com.saxonica.ee.bytecode.ToPushCompiler
      - - com.saxonica.ee.bytecode.ElementCreatorCompiler
        - - com.saxonica.ee.bytecode.ComputedElementCompiler

-     public class ComputedElementCompiler
      extends ElementCreatorCompiler

  Generate bytecode for a computed element constructor (or xsl:element in XSLT)

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `ComputedElementCompiler()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `identifyExpression​(CompilerService compiler, Expression expression, java.lang.String evalMode)` |
    `protected void` | `outputNamespaceNodes​(CompilerService compiler, Expression expression)` | Callback for subclasses to implement: generate code to output namespace nodes
    `protected void` | `pushNodeName​(CompilerService compiler, Expression expression)` | Callback from the superclass ElementCreatorCompiler to get the NodeName.

    - ### Methods inherited from class com.saxonica.ee.bytecode.ElementCreatorCompiler

      `addTypeStripper, compileToPush`

    - ### Methods inherited from class com.saxonica.ee.bytecode.ToPushCompiler

      `compilePushToSequenceCollector, compileToItem, compileToIterator`

    - ### Methods inherited from class com.saxonica.ee.bytecode.ToIteratorCompiler

      `compileToBoolean`

    - ### Methods inherited from class com.saxonica.ee.bytecode.ExpressionCompiler

      `allocateStatic, compileItemFromInt, compileToPrimitive, generateMethod, handleEmptyStringResult, printStackTop, verify, visitAnnotation, visitLineNumber`

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

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

- - ### Constructor Detail

    - #### ComputedElementCompiler

          public ComputedElementCompiler()

  - ### Method Detail

    - #### pushNodeName

          protected void pushNodeName​(CompilerService compiler,
                                      Expression expression)
                               throws CannotCompileException

      Callback from the superclass ElementCreatorCompiler to get the NodeName. Leaves the NodeName for the element name on the stack
      Specified by:
        `pushNodeName` in class `ElementCreatorCompiler`
      Parameters:
        `compiler` - the compiler service
        `expression` - the expression to be compiled
      Throws:
        `CannotCompileException` - if the expression cannot be compiled to bytecode

    - #### outputNamespaceNodes

          protected void outputNamespaceNodes​(CompilerService compiler,
                                              Expression expression)

      Description copied from class: `ElementCreatorCompiler`
      Callback for subclasses to implement: generate code to output namespace nodes
      Overrides:
        `outputNamespaceNodes` in class `ElementCreatorCompiler`
      Parameters:
        `compiler` - the compiler service
        `expression` - the expression to be compiled

    - #### identifyExpression

          public void identifyExpression​(CompilerService compiler,
                                         Expression expression,
                                         java.lang.String evalMode)

      Specified by:
        `identifyExpression` in class `ElementCreatorCompiler`