com.saxonica.bytecode
Class InterpretedExpressionCompiler
java.lang.Object
com.saxonica.bytecode.ExpressionCompiler
com.saxonica.bytecode.ToIteratorCompiler
com.saxonica.bytecode.InterpretedExpressionCompiler
public class InterpretedExpressionCompiler
- extends ToIteratorCompiler
Bytecode generator for instructions that calls back to the interpreter. This generates code which simply invokes the
interpreter for this instruction, including interpreting its subexpressions and patterns
| Methods inherited from class com.saxonica.bytecode.ExpressionCompiler |
allocateStatic, compileItemFromInt, compileItemFromString, compileToLoop, compileToPrimitive, generateMethod, getConfiguration, handleEmptyStringResult, setConfiguration, throwXPathException, throwXPathException, unboxItem, verify, visitAnnotation, visitLineNumber |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
InterpretedExpressionCompiler
public InterpretedExpressionCompiler()
compileToItem
public void compileToItem(CompilerService compiler,
Expression expression)
throws CannotCompileException
- Generate bytecode to evaluate the expression as an Item
Precondition: none.
Postcondition: at execution time, the stack contains either an item (the result of the expression), or null
(representing an empty sequence).
- Overrides:
compileToItem in class ToIteratorCompiler
- Parameters:
compiler - the compiler serviceexpression - the expression to be compiled
- Throws:
CannotCompileException
compileToIterator
public void compileToIterator(CompilerService compiler,
Expression expression)
throws CannotCompileException
- Generate bytecode to evaluate the expression as an Iterator
Precondition: none.
Postcondition: at execution time, the stack contains either an iterator (the result of the expression)
- Specified by:
compileToIterator in class ExpressionCompiler
- Parameters:
compiler - the compiler serviceexpression - the expression to be compiled
- Throws:
CannotCompileException
compileToPush
public void compileToPush(CompilerService compiler,
Expression expression)
throws CannotCompileException
- Generate bytecode to evaluate the expression
Precondition: none.
Postcondition: at execution time, the stack contains either an iterator (the result of the expression)
- Overrides:
compileToPush in class ToIteratorCompiler
- Parameters:
compiler - the compiler serviceexpression - the expression to be compiled
- Throws:
CannotCompileException
Copyright (c) 2004-2011 Saxonica Limited. All rights reserved.