abstract class com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$AbstractExecuteNode extends com.oracle.truffle.polyglot.PolyglotValue$InteropNode
  minor version: 0
  major version: 59
  flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
  this_class: com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$AbstractExecuteNode
  super_class: com.oracle.truffle.polyglot.PolyglotValue$InteropNode
{
  private com.oracle.truffle.api.interop.InteropLibrary executables;
    descriptor: Lcom/oracle/truffle/api/interop/InteropLibrary;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.nodes.Node$Child()

  private final com.oracle.truffle.polyglot.PolyglotLanguageContext$ToGuestValuesNode toGuestValues;
    descriptor: Lcom/oracle/truffle/polyglot/PolyglotLanguageContext$ToGuestValuesNode;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.api.profiles.BranchProfile invalidArgument;
    descriptor: Lcom/oracle/truffle/api/profiles/BranchProfile;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.api.profiles.BranchProfile arity;
    descriptor: Lcom/oracle/truffle/api/profiles/BranchProfile;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.api.profiles.BranchProfile unsupported;
    descriptor: Lcom/oracle/truffle/api/profiles/BranchProfile;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  protected void <init>(com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache);
    descriptor: (Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$AbstractExecuteNode this
        start local 1 // com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache interop
         0: .line 1974
            aload 0 /* this */
            aload 1 /* interop */
            invokespecial com.oracle.truffle.polyglot.PolyglotValue$InteropNode.<init>:(Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;)V
         1: .line 1967
            aload 0 /* this */
            invokestatic com.oracle.truffle.api.interop.InteropLibrary.getFactory:()Lcom/oracle/truffle/api/library/LibraryFactory;
            iconst_5
            invokevirtual com.oracle.truffle.api.library.LibraryFactory.createDispatched:(I)Lcom/oracle/truffle/api/library/Library;
            checkcast com.oracle.truffle.api.interop.InteropLibrary
            putfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$AbstractExecuteNode.executables:Lcom/oracle/truffle/api/interop/InteropLibrary;
         2: .line 1968
            aload 0 /* this */
            invokestatic com.oracle.truffle.polyglot.PolyglotLanguageContext$ToGuestValuesNode.create:()Lcom/oracle/truffle/polyglot/PolyglotLanguageContext$ToGuestValuesNode;
            putfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$AbstractExecuteNode.toGuestValues:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext$ToGuestValuesNode;
         3: .line 1969
            aload 0 /* this */
            invokestatic com.oracle.truffle.api.profiles.BranchProfile.create:()Lcom/oracle/truffle/api/profiles/BranchProfile;
            putfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$AbstractExecuteNode.invalidArgument:Lcom/oracle/truffle/api/profiles/BranchProfile;
         4: .line 1970
            aload 0 /* this */
            invokestatic com.oracle.truffle.api.profiles.BranchProfile.create:()Lcom/oracle/truffle/api/profiles/BranchProfile;
            putfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$AbstractExecuteNode.arity:Lcom/oracle/truffle/api/profiles/BranchProfile;
         5: .line 1971
            aload 0 /* this */
            invokestatic com.oracle.truffle.api.profiles.BranchProfile.create:()Lcom/oracle/truffle/api/profiles/BranchProfile;
            putfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$AbstractExecuteNode.unsupported:Lcom/oracle/truffle/api/profiles/BranchProfile;
         6: .line 1975
            return
        end local 1 // com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache interop
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$AbstractExecuteNode this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache$AbstractExecuteNode;
            0    7     1  interop  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
    MethodParameters:
         Name  Flags
      interop  

  protected final java.lang.Object executeShared(com.oracle.truffle.polyglot.PolyglotLanguageContext, java.lang.Object, java.lang.Object[]);
    descriptor: (Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=5, locals=6, args_size=4
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$AbstractExecuteNode this
        start local 1 // com.oracle.truffle.polyglot.PolyglotLanguageContext context
        start local 2 // java.lang.Object receiver
        start local 3 // java.lang.Object[] args
         0: .line 1978
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$AbstractExecuteNode.toGuestValues:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext$ToGuestValuesNode;
            aload 1 /* context */
            aload 3 /* args */
            invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext$ToGuestValuesNode.apply:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;[Ljava/lang/Object;)[Ljava/lang/Object;
            astore 4 /* guestArguments */
        start local 4 // java.lang.Object[] guestArguments
         1: .line 1980
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$AbstractExecuteNode.executables:Lcom/oracle/truffle/api/interop/InteropLibrary;
            aload 2 /* receiver */
            aload 4 /* guestArguments */
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.execute:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
         2: areturn
         3: .line 1981
      StackMap locals: com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$AbstractExecuteNode com.oracle.truffle.polyglot.PolyglotLanguageContext java.lang.Object java.lang.Object[] java.lang.Object[]
      StackMap stack: com.oracle.truffle.api.interop.UnsupportedTypeException
            astore 5 /* e */
        start local 5 // com.oracle.truffle.api.interop.UnsupportedTypeException e
         4: .line 1982
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$AbstractExecuteNode.invalidArgument:Lcom/oracle/truffle/api/profiles/BranchProfile;
            invokevirtual com.oracle.truffle.api.profiles.BranchProfile.enter:()V
         5: .line 1983
            aload 1 /* context */
            aload 2 /* receiver */
            aload 5 /* e */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue.invalidExecuteArgumentType:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;Lcom/oracle/truffle/api/interop/UnsupportedTypeException;)Ljava/lang/RuntimeException;
            athrow
        end local 5 // com.oracle.truffle.api.interop.UnsupportedTypeException e
         6: .line 1984
      StackMap locals:
      StackMap stack: com.oracle.truffle.api.interop.ArityException
            astore 5 /* e */
        start local 5 // com.oracle.truffle.api.interop.ArityException e
         7: .line 1985
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$AbstractExecuteNode.arity:Lcom/oracle/truffle/api/profiles/BranchProfile;
            invokevirtual com.oracle.truffle.api.profiles.BranchProfile.enter:()V
         8: .line 1986
            aload 1 /* context */
            aload 2 /* receiver */
            aload 4 /* guestArguments */
            aload 5 /* e */
            invokevirtual com.oracle.truffle.api.interop.ArityException.getExpectedArity:()I
            aload 5 /* e */
            invokevirtual com.oracle.truffle.api.interop.ArityException.getActualArity:()I
            invokestatic com.oracle.truffle.polyglot.PolyglotValue.invalidExecuteArity:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;[Ljava/lang/Object;II)Ljava/lang/RuntimeException;
            athrow
        end local 5 // com.oracle.truffle.api.interop.ArityException e
         9: .line 1987
      StackMap locals:
      StackMap stack: com.oracle.truffle.api.interop.UnsupportedMessageException
            pop
        10: .line 1988
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$AbstractExecuteNode.unsupported:Lcom/oracle/truffle/api/profiles/BranchProfile;
            invokevirtual com.oracle.truffle.api.profiles.BranchProfile.enter:()V
        11: .line 1989
            aload 1 /* context */
            aload 2 /* receiver */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue.executeUnsupported:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)Ljava/lang/RuntimeException;
            athrow
        end local 4 // java.lang.Object[] guestArguments
        end local 3 // java.lang.Object[] args
        end local 2 // java.lang.Object receiver
        end local 1 // com.oracle.truffle.polyglot.PolyglotLanguageContext context
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$AbstractExecuteNode this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   12     0            this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache$AbstractExecuteNode;
            0   12     1         context  Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            0   12     2        receiver  Ljava/lang/Object;
            0   12     3            args  [Ljava/lang/Object;
            1   12     4  guestArguments  [Ljava/lang/Object;
            4    6     5               e  Lcom/oracle/truffle/api/interop/UnsupportedTypeException;
            7    9     5               e  Lcom/oracle/truffle/api/interop/ArityException;
      Exception table:
        from    to  target  type
           1     2       3  Class com.oracle.truffle.api.interop.UnsupportedTypeException
           1     2       6  Class com.oracle.truffle.api.interop.ArityException
           1     2       9  Class com.oracle.truffle.api.interop.UnsupportedMessageException
    MethodParameters:
          Name  Flags
      context   
      receiver  
      args      
}
SourceFile: "PolyglotValue.java"
NestHost: com.oracle.truffle.polyglot.PolyglotValue
InnerClasses:
  public abstract Child = com.oracle.truffle.api.nodes.Node$Child of com.oracle.truffle.api.nodes.Node
  final ToGuestValuesNode = com.oracle.truffle.polyglot.PolyglotLanguageContext$ToGuestValuesNode of com.oracle.truffle.polyglot.PolyglotLanguageContext
  InteropCodeCache = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache of com.oracle.truffle.polyglot.PolyglotValue
  private abstract AbstractExecuteNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$AbstractExecuteNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract InteropNode = com.oracle.truffle.polyglot.PolyglotValue$InteropNode of com.oracle.truffle.polyglot.PolyglotValue