com.saxonica.codegen
Class ForEachCompiler
java.lang.Object
com.saxonica.codegen.ExpressionCompiler
com.saxonica.codegen.SequenceExpressionCompiler
com.saxonica.codegen.ForEachCompiler
public class ForEachCompiler
- extends SequenceExpressionCompiler
Generate Java code to evaluate a simple mapping expression (that is, the "/" operator,
when the expression on the rhs is known to return atomic values). This appears on the
expression tree as an xsl:for-each instruction, since the semantics are identical.
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ForEachCompiler
public ForEachCompiler()
compileToIterator
public String compileToIterator(CompilerService compiler,
Expression expr)
- Description copied from class:
ExpressionCompiler
- Generate Java code to evaluate the expression as a SequenceIterator
- Specified by:
compileToIterator
in class ExpressionCompiler
- Parameters:
compiler
- the compiler serviceexpr
- the XPath expression to be compiled
- Returns:
- a simple Java expression (usually the name of a variable that
has been declared) which will be of class
SequenceIterator
,
and which at run-time will hold an iterator over the the value of the XPath expression
compilePush
public void compilePush(CompilerService compiler,
Expression expr)
- Description copied from class:
ExpressionCompiler
- Generate Java code to execute the expression in push mode, that is, code to
write events to the current output Receiver
- Overrides:
compilePush
in class SequenceExpressionCompiler
- Parameters:
compiler
- the compiler serviceexpr
- the expression to be compiled
compileAsLoop
public void compileAsLoop(CompilerService compiler,
Expression expr,
LoopAction action)
- Description copied from class:
ExpressionCompiler
- Compile an XPath expression in the form of a loop. This generates Java code that loops over the items
in the result of the expression; the body of the loop is constructed by a callback to the supplied
LoopAction (which will handle nested expressions)
- Overrides:
compileAsLoop
in class ExpressionCompiler
- Parameters:
compiler
- the CompilerServiceexpr
- the XPath expression to be compiledaction
- the action to be taken to compile code that processes each item in the
sequence returned by the XPath expression
Copyright (c) 2004-2010 Saxonica Limited. All rights reserved.