当前位置: 首页>>代码示例>>Java>>正文


Java FlowList类代码示例

本文整理汇总了Java中com.sun.org.apache.xalan.internal.xsltc.compiler.FlowList的典型用法代码示例。如果您正苦于以下问题:Java FlowList类的具体用法?Java FlowList怎么用?Java FlowList使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


FlowList类属于com.sun.org.apache.xalan.internal.xsltc.compiler包,在下文中一共展示了FlowList类的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: translateTo

import com.sun.org.apache.xalan.internal.xsltc.compiler.FlowList; //导入依赖的package包/类
/**
 * Translates a string into a synthesized boolean.
 *
 * @see     com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type#translateTo
 */
public void translateTo(ClassGenerator classGen, MethodGenerator methodGen,
                        BooleanType type) {
    final InstructionList il = methodGen.getInstructionList();
    FlowList falsel = translateToDesynthesized(classGen, methodGen, type);
    il.append(ICONST_1);
    final BranchHandle truec = il.append(new GOTO(null));
    falsel.backPatch(il.append(ICONST_0));
    truec.setTarget(il.append(NOP));
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:15,代码来源:StringType.java

示例2: translateToDesynthesized

import com.sun.org.apache.xalan.internal.xsltc.compiler.FlowList; //导入依赖的package包/类
/**
 * Translates a string into a non-synthesized boolean. It does not push a
 * 0 or a 1 but instead returns branchhandle list to be appended to the
 * false list.
 *
 * @see     com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type#translateToDesynthesized
 */
public FlowList translateToDesynthesized(ClassGenerator classGen,
                                         MethodGenerator methodGen,
                                         BooleanType type) {
    final ConstantPoolGen cpg = classGen.getConstantPool();
    final InstructionList il = methodGen.getInstructionList();

    il.append(new INVOKEVIRTUAL(cpg.addMethodref(STRING_CLASS,
                                                 "length", "()I")));
    return new FlowList(il.append(new IFEQ(null)));
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:18,代码来源:StringType.java

示例3: translateTo

import com.sun.org.apache.xalan.internal.xsltc.compiler.FlowList; //导入依赖的package包/类
/**
 * Expects a real on the stack and pushes a 0 if that number is 0.0 and
 * a 1 otherwise.
 *
 * @see     com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type#translateTo
 */
public void translateTo(ClassGenerator classGen, MethodGenerator methodGen,
                        BooleanType type) {
    final InstructionList il = methodGen.getInstructionList();
    FlowList falsel = translateToDesynthesized(classGen, methodGen, type);
    il.append(ICONST_1);
    final BranchHandle truec = il.append(new GOTO(null));
    falsel.backPatch(il.append(ICONST_0));
    truec.setTarget(il.append(NOP));
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:16,代码来源:RealType.java

示例4: translateToDesynthesized

import com.sun.org.apache.xalan.internal.xsltc.compiler.FlowList; //导入依赖的package包/类
/**
 * Translates a real into a non-synthesized boolean. It does not push a
 * 0 or a 1 but instead returns branchhandle list to be appended to the
 * false list. A NaN must be converted to "false".
 *
 * @see     com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type#translateToDesynthesized
 */
public FlowList translateToDesynthesized(ClassGenerator classGen,
                                         MethodGenerator methodGen,
                                         BooleanType type) {
    LocalVariableGen local;
    final FlowList flowlist = new FlowList();
    final ConstantPoolGen cpg = classGen.getConstantPool();
    final InstructionList il = methodGen.getInstructionList();

    // Store real into a local variable
    il.append(DUP2);
    local = methodGen.addLocalVariable("real_to_boolean_tmp",
                                       com.sun.org.apache.bcel.internal.generic.Type.DOUBLE,
                                       null, null);
    local.setStart(il.append(new DSTORE(local.getIndex())));

    // Compare it to 0.0
    il.append(DCONST_0);
    il.append(DCMPG);
    flowlist.add(il.append(new IFEQ(null)));

    //!!! call isNaN
    // Compare it to itself to see if NaN
    il.append(new DLOAD(local.getIndex()));
    local.setEnd(il.append(new DLOAD(local.getIndex())));
    il.append(DCMPG);
    flowlist.add(il.append(new IFNE(null)));        // NaN != NaN
    return flowlist;
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:36,代码来源:RealType.java

示例5: translateToDesynthesized

import com.sun.org.apache.xalan.internal.xsltc.compiler.FlowList; //导入依赖的package包/类
/**
 * Translates object of this type to an object of type <code>type</code>.
 * Expects an object of the former type and pushes an object of the latter
 * if not boolean. If type <code>type</code> is boolean then a branchhandle
 * list (to be appended to the false list) is returned.
 */
public FlowList translateToDesynthesized(ClassGenerator classGen,
                                         MethodGenerator methodGen,
                                         Type type) {
    FlowList fl = null;
    if (type == Type.Boolean) {
        fl = translateToDesynthesized(classGen, methodGen,
                                      (BooleanType)type);
    }
    else {
        translateTo(classGen, methodGen, type);
    }
    return fl;
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:20,代码来源:Type.java

示例6: translateToDesynthesized

import com.sun.org.apache.xalan.internal.xsltc.compiler.FlowList; //导入依赖的package包/类
/**
 * Expects a reference on the stack and translates it to a non-synthesized
 * boolean. It does not push a 0 or a 1 but instead returns branchhandle
 * list to be appended to the false list.
 *
 * @see com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type#translateToDesynthesized
 */
public FlowList translateToDesynthesized(ClassGenerator classGen,
                                         MethodGenerator methodGen,
                                         BooleanType type) {
    InstructionList il = methodGen.getInstructionList();
    translateTo(classGen, methodGen, type);
    return new FlowList(il.append(new IFEQ(null)));
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:15,代码来源:ReferenceType.java

示例7: translateTo

import com.sun.org.apache.xalan.internal.xsltc.compiler.FlowList; //导入依赖的package包/类
/**
 * Translates a node-set into a synthesized boolean.
 * The boolean value of a node-set is "true" if non-empty
 * and "false" otherwise. Notice that the
 * function getFirstNode() is called in translateToDesynthesized().
 *
 * @see     com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type#translateTo
 */
public void translateTo(ClassGenerator classGen, MethodGenerator methodGen,
                        BooleanType type) {
    final InstructionList il = methodGen.getInstructionList();
    FlowList falsel = translateToDesynthesized(classGen, methodGen, type);
    il.append(ICONST_1);
    final BranchHandle truec = il.append(new GOTO(null));
    falsel.backPatch(il.append(ICONST_0));
    truec.setTarget(il.append(NOP));
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:18,代码来源:NodeSetType.java

示例8: translateToDesynthesized

import com.sun.org.apache.xalan.internal.xsltc.compiler.FlowList; //导入依赖的package包/类
/**
 * Translates a node-set into a non-synthesized boolean. It does not
 * push a 0 or a 1 but instead returns branchhandle list to be appended
 * to the false list.
 *
 * @see     com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type#translateToDesynthesized
 */
public FlowList translateToDesynthesized(ClassGenerator classGen,
                                         MethodGenerator methodGen,
                                         BooleanType type) {
    final InstructionList il = methodGen.getInstructionList();
    getFirstNode(classGen, methodGen);
    return new FlowList(il.append(new IFLT(null)));
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:15,代码来源:NodeSetType.java

示例9: translateTo

import com.sun.org.apache.xalan.internal.xsltc.compiler.FlowList; //导入依赖的package包/类
/**
 * Translates a node into a synthesized boolean.
 * If the expression is "@attr",
 * then "true" is pushed iff "attr" is an attribute of the current node.
 * If the expression is ".", the result is always "true".
 *
 * @see     com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type#translateTo
 */
public void translateTo(ClassGenerator classGen, MethodGenerator methodGen,
                        BooleanType type) {
    final InstructionList il = methodGen.getInstructionList();
    FlowList falsel = translateToDesynthesized(classGen, methodGen, type);
    il.append(ICONST_1);
    final BranchHandle truec = il.append(new GOTO(null));
    falsel.backPatch(il.append(ICONST_0));
    truec.setTarget(il.append(NOP));
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:18,代码来源:NodeType.java


注:本文中的com.sun.org.apache.xalan.internal.xsltc.compiler.FlowList类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。