Class InvokeMatching

java.lang.Object
net.covers1624.coffeegrinder.bytecode.matching.InvokeMatching

public class InvokeMatching extends Object
Created by covers1624 on 22/6/21.
  • Constructor Details

    • InvokeMatching

      public InvokeMatching()
  • Method Details

    • matchInvoke

      @Nullable public static @Nullable Invoke matchInvoke(@Nullable @Nullable Instruction insn, Invoke.InvokeKind kind)
    • matchInvoke

      @Nullable public static @Nullable Invoke matchInvoke(@Nullable @Nullable Instruction insn, Invoke.InvokeKind kind, Method method)
    • matchInvoke

      @Nullable public static @Nullable Invoke matchInvoke(@Nullable @Nullable Instruction insn, Invoke.InvokeKind kind, String name)
    • matchInvoke

      @Nullable public static @Nullable Invoke matchInvoke(@Nullable @Nullable Instruction insn, Invoke.InvokeKind kind, String name, org.objectweb.asm.Type desc)
    • matchConstructorInvokeSpecial

      @Nullable public static @Nullable Invoke matchConstructorInvokeSpecial(@Nullable @Nullable Instruction insn, ClassType decl)
    • getSuperConstructorCall

      @Nullable public static @Nullable Invoke getSuperConstructorCall(MethodDecl functionInsn)
    • findDelegatedCtor

      @Nullable public static @Nullable Invoke findDelegatedCtor(MethodDecl ctor)
      Find the delegating constructor call inside the given constructor.

      This will find either a this or a super call.

      This only works after Inlining has moved the LOAD_THIS into the invoke target.

      Parameters:
      ctor - The ctor to search inside.
      Returns:
      The delegate call.
    • matchNew

      @Nullable public static @Nullable New matchNew(@Nullable @Nullable Instruction insn, Method method)
    • matchNew

      @Nullable public static @Nullable New matchNew(@Nullable @Nullable Instruction insn, ClassType type)
    • matchInvokeDynamic

      @Nullable @Contract("null,_->null") public static @Nullable InvokeDynamic matchInvokeDynamic(@Nullable @Nullable Instruction insn, ClassType boostrapClass)
    • matchInvokeDynamic

      @Nullable @Contract("null,_,_->null") public static @Nullable InvokeDynamic matchInvokeDynamic(@Nullable @Nullable Instruction insn, ClassType boostrapClass, String boostrapMethod)