Search in sources :

Example 1 with BooleanType

use of org.apache.xalan.xsltc.compiler.util.BooleanType in project servicemix-bundles by apache.

the class FunctionCall method translateDesynthesized.

/**
 * Compile the function call and treat as an expression
 * Update true/false-lists.
 */
public void translateDesynthesized(ClassGenerator classGen, MethodGenerator methodGen) {
    Type type = Type.Boolean;
    if (_chosenMethodType != null)
        type = _chosenMethodType.resultType();
    final InstructionList il = methodGen.getInstructionList();
    translate(classGen, methodGen);
    if ((type instanceof BooleanType) || (type instanceof IntType)) {
        _falseList.add(il.append(new IFEQ(null)));
    }
}
Also used : BooleanType(org.apache.xalan.xsltc.compiler.util.BooleanType) Type(org.apache.xalan.xsltc.compiler.util.Type) ObjectType(org.apache.xalan.xsltc.compiler.util.ObjectType) IntType(org.apache.xalan.xsltc.compiler.util.IntType) MethodType(org.apache.xalan.xsltc.compiler.util.MethodType) ReferenceType(org.apache.xalan.xsltc.compiler.util.ReferenceType) InstructionList(org.apache.bcel.generic.InstructionList) BooleanType(org.apache.xalan.xsltc.compiler.util.BooleanType) IFEQ(org.apache.bcel.generic.IFEQ) IntType(org.apache.xalan.xsltc.compiler.util.IntType)

Aggregations

IFEQ (org.apache.bcel.generic.IFEQ)1 InstructionList (org.apache.bcel.generic.InstructionList)1 BooleanType (org.apache.xalan.xsltc.compiler.util.BooleanType)1 IntType (org.apache.xalan.xsltc.compiler.util.IntType)1 MethodType (org.apache.xalan.xsltc.compiler.util.MethodType)1 ObjectType (org.apache.xalan.xsltc.compiler.util.ObjectType)1 ReferenceType (org.apache.xalan.xsltc.compiler.util.ReferenceType)1 Type (org.apache.xalan.xsltc.compiler.util.Type)1