final class com.oracle.truffle.polyglot.PolyglotValue$InteropValue extends com.oracle.truffle.polyglot.PolyglotValue
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: com.oracle.truffle.polyglot.PolyglotValue$InteropValue
  super_class: com.oracle.truffle.polyglot.PolyglotValue
{
  private final com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache cache;
    descriptor: Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  void <init>(com.oracle.truffle.polyglot.PolyglotLanguageContext, com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache);
    descriptor: (Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // com.oracle.truffle.polyglot.PolyglotLanguageContext context
        start local 2 // com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache codeCache
         0: .line 2692
            aload 0 /* this */
            aload 1 /* context */
            invokespecial com.oracle.truffle.polyglot.PolyglotValue.<init>:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;)V
         1: .line 2693
            aload 0 /* this */
            aload 2 /* codeCache */
            putfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
         2: .line 2694
            return
        end local 2 // com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache codeCache
        end local 1 // com.oracle.truffle.polyglot.PolyglotLanguageContext context
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    3     1    context  Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            0    3     2  codeCache  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
    MethodParameters:
           Name  Flags
      context    
      codeCache  

  public <T> T as(, java.lang.Class<T>);
    descriptor: (Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
        start local 2 // java.lang.Class targetType
         0: .line 2699
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.asClassLiteral:Lcom/oracle/truffle/api/CallTarget;
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            dup
            iconst_2
            aload 2 /* targetType */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Class targetType
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1    receiver  Ljava/lang/Object;
            0    1     2  targetType  Ljava/lang/Class<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Object;Ljava/lang/Class<TT;>;)TT;
    MethodParameters:
            Name  Flags
      receiver    
      targetType  

  public <T> T as(, org.graalvm.polyglot.TypeLiteral<T>);
    descriptor: (Ljava/lang/Object;Lorg/graalvm/polyglot/TypeLiteral;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
        start local 2 // org.graalvm.polyglot.TypeLiteral targetType
         0: .line 2705
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.asTypeLiteral:Lcom/oracle/truffle/api/CallTarget;
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            dup
            iconst_2
            aload 2 /* targetType */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // org.graalvm.polyglot.TypeLiteral targetType
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1    receiver  Ljava/lang/Object;
            0    1     2  targetType  Lorg/graalvm/polyglot/TypeLiteral<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Object;Lorg/graalvm/polyglot/TypeLiteral<TT;>;)TT;
    MethodParameters:
            Name  Flags
      receiver    
      targetType  

  public boolean isNativePointer(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2710
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.isNativePointer:Lcom/oracle/truffle/api/CallTarget;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ireturn
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  receiver  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  

  public boolean hasArrayElements(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2715
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.hasArrayElements:Lcom/oracle/truffle/api/CallTarget;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ireturn
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  receiver  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  

  public org.graalvm.polyglot.Value getArrayElement(java.lang.Object, long);
    descriptor: (Ljava/lang/Object;J)Lorg/graalvm/polyglot/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=3
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
        start local 2 // long index
         0: .line 2720
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.getArrayElement:Lcom/oracle/truffle/api/CallTarget;
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            dup
            iconst_2
            lload 2 /* index */
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.graalvm.polyglot.Value
            areturn
        end local 2 // long index
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  receiver  Ljava/lang/Object;
            0    1     2     index  J
    MethodParameters:
          Name  Flags
      receiver  
      index     

  public void setArrayElement(java.lang.Object, long, java.lang.Object);
    descriptor: (Ljava/lang/Object;JLjava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=5, args_size=4
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
        start local 2 // long index
        start local 4 // java.lang.Object value
         0: .line 2725
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.setArrayElement:Lcom/oracle/truffle/api/CallTarget;
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            dup
            iconst_2
            lload 2 /* index */
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
            dup
            iconst_3
            aload 4 /* value */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 2726
            return
        end local 4 // java.lang.Object value
        end local 2 // long index
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    2     1  receiver  Ljava/lang/Object;
            0    2     2     index  J
            0    2     4     value  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  
      index     
      value     

  public boolean removeArrayElement(java.lang.Object, long);
    descriptor: (Ljava/lang/Object;J)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=3
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
        start local 2 // long index
         0: .line 2730
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.removeArrayElement:Lcom/oracle/truffle/api/CallTarget;
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            dup
            iconst_2
            lload 2 /* index */
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ireturn
        end local 2 // long index
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  receiver  Ljava/lang/Object;
            0    1     2     index  J
    MethodParameters:
          Name  Flags
      receiver  
      index     

  public long getArraySize(java.lang.Object);
    descriptor: (Ljava/lang/Object;)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2735
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.getArraySize:Lcom/oracle/truffle/api/CallTarget;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Long
            invokevirtual java.lang.Long.longValue:()J
            lreturn
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  receiver  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  

  public boolean hasMembers(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2740
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.hasMembers:Lcom/oracle/truffle/api/CallTarget;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ireturn
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  receiver  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  

  public org.graalvm.polyglot.Value getMember(java.lang.Object, java.lang.String);
    descriptor: (Ljava/lang/Object;Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
        start local 2 // java.lang.String key
         0: .line 2745
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.getMember:Lcom/oracle/truffle/api/CallTarget;
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            dup
            iconst_2
            aload 2 /* key */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.graalvm.polyglot.Value
            areturn
        end local 2 // java.lang.String key
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  receiver  Ljava/lang/Object;
            0    1     2       key  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      receiver  
      key       

  public boolean hasMember(java.lang.Object, java.lang.String);
    descriptor: (Ljava/lang/Object;Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
        start local 2 // java.lang.String key
         0: .line 2750
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.hasMember:Lcom/oracle/truffle/api/CallTarget;
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            dup
            iconst_2
            aload 2 /* key */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ireturn
        end local 2 // java.lang.String key
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  receiver  Ljava/lang/Object;
            0    1     2       key  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      receiver  
      key       

  public void putMember(java.lang.Object, java.lang.String, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
        start local 2 // java.lang.String key
        start local 3 // java.lang.Object member
         0: .line 2755
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.putMember:Lcom/oracle/truffle/api/CallTarget;
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            dup
            iconst_2
            aload 2 /* key */
            aastore
            dup
            iconst_3
            aload 3 /* member */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 2756
            return
        end local 3 // java.lang.Object member
        end local 2 // java.lang.String key
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    2     1  receiver  Ljava/lang/Object;
            0    2     2       key  Ljava/lang/String;
            0    2     3    member  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  
      key       
      member    

  public boolean removeMember(java.lang.Object, java.lang.String);
    descriptor: (Ljava/lang/Object;Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
        start local 2 // java.lang.String key
         0: .line 2760
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.removeMember:Lcom/oracle/truffle/api/CallTarget;
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            dup
            iconst_2
            aload 2 /* key */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ireturn
        end local 2 // java.lang.String key
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  receiver  Ljava/lang/Object;
            0    1     2       key  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      receiver  
      key       

  public java.util.Set<java.lang.String> getMemberKeys();
    descriptor: (Ljava/lang/Object;)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2765
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.getMemberKeys:Lcom/oracle/truffle/api/CallTarget;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.graalvm.polyglot.Value
            astore 2 /* keys */
        start local 2 // org.graalvm.polyglot.Value keys
         1: .line 2766
            aload 2 /* keys */
            ifnonnull 3
         2: .line 2768
            invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
            areturn
         3: .line 2770
      StackMap locals: org.graalvm.polyglot.Value
      StackMap stack:
            new com.oracle.truffle.polyglot.PolyglotValue$InteropValue$MemberSet
            dup
            aload 0 /* this */
            aload 1 /* receiver */
            aload 2 /* keys */
            invokespecial com.oracle.truffle.polyglot.PolyglotValue$InteropValue$MemberSet.<init>:(Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;Ljava/lang/Object;Lorg/graalvm/polyglot/Value;)V
            areturn
        end local 2 // org.graalvm.polyglot.Value keys
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    4     1  receiver  Ljava/lang/Object;
            1    4     2      keys  Lorg/graalvm/polyglot/Value;
    Signature: (Ljava/lang/Object;)Ljava/util/Set<Ljava/lang/String;>;
    MethodParameters:
          Name  Flags
      receiver  

  public long asNativePointer(java.lang.Object);
    descriptor: (Ljava/lang/Object;)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2775
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.asNativePointer:Lcom/oracle/truffle/api/CallTarget;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Long
            invokevirtual java.lang.Long.longValue:()J
            lreturn
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  receiver  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  

  public boolean isDate(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2780
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.isDate:Lcom/oracle/truffle/api/CallTarget;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ireturn
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  receiver  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  

  public java.time.LocalDate asDate(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/time/LocalDate;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2785
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.asDate:Lcom/oracle/truffle/api/CallTarget;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.time.LocalDate
            areturn
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  receiver  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  

  public boolean isTime(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2790
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.isTime:Lcom/oracle/truffle/api/CallTarget;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ireturn
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  receiver  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  

  public java.time.LocalTime asTime(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/time/LocalTime;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2795
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.asTime:Lcom/oracle/truffle/api/CallTarget;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.time.LocalTime
            areturn
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  receiver  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  

  public boolean isTimeZone(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2800
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.isTimeZone:Lcom/oracle/truffle/api/CallTarget;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ireturn
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  receiver  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  

  public java.time.ZoneId asTimeZone(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/time/ZoneId;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2805
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.asTimeZone:Lcom/oracle/truffle/api/CallTarget;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.time.ZoneId
            areturn
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  receiver  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  

  public java.time.Instant asInstant(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/time/Instant;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2810
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.asInstant:Lcom/oracle/truffle/api/CallTarget;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.time.Instant
            areturn
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  receiver  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  

  public boolean isDuration(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2815
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.isDuration:Lcom/oracle/truffle/api/CallTarget;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ireturn
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  receiver  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  

  public java.time.Duration asDuration(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/time/Duration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2820
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.asDuration:Lcom/oracle/truffle/api/CallTarget;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.time.Duration
            areturn
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  receiver  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  

  public boolean isHostObject(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2825
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.isHost:Z
            ireturn
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  receiver  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  

  public boolean isProxyObject(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2830
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.isProxy:Z
            ireturn
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  receiver  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  

  public java.lang.Object asProxyObject(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2835
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.isProxy:Z
            ifeq 2
         1: .line 2836
            aload 1 /* receiver */
            checkcast com.oracle.truffle.api.interop.TruffleObject
            invokestatic com.oracle.truffle.polyglot.PolyglotProxy.toProxyHostObject:(Lcom/oracle/truffle/api/interop/TruffleObject;)Lorg/graalvm/polyglot/proxy/Proxy;
            areturn
         2: .line 2838
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* receiver */
            invokespecial com.oracle.truffle.polyglot.PolyglotValue.asProxyObject:(Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    3     1  receiver  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  

  public java.lang.Object asHostObject(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2844
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.isHost:Z
            ifeq 2
         1: .line 2845
            aload 1 /* receiver */
            invokestatic com.oracle.truffle.polyglot.HostObject.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
            areturn
         2: .line 2847
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* receiver */
            invokespecial com.oracle.truffle.polyglot.PolyglotValue.asHostObject:(Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    3     1  receiver  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  

  public boolean isNull(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2853
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.isNull:Lcom/oracle/truffle/api/CallTarget;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ireturn
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  receiver  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  

  public boolean canExecute(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2858
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.canExecute:Lcom/oracle/truffle/api/CallTarget;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ireturn
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  receiver  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  

  public void executeVoid(java.lang.Object, java.lang.Object[]);
    descriptor: (Ljava/lang/Object;[Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
        start local 2 // java.lang.Object[] arguments
         0: .line 2863
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.executeVoid:Lcom/oracle/truffle/api/CallTarget;
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            dup
            iconst_2
            aload 2 /* arguments */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 2864
            return
        end local 2 // java.lang.Object[] arguments
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    2     1   receiver  Ljava/lang/Object;
            0    2     2  arguments  [Ljava/lang/Object;
    MethodParameters:
           Name  Flags
      receiver   
      arguments  

  public void executeVoid(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2868
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.executeVoidNoArgs:Lcom/oracle/truffle/api/CallTarget;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 2869
            return
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    2     1  receiver  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  

  public org.graalvm.polyglot.Value execute(java.lang.Object, java.lang.Object[]);
    descriptor: (Ljava/lang/Object;[Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
        start local 2 // java.lang.Object[] arguments
         0: .line 2873
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.execute:Lcom/oracle/truffle/api/CallTarget;
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            dup
            iconst_2
            aload 2 /* arguments */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.graalvm.polyglot.Value
            areturn
        end local 2 // java.lang.Object[] arguments
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1   receiver  Ljava/lang/Object;
            0    1     2  arguments  [Ljava/lang/Object;
    MethodParameters:
           Name  Flags
      receiver   
      arguments  

  public org.graalvm.polyglot.Value execute(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2878
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.executeNoArgs:Lcom/oracle/truffle/api/CallTarget;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.graalvm.polyglot.Value
            areturn
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  receiver  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  

  public boolean canInstantiate(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2883
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.canInstantiate:Lcom/oracle/truffle/api/CallTarget;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ireturn
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  receiver  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  

  public org.graalvm.polyglot.Value newInstance(java.lang.Object, java.lang.Object[]);
    descriptor: (Ljava/lang/Object;[Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
        start local 2 // java.lang.Object[] arguments
         0: .line 2888
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.newInstance:Lcom/oracle/truffle/api/CallTarget;
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            dup
            iconst_2
            aload 2 /* arguments */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.graalvm.polyglot.Value
            areturn
        end local 2 // java.lang.Object[] arguments
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1   receiver  Ljava/lang/Object;
            0    1     2  arguments  [Ljava/lang/Object;
    MethodParameters:
           Name  Flags
      receiver   
      arguments  

  public boolean canInvoke(java.lang.String, java.lang.Object);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.String identifier
        start local 2 // java.lang.Object receiver
         0: .line 2893
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.canInvoke:Lcom/oracle/truffle/api/CallTarget;
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 2 /* receiver */
            aastore
            dup
            iconst_2
            aload 1 /* identifier */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ireturn
        end local 2 // java.lang.Object receiver
        end local 1 // java.lang.String identifier
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  identifier  Ljava/lang/String;
            0    1     2    receiver  Ljava/lang/Object;
    MethodParameters:
            Name  Flags
      identifier  
      receiver    

  public org.graalvm.polyglot.Value invoke(java.lang.Object, java.lang.String, java.lang.Object[]);
    descriptor: (Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
        start local 2 // java.lang.String identifier
        start local 3 // java.lang.Object[] arguments
         0: .line 2898
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.invoke:Lcom/oracle/truffle/api/CallTarget;
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            dup
            iconst_2
            aload 2 /* identifier */
            aastore
            dup
            iconst_3
            aload 3 /* arguments */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.graalvm.polyglot.Value
            areturn
        end local 3 // java.lang.Object[] arguments
        end local 2 // java.lang.String identifier
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1    receiver  Ljava/lang/Object;
            0    1     2  identifier  Ljava/lang/String;
            0    1     3   arguments  [Ljava/lang/Object;
    MethodParameters:
            Name  Flags
      receiver    
      identifier  
      arguments   

  public org.graalvm.polyglot.Value invoke(java.lang.Object, java.lang.String);
    descriptor: (Ljava/lang/Object;Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
        start local 2 // java.lang.String identifier
         0: .line 2903
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.invokeNoArgs:Lcom/oracle/truffle/api/CallTarget;
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            dup
            iconst_2
            aload 2 /* identifier */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.graalvm.polyglot.Value
            areturn
        end local 2 // java.lang.String identifier
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1    receiver  Ljava/lang/Object;
            0    1     2  identifier  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      receiver    
      identifier  

  public boolean isException(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2908
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.isException:Lcom/oracle/truffle/api/CallTarget;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ireturn
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  receiver  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  

  public java.lang.RuntimeException throwException(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/RuntimeException;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2913
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.throwException:Lcom/oracle/truffle/api/CallTarget;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 2914
            aload 0 /* this */
            aload 1 /* receiver */
            invokespecial com.oracle.truffle.polyglot.PolyglotValue.throwException:(Ljava/lang/Object;)Ljava/lang/RuntimeException;
            athrow
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    2     1  receiver  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  

  public boolean isNumber(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2919
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostEnter:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;)Ljava/lang/Object;
            astore 2 /* c */
        start local 2 // java.lang.Object c
         1: .line 2921
            getstatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.UNCACHED_INTEROP:Lcom/oracle/truffle/api/interop/InteropLibrary;
            aload 1 /* receiver */
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.isNumber:(Ljava/lang/Object;)Z
            istore 5
         2: .line 2925
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         3: .line 2921
            iload 5
            ireturn
         4: .line 2922
      StackMap locals: com.oracle.truffle.polyglot.PolyglotValue$InteropValue java.lang.Object java.lang.Object
      StackMap stack: java.lang.Throwable
            astore 3 /* e */
        start local 3 // java.lang.Throwable e
         5: .line 2923
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 3 /* e */
            iconst_1
            invokestatic com.oracle.truffle.polyglot.PolyglotImpl.guestToHostException:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Throwable;Z)Lorg/graalvm/polyglot/PolyglotException;
            athrow
        end local 3 // java.lang.Throwable e
         6: .line 2924
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4
         7: .line 2925
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         8: .line 2926
            aload 4
            athrow
        end local 2 // java.lang.Object c
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    9     1  receiver  Ljava/lang/Object;
            1    9     2         c  Ljava/lang/Object;
            5    6     3         e  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           1     2       4  Class java.lang.Throwable
           1     2       6  any
           4     6       6  any
    MethodParameters:
          Name  Flags
      receiver  

  public boolean fitsInByte(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2931
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostEnter:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;)Ljava/lang/Object;
            astore 2 /* c */
        start local 2 // java.lang.Object c
         1: .line 2933
            getstatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.UNCACHED_INTEROP:Lcom/oracle/truffle/api/interop/InteropLibrary;
            aload 1 /* receiver */
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.fitsInByte:(Ljava/lang/Object;)Z
            istore 5
         2: .line 2937
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         3: .line 2933
            iload 5
            ireturn
         4: .line 2934
      StackMap locals: com.oracle.truffle.polyglot.PolyglotValue$InteropValue java.lang.Object java.lang.Object
      StackMap stack: java.lang.Throwable
            astore 3 /* e */
        start local 3 // java.lang.Throwable e
         5: .line 2935
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 3 /* e */
            iconst_1
            invokestatic com.oracle.truffle.polyglot.PolyglotImpl.guestToHostException:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Throwable;Z)Lorg/graalvm/polyglot/PolyglotException;
            athrow
        end local 3 // java.lang.Throwable e
         6: .line 2936
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4
         7: .line 2937
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         8: .line 2938
            aload 4
            athrow
        end local 2 // java.lang.Object c
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    9     1  receiver  Ljava/lang/Object;
            1    9     2         c  Ljava/lang/Object;
            5    6     3         e  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           1     2       4  Class java.lang.Throwable
           1     2       6  any
           4     6       6  any
    MethodParameters:
          Name  Flags
      receiver  

  public byte asByte(java.lang.Object);
    descriptor: (Ljava/lang/Object;)B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2943
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostEnter:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;)Ljava/lang/Object;
            astore 2 /* c */
        start local 2 // java.lang.Object c
         1: .line 2946
            getstatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.UNCACHED_INTEROP:Lcom/oracle/truffle/api/interop/InteropLibrary;
            aload 1 /* receiver */
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.asByte:(Ljava/lang/Object;)B
            istore 5
         2: .line 2953
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         3: .line 2946
            iload 5
            ireturn
         4: .line 2947
      StackMap locals: com.oracle.truffle.polyglot.PolyglotValue$InteropValue java.lang.Object java.lang.Object
      StackMap stack: com.oracle.truffle.api.interop.UnsupportedMessageException
            pop
         5: .line 2948
            aload 0 /* this */
            aload 1 /* receiver */
            invokevirtual com.oracle.truffle.polyglot.PolyglotValue$InteropValue.asByteUnsupported:(Ljava/lang/Object;)B
            istore 5
         6: .line 2953
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         7: .line 2948
            iload 5
            ireturn
         8: .line 2950
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 3 /* e */
        start local 3 // java.lang.Throwable e
         9: .line 2951
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 3 /* e */
            iconst_1
            invokestatic com.oracle.truffle.polyglot.PolyglotImpl.guestToHostException:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Throwable;Z)Lorg/graalvm/polyglot/PolyglotException;
            athrow
        end local 3 // java.lang.Throwable e
        10: .line 2952
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4
        11: .line 2953
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
        12: .line 2954
            aload 4
            athrow
        end local 2 // java.lang.Object c
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   13     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0   13     1  receiver  Ljava/lang/Object;
            1   13     2         c  Ljava/lang/Object;
            9   10     3         e  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           1     2       4  Class com.oracle.truffle.api.interop.UnsupportedMessageException
           1     2       8  Class java.lang.Throwable
           4     6       8  Class java.lang.Throwable
           1     2      10  any
           4     6      10  any
           8    10      10  any
    MethodParameters:
          Name  Flags
      receiver  

  public boolean isString(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2959
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostEnter:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;)Ljava/lang/Object;
            astore 2 /* c */
        start local 2 // java.lang.Object c
         1: .line 2961
            getstatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.UNCACHED_INTEROP:Lcom/oracle/truffle/api/interop/InteropLibrary;
            aload 1 /* receiver */
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.isString:(Ljava/lang/Object;)Z
            istore 5
         2: .line 2965
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         3: .line 2961
            iload 5
            ireturn
         4: .line 2962
      StackMap locals: com.oracle.truffle.polyglot.PolyglotValue$InteropValue java.lang.Object java.lang.Object
      StackMap stack: java.lang.Throwable
            astore 3 /* e */
        start local 3 // java.lang.Throwable e
         5: .line 2963
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 3 /* e */
            iconst_1
            invokestatic com.oracle.truffle.polyglot.PolyglotImpl.guestToHostException:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Throwable;Z)Lorg/graalvm/polyglot/PolyglotException;
            athrow
        end local 3 // java.lang.Throwable e
         6: .line 2964
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4
         7: .line 2965
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         8: .line 2966
            aload 4
            athrow
        end local 2 // java.lang.Object c
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    9     1  receiver  Ljava/lang/Object;
            1    9     2         c  Ljava/lang/Object;
            5    6     3         e  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           1     2       4  Class java.lang.Throwable
           1     2       6  any
           4     6       6  any
    MethodParameters:
          Name  Flags
      receiver  

  public java.lang.String asString(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2971
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostEnter:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;)Ljava/lang/Object;
            astore 2 /* c */
        start local 2 // java.lang.Object c
         1: .line 2974
            aload 1 /* receiver */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue.isNullUncached:(Ljava/lang/Object;)Z
            ifeq 4
         2: .line 2984
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         3: .line 2975
            aconst_null
            areturn
         4: .line 2977
      StackMap locals: java.lang.Object
      StackMap stack:
            getstatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.UNCACHED_INTEROP:Lcom/oracle/truffle/api/interop/InteropLibrary;
            aload 1 /* receiver */
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.asString:(Ljava/lang/Object;)Ljava/lang/String;
            astore 5
         5: .line 2984
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         6: .line 2977
            aload 5
            areturn
         7: .line 2978
      StackMap locals:
      StackMap stack: com.oracle.truffle.api.interop.UnsupportedMessageException
            pop
         8: .line 2979
            aload 0 /* this */
            aload 1 /* receiver */
            invokevirtual com.oracle.truffle.polyglot.PolyglotValue$InteropValue.asStringUnsupported:(Ljava/lang/Object;)Ljava/lang/String;
            astore 5
         9: .line 2984
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
        10: .line 2979
            aload 5
            areturn
        11: .line 2981
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 3 /* e */
        start local 3 // java.lang.Throwable e
        12: .line 2982
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 3 /* e */
            iconst_1
            invokestatic com.oracle.truffle.polyglot.PolyglotImpl.guestToHostException:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Throwable;Z)Lorg/graalvm/polyglot/PolyglotException;
            athrow
        end local 3 // java.lang.Throwable e
        13: .line 2983
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4
        14: .line 2984
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
        15: .line 2985
            aload 4
            athrow
        end local 2 // java.lang.Object c
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   16     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0   16     1  receiver  Ljava/lang/Object;
            1   16     2         c  Ljava/lang/Object;
           12   13     3         e  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           1     2       7  Class com.oracle.truffle.api.interop.UnsupportedMessageException
           4     5       7  Class com.oracle.truffle.api.interop.UnsupportedMessageException
           1     2      11  Class java.lang.Throwable
           4     5      11  Class java.lang.Throwable
           7     9      11  Class java.lang.Throwable
           1     2      13  any
           4     5      13  any
           7     9      13  any
          11    13      13  any
    MethodParameters:
          Name  Flags
      receiver  

  public boolean fitsInInt(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 2990
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostEnter:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;)Ljava/lang/Object;
            astore 2 /* c */
        start local 2 // java.lang.Object c
         1: .line 2992
            getstatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.UNCACHED_INTEROP:Lcom/oracle/truffle/api/interop/InteropLibrary;
            aload 1 /* receiver */
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.fitsInInt:(Ljava/lang/Object;)Z
            istore 5
         2: .line 2996
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         3: .line 2992
            iload 5
            ireturn
         4: .line 2993
      StackMap locals: com.oracle.truffle.polyglot.PolyglotValue$InteropValue java.lang.Object java.lang.Object
      StackMap stack: java.lang.Throwable
            astore 3 /* e */
        start local 3 // java.lang.Throwable e
         5: .line 2994
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 3 /* e */
            iconst_1
            invokestatic com.oracle.truffle.polyglot.PolyglotImpl.guestToHostException:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Throwable;Z)Lorg/graalvm/polyglot/PolyglotException;
            athrow
        end local 3 // java.lang.Throwable e
         6: .line 2995
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4
         7: .line 2996
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         8: .line 2997
            aload 4
            athrow
        end local 2 // java.lang.Object c
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    9     1  receiver  Ljava/lang/Object;
            1    9     2         c  Ljava/lang/Object;
            5    6     3         e  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           1     2       4  Class java.lang.Throwable
           1     2       6  any
           4     6       6  any
    MethodParameters:
          Name  Flags
      receiver  

  public int asInt(java.lang.Object);
    descriptor: (Ljava/lang/Object;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 3002
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostEnter:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;)Ljava/lang/Object;
            astore 2 /* c */
        start local 2 // java.lang.Object c
         1: .line 3005
            getstatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.UNCACHED_INTEROP:Lcom/oracle/truffle/api/interop/InteropLibrary;
            aload 1 /* receiver */
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.asInt:(Ljava/lang/Object;)I
            istore 5
         2: .line 3012
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         3: .line 3005
            iload 5
            ireturn
         4: .line 3006
      StackMap locals: com.oracle.truffle.polyglot.PolyglotValue$InteropValue java.lang.Object java.lang.Object
      StackMap stack: com.oracle.truffle.api.interop.UnsupportedMessageException
            pop
         5: .line 3007
            aload 0 /* this */
            aload 1 /* receiver */
            invokevirtual com.oracle.truffle.polyglot.PolyglotValue$InteropValue.asIntUnsupported:(Ljava/lang/Object;)I
            istore 5
         6: .line 3012
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         7: .line 3007
            iload 5
            ireturn
         8: .line 3009
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 3 /* e */
        start local 3 // java.lang.Throwable e
         9: .line 3010
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 3 /* e */
            iconst_1
            invokestatic com.oracle.truffle.polyglot.PolyglotImpl.guestToHostException:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Throwable;Z)Lorg/graalvm/polyglot/PolyglotException;
            athrow
        end local 3 // java.lang.Throwable e
        10: .line 3011
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4
        11: .line 3012
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
        12: .line 3013
            aload 4
            athrow
        end local 2 // java.lang.Object c
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   13     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0   13     1  receiver  Ljava/lang/Object;
            1   13     2         c  Ljava/lang/Object;
            9   10     3         e  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           1     2       4  Class com.oracle.truffle.api.interop.UnsupportedMessageException
           1     2       8  Class java.lang.Throwable
           4     6       8  Class java.lang.Throwable
           1     2      10  any
           4     6      10  any
           8    10      10  any
    MethodParameters:
          Name  Flags
      receiver  

  public boolean isBoolean(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 3018
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostEnter:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;)Ljava/lang/Object;
            astore 2 /* c */
        start local 2 // java.lang.Object c
         1: .line 3020
            invokestatic com.oracle.truffle.api.interop.InteropLibrary.getFactory:()Lcom/oracle/truffle/api/library/LibraryFactory;
            invokevirtual com.oracle.truffle.api.library.LibraryFactory.getUncached:()Lcom/oracle/truffle/api/library/Library;
            checkcast com.oracle.truffle.api.interop.InteropLibrary
            aload 1 /* receiver */
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.isBoolean:(Ljava/lang/Object;)Z
            istore 5
         2: .line 3024
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         3: .line 3020
            iload 5
            ireturn
         4: .line 3021
      StackMap locals: com.oracle.truffle.polyglot.PolyglotValue$InteropValue java.lang.Object java.lang.Object
      StackMap stack: java.lang.Throwable
            astore 3 /* e */
        start local 3 // java.lang.Throwable e
         5: .line 3022
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 3 /* e */
            iconst_1
            invokestatic com.oracle.truffle.polyglot.PolyglotImpl.guestToHostException:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Throwable;Z)Lorg/graalvm/polyglot/PolyglotException;
            athrow
        end local 3 // java.lang.Throwable e
         6: .line 3023
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4
         7: .line 3024
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         8: .line 3025
            aload 4
            athrow
        end local 2 // java.lang.Object c
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    9     1  receiver  Ljava/lang/Object;
            1    9     2         c  Ljava/lang/Object;
            5    6     3         e  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           1     2       4  Class java.lang.Throwable
           1     2       6  any
           4     6       6  any
    MethodParameters:
          Name  Flags
      receiver  

  public boolean asBoolean(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 3030
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostEnter:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;)Ljava/lang/Object;
            astore 2 /* c */
        start local 2 // java.lang.Object c
         1: .line 3033
            invokestatic com.oracle.truffle.api.interop.InteropLibrary.getFactory:()Lcom/oracle/truffle/api/library/LibraryFactory;
            invokevirtual com.oracle.truffle.api.library.LibraryFactory.getUncached:()Lcom/oracle/truffle/api/library/Library;
            checkcast com.oracle.truffle.api.interop.InteropLibrary
            aload 1 /* receiver */
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.asBoolean:(Ljava/lang/Object;)Z
            istore 5
         2: .line 3040
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         3: .line 3033
            iload 5
            ireturn
         4: .line 3034
      StackMap locals: com.oracle.truffle.polyglot.PolyglotValue$InteropValue java.lang.Object java.lang.Object
      StackMap stack: com.oracle.truffle.api.interop.UnsupportedMessageException
            pop
         5: .line 3035
            aload 0 /* this */
            aload 1 /* receiver */
            invokevirtual com.oracle.truffle.polyglot.PolyglotValue$InteropValue.asBooleanUnsupported:(Ljava/lang/Object;)Z
            istore 5
         6: .line 3040
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         7: .line 3035
            iload 5
            ireturn
         8: .line 3037
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 3 /* e */
        start local 3 // java.lang.Throwable e
         9: .line 3038
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 3 /* e */
            iconst_1
            invokestatic com.oracle.truffle.polyglot.PolyglotImpl.guestToHostException:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Throwable;Z)Lorg/graalvm/polyglot/PolyglotException;
            athrow
        end local 3 // java.lang.Throwable e
        10: .line 3039
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4
        11: .line 3040
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
        12: .line 3041
            aload 4
            athrow
        end local 2 // java.lang.Object c
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   13     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0   13     1  receiver  Ljava/lang/Object;
            1   13     2         c  Ljava/lang/Object;
            9   10     3         e  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           1     2       4  Class com.oracle.truffle.api.interop.UnsupportedMessageException
           1     2       8  Class java.lang.Throwable
           4     6       8  Class java.lang.Throwable
           1     2      10  any
           4     6      10  any
           8    10      10  any
    MethodParameters:
          Name  Flags
      receiver  

  public boolean fitsInFloat(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 3046
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostEnter:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;)Ljava/lang/Object;
            astore 2 /* c */
        start local 2 // java.lang.Object c
         1: .line 3048
            invokestatic com.oracle.truffle.api.interop.InteropLibrary.getFactory:()Lcom/oracle/truffle/api/library/LibraryFactory;
            invokevirtual com.oracle.truffle.api.library.LibraryFactory.getUncached:()Lcom/oracle/truffle/api/library/Library;
            checkcast com.oracle.truffle.api.interop.InteropLibrary
            aload 1 /* receiver */
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.fitsInFloat:(Ljava/lang/Object;)Z
            istore 5
         2: .line 3052
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         3: .line 3048
            iload 5
            ireturn
         4: .line 3049
      StackMap locals: com.oracle.truffle.polyglot.PolyglotValue$InteropValue java.lang.Object java.lang.Object
      StackMap stack: java.lang.Throwable
            astore 3 /* e */
        start local 3 // java.lang.Throwable e
         5: .line 3050
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 3 /* e */
            iconst_1
            invokestatic com.oracle.truffle.polyglot.PolyglotImpl.guestToHostException:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Throwable;Z)Lorg/graalvm/polyglot/PolyglotException;
            athrow
        end local 3 // java.lang.Throwable e
         6: .line 3051
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4
         7: .line 3052
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         8: .line 3053
            aload 4
            athrow
        end local 2 // java.lang.Object c
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    9     1  receiver  Ljava/lang/Object;
            1    9     2         c  Ljava/lang/Object;
            5    6     3         e  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           1     2       4  Class java.lang.Throwable
           1     2       6  any
           4     6       6  any
    MethodParameters:
          Name  Flags
      receiver  

  public float asFloat(java.lang.Object);
    descriptor: (Ljava/lang/Object;)F
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 3058
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostEnter:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;)Ljava/lang/Object;
            astore 2 /* c */
        start local 2 // java.lang.Object c
         1: .line 3061
            getstatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.UNCACHED_INTEROP:Lcom/oracle/truffle/api/interop/InteropLibrary;
            aload 1 /* receiver */
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.asFloat:(Ljava/lang/Object;)F
            fstore 5
         2: .line 3068
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         3: .line 3061
            fload 5
            freturn
         4: .line 3062
      StackMap locals: com.oracle.truffle.polyglot.PolyglotValue$InteropValue java.lang.Object java.lang.Object
      StackMap stack: com.oracle.truffle.api.interop.UnsupportedMessageException
            pop
         5: .line 3063
            aload 0 /* this */
            aload 1 /* receiver */
            invokevirtual com.oracle.truffle.polyglot.PolyglotValue$InteropValue.asFloatUnsupported:(Ljava/lang/Object;)F
            fstore 5
         6: .line 3068
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         7: .line 3063
            fload 5
            freturn
         8: .line 3065
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 3 /* e */
        start local 3 // java.lang.Throwable e
         9: .line 3066
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 3 /* e */
            iconst_1
            invokestatic com.oracle.truffle.polyglot.PolyglotImpl.guestToHostException:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Throwable;Z)Lorg/graalvm/polyglot/PolyglotException;
            athrow
        end local 3 // java.lang.Throwable e
        10: .line 3067
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4
        11: .line 3068
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
        12: .line 3069
            aload 4
            athrow
        end local 2 // java.lang.Object c
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   13     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0   13     1  receiver  Ljava/lang/Object;
            1   13     2         c  Ljava/lang/Object;
            9   10     3         e  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           1     2       4  Class com.oracle.truffle.api.interop.UnsupportedMessageException
           1     2       8  Class java.lang.Throwable
           4     6       8  Class java.lang.Throwable
           1     2      10  any
           4     6      10  any
           8    10      10  any
    MethodParameters:
          Name  Flags
      receiver  

  public boolean fitsInDouble(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 3074
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostEnter:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;)Ljava/lang/Object;
            astore 2 /* c */
        start local 2 // java.lang.Object c
         1: .line 3076
            getstatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.UNCACHED_INTEROP:Lcom/oracle/truffle/api/interop/InteropLibrary;
            aload 1 /* receiver */
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.fitsInDouble:(Ljava/lang/Object;)Z
            istore 5
         2: .line 3080
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         3: .line 3076
            iload 5
            ireturn
         4: .line 3077
      StackMap locals: com.oracle.truffle.polyglot.PolyglotValue$InteropValue java.lang.Object java.lang.Object
      StackMap stack: java.lang.Throwable
            astore 3 /* e */
        start local 3 // java.lang.Throwable e
         5: .line 3078
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 3 /* e */
            iconst_1
            invokestatic com.oracle.truffle.polyglot.PolyglotImpl.guestToHostException:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Throwable;Z)Lorg/graalvm/polyglot/PolyglotException;
            athrow
        end local 3 // java.lang.Throwable e
         6: .line 3079
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4
         7: .line 3080
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         8: .line 3081
            aload 4
            athrow
        end local 2 // java.lang.Object c
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    9     1  receiver  Ljava/lang/Object;
            1    9     2         c  Ljava/lang/Object;
            5    6     3         e  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           1     2       4  Class java.lang.Throwable
           1     2       6  any
           4     6       6  any
    MethodParameters:
          Name  Flags
      receiver  

  public double asDouble(java.lang.Object);
    descriptor: (Ljava/lang/Object;)D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 3086
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostEnter:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;)Ljava/lang/Object;
            astore 2 /* c */
        start local 2 // java.lang.Object c
         1: .line 3089
            getstatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.UNCACHED_INTEROP:Lcom/oracle/truffle/api/interop/InteropLibrary;
            aload 1 /* receiver */
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.asDouble:(Ljava/lang/Object;)D
            dstore 5
         2: .line 3096
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         3: .line 3089
            dload 5
            dreturn
         4: .line 3090
      StackMap locals: com.oracle.truffle.polyglot.PolyglotValue$InteropValue java.lang.Object java.lang.Object
      StackMap stack: com.oracle.truffle.api.interop.UnsupportedMessageException
            pop
         5: .line 3091
            aload 0 /* this */
            aload 1 /* receiver */
            invokevirtual com.oracle.truffle.polyglot.PolyglotValue$InteropValue.asDoubleUnsupported:(Ljava/lang/Object;)D
            dstore 5
         6: .line 3096
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         7: .line 3091
            dload 5
            dreturn
         8: .line 3093
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 3 /* e */
        start local 3 // java.lang.Throwable e
         9: .line 3094
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 3 /* e */
            iconst_1
            invokestatic com.oracle.truffle.polyglot.PolyglotImpl.guestToHostException:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Throwable;Z)Lorg/graalvm/polyglot/PolyglotException;
            athrow
        end local 3 // java.lang.Throwable e
        10: .line 3095
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4
        11: .line 3096
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
        12: .line 3097
            aload 4
            athrow
        end local 2 // java.lang.Object c
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   13     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0   13     1  receiver  Ljava/lang/Object;
            1   13     2         c  Ljava/lang/Object;
            9   10     3         e  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           1     2       4  Class com.oracle.truffle.api.interop.UnsupportedMessageException
           1     2       8  Class java.lang.Throwable
           4     6       8  Class java.lang.Throwable
           1     2      10  any
           4     6      10  any
           8    10      10  any
    MethodParameters:
          Name  Flags
      receiver  

  public boolean fitsInLong(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 3102
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostEnter:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;)Ljava/lang/Object;
            astore 2 /* c */
        start local 2 // java.lang.Object c
         1: .line 3104
            getstatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.UNCACHED_INTEROP:Lcom/oracle/truffle/api/interop/InteropLibrary;
            aload 1 /* receiver */
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.fitsInLong:(Ljava/lang/Object;)Z
            istore 5
         2: .line 3108
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         3: .line 3104
            iload 5
            ireturn
         4: .line 3105
      StackMap locals: com.oracle.truffle.polyglot.PolyglotValue$InteropValue java.lang.Object java.lang.Object
      StackMap stack: java.lang.Throwable
            astore 3 /* e */
        start local 3 // java.lang.Throwable e
         5: .line 3106
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 3 /* e */
            iconst_1
            invokestatic com.oracle.truffle.polyglot.PolyglotImpl.guestToHostException:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Throwable;Z)Lorg/graalvm/polyglot/PolyglotException;
            athrow
        end local 3 // java.lang.Throwable e
         6: .line 3107
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4
         7: .line 3108
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         8: .line 3109
            aload 4
            athrow
        end local 2 // java.lang.Object c
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    9     1  receiver  Ljava/lang/Object;
            1    9     2         c  Ljava/lang/Object;
            5    6     3         e  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           1     2       4  Class java.lang.Throwable
           1     2       6  any
           4     6       6  any
    MethodParameters:
          Name  Flags
      receiver  

  public long asLong(java.lang.Object);
    descriptor: (Ljava/lang/Object;)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 3114
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostEnter:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;)Ljava/lang/Object;
            astore 2 /* c */
        start local 2 // java.lang.Object c
         1: .line 3117
            getstatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.UNCACHED_INTEROP:Lcom/oracle/truffle/api/interop/InteropLibrary;
            aload 1 /* receiver */
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.asLong:(Ljava/lang/Object;)J
            lstore 5
         2: .line 3124
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         3: .line 3117
            lload 5
            lreturn
         4: .line 3118
      StackMap locals: com.oracle.truffle.polyglot.PolyglotValue$InteropValue java.lang.Object java.lang.Object
      StackMap stack: com.oracle.truffle.api.interop.UnsupportedMessageException
            pop
         5: .line 3119
            aload 0 /* this */
            aload 1 /* receiver */
            invokevirtual com.oracle.truffle.polyglot.PolyglotValue$InteropValue.asLongUnsupported:(Ljava/lang/Object;)J
            lstore 5
         6: .line 3124
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         7: .line 3119
            lload 5
            lreturn
         8: .line 3121
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 3 /* e */
        start local 3 // java.lang.Throwable e
         9: .line 3122
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 3 /* e */
            iconst_1
            invokestatic com.oracle.truffle.polyglot.PolyglotImpl.guestToHostException:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Throwable;Z)Lorg/graalvm/polyglot/PolyglotException;
            athrow
        end local 3 // java.lang.Throwable e
        10: .line 3123
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4
        11: .line 3124
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
        12: .line 3125
            aload 4
            athrow
        end local 2 // java.lang.Object c
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   13     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0   13     1  receiver  Ljava/lang/Object;
            1   13     2         c  Ljava/lang/Object;
            9   10     3         e  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           1     2       4  Class com.oracle.truffle.api.interop.UnsupportedMessageException
           1     2       8  Class java.lang.Throwable
           4     6       8  Class java.lang.Throwable
           1     2      10  any
           4     6      10  any
           8    10      10  any
    MethodParameters:
          Name  Flags
      receiver  

  public boolean fitsInShort(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 3130
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostEnter:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;)Ljava/lang/Object;
            astore 2 /* c */
        start local 2 // java.lang.Object c
         1: .line 3132
            getstatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.UNCACHED_INTEROP:Lcom/oracle/truffle/api/interop/InteropLibrary;
            aload 1 /* receiver */
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.fitsInShort:(Ljava/lang/Object;)Z
            istore 5
         2: .line 3136
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         3: .line 3132
            iload 5
            ireturn
         4: .line 3133
      StackMap locals: com.oracle.truffle.polyglot.PolyglotValue$InteropValue java.lang.Object java.lang.Object
      StackMap stack: java.lang.Throwable
            astore 3 /* e */
        start local 3 // java.lang.Throwable e
         5: .line 3134
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 3 /* e */
            iconst_1
            invokestatic com.oracle.truffle.polyglot.PolyglotImpl.guestToHostException:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Throwable;Z)Lorg/graalvm/polyglot/PolyglotException;
            athrow
        end local 3 // java.lang.Throwable e
         6: .line 3135
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4
         7: .line 3136
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         8: .line 3137
            aload 4
            athrow
        end local 2 // java.lang.Object c
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    9     1  receiver  Ljava/lang/Object;
            1    9     2         c  Ljava/lang/Object;
            5    6     3         e  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           1     2       4  Class java.lang.Throwable
           1     2       6  any
           4     6       6  any
    MethodParameters:
          Name  Flags
      receiver  

  public short asShort(java.lang.Object);
    descriptor: (Ljava/lang/Object;)S
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 3142
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostEnter:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;)Ljava/lang/Object;
            astore 2 /* c */
        start local 2 // java.lang.Object c
         1: .line 3145
            getstatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.UNCACHED_INTEROP:Lcom/oracle/truffle/api/interop/InteropLibrary;
            aload 1 /* receiver */
            invokevirtual com.oracle.truffle.api.interop.InteropLibrary.asShort:(Ljava/lang/Object;)S
            istore 5
         2: .line 3152
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         3: .line 3145
            iload 5
            ireturn
         4: .line 3146
      StackMap locals: com.oracle.truffle.polyglot.PolyglotValue$InteropValue java.lang.Object java.lang.Object
      StackMap stack: com.oracle.truffle.api.interop.UnsupportedMessageException
            pop
         5: .line 3147
            aload 0 /* this */
            aload 1 /* receiver */
            invokevirtual com.oracle.truffle.polyglot.PolyglotValue$InteropValue.asShortUnsupported:(Ljava/lang/Object;)S
            istore 5
         6: .line 3152
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
         7: .line 3147
            iload 5
            ireturn
         8: .line 3149
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 3 /* e */
        start local 3 // java.lang.Throwable e
         9: .line 3150
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 3 /* e */
            iconst_1
            invokestatic com.oracle.truffle.polyglot.PolyglotImpl.guestToHostException:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Throwable;Z)Lorg/graalvm/polyglot/PolyglotException;
            athrow
        end local 3 // java.lang.Throwable e
        10: .line 3151
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4
        11: .line 3152
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aload 2 /* c */
            invokestatic com.oracle.truffle.polyglot.PolyglotValue$InteropValue.hostLeave:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Object;)V
        12: .line 3153
            aload 4
            athrow
        end local 2 // java.lang.Object c
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   13     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0   13     1  receiver  Ljava/lang/Object;
            1   13     2         c  Ljava/lang/Object;
            9   10     3         e  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           1     2       4  Class com.oracle.truffle.api.interop.UnsupportedMessageException
           1     2       8  Class java.lang.Throwable
           4     6       8  Class java.lang.Throwable
           1     2      10  any
           4     6      10  any
           8    10      10  any
    MethodParameters:
          Name  Flags
      receiver  

  public boolean isMetaObject(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 3158
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.isMetaObject:Lcom/oracle/truffle/api/CallTarget;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ireturn
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  receiver  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  

  public boolean isMetaInstance(java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
        start local 2 // java.lang.Object instance
         0: .line 3163
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.isMetaInstance:Lcom/oracle/truffle/api/CallTarget;
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            dup
            iconst_2
            aload 2 /* instance */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ireturn
        end local 2 // java.lang.Object instance
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  receiver  Ljava/lang/Object;
            0    1     2  instance  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  
      instance  

  public java.lang.String getMetaQualifiedName(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 3168
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.getMetaQualifiedName:Lcom/oracle/truffle/api/CallTarget;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            areturn
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  receiver  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  

  public java.lang.String getMetaSimpleName(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
        start local 1 // java.lang.Object receiver
         0: .line 3173
            getstatic com.oracle.truffle.polyglot.EngineAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.cache:Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache.getMetaSimpleName:Lcom/oracle/truffle/api/CallTarget;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.truffle.polyglot.PolyglotValue$InteropValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
            aastore
            dup
            iconst_1
            aload 1 /* receiver */
            aastore
            invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.callProfiled:(Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            areturn
        end local 1 // java.lang.Object receiver
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropValue;
            0    1     1  receiver  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      receiver  
}
SourceFile: "PolyglotValue.java"
NestHost: com.oracle.truffle.polyglot.PolyglotValue
InnerClasses:
  public abstract RuntimeSupport = com.oracle.truffle.api.impl.Accessor$RuntimeSupport of com.oracle.truffle.api.impl.Accessor
  InteropCodeCache = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache of com.oracle.truffle.polyglot.PolyglotValue
  private final InteropValue = com.oracle.truffle.polyglot.PolyglotValue$InteropValue of com.oracle.truffle.polyglot.PolyglotValue
  private final MemberSet = com.oracle.truffle.polyglot.PolyglotValue$InteropValue$MemberSet of com.oracle.truffle.polyglot.PolyglotValue$InteropValue