|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.saxonica.bytecode.ExpressionCompiler com.saxonica.bytecode.ToIteratorCompiler com.saxonica.bytecode.ChooseCompiler
public class ChooseCompiler
Generate code for a conditional expression (if-then-else, xsl:if, xsl:choose, typeswitch...)
Constructor Summary | |
---|---|
ChooseCompiler()
|
Method Summary | |
---|---|
void |
compileToBoolean(CompilerService compiler,
Expression expression)
Generate bytecode to evaluate the expression as a boolean Precondition: none. |
void |
compileToItem(CompilerService compiler,
Expression expression)
Generate bytecode to evaluate the expression as an Item Precondition: none. |
void |
compileToIterator(CompilerService compiler,
Expression expression)
Generate bytecode to evaluate the expression as a SequenceIterator Precondition: none. |
void |
compileToPrimitive(CompilerService compiler,
Expression expression,
Class requiredClass,
OnEmpty onEmpty)
Generate bytecode to evaluate the expression leaving a plain Java value on the stack. |
void |
compileToPush(CompilerService compiler,
Expression expression)
Generate bytecode to evaluate the expression in push mode Precondition: none. |
Methods inherited from class com.saxonica.bytecode.ExpressionCompiler |
---|
allocateStatic, compileItemFromInt, compileItemFromString, compileToLoop, 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 |
Constructor Detail |
---|
public ChooseCompiler()
Method Detail |
---|
public void compileToIterator(CompilerService compiler, Expression expression) throws CannotCompileException
compileToIterator
in class ExpressionCompiler
compiler
- the compiler serviceexpression
- the expression to be compiled
CannotCompileException
public void compileToItem(CompilerService compiler, Expression expression) throws CannotCompileException
ExpressionCompiler
compileToItem
in class ToIteratorCompiler
compiler
- the compiler serviceexpression
- the expression to be compiled
CannotCompileException
public void compileToBoolean(CompilerService compiler, Expression expression) throws CannotCompileException
ExpressionCompiler
compileToBoolean
in class ToIteratorCompiler
compiler
- the compiler serviceexpression
- the expression to be compiled
CannotCompileException
public void compileToPrimitive(CompilerService compiler, Expression expression, Class requiredClass, OnEmpty onEmpty) throws CannotCompileException
ExpressionCompiler
compileToPrimitive
in class ExpressionCompiler
compiler
- the compiler serviceexpression
- the expression to be compiledrequiredClass
- the class of the Java value that is to be left on the stack if the generated code
exits normally. This must be one of Integer.TYPE, Double.TYPE, Float.TYPE, BigDecimal.class, CharSequence.class.onEmpty
- defines the action to be taken if the expression evaluates to the empty sequence.
May be null if the expression is known statically not to evaluate to an empty sequence. If the return
class is a primitive type (double, float, etc) this must be an instance of OnEmpty.UnwindAndJump
CannotCompileException
public void compileToPush(CompilerService compiler, Expression expression) throws CannotCompileException
ExpressionCompiler
compileToPush
in class ToIteratorCompiler
compiler
- the compiler serviceexpression
- the expression to be compiled
CannotCompileException
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |