public interface org.graalvm.compiler.api.replacements.MethodSubstitutionRegistry
  minor version: 0
  major version: 59
  flags: flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
  this_class: org.graalvm.compiler.api.replacements.MethodSubstitutionRegistry
  super_class: java.lang.Object
{
  public abstract java.lang.Class<?> getReceiverType();
    descriptor: ()Ljava/lang/Class;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()Ljava/lang/Class<*>;

  public void registerMethodSubstitution(java.lang.Class<?>, java.lang.String, java.lang.reflect.Type[]);
    descriptor: (Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/reflect/Type;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.api.replacements.MethodSubstitutionRegistry this
        start local 1 // java.lang.Class substituteDeclaringClass
        start local 2 // java.lang.String name
        start local 3 // java.lang.reflect.Type[] argumentTypes
         0: .line 49
            aload 0 /* this */
            aload 1 /* substituteDeclaringClass */
            aload 2 /* name */
            aload 2 /* name */
            aload 3 /* argumentTypes */
            invokeinterface org.graalvm.compiler.api.replacements.MethodSubstitutionRegistry.registerMethodSubstitution:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/reflect/Type;)V
         1: .line 50
            return
        end local 3 // java.lang.reflect.Type[] argumentTypes
        end local 2 // java.lang.String name
        end local 1 // java.lang.Class substituteDeclaringClass
        end local 0 // org.graalvm.compiler.api.replacements.MethodSubstitutionRegistry this
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0    2     0                      this  Lorg/graalvm/compiler/api/replacements/MethodSubstitutionRegistry;
            0    2     1  substituteDeclaringClass  Ljava/lang/Class<*>;
            0    2     2                      name  Ljava/lang/String;
            0    2     3             argumentTypes  [Ljava/lang/reflect/Type;
    Signature: (Ljava/lang/Class<*>;Ljava/lang/String;[Ljava/lang/reflect/Type;)V
    MethodParameters:
                          Name  Flags
      substituteDeclaringClass  
      name                      
      argumentTypes             

  public abstract void registerMethodSubstitution(java.lang.Class<?>, java.lang.String, java.lang.String, java.lang.reflect.Type[]);
    descriptor: (Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/reflect/Type;)V
    flags: (0x0481) ACC_PUBLIC, ACC_VARARGS, ACC_ABSTRACT
    Signature: (Ljava/lang/Class<*>;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/reflect/Type;)V
    MethodParameters:
                          Name  Flags
      substituteDeclaringClass  
      name                      
      substituteName            
      argumentTypes             
}
SourceFile: "MethodSubstitutionRegistry.java"