class org.graalvm.polyglot.Engine$APIAccessImpl extends org.graalvm.polyglot.impl.AbstractPolyglotImpl$APIAccess
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.graalvm.polyglot.Engine$APIAccessImpl
  super_class: org.graalvm.polyglot.impl.AbstractPolyglotImpl$APIAccess
{
  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
         0: .line 554
            aload 0 /* this */
            invokespecial org.graalvm.polyglot.impl.AbstractPolyglotImpl$APIAccess.<init>:()V
         1: .line 555
            return
        end local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/polyglot/Engine$APIAccessImpl;

  public org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractContextImpl getImpl(org.graalvm.polyglot.Context);
    descriptor: (Lorg/graalvm/polyglot/Context;)Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractContextImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
        start local 1 // org.graalvm.polyglot.Context context
         0: .line 559
            aload 1 /* context */
            getfield org.graalvm.polyglot.Context.impl:Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractContextImpl;
            areturn
        end local 1 // org.graalvm.polyglot.Context context
        end local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/graalvm/polyglot/Engine$APIAccessImpl;
            0    1     1  context  Lorg/graalvm/polyglot/Context;
    MethodParameters:
         Name  Flags
      context  

  public org.graalvm.polyglot.Engine newEngine(org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractEngineImpl);
    descriptor: (Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractEngineImpl;)Lorg/graalvm/polyglot/Engine;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
        start local 1 // org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractEngineImpl impl
         0: .line 564
            new org.graalvm.polyglot.Engine
            dup
            aload 1 /* impl */
            invokespecial org.graalvm.polyglot.Engine.<init>:(Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractEngineImpl;)V
            areturn
        end local 1 // org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractEngineImpl impl
        end local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/polyglot/Engine$APIAccessImpl;
            0    1     1  impl  Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractEngineImpl;
    MethodParameters:
      Name  Flags
      impl  

  public org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractExceptionImpl getImpl(org.graalvm.polyglot.PolyglotException);
    descriptor: (Lorg/graalvm/polyglot/PolyglotException;)Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractExceptionImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
        start local 1 // org.graalvm.polyglot.PolyglotException value
         0: .line 569
            aload 1 /* value */
            getfield org.graalvm.polyglot.PolyglotException.impl:Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractExceptionImpl;
            areturn
        end local 1 // org.graalvm.polyglot.PolyglotException value
        end local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/graalvm/polyglot/Engine$APIAccessImpl;
            0    1     1  value  Lorg/graalvm/polyglot/PolyglotException;
    MethodParameters:
       Name  Flags
      value  

  public org.graalvm.polyglot.Context newContext(org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractContextImpl);
    descriptor: (Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractContextImpl;)Lorg/graalvm/polyglot/Context;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
        start local 1 // org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractContextImpl impl
         0: .line 574
            new org.graalvm.polyglot.Context
            dup
            aload 1 /* impl */
            invokespecial org.graalvm.polyglot.Context.<init>:(Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractContextImpl;)V
            areturn
        end local 1 // org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractContextImpl impl
        end local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/polyglot/Engine$APIAccessImpl;
            0    1     1  impl  Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractContextImpl;
    MethodParameters:
      Name  Flags
      impl  

  public org.graalvm.polyglot.PolyglotException newLanguageException(java.lang.String, org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractExceptionImpl);
    descriptor: (Ljava/lang/String;Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractExceptionImpl;)Lorg/graalvm/polyglot/PolyglotException;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
        start local 1 // java.lang.String message
        start local 2 // org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractExceptionImpl impl
         0: .line 579
            new org.graalvm.polyglot.PolyglotException
            dup
            aload 1 /* message */
            aload 2 /* impl */
            invokespecial org.graalvm.polyglot.PolyglotException.<init>:(Ljava/lang/String;Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractExceptionImpl;)V
            areturn
        end local 2 // org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractExceptionImpl impl
        end local 1 // java.lang.String message
        end local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/graalvm/polyglot/Engine$APIAccessImpl;
            0    1     1  message  Ljava/lang/String;
            0    1     2     impl  Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractExceptionImpl;
    MethodParameters:
         Name  Flags
      message  
      impl     

  public org.graalvm.polyglot.Language newLanguage(org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractLanguageImpl);
    descriptor: (Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractLanguageImpl;)Lorg/graalvm/polyglot/Language;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
        start local 1 // org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractLanguageImpl impl
         0: .line 584
            new org.graalvm.polyglot.Language
            dup
            aload 1 /* impl */
            invokespecial org.graalvm.polyglot.Language.<init>:(Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractLanguageImpl;)V
            areturn
        end local 1 // org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractLanguageImpl impl
        end local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/polyglot/Engine$APIAccessImpl;
            0    1     1  impl  Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractLanguageImpl;
    MethodParameters:
      Name  Flags
      impl  

  public org.graalvm.polyglot.Instrument newInstrument(org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractInstrumentImpl);
    descriptor: (Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractInstrumentImpl;)Lorg/graalvm/polyglot/Instrument;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
        start local 1 // org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractInstrumentImpl impl
         0: .line 589
            new org.graalvm.polyglot.Instrument
            dup
            aload 1 /* impl */
            invokespecial org.graalvm.polyglot.Instrument.<init>:(Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractInstrumentImpl;)V
            areturn
        end local 1 // org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractInstrumentImpl impl
        end local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/polyglot/Engine$APIAccessImpl;
            0    1     1  impl  Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractInstrumentImpl;
    MethodParameters:
      Name  Flags
      impl  

  public org.graalvm.polyglot.Value newValue(java.lang.Object, org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractValueImpl);
    descriptor: (Ljava/lang/Object;Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractValueImpl;)Lorg/graalvm/polyglot/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
        start local 1 // java.lang.Object value
        start local 2 // org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractValueImpl impl
         0: .line 594
            new org.graalvm.polyglot.Value
            dup
            aload 2 /* impl */
            aload 1 /* value */
            invokespecial org.graalvm.polyglot.Value.<init>:(Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractValueImpl;Ljava/lang/Object;)V
            areturn
        end local 2 // org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractValueImpl impl
        end local 1 // java.lang.Object value
        end local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/graalvm/polyglot/Engine$APIAccessImpl;
            0    1     1  value  Ljava/lang/Object;
            0    1     2   impl  Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractValueImpl;
    MethodParameters:
       Name  Flags
      value  
      impl   

  public org.graalvm.polyglot.Source newSource(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Lorg/graalvm/polyglot/Source;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
        start local 1 // java.lang.Object impl
         0: .line 599
            new org.graalvm.polyglot.Source
            dup
            aload 1 /* impl */
            invokespecial org.graalvm.polyglot.Source.<init>:(Ljava/lang/Object;)V
            areturn
        end local 1 // java.lang.Object impl
        end local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/polyglot/Engine$APIAccessImpl;
            0    1     1  impl  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      impl  

  public org.graalvm.polyglot.SourceSection newSourceSection(org.graalvm.polyglot.Source, java.lang.Object);
    descriptor: (Lorg/graalvm/polyglot/Source;Ljava/lang/Object;)Lorg/graalvm/polyglot/SourceSection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
        start local 1 // org.graalvm.polyglot.Source source
        start local 2 // java.lang.Object impl
         0: .line 604
            new org.graalvm.polyglot.SourceSection
            dup
            aload 1 /* source */
            aload 2 /* impl */
            invokespecial org.graalvm.polyglot.SourceSection.<init>:(Lorg/graalvm/polyglot/Source;Ljava/lang/Object;)V
            areturn
        end local 2 // java.lang.Object impl
        end local 1 // org.graalvm.polyglot.Source source
        end local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/graalvm/polyglot/Engine$APIAccessImpl;
            0    1     1  source  Lorg/graalvm/polyglot/Source;
            0    1     2    impl  Ljava/lang/Object;
    MethodParameters:
        Name  Flags
      source  
      impl    

  public org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractEngineImpl getImpl(org.graalvm.polyglot.Engine);
    descriptor: (Lorg/graalvm/polyglot/Engine;)Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractEngineImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
        start local 1 // org.graalvm.polyglot.Engine value
         0: .line 609
            aload 1 /* value */
            getfield org.graalvm.polyglot.Engine.impl:Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractEngineImpl;
            areturn
        end local 1 // org.graalvm.polyglot.Engine value
        end local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/graalvm/polyglot/Engine$APIAccessImpl;
            0    1     1  value  Lorg/graalvm/polyglot/Engine;
    MethodParameters:
       Name  Flags
      value  

  public org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractValueImpl getImpl(org.graalvm.polyglot.Value);
    descriptor: (Lorg/graalvm/polyglot/Value;)Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractValueImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
        start local 1 // org.graalvm.polyglot.Value value
         0: .line 614
            aload 1 /* value */
            getfield org.graalvm.polyglot.Value.impl:Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractValueImpl;
            areturn
        end local 1 // org.graalvm.polyglot.Value value
        end local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/graalvm/polyglot/Engine$APIAccessImpl;
            0    1     1  value  Lorg/graalvm/polyglot/Value;
    MethodParameters:
       Name  Flags
      value  

  public org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractInstrumentImpl getImpl(org.graalvm.polyglot.Instrument);
    descriptor: (Lorg/graalvm/polyglot/Instrument;)Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractInstrumentImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
        start local 1 // org.graalvm.polyglot.Instrument value
         0: .line 619
            aload 1 /* value */
            getfield org.graalvm.polyglot.Instrument.impl:Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractInstrumentImpl;
            areturn
        end local 1 // org.graalvm.polyglot.Instrument value
        end local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/graalvm/polyglot/Engine$APIAccessImpl;
            0    1     1  value  Lorg/graalvm/polyglot/Instrument;
    MethodParameters:
       Name  Flags
      value  

  public org.graalvm.polyglot.ResourceLimitEvent newResourceLimitsEvent(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Lorg/graalvm/polyglot/ResourceLimitEvent;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
        start local 1 // java.lang.Object impl
         0: .line 624
            new org.graalvm.polyglot.ResourceLimitEvent
            dup
            aload 1 /* impl */
            invokespecial org.graalvm.polyglot.ResourceLimitEvent.<init>:(Ljava/lang/Object;)V
            areturn
        end local 1 // java.lang.Object impl
        end local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/polyglot/Engine$APIAccessImpl;
            0    1     1  impl  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      impl  

  public org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractLanguageImpl getImpl(org.graalvm.polyglot.Language);
    descriptor: (Lorg/graalvm/polyglot/Language;)Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractLanguageImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
        start local 1 // org.graalvm.polyglot.Language value
         0: .line 629
            aload 1 /* value */
            getfield org.graalvm.polyglot.Language.impl:Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractLanguageImpl;
            areturn
        end local 1 // org.graalvm.polyglot.Language value
        end local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/graalvm/polyglot/Engine$APIAccessImpl;
            0    1     1  value  Lorg/graalvm/polyglot/Language;
    MethodParameters:
       Name  Flags
      value  

  public java.lang.Object getImpl(org.graalvm.polyglot.ResourceLimits);
    descriptor: (Lorg/graalvm/polyglot/ResourceLimits;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
        start local 1 // org.graalvm.polyglot.ResourceLimits value
         0: .line 634
            aload 1 /* value */
            getfield org.graalvm.polyglot.ResourceLimits.impl:Ljava/lang/Object;
            areturn
        end local 1 // org.graalvm.polyglot.ResourceLimits value
        end local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/graalvm/polyglot/Engine$APIAccessImpl;
            0    1     1  value  Lorg/graalvm/polyglot/ResourceLimits;
    MethodParameters:
       Name  Flags
      value  

  public org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractStackFrameImpl getImpl(org.graalvm.polyglot.PolyglotException$StackFrame);
    descriptor: (Lorg/graalvm/polyglot/PolyglotException$StackFrame;)Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractStackFrameImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
        start local 1 // org.graalvm.polyglot.PolyglotException$StackFrame value
         0: .line 639
            aload 1 /* value */
            getfield org.graalvm.polyglot.PolyglotException$StackFrame.impl:Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractStackFrameImpl;
            areturn
        end local 1 // org.graalvm.polyglot.PolyglotException$StackFrame value
        end local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/graalvm/polyglot/Engine$APIAccessImpl;
            0    1     1  value  Lorg/graalvm/polyglot/PolyglotException$StackFrame;
    MethodParameters:
       Name  Flags
      value  

  public java.lang.Object getReceiver(org.graalvm.polyglot.Value);
    descriptor: (Lorg/graalvm/polyglot/Value;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
        start local 1 // org.graalvm.polyglot.Value value
         0: .line 644
            aload 1 /* value */
            getfield org.graalvm.polyglot.Value.receiver:Ljava/lang/Object;
            areturn
        end local 1 // org.graalvm.polyglot.Value value
        end local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/graalvm/polyglot/Engine$APIAccessImpl;
            0    1     1  value  Lorg/graalvm/polyglot/Value;
    MethodParameters:
       Name  Flags
      value  

  public org.graalvm.polyglot.PolyglotException$StackFrame newPolyglotStackTraceElement(org.graalvm.polyglot.PolyglotException, org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractStackFrameImpl);
    descriptor: (Lorg/graalvm/polyglot/PolyglotException;Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractStackFrameImpl;)Lorg/graalvm/polyglot/PolyglotException$StackFrame;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
        start local 1 // org.graalvm.polyglot.PolyglotException e
        start local 2 // org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractStackFrameImpl impl
         0: .line 649
            new org.graalvm.polyglot.PolyglotException$StackFrame
            dup
            aload 1 /* e */
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            aload 2 /* impl */
            invokespecial org.graalvm.polyglot.PolyglotException$StackFrame.<init>:(Lorg/graalvm/polyglot/PolyglotException;Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractStackFrameImpl;)V
            areturn
        end local 2 // org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractStackFrameImpl impl
        end local 1 // org.graalvm.polyglot.PolyglotException e
        end local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/polyglot/Engine$APIAccessImpl;
            0    1     1     e  Lorg/graalvm/polyglot/PolyglotException;
            0    1     2  impl  Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractStackFrameImpl;
    MethodParameters:
      Name  Flags
      e     
      impl  

  public boolean allowsAccess(org.graalvm.polyglot.HostAccess, java.lang.reflect.AnnotatedElement);
    descriptor: (Lorg/graalvm/polyglot/HostAccess;Ljava/lang/reflect/AnnotatedElement;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
        start local 1 // org.graalvm.polyglot.HostAccess access
        start local 2 // java.lang.reflect.AnnotatedElement element
         0: .line 654
            aload 1 /* access */
            aload 2 /* element */
            invokevirtual org.graalvm.polyglot.HostAccess.allowsAccess:(Ljava/lang/reflect/AnnotatedElement;)Z
            ireturn
        end local 2 // java.lang.reflect.AnnotatedElement element
        end local 1 // org.graalvm.polyglot.HostAccess access
        end local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/graalvm/polyglot/Engine$APIAccessImpl;
            0    1     1   access  Lorg/graalvm/polyglot/HostAccess;
            0    1     2  element  Ljava/lang/reflect/AnnotatedElement;
    MethodParameters:
         Name  Flags
      access   
      element  

  public boolean allowsImplementation(org.graalvm.polyglot.HostAccess, java.lang.Class<?>);
    descriptor: (Lorg/graalvm/polyglot/HostAccess;Ljava/lang/Class;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
        start local 1 // org.graalvm.polyglot.HostAccess access
        start local 2 // java.lang.Class type
         0: .line 659
            aload 1 /* access */
            aload 2 /* type */
            invokevirtual org.graalvm.polyglot.HostAccess.allowsImplementation:(Ljava/lang/Class;)Z
            ireturn
        end local 2 // java.lang.Class type
        end local 1 // org.graalvm.polyglot.HostAccess access
        end local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/graalvm/polyglot/Engine$APIAccessImpl;
            0    1     1  access  Lorg/graalvm/polyglot/HostAccess;
            0    1     2    type  Ljava/lang/Class<*>;
    Signature: (Lorg/graalvm/polyglot/HostAccess;Ljava/lang/Class<*>;)Z
    MethodParameters:
        Name  Flags
      access  
      type    

  public java.util.List<java.lang.Object> getTargetMappings(org.graalvm.polyglot.HostAccess);
    descriptor: (Lorg/graalvm/polyglot/HostAccess;)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
        start local 1 // org.graalvm.polyglot.HostAccess access
         0: .line 664
            aload 1 /* access */
            invokevirtual org.graalvm.polyglot.HostAccess.getTargetMappings:()Ljava/util/List;
            areturn
        end local 1 // org.graalvm.polyglot.HostAccess access
        end local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/graalvm/polyglot/Engine$APIAccessImpl;
            0    1     1  access  Lorg/graalvm/polyglot/HostAccess;
    Signature: (Lorg/graalvm/polyglot/HostAccess;)Ljava/util/List<Ljava/lang/Object;>;
    MethodParameters:
        Name  Flags
      access  

  public boolean isArrayAccessible(org.graalvm.polyglot.HostAccess);
    descriptor: (Lorg/graalvm/polyglot/HostAccess;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
        start local 1 // org.graalvm.polyglot.HostAccess access
         0: .line 669
            aload 1 /* access */
            getfield org.graalvm.polyglot.HostAccess.allowArrayAccess:Z
            ireturn
        end local 1 // org.graalvm.polyglot.HostAccess access
        end local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/graalvm/polyglot/Engine$APIAccessImpl;
            0    1     1  access  Lorg/graalvm/polyglot/HostAccess;
    MethodParameters:
        Name  Flags
      access  

  public boolean isListAccessible(org.graalvm.polyglot.HostAccess);
    descriptor: (Lorg/graalvm/polyglot/HostAccess;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
        start local 1 // org.graalvm.polyglot.HostAccess access
         0: .line 674
            aload 1 /* access */
            getfield org.graalvm.polyglot.HostAccess.allowListAccess:Z
            ireturn
        end local 1 // org.graalvm.polyglot.HostAccess access
        end local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/graalvm/polyglot/Engine$APIAccessImpl;
            0    1     1  access  Lorg/graalvm/polyglot/HostAccess;
    MethodParameters:
        Name  Flags
      access  

  public java.lang.Object getHostAccessImpl(org.graalvm.polyglot.HostAccess);
    descriptor: (Lorg/graalvm/polyglot/HostAccess;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
        start local 1 // org.graalvm.polyglot.HostAccess conf
         0: .line 679
            aload 1 /* conf */
            getfield org.graalvm.polyglot.HostAccess.impl:Ljava/lang/Object;
            areturn
        end local 1 // org.graalvm.polyglot.HostAccess conf
        end local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/polyglot/Engine$APIAccessImpl;
            0    1     1  conf  Lorg/graalvm/polyglot/HostAccess;
    MethodParameters:
      Name  Flags
      conf  

  public void setHostAccessImpl(org.graalvm.polyglot.HostAccess, java.lang.Object);
    descriptor: (Lorg/graalvm/polyglot/HostAccess;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
        start local 1 // org.graalvm.polyglot.HostAccess conf
        start local 2 // java.lang.Object impl
         0: .line 684
            aload 1 /* conf */
            aload 2 /* impl */
            putfield org.graalvm.polyglot.HostAccess.impl:Ljava/lang/Object;
         1: .line 685
            return
        end local 2 // java.lang.Object impl
        end local 1 // org.graalvm.polyglot.HostAccess conf
        end local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/polyglot/Engine$APIAccessImpl;
            0    2     1  conf  Lorg/graalvm/polyglot/HostAccess;
            0    2     2  impl  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      conf  
      impl  

  public org.graalvm.collections.UnmodifiableEconomicSet<java.lang.String> getEvalAccess(org.graalvm.polyglot.PolyglotAccess, java.lang.String);
    descriptor: (Lorg/graalvm/polyglot/PolyglotAccess;Ljava/lang/String;)Lorg/graalvm/collections/UnmodifiableEconomicSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
        start local 1 // org.graalvm.polyglot.PolyglotAccess access
        start local 2 // java.lang.String language
         0: .line 689
            aload 1 /* access */
            aload 2 /* language */
            invokevirtual org.graalvm.polyglot.PolyglotAccess.getEvalAccess:(Ljava/lang/String;)Lorg/graalvm/collections/UnmodifiableEconomicSet;
            areturn
        end local 2 // java.lang.String language
        end local 1 // org.graalvm.polyglot.PolyglotAccess access
        end local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/graalvm/polyglot/Engine$APIAccessImpl;
            0    1     1    access  Lorg/graalvm/polyglot/PolyglotAccess;
            0    1     2  language  Ljava/lang/String;
    Signature: (Lorg/graalvm/polyglot/PolyglotAccess;Ljava/lang/String;)Lorg/graalvm/collections/UnmodifiableEconomicSet<Ljava/lang/String;>;
    MethodParameters:
          Name  Flags
      access    
      language  

  public org.graalvm.collections.UnmodifiableEconomicSet<java.lang.String> getBindingsAccess(org.graalvm.polyglot.PolyglotAccess);
    descriptor: (Lorg/graalvm/polyglot/PolyglotAccess;)Lorg/graalvm/collections/UnmodifiableEconomicSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
        start local 1 // org.graalvm.polyglot.PolyglotAccess access
         0: .line 694
            aload 1 /* access */
            invokevirtual org.graalvm.polyglot.PolyglotAccess.getBindingsAccess:()Lorg/graalvm/collections/UnmodifiableEconomicSet;
            areturn
        end local 1 // org.graalvm.polyglot.PolyglotAccess access
        end local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/graalvm/polyglot/Engine$APIAccessImpl;
            0    1     1  access  Lorg/graalvm/polyglot/PolyglotAccess;
    Signature: (Lorg/graalvm/polyglot/PolyglotAccess;)Lorg/graalvm/collections/UnmodifiableEconomicSet<Ljava/lang/String;>;
    MethodParameters:
        Name  Flags
      access  

  public java.lang.String validatePolyglotAccess(org.graalvm.polyglot.PolyglotAccess, org.graalvm.collections.UnmodifiableEconomicSet<java.lang.String>);
    descriptor: (Lorg/graalvm/polyglot/PolyglotAccess;Lorg/graalvm/collections/UnmodifiableEconomicSet;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
        start local 1 // org.graalvm.polyglot.PolyglotAccess access
        start local 2 // org.graalvm.collections.UnmodifiableEconomicSet languages
         0: .line 699
            aload 1 /* access */
            aload 2 /* languages */
            invokevirtual org.graalvm.polyglot.PolyglotAccess.validate:(Lorg/graalvm/collections/UnmodifiableEconomicSet;)Ljava/lang/String;
            areturn
        end local 2 // org.graalvm.collections.UnmodifiableEconomicSet languages
        end local 1 // org.graalvm.polyglot.PolyglotAccess access
        end local 0 // org.graalvm.polyglot.Engine$APIAccessImpl this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/graalvm/polyglot/Engine$APIAccessImpl;
            0    1     1     access  Lorg/graalvm/polyglot/PolyglotAccess;
            0    1     2  languages  Lorg/graalvm/collections/UnmodifiableEconomicSet<Ljava/lang/String;>;
    Signature: (Lorg/graalvm/polyglot/PolyglotAccess;Lorg/graalvm/collections/UnmodifiableEconomicSet<Ljava/lang/String;>;)Ljava/lang/String;
    MethodParameters:
           Name  Flags
      access     
      languages  
}
SourceFile: "Engine.java"
NestHost: org.graalvm.polyglot.Engine
InnerClasses:
  APIAccessImpl = org.graalvm.polyglot.Engine$APIAccessImpl of org.graalvm.polyglot.Engine
  public final StackFrame = org.graalvm.polyglot.PolyglotException$StackFrame of org.graalvm.polyglot.PolyglotException
  public abstract APIAccess = org.graalvm.polyglot.impl.AbstractPolyglotImpl$APIAccess of org.graalvm.polyglot.impl.AbstractPolyglotImpl
  public abstract AbstractContextImpl = org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractContextImpl of org.graalvm.polyglot.impl.AbstractPolyglotImpl
  public abstract AbstractEngineImpl = org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractEngineImpl of org.graalvm.polyglot.impl.AbstractPolyglotImpl
  public abstract AbstractExceptionImpl = org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractExceptionImpl of org.graalvm.polyglot.impl.AbstractPolyglotImpl
  public abstract AbstractInstrumentImpl = org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractInstrumentImpl of org.graalvm.polyglot.impl.AbstractPolyglotImpl
  public abstract AbstractLanguageImpl = org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractLanguageImpl of org.graalvm.polyglot.impl.AbstractPolyglotImpl
  public abstract AbstractStackFrameImpl = org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractStackFrameImpl of org.graalvm.polyglot.impl.AbstractPolyglotImpl
  public abstract AbstractValueImpl = org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractValueImpl of org.graalvm.polyglot.impl.AbstractPolyglotImpl