com.saxonica.bytecode
Class SlashExpressionCompiler
java.lang.Object
com.saxonica.bytecode.ExpressionCompiler
com.saxonica.bytecode.ToIteratorCompiler
com.saxonica.bytecode.SlashExpressionCompiler
public class SlashExpressionCompiler
- extends ToIteratorCompiler
Generate bytecode for a call to a SlashExpression or an xsl:for-each instruction
(These have the same run-time semantics)
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 |
SlashExpressionCompiler
public SlashExpressionCompiler()
compileToIterator
public void compileToIterator(CompilerService compiler,
Expression expression)
throws CannotCompileException
- Generate bytecode to evaluate the SlashExpression as a ContextMappingIterator
Precondition: none.
Postcondition: the stack contains an iterator representing the result of the expression
- Specified by:
compileToIterator
in class ExpressionCompiler
- Parameters:
compiler
- the compiler serviceexpression
- the expression to be compiled
- Throws:
CannotCompileException
generateMappingFunction
public static CompiledContextMappingFunction generateMappingFunction(CompilerService compiler,
Expression step)
throws CannotCompileException
- Generate a mapping function for a given step expression
- Parameters:
compiler
- the CompilerServicestep
- the step expression to form the body of the mapping action
- Throws:
CannotCompileException
compileToPush
public void compileToPush(CompilerService compiler,
Expression expression)
throws CannotCompileException
- Description copied from class:
ExpressionCompiler
- Generate bytecode to evaluate the expression in push mode
Precondition: none.
Postcondition: at execution time, the stack is unchanged, and the value of the expression has been
written to the current receiver
- 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.