public class LetExpressionCompiler extends ToIteratorCompiler
Constructor and Description |
---|
LetExpressionCompiler() |
Modifier and Type | Method and Description |
---|---|
static void |
compileCommonExpr(CompilerService compiler,
Expression exp,
int evaluationMode,
int refCount)
Helper method to generate bytecode the same for both compileToIterator and compileToItem
Precondition: none.
|
void |
compileToItem(CompilerService compiler,
Expression expression)
Generate bytecode to evaluate the LetExpression as an Item
Precondition: none.
|
void |
compileToIterator(CompilerService compiler,
Expression expression)
Generate bytecode to evaluate the LetExpression as an Iterator
Precondition: none.
|
void |
compileToPush(CompilerService compiler,
Expression expression)
Generate bytecode to evaluate the LetExpression as an Item
Precondition: none.
|
compileToBoolean
allocateStatic, compileItemFromInt, compileToLoop, compileToPrimitive, generateMethod, handleEmptyStringResult, printStackTop, unboxItem, verify, visitAnnotation, visitLineNumber
public void compileToItem(CompilerService compiler, Expression expression) throws CannotCompileException
compileToItem
in class ToIteratorCompiler
compiler
- the compiler serviceexpression
- the expression to be compiledCannotCompileException
public void compileToPush(CompilerService compiler, Expression expression) throws CannotCompileException
compileToPush
in class ToIteratorCompiler
compiler
- the compiler serviceexpression
- the expression to be compiledCannotCompileException
public void compileToIterator(CompilerService compiler, Expression expression) throws CannotCompileException
compileToIterator
in class ExpressionCompiler
compiler
- the compiler serviceexpression
- the expression to be compiledCannotCompileException
public static void compileCommonExpr(CompilerService compiler, Expression exp, int evaluationMode, int refCount) throws CannotCompileException
compiler
- the compiler serviceexp
- the expression to be compiledCannotCompileException
Copyright (c) 2004-2018 Saxonica Limited. All rights reserved.