|
|||||||||
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.ToPushCompiler com.saxonica.bytecode.SimpleNodeConstructorCompiler
public abstract class SimpleNodeConstructorCompiler
Constructor Summary | |
---|---|
SimpleNodeConstructorCompiler()
|
Method Summary | |
---|---|
protected void |
checkContent(CompilerService compiler,
Expression expression)
Compile code to check the content of the node, and adjust it if necessary On entry the proposed content is on the stack as a CharSequence; on exit the revised content must be on the stack as a CharSequence. |
protected void |
compileNodeName(CompilerService compiler,
Expression expression)
Compile code to generate the node name (if any) and leave it on the top of the stack. |
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. |
protected boolean |
isNamedNodeKind()
Ask whether this instruction generates a kind of node that is named |
protected boolean |
isNoNodeIfEmpty(Expression expr)
Overridable method to ask whether no node should be produced in the case that the content is empty |
protected abstract void |
pushNode(CompilerService compiler,
Expression expression)
Generate code to write the node to the current receiver. |
Methods inherited from class com.saxonica.bytecode.ToPushCompiler |
---|
compileToIterator |
Methods inherited from class com.saxonica.bytecode.ToIteratorCompiler |
---|
compileToBoolean |
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 |
Constructor Detail |
---|
public SimpleNodeConstructorCompiler()
Method Detail |
---|
public void compileToPush(CompilerService compiler, Expression expression) throws CannotCompileException
ExpressionCompiler
compileToPush
in class ToIteratorCompiler
compiler
- the compiler serviceexpression
- the expression to be compiled
CannotCompileException
protected boolean isNoNodeIfEmpty(Expression expr)
protected void checkContent(CompilerService compiler, Expression expression)
compiler
- expression
- protected void compileNodeName(CompilerService compiler, Expression expression) throws CannotCompileException
CannotCompileException
protected abstract void pushNode(CompilerService compiler, Expression expression)
compiler
- expression
- protected boolean isNamedNodeKind()
public void compileToItem(CompilerService compiler, Expression expression) throws CannotCompileException
ExpressionCompiler
compileToItem
in class ToPushCompiler
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 |