class jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo
  super_class: java.lang.Object
{
  private static final jdk.nashorn.internal.runtime.linker.ClassAndLoader SCRIPT_OBJECT_LOADER;
    descriptor: Ljdk/nashorn/internal/runtime/linker/ClassAndLoader;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

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

  private final jdk.nashorn.internal.runtime.linker.JavaAdapterClassLoader classAdapterGenerator;
    descriptor: Ljdk/nashorn/internal/runtime/linker/JavaAdapterClassLoader;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final jdk.nashorn.internal.runtime.linker.JavaAdapterClassLoader instanceAdapterGenerator;
    descriptor: Ljdk/nashorn/internal/runtime/linker/JavaAdapterClassLoader;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.Map<java.security.CodeSource, jdk.dynalink.beans.StaticClass> instanceAdapters;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/security/CodeSource;Ljdk/dynalink/beans/StaticClass;>;

  final boolean autoConvertibleFromFunction;
    descriptor: Z
    flags: (0x0010) ACC_FINAL

  final jdk.nashorn.internal.runtime.linker.AdaptationResult adaptationResult;
    descriptor: Ljdk/nashorn/internal/runtime/linker/AdaptationResult;
    flags: (0x0010) ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 284
            new jdk.nashorn.internal.runtime.linker.ClassAndLoader
            dup
            ldc Ljdk/nashorn/internal/runtime/ScriptFunction;
            iconst_1
            invokespecial jdk.nashorn.internal.runtime.linker.ClassAndLoader.<init>:(Ljava/lang/Class;Z)V
            putstatic jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.SCRIPT_OBJECT_LOADER:Ljdk/nashorn/internal/runtime/linker/ClassAndLoader;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>(java.lang.Class<?>, java.util.List<java.lang.Class<?>>, jdk.nashorn.internal.runtime.linker.ClassAndLoader);
    descriptor: (Ljava/lang/Class;Ljava/util/List;Ljdk/nashorn/internal/runtime/linker/ClassAndLoader;)V
    flags: (0x0000) 
    Code:
      stack=7, locals=5, args_size=4
        start local 0 // jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo this
        start local 1 // java.lang.Class superClass
        start local 2 // java.util.List interfaces
        start local 3 // jdk.nashorn.internal.runtime.linker.ClassAndLoader definingLoader
         0: .line 294
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 290
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.instanceAdapters:Ljava/util/Map;
         2: .line 295
            aload 0 /* this */
            aload 3 /* definingLoader */
            invokestatic jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.findCommonLoader:(Ljdk/nashorn/internal/runtime/linker/ClassAndLoader;)Ljava/lang/ClassLoader;
            putfield jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.commonLoader:Ljava/lang/ClassLoader;
         3: .line 296
            new jdk.nashorn.internal.runtime.linker.JavaAdapterBytecodeGenerator
            dup
            aload 1 /* superClass */
            aload 2 /* interfaces */
            aload 0 /* this */
            getfield jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.commonLoader:Ljava/lang/ClassLoader;
            iconst_0
            invokespecial jdk.nashorn.internal.runtime.linker.JavaAdapterBytecodeGenerator.<init>:(Ljava/lang/Class;Ljava/util/List;Ljava/lang/ClassLoader;Z)V
            astore 4 /* gen */
        start local 4 // jdk.nashorn.internal.runtime.linker.JavaAdapterBytecodeGenerator gen
         4: .line 297
            aload 0 /* this */
            aload 4 /* gen */
            invokevirtual jdk.nashorn.internal.runtime.linker.JavaAdapterBytecodeGenerator.isAutoConvertibleFromFunction:()Z
            putfield jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.autoConvertibleFromFunction:Z
         5: .line 298
            aload 0 /* this */
            aload 4 /* gen */
            invokevirtual jdk.nashorn.internal.runtime.linker.JavaAdapterBytecodeGenerator.createAdapterClassLoader:()Ljdk/nashorn/internal/runtime/linker/JavaAdapterClassLoader;
            putfield jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.instanceAdapterGenerator:Ljdk/nashorn/internal/runtime/linker/JavaAdapterClassLoader;
         6: .line 299
            aload 0 /* this */
            new jdk.nashorn.internal.runtime.linker.JavaAdapterBytecodeGenerator
            dup
            aload 1 /* superClass */
            aload 2 /* interfaces */
            aload 0 /* this */
            getfield jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.commonLoader:Ljava/lang/ClassLoader;
            iconst_1
            invokespecial jdk.nashorn.internal.runtime.linker.JavaAdapterBytecodeGenerator.<init>:(Ljava/lang/Class;Ljava/util/List;Ljava/lang/ClassLoader;Z)V
            invokevirtual jdk.nashorn.internal.runtime.linker.JavaAdapterBytecodeGenerator.createAdapterClassLoader:()Ljdk/nashorn/internal/runtime/linker/JavaAdapterClassLoader;
            putfield jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.classAdapterGenerator:Ljdk/nashorn/internal/runtime/linker/JavaAdapterClassLoader;
         7: .line 300
            aload 0 /* this */
            getstatic jdk.nashorn.internal.runtime.linker.AdaptationResult.SUCCESSFUL_RESULT:Ljdk/nashorn/internal/runtime/linker/AdaptationResult;
            putfield jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.adaptationResult:Ljdk/nashorn/internal/runtime/linker/AdaptationResult;
         8: .line 301
            return
        end local 4 // jdk.nashorn.internal.runtime.linker.JavaAdapterBytecodeGenerator gen
        end local 3 // jdk.nashorn.internal.runtime.linker.ClassAndLoader definingLoader
        end local 2 // java.util.List interfaces
        end local 1 // java.lang.Class superClass
        end local 0 // jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    9     0            this  Ljdk/nashorn/internal/runtime/linker/JavaAdapterFactory$AdapterInfo;
            0    9     1      superClass  Ljava/lang/Class<*>;
            0    9     2      interfaces  Ljava/util/List<Ljava/lang/Class<*>;>;
            0    9     3  definingLoader  Ljdk/nashorn/internal/runtime/linker/ClassAndLoader;
            4    9     4             gen  Ljdk/nashorn/internal/runtime/linker/JavaAdapterBytecodeGenerator;
    Exceptions:
      throws jdk.nashorn.internal.runtime.linker.AdaptationException
    Signature: (Ljava/lang/Class<*>;Ljava/util/List<Ljava/lang/Class<*>;>;Ljdk/nashorn/internal/runtime/linker/ClassAndLoader;)V
    MethodParameters:
                Name  Flags
      superClass      final
      interfaces      final
      definingLoader  final

  void <init>(jdk.nashorn.internal.runtime.linker.AdaptationResult$Outcome, java.lang.String);
    descriptor: (Ljdk/nashorn/internal/runtime/linker/AdaptationResult$Outcome;Ljava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=8, locals=3, args_size=3
        start local 0 // jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo this
        start local 1 // jdk.nashorn.internal.runtime.linker.AdaptationResult$Outcome outcome
        start local 2 // java.lang.String classList
         0: .line 304
            aload 0 /* this */
            new jdk.nashorn.internal.runtime.linker.AdaptationResult
            dup
            aload 1 /* outcome */
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 2 /* classList */
            aastore
            invokespecial jdk.nashorn.internal.runtime.linker.AdaptationResult.<init>:(Ljdk/nashorn/internal/runtime/linker/AdaptationResult$Outcome;[Ljava/lang/String;)V
            invokespecial jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.<init>:(Ljdk/nashorn/internal/runtime/linker/AdaptationResult;)V
         1: .line 305
            return
        end local 2 // java.lang.String classList
        end local 1 // jdk.nashorn.internal.runtime.linker.AdaptationResult$Outcome outcome
        end local 0 // jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Ljdk/nashorn/internal/runtime/linker/JavaAdapterFactory$AdapterInfo;
            0    2     1    outcome  Ljdk/nashorn/internal/runtime/linker/AdaptationResult$Outcome;
            0    2     2  classList  Ljava/lang/String;
    MethodParameters:
           Name  Flags
      outcome    final
      classList  final

  void <init>(jdk.nashorn.internal.runtime.linker.AdaptationResult);
    descriptor: (Ljdk/nashorn/internal/runtime/linker/AdaptationResult;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo this
        start local 1 // jdk.nashorn.internal.runtime.linker.AdaptationResult adaptationResult
         0: .line 307
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 290
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.instanceAdapters:Ljava/util/Map;
         2: .line 308
            aload 0 /* this */
            aconst_null
            putfield jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.commonLoader:Ljava/lang/ClassLoader;
         3: .line 309
            aload 0 /* this */
            aconst_null
            putfield jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.classAdapterGenerator:Ljdk/nashorn/internal/runtime/linker/JavaAdapterClassLoader;
         4: .line 310
            aload 0 /* this */
            aconst_null
            putfield jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.instanceAdapterGenerator:Ljdk/nashorn/internal/runtime/linker/JavaAdapterClassLoader;
         5: .line 311
            aload 0 /* this */
            iconst_0
            putfield jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.autoConvertibleFromFunction:Z
         6: .line 312
            aload 0 /* this */
            aload 1 /* adaptationResult */
            putfield jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.adaptationResult:Ljdk/nashorn/internal/runtime/linker/AdaptationResult;
         7: .line 313
            return
        end local 1 // jdk.nashorn.internal.runtime.linker.AdaptationResult adaptationResult
        end local 0 // jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    8     0              this  Ljdk/nashorn/internal/runtime/linker/JavaAdapterFactory$AdapterInfo;
            0    8     1  adaptationResult  Ljdk/nashorn/internal/runtime/linker/AdaptationResult;
    MethodParameters:
                  Name  Flags
      adaptationResult  final

  jdk.dynalink.beans.StaticClass getAdapterClass(jdk.nashorn.internal.runtime.ScriptObject, java.security.ProtectionDomain);
    descriptor: (Ljdk/nashorn/internal/runtime/ScriptObject;Ljava/security/ProtectionDomain;)Ljdk/dynalink/beans/StaticClass;
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo this
        start local 1 // jdk.nashorn.internal.runtime.ScriptObject classOverrides
        start local 2 // java.security.ProtectionDomain protectionDomain
         0: .line 316
            aload 0 /* this */
            getfield jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.adaptationResult:Ljdk/nashorn/internal/runtime/linker/AdaptationResult;
            invokevirtual jdk.nashorn.internal.runtime.linker.AdaptationResult.getOutcome:()Ljdk/nashorn/internal/runtime/linker/AdaptationResult$Outcome;
            getstatic jdk.nashorn.internal.runtime.linker.AdaptationResult$Outcome.SUCCESS:Ljdk/nashorn/internal/runtime/linker/AdaptationResult$Outcome;
            if_acmpeq 2
         1: .line 317
            aload 0 /* this */
            getfield jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.adaptationResult:Ljdk/nashorn/internal/runtime/linker/AdaptationResult;
            invokevirtual jdk.nashorn.internal.runtime.linker.AdaptationResult.typeError:()Ljdk/nashorn/internal/runtime/ECMAException;
            athrow
         2: .line 319
      StackMap locals:
      StackMap stack:
            aload 1 /* classOverrides */
            ifnonnull 3
            aload 0 /* this */
            aload 2 /* protectionDomain */
            invokevirtual jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.getInstanceAdapterClass:(Ljava/security/ProtectionDomain;)Ljdk/dynalink/beans/StaticClass;
            goto 4
         3: .line 320
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* classOverrides */
            aload 2 /* protectionDomain */
            invokevirtual jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.getClassAdapterClass:(Ljdk/nashorn/internal/runtime/ScriptObject;Ljava/security/ProtectionDomain;)Ljdk/dynalink/beans/StaticClass;
         4: .line 319
      StackMap locals:
      StackMap stack: jdk.dynalink.beans.StaticClass
            areturn
        end local 2 // java.security.ProtectionDomain protectionDomain
        end local 1 // jdk.nashorn.internal.runtime.ScriptObject classOverrides
        end local 0 // jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    5     0              this  Ljdk/nashorn/internal/runtime/linker/JavaAdapterFactory$AdapterInfo;
            0    5     1    classOverrides  Ljdk/nashorn/internal/runtime/ScriptObject;
            0    5     2  protectionDomain  Ljava/security/ProtectionDomain;
    MethodParameters:
                  Name  Flags
      classOverrides    final
      protectionDomain  final

  boolean isAutoConvertibleFromFunction();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo this
         0: .line 324
            aload 0 /* this */
            getfield jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.adaptationResult:Ljdk/nashorn/internal/runtime/linker/AdaptationResult;
            invokevirtual jdk.nashorn.internal.runtime.linker.AdaptationResult.getOutcome:()Ljdk/nashorn/internal/runtime/linker/AdaptationResult$Outcome;
            getstatic jdk.nashorn.internal.runtime.linker.AdaptationResult$Outcome.ERROR_OTHER:Ljdk/nashorn/internal/runtime/linker/AdaptationResult$Outcome;
            if_acmpne 2
         1: .line 325
            aload 0 /* this */
            getfield jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.adaptationResult:Ljdk/nashorn/internal/runtime/linker/AdaptationResult;
            invokevirtual jdk.nashorn.internal.runtime.linker.AdaptationResult.typeError:()Ljdk/nashorn/internal/runtime/ECMAException;
            athrow
         2: .line 327
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.autoConvertibleFromFunction:Z
            ireturn
        end local 0 // jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/runtime/linker/JavaAdapterFactory$AdapterInfo;

  private jdk.dynalink.beans.StaticClass getInstanceAdapterClass(java.security.ProtectionDomain);
    descriptor: (Ljava/security/ProtectionDomain;)Ljdk/dynalink/beans/StaticClass;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo this
        start local 1 // java.security.ProtectionDomain protectionDomain
         0: .line 331
            aload 1 /* protectionDomain */
            invokevirtual java.security.ProtectionDomain.getCodeSource:()Ljava/security/CodeSource;
            astore 2 /* codeSource */
        start local 2 // java.security.CodeSource codeSource
         1: .line 332
            aload 2 /* codeSource */
            ifnonnull 3
         2: .line 333
            getstatic jdk.nashorn.internal.runtime.linker.JavaAdapterFactory.MINIMAL_PERMISSION_DOMAIN:Ljava/security/ProtectionDomain;
            invokevirtual java.security.ProtectionDomain.getCodeSource:()Ljava/security/CodeSource;
            astore 2 /* codeSource */
         3: .line 335
      StackMap locals: java.security.CodeSource
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.instanceAdapters:Ljava/util/Map;
            aload 2 /* codeSource */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast jdk.dynalink.beans.StaticClass
            astore 3 /* instanceAdapterClass */
        start local 3 // jdk.dynalink.beans.StaticClass instanceAdapterClass
         4: .line 336
            aload 3 /* instanceAdapterClass */
            ifnull 6
         5: .line 337
            aload 3 /* instanceAdapterClass */
            areturn
         6: .line 340
      StackMap locals: jdk.dynalink.beans.StaticClass
      StackMap stack:
            aload 2 /* codeSource */
            getstatic jdk.nashorn.internal.runtime.linker.JavaAdapterFactory.MINIMAL_PERMISSION_DOMAIN:Ljava/security/ProtectionDomain;
            invokevirtual java.security.ProtectionDomain.getCodeSource:()Ljava/security/CodeSource;
            invokevirtual java.security.CodeSource.equals:(Ljava/lang/Object;)Z
            ifeq 8
         7: .line 341
            getstatic jdk.nashorn.internal.runtime.linker.JavaAdapterFactory.MINIMAL_PERMISSION_DOMAIN:Ljava/security/ProtectionDomain;
            goto 9
      StackMap locals:
      StackMap stack:
         8: aload 1 /* protectionDomain */
         9: .line 340
      StackMap locals:
      StackMap stack: java.security.ProtectionDomain
            astore 4 /* effectiveDomain */
        start local 4 // java.security.ProtectionDomain effectiveDomain
        10: .line 343
            aload 0 /* this */
            getfield jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.instanceAdapterGenerator:Ljdk/nashorn/internal/runtime/linker/JavaAdapterClassLoader;
            aload 0 /* this */
            getfield jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.commonLoader:Ljava/lang/ClassLoader;
            aload 4 /* effectiveDomain */
            invokevirtual jdk.nashorn.internal.runtime.linker.JavaAdapterClassLoader.generateClass:(Ljava/lang/ClassLoader;Ljava/security/ProtectionDomain;)Ljdk/dynalink/beans/StaticClass;
            astore 3 /* instanceAdapterClass */
        11: .line 344
            aload 0 /* this */
            getfield jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.instanceAdapters:Ljava/util/Map;
            aload 2 /* codeSource */
            aload 3 /* instanceAdapterClass */
            invokeinterface java.util.Map.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast jdk.dynalink.beans.StaticClass
            astore 5 /* existing */
        start local 5 // jdk.dynalink.beans.StaticClass existing
        12: .line 345
            aload 5 /* existing */
            ifnonnull 13
            aload 3 /* instanceAdapterClass */
            goto 14
      StackMap locals: java.security.ProtectionDomain jdk.dynalink.beans.StaticClass
      StackMap stack:
        13: aload 5 /* existing */
      StackMap locals:
      StackMap stack: jdk.dynalink.beans.StaticClass
        14: areturn
        end local 5 // jdk.dynalink.beans.StaticClass existing
        end local 4 // java.security.ProtectionDomain effectiveDomain
        end local 3 // jdk.dynalink.beans.StaticClass instanceAdapterClass
        end local 2 // java.security.CodeSource codeSource
        end local 1 // java.security.ProtectionDomain protectionDomain
        end local 0 // jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   15     0                  this  Ljdk/nashorn/internal/runtime/linker/JavaAdapterFactory$AdapterInfo;
            0   15     1      protectionDomain  Ljava/security/ProtectionDomain;
            1   15     2            codeSource  Ljava/security/CodeSource;
            4   15     3  instanceAdapterClass  Ljdk/dynalink/beans/StaticClass;
           10   15     4       effectiveDomain  Ljava/security/ProtectionDomain;
           12   15     5              existing  Ljdk/dynalink/beans/StaticClass;
    MethodParameters:
                  Name  Flags
      protectionDomain  final

  private jdk.dynalink.beans.StaticClass getClassAdapterClass(jdk.nashorn.internal.runtime.ScriptObject, java.security.ProtectionDomain);
    descriptor: (Ljdk/nashorn/internal/runtime/ScriptObject;Ljava/security/ProtectionDomain;)Ljdk/dynalink/beans/StaticClass;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo this
        start local 1 // jdk.nashorn.internal.runtime.ScriptObject classOverrides
        start local 2 // java.security.ProtectionDomain protectionDomain
         0: .line 349
            aload 1 /* classOverrides */
            invokestatic jdk.nashorn.internal.runtime.linker.JavaAdapterServices.setClassOverrides:(Ljdk/nashorn/internal/runtime/ScriptObject;)V
         1: .line 351
            aload 0 /* this */
            getfield jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.classAdapterGenerator:Ljdk/nashorn/internal/runtime/linker/JavaAdapterClassLoader;
            aload 0 /* this */
            getfield jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.commonLoader:Ljava/lang/ClassLoader;
            aload 2 /* protectionDomain */
            invokevirtual jdk.nashorn.internal.runtime.linker.JavaAdapterClassLoader.generateClass:(Ljava/lang/ClassLoader;Ljava/security/ProtectionDomain;)Ljdk/dynalink/beans/StaticClass;
            astore 4
         2: .line 353
            aconst_null
            invokestatic jdk.nashorn.internal.runtime.linker.JavaAdapterServices.setClassOverrides:(Ljdk/nashorn/internal/runtime/ScriptObject;)V
         3: .line 351
            aload 4
            areturn
         4: .line 352
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 3
         5: .line 353
            aconst_null
            invokestatic jdk.nashorn.internal.runtime.linker.JavaAdapterServices.setClassOverrides:(Ljdk/nashorn/internal/runtime/ScriptObject;)V
         6: .line 354
            aload 3
            athrow
        end local 2 // java.security.ProtectionDomain protectionDomain
        end local 1 // jdk.nashorn.internal.runtime.ScriptObject classOverrides
        end local 0 // jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    7     0              this  Ljdk/nashorn/internal/runtime/linker/JavaAdapterFactory$AdapterInfo;
            0    7     1    classOverrides  Ljdk/nashorn/internal/runtime/ScriptObject;
            0    7     2  protectionDomain  Ljava/security/ProtectionDomain;
      Exception table:
        from    to  target  type
           1     2       4  any
    MethodParameters:
                  Name  Flags
      classOverrides    final
      protectionDomain  final

  private static java.lang.ClassLoader findCommonLoader(jdk.nashorn.internal.runtime.linker.ClassAndLoader);
    descriptor: (Ljdk/nashorn/internal/runtime/linker/ClassAndLoader;)Ljava/lang/ClassLoader;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.runtime.linker.ClassAndLoader classAndLoader
         0: .line 369
            aload 0 /* classAndLoader */
            getstatic jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.SCRIPT_OBJECT_LOADER:Ljdk/nashorn/internal/runtime/linker/ClassAndLoader;
            invokevirtual jdk.nashorn.internal.runtime.linker.ClassAndLoader.canSee:(Ljdk/nashorn/internal/runtime/linker/ClassAndLoader;)Z
            ifeq 2
         1: .line 370
            aload 0 /* classAndLoader */
            invokevirtual jdk.nashorn.internal.runtime.linker.ClassAndLoader.getLoader:()Ljava/lang/ClassLoader;
            areturn
         2: .line 372
      StackMap locals:
      StackMap stack:
            getstatic jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.SCRIPT_OBJECT_LOADER:Ljdk/nashorn/internal/runtime/linker/ClassAndLoader;
            aload 0 /* classAndLoader */
            invokevirtual jdk.nashorn.internal.runtime.linker.ClassAndLoader.canSee:(Ljdk/nashorn/internal/runtime/linker/ClassAndLoader;)Z
            ifeq 4
         3: .line 373
            getstatic jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo.SCRIPT_OBJECT_LOADER:Ljdk/nashorn/internal/runtime/linker/ClassAndLoader;
            invokevirtual jdk.nashorn.internal.runtime.linker.ClassAndLoader.getLoader:()Ljava/lang/ClassLoader;
            areturn
         4: .line 376
      StackMap locals:
      StackMap stack:
            new jdk.nashorn.internal.runtime.linker.AdaptationException
            dup
            getstatic jdk.nashorn.internal.runtime.linker.AdaptationResult$Outcome.ERROR_NO_COMMON_LOADER:Ljdk/nashorn/internal/runtime/linker/AdaptationResult$Outcome;
            aload 0 /* classAndLoader */
            invokevirtual jdk.nashorn.internal.runtime.linker.ClassAndLoader.getRepresentativeClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getCanonicalName:()Ljava/lang/String;
            invokespecial jdk.nashorn.internal.runtime.linker.AdaptationException.<init>:(Ljdk/nashorn/internal/runtime/linker/AdaptationResult$Outcome;Ljava/lang/String;)V
            athrow
        end local 0 // jdk.nashorn.internal.runtime.linker.ClassAndLoader classAndLoader
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    5     0  classAndLoader  Ljdk/nashorn/internal/runtime/linker/ClassAndLoader;
    Exceptions:
      throws jdk.nashorn.internal.runtime.linker.AdaptationException
    MethodParameters:
                Name  Flags
      classAndLoader  final
}
SourceFile: "JavaAdapterFactory.java"
NestHost: jdk.nashorn.internal.runtime.linker.JavaAdapterFactory
InnerClasses:
  final Outcome = jdk.nashorn.internal.runtime.linker.AdaptationResult$Outcome of jdk.nashorn.internal.runtime.linker.AdaptationResult
  private AdapterInfo = jdk.nashorn.internal.runtime.linker.JavaAdapterFactory$AdapterInfo of jdk.nashorn.internal.runtime.linker.JavaAdapterFactory