Package com.saxonica.ee.bytecode
Class CallableExpressionCompiler
- java.lang.Object
-
- com.saxonica.ee.bytecode.ExpressionCompiler
-
- com.saxonica.ee.bytecode.ToIteratorCompiler
-
- com.saxonica.ee.bytecode.CallableExpressionCompiler
-
public class CallableExpressionCompiler extends ToIteratorCompiler
Compiler for a CallableExpression. This merely generates a call on the expression's "call" method, which executes the interpreter code for the expression.
-
-
Constructor Summary
Constructors Constructor Description CallableExpressionCompiler()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static int
buildArgumentArray(CompilerService compiler, Generator ga, GeneratedMethodInfo methodInfo, java.util.List<Expression> subExpressions)
void
compileToIterator(CompilerService compiler, Expression expression)
Generate bytecode to evaluate the expression as aSequenceIterator
Precondition: none.-
Methods inherited from class com.saxonica.ee.bytecode.ToIteratorCompiler
compileToBoolean, compileToItem, compileToPush
-
Methods inherited from class com.saxonica.ee.bytecode.ExpressionCompiler
allocateStatic, compileItemFromInt, compileToPrimitive, generateMethod, handleEmptyStringResult, printStackTop, verify, visitAnnotation, visitLineNumber
-
-
-
-
Method Detail
-
compileToIterator
public void compileToIterator(CompilerService compiler, Expression expression) throws CannotCompileException
Description copied from class:ExpressionCompiler
Generate bytecode to evaluate the expression as aSequenceIterator
Precondition: none. Postcondition: at execution time, the stack contains a SequenceIterator representing the result of the expression- Specified by:
compileToIterator
in classExpressionCompiler
- Parameters:
compiler
- the compiler serviceexpression
- the expression to be compiled- Throws:
CannotCompileException
- if the expression cannot be compiled to bytecode
-
buildArgumentArray
public static int buildArgumentArray(CompilerService compiler, Generator ga, GeneratedMethodInfo methodInfo, java.util.List<Expression> subExpressions) throws CannotCompileException
- Throws:
CannotCompileException
-
-