public class net.bytebuddy.build.Plugin$Factory$UsingReflection$ArgumentResolver$ForType<T> implements net.bytebuddy.build.Plugin$Factory$UsingReflection$ArgumentResolver
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: net.bytebuddy.build.Plugin$Factory$UsingReflection$ArgumentResolver$ForType
  super_class: java.lang.Object
{
  private final java.lang.Class<? extends T> type;
    descriptor: Ljava/lang/Class;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/lang/Class<+TT;>;

  private final T value;
    descriptor: Ljava/lang/Object;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: TT;

  protected void <init>(java.lang.Class<? extends T>, );
    descriptor: (Ljava/lang/Class;Ljava/lang/Object;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // net.bytebuddy.build.Plugin$Factory$UsingReflection$ArgumentResolver$ForType this
        start local 1 // java.lang.Class type
        start local 2 // java.lang.Object value
         0: .line 461
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 462
            aload 0 /* this */
            aload 1 /* type */
            putfield net.bytebuddy.build.Plugin$Factory$UsingReflection$ArgumentResolver$ForType.type:Ljava/lang/Class;
         2: .line 463
            aload 0 /* this */
            aload 2 /* value */
            putfield net.bytebuddy.build.Plugin$Factory$UsingReflection$ArgumentResolver$ForType.value:Ljava/lang/Object;
         3: .line 464
            return
        end local 2 // java.lang.Object value
        end local 1 // java.lang.Class type
        end local 0 // net.bytebuddy.build.Plugin$Factory$UsingReflection$ArgumentResolver$ForType this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lnet/bytebuddy/build/Plugin$Factory$UsingReflection$ArgumentResolver$ForType<TT;>;
            0    4     1   type  Ljava/lang/Class<+TT;>;
            0    4     2  value  TT;
    Signature: (Ljava/lang/Class<+TT;>;TT;)V
    MethodParameters:
       Name  Flags
      type   
      value  

  public static <S> net.bytebuddy.build.Plugin$Factory$UsingReflection$ArgumentResolver of(java.lang.Class<? extends S>, S);
    descriptor: (Ljava/lang/Class;Ljava/lang/Object;)Lnet/bytebuddy/build/Plugin$Factory$UsingReflection$ArgumentResolver;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.Class type
        start local 1 // java.lang.Object value
         0: .line 475
            new net.bytebuddy.build.Plugin$Factory$UsingReflection$ArgumentResolver$ForType
            dup
            aload 0 /* type */
            aload 1 /* value */
            invokespecial net.bytebuddy.build.Plugin$Factory$UsingReflection$ArgumentResolver$ForType.<init>:(Ljava/lang/Class;Ljava/lang/Object;)V
            areturn
        end local 1 // java.lang.Object value
        end local 0 // java.lang.Class type
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   type  Ljava/lang/Class<+TS;>;
            0    1     1  value  TS;
    Signature: <S:Ljava/lang/Object;>(Ljava/lang/Class<+TS;>;TS;)Lnet/bytebuddy/build/Plugin$Factory$UsingReflection$ArgumentResolver;
    MethodParameters:
       Name  Flags
      type   
      value  

  public net.bytebuddy.build.Plugin$Factory$UsingReflection$ArgumentResolver$Resolution resolve(int, java.lang.Class<?>);
    descriptor: (ILjava/lang/Class;)Lnet/bytebuddy/build/Plugin$Factory$UsingReflection$ArgumentResolver$Resolution;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // net.bytebuddy.build.Plugin$Factory$UsingReflection$ArgumentResolver$ForType this
        start local 1 // int index
        start local 2 // java.lang.Class type
         0: .line 482
            aload 2 /* type */
            aload 0 /* this */
            getfield net.bytebuddy.build.Plugin$Factory$UsingReflection$ArgumentResolver$ForType.type:Ljava/lang/Class;
            if_acmpne 2
         1: .line 483
            new net.bytebuddy.build.Plugin$Factory$UsingReflection$ArgumentResolver$Resolution$Resolved
            dup
            aload 0 /* this */
            getfield net.bytebuddy.build.Plugin$Factory$UsingReflection$ArgumentResolver$ForType.value:Ljava/lang/Object;
            invokespecial net.bytebuddy.build.Plugin$Factory$UsingReflection$ArgumentResolver$Resolution$Resolved.<init>:(Ljava/lang/Object;)V
            goto 3
         2: .line 484
      StackMap locals:
      StackMap stack:
            getstatic net.bytebuddy.build.Plugin$Factory$UsingReflection$ArgumentResolver$Resolution$Unresolved.INSTANCE:Lnet/bytebuddy/build/Plugin$Factory$UsingReflection$ArgumentResolver$Resolution$Unresolved;
         3: .line 482
      StackMap locals:
      StackMap stack: net.bytebuddy.build.Plugin$Factory$UsingReflection$ArgumentResolver$Resolution
            areturn
        end local 2 // java.lang.Class type
        end local 1 // int index
        end local 0 // net.bytebuddy.build.Plugin$Factory$UsingReflection$ArgumentResolver$ForType this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lnet/bytebuddy/build/Plugin$Factory$UsingReflection$ArgumentResolver$ForType<TT;>;
            0    4     1  index  I
            0    4     2   type  Ljava/lang/Class<*>;
    Signature: (ILjava/lang/Class<*>;)Lnet/bytebuddy/build/Plugin$Factory$UsingReflection$ArgumentResolver$Resolution;
    MethodParameters:
       Name  Flags
      index  
      type   
}
Signature: <T:Ljava/lang/Object;>Ljava/lang/Object;Lnet/bytebuddy/build/Plugin$Factory$UsingReflection$ArgumentResolver;
SourceFile: "Plugin.java"
NestHost: net.bytebuddy.build.Plugin
InnerClasses:
  public abstract Enhance = net.bytebuddy.build.HashCodeAndEqualsPlugin$Enhance of net.bytebuddy.build.HashCodeAndEqualsPlugin
  public abstract Factory = net.bytebuddy.build.Plugin$Factory of net.bytebuddy.build.Plugin
  public UsingReflection = net.bytebuddy.build.Plugin$Factory$UsingReflection of net.bytebuddy.build.Plugin$Factory
  public abstract ArgumentResolver = net.bytebuddy.build.Plugin$Factory$UsingReflection$ArgumentResolver of net.bytebuddy.build.Plugin$Factory$UsingReflection
  public ForType = net.bytebuddy.build.Plugin$Factory$UsingReflection$ArgumentResolver$ForType of net.bytebuddy.build.Plugin$Factory$UsingReflection$ArgumentResolver
  public abstract Resolution = net.bytebuddy.build.Plugin$Factory$UsingReflection$ArgumentResolver$Resolution of net.bytebuddy.build.Plugin$Factory$UsingReflection$ArgumentResolver
  public Resolved = net.bytebuddy.build.Plugin$Factory$UsingReflection$ArgumentResolver$Resolution$Resolved of net.bytebuddy.build.Plugin$Factory$UsingReflection$ArgumentResolver$Resolution
  public final Unresolved = net.bytebuddy.build.Plugin$Factory$UsingReflection$ArgumentResolver$Resolution$Unresolved of net.bytebuddy.build.Plugin$Factory$UsingReflection$ArgumentResolver$Resolution
    RuntimeVisibleAnnotations: 
      net.bytebuddy.build.HashCodeAndEqualsPlugin$Enhance()