public class net.bytebuddy.implementation.MethodCall$MethodLocator$ForElementMatcher implements net.bytebuddy.implementation.MethodCall$MethodLocator
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: net.bytebuddy.implementation.MethodCall$MethodLocator$ForElementMatcher
  super_class: java.lang.Object
{
  private final net.bytebuddy.description.type.TypeDescription instrumentedType;
    descriptor: Lnet/bytebuddy/description/type/TypeDescription;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final net.bytebuddy.matcher.ElementMatcher<? super net.bytebuddy.description.method.MethodDescription> matcher;
    descriptor: Lnet/bytebuddy/matcher/ElementMatcher;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Lnet/bytebuddy/matcher/ElementMatcher<-Lnet/bytebuddy/description/method/MethodDescription;>;

  private final net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler methodGraphCompiler;
    descriptor: Lnet/bytebuddy/dynamic/scaffold/MethodGraph$Compiler;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  protected void <init>(net.bytebuddy.description.type.TypeDescription, net.bytebuddy.matcher.ElementMatcher<? super net.bytebuddy.description.method.MethodDescription>, net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler);
    descriptor: (Lnet/bytebuddy/description/type/TypeDescription;Lnet/bytebuddy/matcher/ElementMatcher;Lnet/bytebuddy/dynamic/scaffold/MethodGraph$Compiler;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // net.bytebuddy.implementation.MethodCall$MethodLocator$ForElementMatcher this
        start local 1 // net.bytebuddy.description.type.TypeDescription instrumentedType
        start local 2 // net.bytebuddy.matcher.ElementMatcher matcher
        start local 3 // net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler methodGraphCompiler
         0: .line 796
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 797
            aload 0 /* this */
            aload 1 /* instrumentedType */
            putfield net.bytebuddy.implementation.MethodCall$MethodLocator$ForElementMatcher.instrumentedType:Lnet/bytebuddy/description/type/TypeDescription;
         2: .line 798
            aload 0 /* this */
            aload 2 /* matcher */
            putfield net.bytebuddy.implementation.MethodCall$MethodLocator$ForElementMatcher.matcher:Lnet/bytebuddy/matcher/ElementMatcher;
         3: .line 799
            aload 0 /* this */
            aload 3 /* methodGraphCompiler */
            putfield net.bytebuddy.implementation.MethodCall$MethodLocator$ForElementMatcher.methodGraphCompiler:Lnet/bytebuddy/dynamic/scaffold/MethodGraph$Compiler;
         4: .line 800
            return
        end local 3 // net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler methodGraphCompiler
        end local 2 // net.bytebuddy.matcher.ElementMatcher matcher
        end local 1 // net.bytebuddy.description.type.TypeDescription instrumentedType
        end local 0 // net.bytebuddy.implementation.MethodCall$MethodLocator$ForElementMatcher this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    5     0                 this  Lnet/bytebuddy/implementation/MethodCall$MethodLocator$ForElementMatcher;
            0    5     1     instrumentedType  Lnet/bytebuddy/description/type/TypeDescription;
            0    5     2              matcher  Lnet/bytebuddy/matcher/ElementMatcher<-Lnet/bytebuddy/description/method/MethodDescription;>;
            0    5     3  methodGraphCompiler  Lnet/bytebuddy/dynamic/scaffold/MethodGraph$Compiler;
    Signature: (Lnet/bytebuddy/description/type/TypeDescription;Lnet/bytebuddy/matcher/ElementMatcher<-Lnet/bytebuddy/description/method/MethodDescription;>;Lnet/bytebuddy/dynamic/scaffold/MethodGraph$Compiler;)V
    MethodParameters:
                     Name  Flags
      instrumentedType     
      matcher              
      methodGraphCompiler  

  public net.bytebuddy.description.method.MethodDescription resolve(net.bytebuddy.description.type.TypeDescription, net.bytebuddy.description.method.MethodDescription);
    descriptor: (Lnet/bytebuddy/description/type/TypeDescription;Lnet/bytebuddy/description/method/MethodDescription;)Lnet/bytebuddy/description/method/MethodDescription;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // net.bytebuddy.implementation.MethodCall$MethodLocator$ForElementMatcher this
        start local 1 // net.bytebuddy.description.type.TypeDescription targetType
        start local 2 // net.bytebuddy.description.method.MethodDescription instrumentedMethod
         0: .line 807
            aload 0 /* this */
            getfield net.bytebuddy.implementation.MethodCall$MethodLocator$ForElementMatcher.instrumentedType:Lnet/bytebuddy/description/type/TypeDescription;
            invokeinterface net.bytebuddy.description.type.TypeDescription.getSuperClass:()Lnet/bytebuddy/description/type/TypeDescription$Generic;
            invokeinterface net.bytebuddy.description.type.TypeDescription$Generic.getDeclaredMethods:()Lnet/bytebuddy/description/method/MethodList;
            invokestatic net.bytebuddy.matcher.ElementMatchers.isConstructor:()Lnet/bytebuddy/matcher/ElementMatcher$Junction;
            aload 0 /* this */
            getfield net.bytebuddy.implementation.MethodCall$MethodLocator$ForElementMatcher.matcher:Lnet/bytebuddy/matcher/ElementMatcher;
            invokeinterface net.bytebuddy.matcher.ElementMatcher$Junction.and:(Lnet/bytebuddy/matcher/ElementMatcher;)Lnet/bytebuddy/matcher/ElementMatcher$Junction;
            invokeinterface net.bytebuddy.description.method.MethodList.filter:(Lnet/bytebuddy/matcher/ElementMatcher;)Lnet/bytebuddy/matcher/FilterableList;
         1: .line 808
            aload 0 /* this */
            getfield net.bytebuddy.implementation.MethodCall$MethodLocator$ForElementMatcher.methodGraphCompiler:Lnet/bytebuddy/dynamic/scaffold/MethodGraph$Compiler;
            aload 1 /* targetType */
            aload 0 /* this */
            getfield net.bytebuddy.implementation.MethodCall$MethodLocator$ForElementMatcher.instrumentedType:Lnet/bytebuddy/description/type/TypeDescription;
            invokeinterface net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler.compile:(Lnet/bytebuddy/description/type/TypeDefinition;Lnet/bytebuddy/description/type/TypeDescription;)Lnet/bytebuddy/dynamic/scaffold/MethodGraph$Linked;
            invokeinterface net.bytebuddy.dynamic.scaffold.MethodGraph$Linked.listNodes:()Lnet/bytebuddy/dynamic/scaffold/MethodGraph$NodeList;
            invokevirtual net.bytebuddy.dynamic.scaffold.MethodGraph$NodeList.asMethodList:()Lnet/bytebuddy/description/method/MethodList;
            aload 0 /* this */
            getfield net.bytebuddy.implementation.MethodCall$MethodLocator$ForElementMatcher.matcher:Lnet/bytebuddy/matcher/ElementMatcher;
            invokeinterface net.bytebuddy.description.method.MethodList.filter:(Lnet/bytebuddy/matcher/ElementMatcher;)Lnet/bytebuddy/matcher/FilterableList;
         2: .line 806
            invokestatic net.bytebuddy.utility.CompoundList.of:(Ljava/util/List;Ljava/util/List;)Ljava/util/List;
            astore 3 /* candidates */
        start local 3 // java.util.List candidates
         3: .line 809
            aload 3 /* candidates */
            invokeinterface java.util.List.size:()I
            iconst_1
            if_icmpne 5
         4: .line 810
            aload 3 /* candidates */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast net.bytebuddy.description.method.MethodDescription
            areturn
         5: .line 812
      StackMap locals: java.util.List
      StackMap stack:
            new java.lang.IllegalStateException
            dup
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 0 /* this */
            getfield net.bytebuddy.implementation.MethodCall$MethodLocator$ForElementMatcher.instrumentedType:Lnet/bytebuddy/description/type/TypeDescription;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " does not define exactly one virtual method or constructor for "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield net.bytebuddy.implementation.MethodCall$MethodLocator$ForElementMatcher.matcher:Lnet/bytebuddy/matcher/ElementMatcher;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // java.util.List candidates
        end local 2 // net.bytebuddy.description.method.MethodDescription instrumentedMethod
        end local 1 // net.bytebuddy.description.type.TypeDescription targetType
        end local 0 // net.bytebuddy.implementation.MethodCall$MethodLocator$ForElementMatcher this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    6     0                this  Lnet/bytebuddy/implementation/MethodCall$MethodLocator$ForElementMatcher;
            0    6     1          targetType  Lnet/bytebuddy/description/type/TypeDescription;
            0    6     2  instrumentedMethod  Lnet/bytebuddy/description/method/MethodDescription;
            3    6     3          candidates  Ljava/util/List<Lnet/bytebuddy/description/method/MethodDescription;>;
    MethodParameters:
                    Name  Flags
      targetType          
      instrumentedMethod  
}
SourceFile: "MethodCall.java"
NestHost: net.bytebuddy.implementation.MethodCall
InnerClasses:
  public abstract Enhance = net.bytebuddy.build.HashCodeAndEqualsPlugin$Enhance of net.bytebuddy.build.HashCodeAndEqualsPlugin
  public abstract InGenericShape = net.bytebuddy.description.method.MethodDescription$InGenericShape of net.bytebuddy.description.method.MethodDescription
  public abstract Generic = net.bytebuddy.description.type.TypeDescription$Generic of net.bytebuddy.description.type.TypeDescription
  public abstract Compiler = net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler of net.bytebuddy.dynamic.scaffold.MethodGraph
  public abstract Linked = net.bytebuddy.dynamic.scaffold.MethodGraph$Linked of net.bytebuddy.dynamic.scaffold.MethodGraph
  public NodeList = net.bytebuddy.dynamic.scaffold.MethodGraph$NodeList of net.bytebuddy.dynamic.scaffold.MethodGraph
  public abstract MethodLocator = net.bytebuddy.implementation.MethodCall$MethodLocator of net.bytebuddy.implementation.MethodCall
  public ForElementMatcher = net.bytebuddy.implementation.MethodCall$MethodLocator$ForElementMatcher of net.bytebuddy.implementation.MethodCall$MethodLocator
  public Factory = net.bytebuddy.implementation.MethodCall$MethodLocator$ForElementMatcher$Factory of net.bytebuddy.implementation.MethodCall$MethodLocator$ForElementMatcher
  public abstract Junction = net.bytebuddy.matcher.ElementMatcher$Junction of net.bytebuddy.matcher.ElementMatcher
    RuntimeVisibleAnnotations: 
      net.bytebuddy.build.HashCodeAndEqualsPlugin$Enhance()