final class jdk.nashorn.internal.runtime.linker.JavaAdapterClassLoader
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: jdk.nashorn.internal.runtime.linker.JavaAdapterClassLoader
  super_class: java.lang.Object
{
  private static final java.lang.Module NASHORN_MODULE;
    descriptor: Ljava/lang/Module;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.security.AccessControlContext CREATE_LOADER_ACC_CTXT;
    descriptor: Ljava/security/AccessControlContext;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.security.AccessControlContext GET_CONTEXT_ACC_CTXT;
    descriptor: Ljava/security/AccessControlContext;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.util.Collection<java.lang.String> VISIBLE_INTERNAL_CLASS_NAMES;
    descriptor: Ljava/util/Collection;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Collection<Ljava/lang/String;>;

  private final java.lang.String className;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final byte[] classBytes;
    descriptor: [B
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=0, args_size=0
         0: .line 54
            ldc Ljdk/nashorn/internal/runtime/linker/JavaAdapterClassLoader;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic jdk.nashorn.internal.runtime.linker.JavaAdapterClassLoader.$assertionsDisabled:Z
         3: .line 55
            ldc Ljdk/nashorn/internal/runtime/Context;
            invokevirtual java.lang.Class.getModule:()Ljava/lang/Module;
            putstatic jdk.nashorn.internal.runtime.linker.JavaAdapterClassLoader.NASHORN_MODULE:Ljava/lang/Module;
         4: .line 57
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            ldc "createClassLoader"
            aastore
            invokestatic jdk.nashorn.internal.runtime.linker.ClassAndLoader.createPermAccCtxt:([Ljava/lang/String;)Ljava/security/AccessControlContext;
            putstatic jdk.nashorn.internal.runtime.linker.JavaAdapterClassLoader.CREATE_LOADER_ACC_CTXT:Ljava/security/AccessControlContext;
         5: .line 58
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            ldc "nashorn.getContext"
            aastore
            invokestatic jdk.nashorn.internal.runtime.linker.ClassAndLoader.createPermAccCtxt:([Ljava/lang/String;)Ljava/security/AccessControlContext;
            putstatic jdk.nashorn.internal.runtime.linker.JavaAdapterClassLoader.GET_CONTEXT_ACC_CTXT:Ljava/security/AccessControlContext;
         6: .line 60
            new java.util.HashSet
            dup
            iconst_4
            anewarray java.lang.String
            dup
            iconst_0
         7: .line 61
            ldc Ljdk/nashorn/internal/runtime/linker/JavaAdapterServices;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            ldc Ljdk/nashorn/internal/runtime/ScriptObject;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_2
            ldc Ljdk/nashorn/internal/runtime/ScriptFunction;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_3
            ldc Ljdk/nashorn/internal/runtime/JSType;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            aastore
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
         8: .line 60
            invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
            invokestatic java.util.Collections.unmodifiableCollection:(Ljava/util/Collection;)Ljava/util/Collection;
            putstatic jdk.nashorn.internal.runtime.linker.JavaAdapterClassLoader.VISIBLE_INTERNAL_CLASS_NAMES:Ljava/util/Collection;
         9: .line 61
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>(java.lang.String, byte[]);
    descriptor: (Ljava/lang/String;[B)V
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // jdk.nashorn.internal.runtime.linker.JavaAdapterClassLoader this
        start local 1 // java.lang.String className
        start local 2 // byte[] classBytes
         0: .line 66
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 67
            aload 0 /* this */
            aload 1 /* className */
            bipush 47
            bipush 46
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            putfield jdk.nashorn.internal.runtime.linker.JavaAdapterClassLoader.className:Ljava/lang/String;
         2: .line 68
            aload 0 /* this */
            aload 2 /* classBytes */
            putfield jdk.nashorn.internal.runtime.linker.JavaAdapterClassLoader.classBytes:[B
         3: .line 69
            return
        end local 2 // byte[] classBytes
        end local 1 // java.lang.String className
        end local 0 // jdk.nashorn.internal.runtime.linker.JavaAdapterClassLoader this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Ljdk/nashorn/internal/runtime/linker/JavaAdapterClassLoader;
            0    4     1   className  Ljava/lang/String;
            0    4     2  classBytes  [B
    MethodParameters:
            Name  Flags
      className   final
      classBytes  final

  jdk.dynalink.beans.StaticClass generateClass(java.lang.ClassLoader, java.security.ProtectionDomain);
    descriptor: (Ljava/lang/ClassLoader;Ljava/security/ProtectionDomain;)Ljdk/dynalink/beans/StaticClass;
    flags: (0x0000) 
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // jdk.nashorn.internal.runtime.linker.JavaAdapterClassLoader this
        start local 1 // java.lang.ClassLoader parentLoader
        start local 2 // java.security.ProtectionDomain protectionDomain
         0: .line 78
            getstatic jdk.nashorn.internal.runtime.linker.JavaAdapterClassLoader.$assertionsDisabled:Z
            ifne 1
            aload 2 /* protectionDomain */
            ifnonnull 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 79
      StackMap locals:
      StackMap stack:
            new jdk.nashorn.internal.runtime.linker.JavaAdapterClassLoader$1
            dup
            aload 0 /* this */
            aload 1 /* parentLoader */
            aload 2 /* protectionDomain */
            invokespecial jdk.nashorn.internal.runtime.linker.JavaAdapterClassLoader$1.<init>:(Ljdk/nashorn/internal/runtime/linker/JavaAdapterClassLoader;Ljava/lang/ClassLoader;Ljava/security/ProtectionDomain;)V
         2: .line 88
            getstatic jdk.nashorn.internal.runtime.linker.JavaAdapterClassLoader.CREATE_LOADER_ACC_CTXT:Ljava/security/AccessControlContext;
         3: .line 79
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;Ljava/security/AccessControlContext;)Ljava/lang/Object;
            checkcast jdk.dynalink.beans.StaticClass
            areturn
        end local 2 // java.security.ProtectionDomain protectionDomain
        end local 1 // java.lang.ClassLoader parentLoader
        end local 0 // jdk.nashorn.internal.runtime.linker.JavaAdapterClassLoader this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    4     0              this  Ljdk/nashorn/internal/runtime/linker/JavaAdapterClassLoader;
            0    4     1      parentLoader  Ljava/lang/ClassLoader;
            0    4     2  protectionDomain  Ljava/security/ProtectionDomain;
    MethodParameters:
                  Name  Flags
      parentLoader      final
      protectionDomain  final

  private java.lang.ClassLoader createClassLoader(java.lang.ClassLoader, java.security.ProtectionDomain);
    descriptor: (Ljava/lang/ClassLoader;Ljava/security/ProtectionDomain;)Ljava/lang/ClassLoader;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // jdk.nashorn.internal.runtime.linker.JavaAdapterClassLoader this
        start local 1 // java.lang.ClassLoader parentLoader
        start local 2 // java.security.ProtectionDomain protectionDomain
         0: .line 99
            new jdk.nashorn.internal.runtime.linker.JavaAdapterClassLoader$2
            dup
            aload 0 /* this */
            aload 1 /* parentLoader */
            aload 2 /* protectionDomain */
            invokespecial jdk.nashorn.internal.runtime.linker.JavaAdapterClassLoader$2.<init>:(Ljdk/nashorn/internal/runtime/linker/JavaAdapterClassLoader;Ljava/lang/ClassLoader;Ljava/security/ProtectionDomain;)V
            areturn
        end local 2 // java.security.ProtectionDomain protectionDomain
        end local 1 // java.lang.ClassLoader parentLoader
        end local 0 // jdk.nashorn.internal.runtime.linker.JavaAdapterClassLoader this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    1     0              this  Ljdk/nashorn/internal/runtime/linker/JavaAdapterClassLoader;
            0    1     1      parentLoader  Ljava/lang/ClassLoader;
            0    1     2  protectionDomain  Ljava/security/ProtectionDomain;
    MethodParameters:
                  Name  Flags
      parentLoader      final
      protectionDomain  final
}
SourceFile: "JavaAdapterClassLoader.java"
NestMembers:
  jdk.nashorn.internal.runtime.linker.JavaAdapterClassLoader$1  jdk.nashorn.internal.runtime.linker.JavaAdapterClassLoader$2  jdk.nashorn.internal.runtime.linker.JavaAdapterClassLoader$2$1
InnerClasses:
  jdk.nashorn.internal.runtime.linker.JavaAdapterClassLoader$1
  jdk.nashorn.internal.runtime.linker.JavaAdapterClassLoader$2