congrats Icon
New! Tabnine Pro 14-day free trial
Start a free trial
Tabnine Logo
MethodVisitor.visitCode
Code IndexAdd Tabnine to your IDE (free)

How to use
visitCode
method
in
org.objectweb.asm.MethodVisitor

Best Java code snippets using org.objectweb.asm.MethodVisitor.visitCode (Showing top 20 results out of 1,503)

Refine searchRefine arrow

  • MethodVisitor.visitEnd
  • MethodVisitor.visitMaxs
  • MethodVisitor.visitInsn
  • MethodVisitor.visitVarInsn
  • MethodVisitor.visitMethodInsn
origin: CalebFenton/simplify

private void visitClInitStub(MethodVisitor mv) {
  mv.visitCode();
  mv.visitInsn(Opcodes.RETURN);
}
origin: CalebFenton/simplify

private void visitInitStub(ClassDef classDef, MethodVisitor mv) {
  mv.visitCode();
  mv.visitVarInsn(Opcodes.ALOAD, 0);
  if (classDef.getSuperclass() != null) {
    String superName = stripName(classDef.getSuperclass());
    mv.visitMethodInsn(Opcodes.INVOKESPECIAL, superName, "<init>", "()V", false);
  }
  mv.visitInsn(Opcodes.RETURN);
  mv.visitMaxs(0, 0);
  mv.visitEnd();
}
origin: scouter-project/scouter

@Override
public void visitCode() {
  mv.visitVarInsn(Opcodes.ALOAD, 1);
  mv.visitVarInsn(Opcodes.ALOAD, 2);
  if (httpservlet) {
    mv.visitMethodInsn(Opcodes.INVOKESTATIC, TRACEMAIN, START_SERVICE, START_SIGNATURE, false);
  } else {
    mv.visitMethodInsn(Opcodes.INVOKESTATIC, TRACEMAIN, START_FILTER, START_SIGNATURE, false);
  }
  statIdx = newLocal(Type.getType(Object.class));
  mv.visitVarInsn(Opcodes.ASTORE, statIdx);
  mv.visitLabel(startFinally);
  mv.visitVarInsn(Opcodes.ALOAD, statIdx);
  mv.visitVarInsn(Opcodes.ALOAD, 1);
  mv.visitVarInsn(Opcodes.ALOAD, 2);
  mv.visitMethodInsn(Opcodes.INVOKESTATIC, TRACEMAIN, REJECT, REJECT_SIGNATURE, false);
  Label end = new Label();
  mv.visitJumpInsn(IFNULL, end);
  mv.visitInsn(Opcodes.RETURN);
  mv.visitLabel(end);
  mv.visitCode();
}
@Override
origin: CalebFenton/simplify

private void visitMethod(ClassDef classDef, Method method, MethodVisitor mv) {
  mv.visitCode();
  String methodName = method.getName();
  if (methodName.equals("<clinit>")) {
    visitClInitStub(mv);
  } else if (methodName.equals("<init>")) {
    visitInitStub(classDef, mv);
  } else if (methodName.equals("hashCode") && method.getReturnType().equals("I")) {
    visitCallObjectHashCode(mv);
  } else {
    visitMethodStub(mv);
  }
  // Do this at the end so ASM can calculate max stack and locals sizes
  mv.visitMaxs(0, 0);
  mv.visitEnd();
}
origin: pxb1988/dex2jar

    mv.visitCode();
    convertCode(methodNode, mv);
mv.visitEnd();
origin: kilim/kilim

private void visitCode(MethodVisitor mv) {
  mv.visitCode();
  methodFlow.resetLabels();
  visitTryCatchBlocks(mv);
  visitInstructions(mv);
  visitLocals(mv);
  visitLineNumbers(mv);
  mv.visitMaxs(maxStack, maxVars);
}
origin: JCTools/JCTools

private static void implementProxyInstance(ClassVisitor classVisitor, Class<?> iFace, String generatedName) {
  MethodVisitor methodVisitor = classVisitor.visitMethod(Opcodes.ACC_PUBLIC,
      "proxyInstance",
      methodDescriptor(iFace, iFace),
      null,
      null);
  methodVisitor.visitCode();
  methodVisitor.visitVarInsn(Opcodes.ALOAD, LOCALS_INDEX_THIS);
  methodVisitor.visitInsn(Opcodes.ARETURN);
  methodVisitor.visitMaxs(-1, -1);
  methodVisitor.visitEnd();
  
  implementBridgeMethod(classVisitor, generatedName, "proxyInstance", iFace, iFace);
}
origin: alibaba/TProfiler

mv.visitInsn(Opcodes.ACONST_NULL);
mv.visitVarInsn(Opcodes.ASTORE, 30);
mv.visitVarInsn(Opcodes.ALOAD, 2);
mv.visitJumpInsn(Opcodes.IFNULL, sqlIsNull);
mv.visitVarInsn(Opcodes.ALOAD, 2);
mv.visitVarInsn(Opcodes.ASTORE, 30);
mv.visitJumpInsn(Opcodes.GOTO, endIf);
mv.visitInsn(Opcodes.DUP);
mv.visitVarInsn(Opcodes.ALOAD, 4);
mv.visitMethodInsn(Opcodes.INVOKEVIRTUAL, "com/mysql/jdbc/Buffer", "getByteBuffer", "()[B");
mv.visitLdcInsn("utf-8");
mv.visitMethodInsn(Opcodes.INVOKESPECIAL, "java/lang/String", "<init>", "([BLjava/lang/String;)V");
mv.visitVarInsn(Opcodes.ASTORE, 30);
mv.visitVarInsn(Opcodes.ALOAD, 30);
mv.visitMethodInsn(Opcodes.INVOKESTATIC, "com/taobao/profile/Profiler", "start4Mysql", "(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V");
mv.visitCode();
origin: kilim/kilim

private void parseMethodBody() {
  labels.clear();
  declaredLabels.clear();
  mv.visitCode();
  while (true) {
    readLine();
    if (line.startsWith(".end method")) {
      break;
    } else if (line.startsWith(".")) {
      parseMethodDirective();
    } else if (lineMatch(labelPattern)) {
      parseLabel();
    } else {
      parseInstructions();
    }
  }
  checkLabelDeclarations();
  mv.visitMaxs(maxStack, maxLocals);
  mv.visitEnd();
}
origin: org.ow2.asm/asm

 methodVisitor.visitCode();
 readCode(methodVisitor, context, codeOffset);
methodVisitor.visitEnd();
return currentOffset;
origin: JCTools/JCTools

private static void implementProxy(ClassVisitor classVisitor, Class<?> iFace, String generatedName) {
  MethodVisitor methodVisitor = classVisitor.visitMethod(Opcodes.ACC_PUBLIC,
      "proxy",
      methodDescriptor(iFace),
      null,
      null);
  methodVisitor.visitCode();
  methodVisitor.visitVarInsn(Opcodes.ALOAD, LOCALS_INDEX_THIS);
  methodVisitor.visitInsn(Opcodes.ARETURN);
  methodVisitor.visitMaxs(-1, -1);
  methodVisitor.visitEnd();
  
  implementBridgeMethod(classVisitor, generatedName, "proxy", iFace);
}

origin: scouter-project/scouter

    mv.visitVarInsn(Opcodes.ALOAD, sidx);
  mv.visitInsn(Opcodes.AASTORE);
  sidx += tp.getSize();
mv.visitVarInsn(Opcodes.ALOAD, arrVarIdx);
mv.visitMethodInsn(Opcodes.INVOKESTATIC, TRACESUBCALL, START_METHOD, START_SIGNATURE, false);
mv.visitCode();
origin: Sable/soot

 mv.visitCode();
 generateMethodBody(mv, sm);
 mv.visitMaxs(0, 0);
mv.visitEnd();
origin: pxb1988/dex2jar

private void genSwitchMethod(ClassVisitor cw, String typeName, String methodName, CB callback) {
  MethodVisitor mv = cw.visitMethod(ACC_PUBLIC, methodName, "()Ljava/lang/String;", null, null);
  mv.visitCode();
  mv.visitVarInsn(ALOAD, 0);
  mv.visitFieldInsn(GETFIELD, typeName, "idx", "I");
  Label def = new Label();
    mv.visitLabel(e.getValue());
    mv.visitLdcInsn(e.getKey());
    mv.visitInsn(ARETURN);
  mv.visitInsn(DUP);
  mv.visitLdcInsn("invalid idx");
  mv.visitMethodInsn(INVOKESPECIAL, "java/lang/RuntimeException", "<init>", "(Ljava/lang/String;)V");
  mv.visitInsn(ATHROW);
  mv.visitMaxs(-1, -1);
  mv.visitEnd();
origin: scouter-project/scouter

@Override
public void visitCode() {
  int sidx = 1;
  mv.visitVarInsn(Opcodes.ALOAD, 0);
  AsmUtil.PUSH(mv, fullName);
  AsmUtil.PUSH(mv, className);
  AsmUtil.PUSH(mv, name);
  AsmUtil.PUSH(mv, desc);
  mv.visitVarInsn(Opcodes.ALOAD, 0);
  int arrVarIdx = newLocal(Type.getType("[Ljava/lang/Object;"));
  AsmUtil.PUSH(mv, paramTypes.length);
  mv.visitTypeInsn(Opcodes.ANEWARRAY, "java/lang/Object");
  mv.visitVarInsn(Opcodes.ASTORE, arrVarIdx);
  for (int i = 0; i < paramTypes.length; i++) {
    Type tp = paramTypes[i];
    mv.visitVarInsn(Opcodes.ALOAD, arrVarIdx);
    AsmUtil.PUSH(mv, i);
    AsmUtil.loadForArrayElement(mv, tp, sidx);
    mv.visitInsn(Opcodes.AASTORE);
    sidx += tp.getSize();
  }
  mv.visitVarInsn(Opcodes.ALOAD, arrVarIdx);
  mv.visitMethodInsn(Opcodes.INVOKESTATIC, TARGET, START_METHOD, START_METHOD_DESC,false);
  statIdx = newLocal(Type.getType(Object.class));
  mv.visitVarInsn(Opcodes.ASTORE, statIdx);
  mv.visitLabel(startFinally);
  mv.visitCode();
}
origin: pxb1988/dex2jar

mv.visitCode();
int start;
if (opcode != INVOKESTATIC) {
  mv.visitVarInsn(ALOAD, 0);
  if (opcode != INVOKESPECIAL) {
    mv.visitTypeInsn(CHECKCAST, toInternal(t.owner));
  mv.visitVarInsn(ALOAD, start);
  mv.visitLdcInsn(i);
  mv.visitInsn(AALOAD);
  unBox(args[i], OBJECT_TYPE, mv);
mv.visitMethodInsn(opcode, toInternal(t.owner), t.name, t.desc);
Type ret = Type.getReturnType(t.desc);
box(ret, mv);
mv.visitInsn(ARETURN);
mv.visitMaxs(-1, -1);
mv.visitEnd();
return n;
origin: scouter-project/scouter

AsmUtil.PUSH(mv, paramTypes.length);
mv.visitTypeInsn(Opcodes.ANEWARRAY, "java/lang/Object");
mv.visitVarInsn(Opcodes.ASTORE, arrVarIdx);
  mv.visitVarInsn(Opcodes.ALOAD, arrVarIdx);
  AsmUtil.PUSH(mv, i);
    mv.visitVarInsn(Opcodes.ILOAD, sidx);
    mv.visitMethodInsn(Opcodes.INVOKESTATIC, "java/lang/Boolean", "valueOf", "(Z)Ljava/lang/Boolean;",
        false);
    break;
  case Type.BYTE:
    mv.visitVarInsn(Opcodes.ILOAD, sidx);
    mv.visitMethodInsn(Opcodes.INVOKESTATIC, "java/lang/Byte", "valueOf", "(B)Ljava/lang/Byte;", false);
    break;
  case Type.CHAR:
    mv.visitVarInsn(Opcodes.ILOAD, sidx);
    mv.visitMethodInsn(Opcodes.INVOKESTATIC, "java/lang/Character", "valueOf", "(C)Ljava/lang/Character;",
        false);
    break;
    mv.visitVarInsn(Opcodes.ALOAD, sidx);
  mv.visitInsn(Opcodes.AASTORE);
  sidx += type.getSize();
mv.visitMethodInsn(Opcodes.INVOKESTATIC, CLASS, METHOD, SIGNATURE, false);
mv.visitCode();
origin: SpongePowered/SpongeAPI

private void generateMethods(ClassWriter cw, String internalName, List<Method> methods, Class<?> exceptionType) {
  for (Method method: methods) {
    MethodVisitor mv = cw.visitMethod(ACC_PUBLIC, method.getName(), Type.getMethodDescriptor(method), null, null);
    mv.visitCode();
    mv.visitInsn(DUP);
    mv.visitVarInsn(Opcodes.ASTORE, 2);
    mv.visitVarInsn(Opcodes.ALOAD, 2);
    mv.visitVarInsn(ALOAD, 0);
    mv.visitFieldInsn(GETFIELD, internalName, FIELD_NAME, Type.getDescriptor(String.class));
    mv.visitInsn(AASTORE);
    mv.visitMethodInsn(INVOKESTATIC, Type.getInternalName(String.class), "format",
      "(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;", false);
    mv.visitMethodInsn(INVOKESPECIAL, internalException, "<init>", "(Ljava/lang/String;)V", false);
    mv.visitInsn(ATHROW);
    mv.visitMaxs(0, 0);
    mv.visitEnd();
origin: scouter-project/scouter

AsmUtil.PUSH(mv, paramTypes.length);
mv.visitTypeInsn(Opcodes.ANEWARRAY, "java/lang/Object");
mv.visitVarInsn(Opcodes.ASTORE, arrVarIdx);
  mv.visitVarInsn(Opcodes.ALOAD, arrVarIdx);
  AsmUtil.PUSH(mv, i);
      mv.visitVarInsn(Opcodes.ILOAD, sidx);
      mv.visitMethodInsn(Opcodes.INVOKESTATIC, "java/lang/Boolean", "valueOf", "(Z)Ljava/lang/Boolean;",
          false);
      break;
    case Type.BYTE:
      mv.visitVarInsn(Opcodes.ILOAD, sidx);
      mv.visitMethodInsn(Opcodes.INVOKESTATIC, "java/lang/Byte", "valueOf", "(B)Ljava/lang/Byte;", false);
      break;
    case Type.CHAR:
      mv.visitVarInsn(Opcodes.ILOAD, sidx);
      mv.visitMethodInsn(Opcodes.INVOKESTATIC, "java/lang/Character", "valueOf", "(C)Ljava/lang/Character;",
          false);
      break;
      mv.visitVarInsn(Opcodes.ALOAD, sidx);
  mv.visitInsn(Opcodes.AASTORE);
  sidx += type.getSize();
mv.visitMethodInsn(Opcodes.INVOKESTATIC, CLASS, METHOD, SIGNATURE, false);
mv.visitCode();
origin: JCTools/JCTools

    null,
    null);
methodVisitor.visitCode();
int localIndexOfWaitStrategy = locals.newLocal(WaitStrategy.class);
methodVisitor.visitVarInsn(Opcodes.ALOAD, LOCALS_INDEX_THIS);
methodVisitor.visitVarInsn(Opcodes.ILOAD, localIndexOfCapacity);
methodVisitor.visitLdcInsn(primitiveMessageSize);
methodVisitor.visitLdcInsn(referenceMessageSize);
methodVisitor.visitMethodInsn(Opcodes.INVOKESPECIAL,
    Type.getInternalName(parentType),
    "<init>",
    false);
methodVisitor.visitVarInsn(Opcodes.ALOAD, LOCALS_INDEX_THIS);
methodVisitor.visitVarInsn(Opcodes.ALOAD, localIndexOfWaitStrategy);
methodVisitor.visitFieldInsn(Opcodes.PUTFIELD, generatedName, "waitStrategy", Type.getDescriptor(WaitStrategy.class));
methodVisitor.visitInsn(Opcodes.RETURN);
methodVisitor.visitMaxs(-1, -1);
methodVisitor.visitEnd();
org.objectweb.asmMethodVisitorvisitCode

Javadoc

Starts the visit of the method's code, if any (i.e. non abstract method).

Popular methods of MethodVisitor

  • visitMethodInsn
    Visits a method instruction. A method instruction is an instruction that invokes a method.
  • visitInsn
    Visits a zero operand instruction.
  • visitVarInsn
    Visits a local variable instruction. A local variable instruction is an instruction that loads or st
  • visitMaxs
    Visits the maximum stack size and the maximum number of local variables of the method.
  • visitEnd
    Visits the end of the method. This method, which is the last one to be called, is used to inform the
  • visitFieldInsn
    Visits a field instruction. A field instruction is an instruction that loads or stores the value of
  • visitTypeInsn
    Visits a type instruction. A type instruction is an instruction that takes the internal name of a cl
  • visitLabel
    Visits a label. A label designates the instruction that will be visited just after it.
  • visitLdcInsn
    Visits a LDC instruction. Note that new constant types may be added in future versions of the Java V
  • visitJumpInsn
    Visits a jump instruction. A jump instruction is an instruction that may jump to another instruction
  • visitIntInsn
    Visits an instruction with a single int operand.
  • visitLocalVariable
    Visits a local variable declaration.
  • visitIntInsn,
  • visitLocalVariable,
  • visitAnnotation,
  • visitTryCatchBlock,
  • visitLineNumber,
  • visitFrame,
  • visitTableSwitchInsn,
  • visitParameterAnnotation,
  • visitIincInsn

Popular in Java

  • Parsing JSON documents to java classes using gson
  • putExtra (Intent)
  • scheduleAtFixedRate (ScheduledExecutorService)
  • scheduleAtFixedRate (Timer)
  • Graphics2D (java.awt)
    This Graphics2D class extends the Graphics class to provide more sophisticated control overgraphics
  • SocketException (java.net)
    This SocketException may be thrown during socket creation or setting options, and is the superclass
  • Comparator (java.util)
    A Comparator is used to compare two objects to determine their ordering with respect to each other.
  • Locale (java.util)
    Locale represents a language/country/variant combination. Locales are used to alter the presentatio
  • Annotation (javassist.bytecode.annotation)
    The annotation structure.An instance of this class is returned bygetAnnotations() in AnnotationsAttr
  • DataSource (javax.sql)
    An interface for the creation of Connection objects which represent a connection to a database. This
  • Top 17 Free Sublime Text Plugins
Tabnine Logo
  • Products

    Search for Java codeSearch for JavaScript code
  • IDE Plugins

    IntelliJ IDEAWebStormVisual StudioAndroid StudioEclipseVisual Studio CodePyCharmSublime TextPhpStormVimAtomGoLandRubyMineEmacsJupyter NotebookJupyter LabRiderDataGripAppCode
  • Company

    About UsContact UsCareers
  • Resources

    FAQBlogTabnine AcademyStudentsTerms of usePrivacy policyJava Code IndexJavascript Code Index
Get Tabnine for your IDE now