Package org.objectweb.asm

Examples of org.objectweb.asm.MethodVisitor.visitTableSwitchInsn()


                for (int i = 0; i < attrInfoList.size(); i++) {
                    bindNativeLabels[i] = new Label();
                }
                bindNativeSwitch = new Label();
                bindNativeVisitor.visitLabel(bindNativeSwitch);
                bindNativeVisitor.visitTableSwitchInsn(0, attrInfoList.size() - 1, bindNativeDefault, bindNativeLabels);
            }
        }
       
        /* get_attribute_boxed */
        MethodVisitor getBoxedVisitor;
View Full Code Here


                for (int i = 0; i < attrInfoList.size(); i++) {
                    getBoxedLabels[i] = new Label();
                }
                getBoxedSwitch = new Label();
                getBoxedVisitor.visitLabel(getBoxedSwitch);
                getBoxedVisitor.visitTableSwitchInsn(0, attrInfoList.size() - 1, getBoxedDefault, getBoxedLabels);
            }
        }

        /* get_attribute_native */
        MethodVisitor getNativeVisitor;
View Full Code Here

                for (int i = 0; i < attrInfoList.size(); i++) {
                    getNativeLabels[i] = new Label();
                }
                getNativeSwitch = new Label();
                getNativeVisitor.visitLabel(getNativeSwitch);
                getNativeVisitor.visitTableSwitchInsn(0, attrInfoList.size() - 1, getNativeDefault, getNativeLabels);
            }
        }
       
        /* is_attribute_initialized */
        MethodVisitor isInitVisitor;
View Full Code Here

                for (int i = 0; i < attrInfoList.size(); i++) {
                    isInitLabels[i] = new Label();
                }
                isInitSwitch = new Label();
                isInitVisitor.visitLabel(isInitSwitch);
                isInitVisitor.visitTableSwitchInsn(0, attrInfoList.size() - 1, isInitDefault, isInitLabels);
            }
        }
       
        /* deserializeFields */
        MethodVisitor deserVisitor;
View Full Code Here

                        labels[labelArrayIndex] = label;
                    }
                }

                // Visit the table switch instruction.
                mv.visitTableSwitchInsn(firstValue, lastValue, defaultLabel, labels);           
            }

            // Iterate over the cases.      
            for (int caseN = 0; caseN < caseGroups.size(); ++caseN) {
                SwitchStatement.IntCaseGroup switchCase = caseGroups.get(caseN);
View Full Code Here

    MethodVisitor mv = cv.visitMethod(0, "foo", "()V", null, null);
    mv.visitCode();
    mv.visitInsn(Opcodes.ICONST_0);
    Label l1 = new Label();
    Label l2 = new Label();
    mv.visitTableSwitchInsn(0, 0, l1, new Label[] { l2 });
    mv.visitLabel(l1);
    mv.visitInsn(Opcodes.NOP);
    mv.visitLabel(l2);
    mv.visitInsn(Opcodes.RETURN);
    mv.visitMaxs(1, 1);
View Full Code Here

        final Label tableEnd = new Label();
        final Label[] labels = new Label[size];
        instructions.add(new BytecodeInstruction() {
            public void visit(MethodVisitor mv) {
                mv.visitVarInsn(ILOAD, 1);
                mv.visitTableSwitchInsn(0, size - 1, dflt, labels);
            }
        });

        // visit cases
        for (int i = 0; i < size; i++) {
View Full Code Here

            mv.visitVarInsn(ILOAD, 2);
            Label[] labels = new Label[n];
            for (int i = 0; i < n; i++)
              labels[i] = new Label();
            Label defaultLabel = new Label();
            mv.visitTableSwitchInsn(0, labels.length - 1, defaultLabel, labels);

            StringBuilder buffer = new StringBuilder(128);
            for (int i = 0; i < n; i++) {
              mv.visitLabel(labels[i]);
              if (i == 0)
View Full Code Here

      maxStack--;
      Label[] labels = new Label[fields.size()];
      for (int i = 0, n = labels.length; i < n; i++)
        labels[i] = new Label();
      Label defaultLabel = new Label();
      mv.visitTableSwitchInsn(0, labels.length - 1, defaultLabel, labels);

      for (int i = 0, n = labels.length; i < n; i++) {
        Field field = fields.get(i);
        Type fieldType = Type.getType(field.getType());
View Full Code Here

      maxStack--;
      Label[] labels = new Label[fields.size()];
      for (int i = 0, n = labels.length; i < n; i++)
        labels[i] = new Label();
      Label defaultLabel = new Label();
      mv.visitTableSwitchInsn(0, labels.length - 1, defaultLabel, labels);

      for (int i = 0, n = labels.length; i < n; i++) {
        Field field = fields.get(i);

        mv.visitLabel(labels[i]);
View Full Code Here

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.