예제 #1
0
 @Override
 public void visitMethodInsn(int opcode, String owner, String name, String desc, boolean itf) {
   if (api < Opcodes.ASM5) {
     super.visitMethodInsn(opcode, owner, name, desc, itf);
     return;
   }
   instructions.add(new MethodInsnNode(opcode, owner, name, desc, itf));
 }
예제 #2
0
 @Deprecated
 @Override
 public void visitMethodInsn(int opcode, String owner, String name, String desc) {
   if (api >= Opcodes.ASM5) {
     super.visitMethodInsn(opcode, owner, name, desc);
     return;
   }
   instructions.add(new MethodInsnNode(opcode, owner, name, desc));
 }
예제 #3
0
 @Override
 public void visitFrame(
     final int type,
     final int nLocal,
     final Object[] local,
     final int nStack,
     final Object[] stack) {
   instructions.add(
       new FrameNode(
           type,
           nLocal,
           local == null ? null : getLabelNodes(local),
           nStack,
           stack == null ? null : getLabelNodes(stack)));
 }
예제 #4
0
 @Override
 public void visitLookupSwitchInsn(final Label dflt, final int[] keys, final Label[] labels) {
   instructions.add(new LookupSwitchInsnNode(getLabelNode(dflt), keys, getLabelNodes(labels)));
 }
예제 #5
0
 @Override
 public void visitTableSwitchInsn(
     final int min, final int max, final Label dflt, final Label... labels) {
   instructions.add(new TableSwitchInsnNode(min, max, getLabelNode(dflt), getLabelNodes(labels)));
 }
예제 #6
0
 @Override
 public void visitIincInsn(final int var, final int increment) {
   instructions.add(new IincInsnNode(var, increment));
 }
예제 #7
0
 @Override
 public void visitLdcInsn(final Object cst) {
   instructions.add(new LdcInsnNode(cst));
 }
예제 #8
0
 @Override
 public void visitLabel(final Label label) {
   instructions.add(getLabelNode(label));
 }
예제 #9
0
 @Override
 public void visitJumpInsn(final int opcode, final Label label) {
   instructions.add(new JumpInsnNode(opcode, getLabelNode(label)));
 }
예제 #10
0
 @Override
 public void visitInsn(final int opcode) {
   instructions.add(new InsnNode(opcode));
 }
예제 #11
0
 @Override
 public void visitFieldInsn(
     final int opcode, final String owner, final String name, final String desc) {
   instructions.add(new FieldInsnNode(opcode, owner, name, desc));
 }
예제 #12
0
 @Override
 public void visitTypeInsn(final int opcode, final String type) {
   instructions.add(new TypeInsnNode(opcode, type));
 }
예제 #13
0
 @Override
 public void visitVarInsn(final int opcode, final int var) {
   instructions.add(new VarInsnNode(opcode, var));
 }
예제 #14
0
 @Override
 public void visitIntInsn(final int opcode, final int operand) {
   instructions.add(new IntInsnNode(opcode, operand));
 }
예제 #15
0
 @Override
 public void visitMultiANewArrayInsn(final String desc, final int dims) {
   instructions.add(new MultiANewArrayInsnNode(desc, dims));
 }
예제 #16
0
 @Override
 public void visitLineNumber(final int line, final Label start) {
   instructions.add(new LineNumberNode(line, getLabelNode(start)));
 }
예제 #17
0
 @Override
 public void visitInvokeDynamicInsn(String name, String desc, Handle bsm, Object... bsmArgs) {
   instructions.add(new InvokeDynamicInsnNode(name, desc, bsm, bsmArgs));
 }