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.