class com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  super_class: java.lang.Object
{
  final com.oracle.truffle.api.CallTarget isNativePointer;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget asNativePointer;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget hasArrayElements;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget getArrayElement;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget setArrayElement;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget removeArrayElement;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget getArraySize;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget hasMembers;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget hasMember;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget getMember;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget putMember;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget removeMember;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget isNull;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget canExecute;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget execute;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget canInstantiate;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget newInstance;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget executeNoArgs;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget executeVoid;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget executeVoidNoArgs;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget canInvoke;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget invoke;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget invokeNoArgs;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget getMemberKeys;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget isDate;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget asDate;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget isTime;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget asTime;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget isTimeZone;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget asTimeZone;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget asInstant;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget isDuration;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget asDuration;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget isException;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget throwException;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget isMetaObject;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget isMetaInstance;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget getMetaQualifiedName;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget getMetaSimpleName;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

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

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

  final com.oracle.truffle.api.CallTarget asClassLiteral;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final com.oracle.truffle.api.CallTarget asTypeLiteral;
    descriptor: Lcom/oracle/truffle/api/CallTarget;
    flags: (0x0010) ACC_FINAL

  final java.lang.Class<?> receiverType;
    descriptor: Ljava/lang/Class;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/lang/Class<*>;

  final com.oracle.truffle.polyglot.PolyglotLanguageInstance languageInstance;
    descriptor: Lcom/oracle/truffle/polyglot/PolyglotLanguageInstance;
    flags: (0x0010) ACC_FINAL

  void <init>(com.oracle.truffle.polyglot.PolyglotLanguageInstance, com.oracle.truffle.api.interop.TruffleObject, java.lang.Class<?>);
    descriptor: (Lcom/oracle/truffle/polyglot/PolyglotLanguageInstance;Lcom/oracle/truffle/api/interop/TruffleObject;Ljava/lang/Class;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache this
         0: .line 83
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tThe import com.oracle.truffle.polyglot.PolyglotValueFactory cannot be resolved\n\tIsNativePointerNodeGen cannot be resolved\n\tAsNativePointerNodeGen cannot be resolved\n\tHasArrayElementsNodeGen cannot be resolved\n\tGetArrayElementNodeGen cannot be resolved\n\tSetArrayElementNodeGen cannot be resolved\n\tRemoveArrayElementNodeGen cannot be resolved\n\tGetArraySizeNodeGen cannot be resolved\n\tHasMemberNodeGen cannot be resolved\n\tGetMemberNodeGen cannot be resolved\n\tPutMemberNodeGen cannot be resolved\n\tRemoveMemberNodeGen cannot be resolved\n\tIsNullNodeGen cannot be resolved\n\tNewInstanceNodeGen cannot be resolved\n\tCanInstantiateNodeGen cannot be resolved\n\tCanExecuteNodeGen cannot be resolved\n\tCanInvokeNodeGen cannot be resolved\n\tHasMembersNodeGen cannot be resolved\n\tGetMemberKeysNodeGen cannot be resolved\n\tIsDateNodeGen cannot be resolved\n\tAsDateNodeGen cannot be resolved\n\tIsTimeNodeGen cannot be resolved\n\tAsTimeNodeGen cannot be resolved\n\tIsTimeZoneNodeGen cannot be resolved\n\tAsTimeZoneNodeGen cannot be resolved\n\tAsInstantNodeGen cannot be resolved\n\tIsDurationNodeGen cannot be resolved\n\tAsDurationNodeGen cannot be resolved\n\tIsExceptionNodeGen cannot be resolved\n\tThrowExceptionNodeGen cannot be resolved\n\tIsMetaObjectNodeGen cannot be resolved\n\tIsMetaInstanceNodeGen cannot be resolved\n\tGetMetaQualifiedNameNodeGen cannot be resolved\n\tGetMetaSimpleNameNodeGen cannot be resolved\n\tToHostNodeGen cannot be resolved\n\tToHostNodeGen cannot be resolved\n\tToHostNodeGen cannot be resolved\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/polyglot/PolyglotValue$InteropCodeCache;
    Signature: (Lcom/oracle/truffle/polyglot/PolyglotLanguageInstance;Lcom/oracle/truffle/api/interop/TruffleObject;Ljava/lang/Class<*>;)V
    MethodParameters:
                  Name  Flags
      languageInstance  
      receiverObject    
      receiverType      
}
SourceFile: "PolyglotValue.java"
NestHost: com.oracle.truffle.polyglot.PolyglotValue
InnerClasses:
  InteropCodeCache = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache of com.oracle.truffle.polyglot.PolyglotValue
  private abstract AbstractExecuteNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$AbstractExecuteNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  private abstract AbstractInvokeNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$AbstractInvokeNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  private abstract AbstractMemberInfoNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$AbstractMemberInfoNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  private AsClassLiteralNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$AsClassLiteralNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract AsDateNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$AsDateNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract AsDurationNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$AsDurationNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract AsInstantNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$AsInstantNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract AsNativePointerNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$AsNativePointerNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract AsTimeNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$AsTimeNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract AsTimeZoneNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$AsTimeZoneNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  private AsTypeLiteralNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$AsTypeLiteralNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract CanExecuteNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$CanExecuteNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract CanInstantiateNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$CanInstantiateNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract CanInvokeNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$CanInvokeNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  private ExecuteNoArgsNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$ExecuteNoArgsNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  private ExecuteNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$ExecuteNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  private ExecuteVoidNoArgsNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$ExecuteVoidNoArgsNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  private ExecuteVoidNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$ExecuteVoidNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract GetArrayElementNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$GetArrayElementNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract GetArraySizeNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$GetArraySizeNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract GetMemberKeysNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$GetMemberKeysNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract GetMemberNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$GetMemberNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract GetMetaQualifiedNameNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$GetMetaQualifiedNameNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract GetMetaSimpleNameNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$GetMetaSimpleNameNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract HasArrayElementsNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$HasArrayElementsNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract HasMemberNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$HasMemberNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract HasMembersNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$HasMembersNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  private InvokeNoArgsNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$InvokeNoArgsNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  private InvokeNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$InvokeNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract IsDateNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$IsDateNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract IsDurationNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$IsDurationNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract IsExceptionNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$IsExceptionNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract IsMetaInstanceNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$IsMetaInstanceNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract IsMetaObjectNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$IsMetaObjectNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract IsNativePointerNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$IsNativePointerNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract IsNullNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$IsNullNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract IsTimeNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$IsTimeNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract IsTimeZoneNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$IsTimeZoneNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract NewInstanceNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$NewInstanceNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract PutMemberNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$PutMemberNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract RemoveArrayElementNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$RemoveArrayElementNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract RemoveMemberNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$RemoveMemberNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract SetArrayElementNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$SetArrayElementNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache
  abstract ThrowExceptionNode = com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache$ThrowExceptionNode of com.oracle.truffle.polyglot.PolyglotValue$InteropCodeCache