public class net.bytebuddy.dynamic.loading.ByteArrayClassLoader$SynchronizationStrategy$ForJava8CapableVm implements net.bytebuddy.dynamic.loading.ByteArrayClassLoader$SynchronizationStrategy, net.bytebuddy.dynamic.loading.ByteArrayClassLoader$SynchronizationStrategy$Initializable
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: net.bytebuddy.dynamic.loading.ByteArrayClassLoader$SynchronizationStrategy$ForJava8CapableVm
  super_class: java.lang.Object
{
  private final java.lang.Object methodHandle;
    descriptor: Ljava/lang/Object;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.reflect.Method bindTo;
    descriptor: Ljava/lang/reflect/Method;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.reflect.Method invokeWithArguments;
    descriptor: Ljava/lang/reflect/Method;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  protected void <init>(java.lang.Object, java.lang.reflect.Method, java.lang.reflect.Method);
    descriptor: (Ljava/lang/Object;Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // net.bytebuddy.dynamic.loading.ByteArrayClassLoader$SynchronizationStrategy$ForJava8CapableVm this
        start local 1 // java.lang.Object methodHandle
        start local 2 // java.lang.reflect.Method bindTo
        start local 3 // java.lang.reflect.Method invokeWithArguments
         0: .line 555
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 556
            aload 0 /* this */
            aload 1 /* methodHandle */
            putfield net.bytebuddy.dynamic.loading.ByteArrayClassLoader$SynchronizationStrategy$ForJava8CapableVm.methodHandle:Ljava/lang/Object;
         2: .line 557
            aload 0 /* this */
            aload 2 /* bindTo */
            putfield net.bytebuddy.dynamic.loading.ByteArrayClassLoader$SynchronizationStrategy$ForJava8CapableVm.bindTo:Ljava/lang/reflect/Method;
         3: .line 558
            aload 0 /* this */
            aload 3 /* invokeWithArguments */
            putfield net.bytebuddy.dynamic.loading.ByteArrayClassLoader$SynchronizationStrategy$ForJava8CapableVm.invokeWithArguments:Ljava/lang/reflect/Method;
         4: .line 559
            return
        end local 3 // java.lang.reflect.Method invokeWithArguments
        end local 2 // java.lang.reflect.Method bindTo
        end local 1 // java.lang.Object methodHandle
        end local 0 // net.bytebuddy.dynamic.loading.ByteArrayClassLoader$SynchronizationStrategy$ForJava8CapableVm this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    5     0                 this  Lnet/bytebuddy/dynamic/loading/ByteArrayClassLoader$SynchronizationStrategy$ForJava8CapableVm;
            0    5     1         methodHandle  Ljava/lang/Object;
            0    5     2               bindTo  Ljava/lang/reflect/Method;
            0    5     3  invokeWithArguments  Ljava/lang/reflect/Method;
    MethodParameters:
                     Name  Flags
      methodHandle         
      bindTo               
      invokeWithArguments  

  public net.bytebuddy.dynamic.loading.ByteArrayClassLoader$SynchronizationStrategy initialize();
    descriptor: ()Lnet/bytebuddy/dynamic/loading/ByteArrayClassLoader$SynchronizationStrategy;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // net.bytebuddy.dynamic.loading.ByteArrayClassLoader$SynchronizationStrategy$ForJava8CapableVm this
         0: .line 565
            aload 0 /* this */
            areturn
        end local 0 // net.bytebuddy.dynamic.loading.ByteArrayClassLoader$SynchronizationStrategy$ForJava8CapableVm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lnet/bytebuddy/dynamic/loading/ByteArrayClassLoader$SynchronizationStrategy$ForJava8CapableVm;

  public java.lang.Object getClassLoadingLock(net.bytebuddy.dynamic.loading.ByteArrayClassLoader, java.lang.String);
    descriptor: (Lnet/bytebuddy/dynamic/loading/ByteArrayClassLoader;Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=4, args_size=3
        start local 0 // net.bytebuddy.dynamic.loading.ByteArrayClassLoader$SynchronizationStrategy$ForJava8CapableVm this
        start local 1 // net.bytebuddy.dynamic.loading.ByteArrayClassLoader classLoader
        start local 2 // java.lang.String name
         0: .line 573
            aload 0 /* this */
            getfield net.bytebuddy.dynamic.loading.ByteArrayClassLoader$SynchronizationStrategy$ForJava8CapableVm.invokeWithArguments:Ljava/lang/reflect/Method;
            aload 0 /* this */
            getfield net.bytebuddy.dynamic.loading.ByteArrayClassLoader$SynchronizationStrategy$ForJava8CapableVm.bindTo:Ljava/lang/reflect/Method;
            aload 0 /* this */
            getfield net.bytebuddy.dynamic.loading.ByteArrayClassLoader$SynchronizationStrategy$ForJava8CapableVm.methodHandle:Ljava/lang/Object;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* classLoader */
            aastore
            invokevirtual java.lang.reflect.Method.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* name */
            aastore
            aastore
            invokevirtual java.lang.reflect.Method.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
         1: areturn
         2: .line 574
      StackMap locals:
      StackMap stack: java.lang.IllegalAccessException
            astore 3 /* exception */
        start local 3 // java.lang.IllegalAccessException exception
         3: .line 575
            new java.lang.IllegalStateException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Cannot access class loading lock for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " on "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* classLoader */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 3 /* exception */
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 3 // java.lang.IllegalAccessException exception
         4: .line 576
      StackMap locals:
      StackMap stack: java.lang.reflect.InvocationTargetException
            astore 3 /* exception */
        start local 3 // java.lang.reflect.InvocationTargetException exception
         5: .line 577
            new java.lang.IllegalStateException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Error when getting "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " on "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* classLoader */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 3 /* exception */
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 3 // java.lang.reflect.InvocationTargetException exception
        end local 2 // java.lang.String name
        end local 1 // net.bytebuddy.dynamic.loading.ByteArrayClassLoader classLoader
        end local 0 // net.bytebuddy.dynamic.loading.ByteArrayClassLoader$SynchronizationStrategy$ForJava8CapableVm this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Lnet/bytebuddy/dynamic/loading/ByteArrayClassLoader$SynchronizationStrategy$ForJava8CapableVm;
            0    6     1  classLoader  Lnet/bytebuddy/dynamic/loading/ByteArrayClassLoader;
            0    6     2         name  Ljava/lang/String;
            3    4     3    exception  Ljava/lang/IllegalAccessException;
            5    6     3    exception  Ljava/lang/reflect/InvocationTargetException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.IllegalAccessException
           0     1       4  Class java.lang.reflect.InvocationTargetException
    MethodParameters:
             Name  Flags
      classLoader  
      name         
}
SourceFile: "ByteArrayClassLoader.java"
NestHost: net.bytebuddy.dynamic.loading.ByteArrayClassLoader
InnerClasses:
  public abstract Enhance = net.bytebuddy.build.HashCodeAndEqualsPlugin$Enhance of net.bytebuddy.build.HashCodeAndEqualsPlugin
  protected abstract SynchronizationStrategy = net.bytebuddy.dynamic.loading.ByteArrayClassLoader$SynchronizationStrategy of net.bytebuddy.dynamic.loading.ByteArrayClassLoader
  public ForJava8CapableVm = net.bytebuddy.dynamic.loading.ByteArrayClassLoader$SynchronizationStrategy$ForJava8CapableVm of net.bytebuddy.dynamic.loading.ByteArrayClassLoader$SynchronizationStrategy
  public abstract Initializable = net.bytebuddy.dynamic.loading.ByteArrayClassLoader$SynchronizationStrategy$Initializable of net.bytebuddy.dynamic.loading.ByteArrayClassLoader$SynchronizationStrategy
    RuntimeVisibleAnnotations: 
      net.bytebuddy.build.HashCodeAndEqualsPlugin$Enhance()