List of usage examples for org.objectweb.asm MethodVisitor visitVarInsn
public void visitVarInsn(final int opcode, final int var)
From source file:com.gargoylesoftware.js.nashorn.internal.codegen.types.LongType.java
License:Open Source License
@Override public Type load(final MethodVisitor method, final int slot) { assert slot != -1; method.visitVarInsn(LLOAD, slot); return LONG;//w ww. java2s . c o m }
From source file:com.gargoylesoftware.js.nashorn.internal.codegen.types.LongType.java
License:Open Source License
@Override public void store(final MethodVisitor method, final int slot) { assert slot != -1; method.visitVarInsn(LSTORE, slot); }
From source file:com.gargoylesoftware.js.nashorn.internal.codegen.types.NumberType.java
License:Open Source License
@Override public Type load(final MethodVisitor method, final int slot) { assert slot != -1; method.visitVarInsn(DLOAD, slot); return NUMBER; }
From source file:com.gargoylesoftware.js.nashorn.internal.codegen.types.NumberType.java
License:Open Source License
@Override public void store(final MethodVisitor method, final int slot) { assert slot != -1; method.visitVarInsn(DSTORE, slot); }
From source file:com.gargoylesoftware.js.nashorn.internal.codegen.types.ObjectType.java
License:Open Source License
@Override public void store(final MethodVisitor method, final int slot) { assert slot != -1; method.visitVarInsn(ASTORE, slot); }
From source file:com.github.bmsantos.core.cola.injector.ErrorsClassVisitor.java
License:Apache License
private void injectTestMethod() { final MethodVisitor mv = classVisitor.visitMethod(ACC_PUBLIC, METHOD_NAME, "()V", null, null); mv.visitCode();/* www . ja va 2 s .com*/ mv.visitVarInsn(ALOAD, 0); mv.visitLdcInsn(errors); mv.visitMethodInsn(INVOKESTATIC, "org/junit/Assert", "fail", "(Ljava/lang/String;)V", false); mv.visitInsn(RETURN); mv.visitAnnotation("Lorg/junit/Test;", true); mv.visitEnd(); mv.visitMaxs(0, 0); }
From source file:com.github.bmsantos.core.cola.injector.InjectorClassVisitor.java
License:Apache License
private void injectTestMethod(final String feature, final String scenario, final String story, final String projectionValues, final String reports) { final MethodVisitor mv = infoClassVisitor.visitMethod(ACC_PUBLIC, String.format(METHOD_NAME_FORMAT, feature, scenario), "()V", null, null); mv.visitCode();//w w w. j a va 2 s.c om mv.visitVarInsn(ALOAD, 0); mv.visitLdcInsn(feature); mv.visitLdcInsn(scenario); mv.visitLdcInsn(story); mv.visitLdcInsn(projectionValues); mv.visitLdcInsn(reports); mv.visitVarInsn(ALOAD, 0); mv.visitMethodInsn(INVOKESTATIC, "com/github/bmsantos/core/cola/story/processor/StoryProcessor", "process", "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V", false); mv.visitInsn(RETURN); mv.visitAnnotation("Lorg/junit/Test;", true); mv.visitEnd(); mv.visitMaxs(0, 0); }
From source file:com.github.bmsantos.core.cola.injector.InjectorClassVisitor.java
License:Apache License
private void injectIgnoreMethod(final String feature, final String scenario) { final MethodVisitor mv = infoClassVisitor.visitMethod(ACC_PUBLIC, String.format(IGNORED_METHOD_NAME_FORMAT, feature, scenario), "()V", null, null); mv.visitCode();//from w w w. j a v a2s . c o m mv.visitVarInsn(ALOAD, 0); mv.visitLdcInsn(feature); mv.visitLdcInsn(scenario); mv.visitMethodInsn(INVOKESTATIC, "com/github/bmsantos/core/cola/story/processor/StoryProcessor", "ignore", "(Ljava/lang/String;Ljava/lang/String;)V", false); mv.visitInsn(RETURN); mv.visitAnnotation("Lorg/junit/Test;", true); mv.visitEnd(); mv.visitMaxs(0, 0); }
From source file:com.github.fge.grappa.transform.process.GroupClassGenerator.java
License:Apache License
private void generateConstructor(ClassWriter cw) { MethodVisitor mv = cw.visitMethod(ACC_PUBLIC, "<init>", CodegenUtils.sig(void.class, String.class), null, null);/*w ww .j a v a 2 s. c om*/ mv.visitVarInsn(ALOAD, 0); mv.visitVarInsn(ALOAD, 1); mv.visitMethodInsn(INVOKESPECIAL, getBaseType().getInternalName(), "<init>", CodegenUtils.sig(void.class, String.class), false); mv.visitInsn(RETURN); mv.visitMaxs(0, 0); // trigger automatic computing }
From source file:com.github.jasmo.obfuscate.ScrambleStrings.java
License:Open Source License
private void createUnscramble() { MethodVisitor mv = unscrambleClass.visitMethod(ACC_PUBLIC | ACC_STATIC, CALL_NAME, CALL_DESC, null, null); mv.visitCode();/*w w w . ja v a 2s. c o m*/ mv.visitTypeInsn(NEW, "java/lang/String"); mv.visitInsn(DUP); mv.visitMethodInsn(INVOKESTATIC, "java/util/Base64", "getDecoder", "()Ljava/util/Base64$Decoder;", false); mv.visitFieldInsn(GETSTATIC, unscrambleClass.name, FIELD_NAME, "[Ljava/lang/String;"); mv.visitVarInsn(ILOAD, 0); mv.visitInsn(AALOAD); mv.visitMethodInsn(INVOKEVIRTUAL, "java/util/Base64$Decoder", "decode", "(Ljava/lang/String;)[B", false); mv.visitLdcInsn("UTF-8"); mv.visitMethodInsn(INVOKESPECIAL, "java/lang/String", "<init>", "([BLjava/lang/String;)V", false); mv.visitInsn(ARETURN); mv.visitMaxs(0, 0); mv.visitEnd(); }