Package com.saxonica.ee.bytecode
Class ToIteratorCompiler
- java.lang.Object
-
- com.saxonica.ee.bytecode.ExpressionCompiler
-
- com.saxonica.ee.bytecode.ToIteratorCompiler
-
- Direct Known Subclasses:
AdjacentTextNodeMergerCompiler
,AnalyzeStringCompiler
,AtomicSequenceConverterCompiler
,AtomizerCompiler
,AxisExpressionCompiler
,BlockCompiler
,CallableExpressionCompiler
,CardinalityCheckerCompiler
,ChooseCompiler
,ConditionalSorterCompiler
,DocumentSorterCompiler
,EmptyTextNodeRemoverCompiler
,FilterExpressionCompiler
,FLWORExpressionCompiler
,ForExpressionCompiler
,FunctionSequenceCoercerCompiler
,HomogeneityCheckerCompiler
,IndexedFilterExpressionCompiler
,InterpretedExpressionCompiler
,ItemCheckerCompiler
,JavaExtensionFunctionCallCompiler
,LetExpressionCompiler
,LocalVariableReferenceCompiler
,OuterForExpressionCompiler
,RangeExpressionCompiler
,SimpleStepExpressionCompiler
,SingletonIntersectExpressionCompiler
,SlashExpressionCompiler
,SortExpressionCompiler
,StaticFunctionCallCompiler
,SuppliedParameterReferenceCompiler
,SwitchExpressionCompiler
,TailCallLoopCompiler
,TailExpressionCompiler
,ToPushCompiler
,TraceExpressionCompiler
,UserFunctionCallCompiler
,VariableReferenceCompiler
,VennExpressionCompiler
public abstract class ToIteratorCompiler extends ExpressionCompiler
Abstract superclass for expression compilers of expressions that return a general sequence. Such compilers must implement the method compileToIterator(). They may optionally implement other methods such as compileToItem().
-
-
Constructor Summary
Constructors Constructor Description ToIteratorCompiler()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description 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
compileToPush(CompilerService compiler, Expression expression)
Generate bytecode to evaluate the expression in push mode Precondition: none.-
Methods inherited from class com.saxonica.ee.bytecode.ExpressionCompiler
allocateStatic, compileItemFromInt, compileToIterator, compileToPrimitive, generateMethod, handleEmptyStringResult, printStackTop, verify, visitAnnotation, visitLineNumber
-
-
-
-
Method Detail
-
compileToItem
public void compileToItem(CompilerService compiler, Expression expression) throws CannotCompileException
Description copied from class:ExpressionCompiler
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).- Specified by:
compileToItem
in classExpressionCompiler
- Parameters:
compiler
- the compiler serviceexpression
- the expression to be compiled- Throws:
CannotCompileException
- if the expression cannot be compiled to bytecode
-
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- Specified by:
compileToPush
in classExpressionCompiler
- Parameters:
compiler
- the compiler serviceexpression
- the expression to be compiled- Throws:
CannotCompileException
- if the expression cannot be compiled to bytecode
-
compileToBoolean
public void compileToBoolean(CompilerService compiler, Expression expression) throws CannotCompileException
Description copied from class:ExpressionCompiler
Generate bytecode to evaluate the expression as a boolean Precondition: none. Postcondition: at execution time, the stack contains an integer (0=false, 1=true) representing the result of the expression- Specified by:
compileToBoolean
in classExpressionCompiler
- Parameters:
compiler
- the compiler serviceexpression
- the expression to be compiled- Throws:
CannotCompileException
- if the expression cannot be compiled to bytecode
-
-