final class com.oracle.truffle.polyglot.PolyglotProxy implements com.oracle.truffle.api.interop.TruffleObject
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: com.oracle.truffle.polyglot.PolyglotProxy
super_class: java.lang.Object
{
static final int LIMIT;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 5
private static final org.graalvm.polyglot.proxy.ProxyArray EMPTY;
descriptor: Lorg/graalvm/polyglot/proxy/ProxyArray;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
final org.graalvm.polyglot.proxy.Proxy proxy;
descriptor: Lorg/graalvm/polyglot/proxy/Proxy;
flags: (0x0010) ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new com.oracle.truffle.polyglot.PolyglotProxy$1
dup
invokespecial com.oracle.truffle.polyglot.PolyglotProxy$1.<init>:()V
putstatic com.oracle.truffle.polyglot.PolyglotProxy.EMPTY:Lorg/graalvm/polyglot/proxy/ProxyArray;
1: return
LocalVariableTable:
Start End Slot Name Signature
void <init>(org.graalvm.polyglot.proxy.Proxy);
descriptor: (Lorg/graalvm/polyglot/proxy/Proxy;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
0 3 1 proxy Lorg/graalvm/polyglot/proxy/Proxy;
MethodParameters:
Name Flags
proxy
public boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof com.oracle.truffle.polyglot.PolyglotProxy
ifne 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
aload 1
checkcast com.oracle.truffle.polyglot.PolyglotProxy
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
if_acmpne 3
iconst_1
ireturn
StackMap locals:
StackMap stack:
3: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
0 4 1 obj Ljava/lang/Object;
MethodParameters:
Name Flags
obj
public int hashCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
invokestatic java.lang.System.identityHashCode:(Ljava/lang/Object;)I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
boolean isInstantiable();
descriptor: ()Z
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyInstantiable
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage()
instantiate([], com.oracle.truffle.api.interop.InteropLibrary, com.oracle.truffle.api.TruffleLanguage$ContextReference<com.oracle.truffle.polyglot.HostLanguage$HostContext>, com.oracle.truffle.polyglot.HostLanguage);
descriptor: ([Ljava/lang/Object;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)Ljava/lang/Object;
flags: (0x0000)
Code:
stack=6, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyInstantiable
ifeq 5
1: aload 3
invokevirtual com.oracle.truffle.api.TruffleLanguage$ContextReference.get:()Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.HostLanguage$HostContext
getfield com.oracle.truffle.polyglot.HostLanguage$HostContext.internalContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 5
start local 5 2: aload 5
aload 1
iconst_0
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.toHostValues:([Ljava/lang/Object;I)[Lorg/graalvm/polyglot/Value;
astore 6
start local 6 3: aload 2
aload 4
invokevirtual com.oracle.truffle.polyglot.HostLanguage.getHostToGuestCache:()Lcom/oracle/truffle/polyglot/HostToGuestCodeCache;
getfield com.oracle.truffle.polyglot.HostToGuestCodeCache.instantiate:Lcom/oracle/truffle/api/CallTarget;
iconst_3
anewarray java.lang.Object
dup
iconst_0
aload 5
aastore
dup
iconst_1
aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
aastore
dup
iconst_2
aload 6
aastore
invokestatic com.oracle.truffle.polyglot.GuestToHostRootNode.guestToHostCall:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
astore 7
start local 7 4: aload 5
aload 2
aload 7
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.toGuestValue:(Lcom/oracle/truffle/api/nodes/Node;Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 7 end local 6 end local 5 5: StackMap locals:
StackMap stack:
invokestatic com.oracle.truffle.api.interop.UnsupportedMessageException.create:()Lcom/oracle/truffle/api/interop/UnsupportedMessageException;
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
0 6 1 arguments [Ljava/lang/Object;
0 6 2 library Lcom/oracle/truffle/api/interop/InteropLibrary;
0 6 3 context Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;
0 6 4 language Lcom/oracle/truffle/polyglot/HostLanguage;
2 5 5 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
3 5 6 convertedArguments [Lorg/graalvm/polyglot/Value;
4 5 7 result Ljava/lang/Object;
Exceptions:
throws com.oracle.truffle.api.interop.UnsupportedMessageException
Signature: ([Ljava/lang/Object;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;Lcom/oracle/truffle/polyglot/HostLanguage;)Ljava/lang/Object;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage()
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
RuntimeInvisibleParameterAnnotations:
0:
1:
com.oracle.truffle.api.library.CachedLibrary(value = "this")
2:
com.oracle.truffle.api.dsl.CachedContext(value = Lcom/oracle/truffle/polyglot/HostLanguage;)
3:
com.oracle.truffle.api.dsl.CachedLanguage()
MethodParameters:
Name Flags
arguments
library
context
language
boolean isExecutable();
descriptor: ()Z
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyExecutable
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage()
execute([], com.oracle.truffle.api.interop.InteropLibrary, com.oracle.truffle.api.TruffleLanguage$ContextReference<com.oracle.truffle.polyglot.HostLanguage$HostContext>, com.oracle.truffle.polyglot.HostLanguage);
descriptor: ([Ljava/lang/Object;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)Ljava/lang/Object;
flags: (0x0000)
Code:
stack=6, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyExecutable
ifeq 5
1: aload 3
invokevirtual com.oracle.truffle.api.TruffleLanguage$ContextReference.get:()Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.HostLanguage$HostContext
getfield com.oracle.truffle.polyglot.HostLanguage$HostContext.internalContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 5
start local 5 2: aload 5
aload 1
iconst_0
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.toHostValues:([Ljava/lang/Object;I)[Lorg/graalvm/polyglot/Value;
astore 6
start local 6 3: aload 2
aload 4
invokevirtual com.oracle.truffle.polyglot.HostLanguage.getHostToGuestCache:()Lcom/oracle/truffle/polyglot/HostToGuestCodeCache;
getfield com.oracle.truffle.polyglot.HostToGuestCodeCache.execute:Lcom/oracle/truffle/api/CallTarget;
iconst_3
anewarray java.lang.Object
dup
iconst_0
aload 5
aastore
dup
iconst_1
aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
aastore
dup
iconst_2
aload 6
aastore
invokestatic com.oracle.truffle.polyglot.GuestToHostRootNode.guestToHostCall:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
astore 7
start local 7 4: aload 5
aload 2
aload 7
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.toGuestValue:(Lcom/oracle/truffle/api/nodes/Node;Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 7 end local 6 end local 5 5: StackMap locals:
StackMap stack:
invokestatic com.oracle.truffle.api.interop.UnsupportedMessageException.create:()Lcom/oracle/truffle/api/interop/UnsupportedMessageException;
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
0 6 1 arguments [Ljava/lang/Object;
0 6 2 library Lcom/oracle/truffle/api/interop/InteropLibrary;
0 6 3 context Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;
0 6 4 language Lcom/oracle/truffle/polyglot/HostLanguage;
2 5 5 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
3 5 6 convertedArguments [Lorg/graalvm/polyglot/Value;
4 5 7 result Ljava/lang/Object;
Exceptions:
throws com.oracle.truffle.api.interop.UnsupportedMessageException
Signature: ([Ljava/lang/Object;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;Lcom/oracle/truffle/polyglot/HostLanguage;)Ljava/lang/Object;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage()
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
RuntimeInvisibleParameterAnnotations:
0:
1:
com.oracle.truffle.api.library.CachedLibrary(value = "this")
2:
com.oracle.truffle.api.dsl.CachedContext(value = Lcom/oracle/truffle/polyglot/HostLanguage;)
3:
com.oracle.truffle.api.dsl.CachedLanguage()
MethodParameters:
Name Flags
arguments
library
context
language
boolean isPointer();
descriptor: ()Z
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyNativeObject
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage()
long asPointer(com.oracle.truffle.api.interop.InteropLibrary, com.oracle.truffle.api.TruffleLanguage$ContextReference<com.oracle.truffle.polyglot.HostLanguage$HostContext>, com.oracle.truffle.polyglot.HostLanguage);
descriptor: (Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)J
flags: (0x0000)
Code:
stack=6, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyNativeObject
ifeq 3
1: aload 2
invokevirtual com.oracle.truffle.api.TruffleLanguage$ContextReference.get:()Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.HostLanguage$HostContext
getfield com.oracle.truffle.polyglot.HostLanguage$HostContext.internalContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 4
start local 4 2: aload 1
aload 3
invokevirtual com.oracle.truffle.polyglot.HostLanguage.getHostToGuestCache:()Lcom/oracle/truffle/polyglot/HostToGuestCodeCache;
getfield com.oracle.truffle.polyglot.HostToGuestCodeCache.asPointer:Lcom/oracle/truffle/api/CallTarget;
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 4
aastore
dup
iconst_1
aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
aastore
invokestatic com.oracle.truffle.polyglot.GuestToHostRootNode.guestToHostCall:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Long
invokevirtual java.lang.Long.longValue:()J
lreturn
end local 4 3: StackMap locals:
StackMap stack:
invokestatic com.oracle.truffle.api.interop.UnsupportedMessageException.create:()Lcom/oracle/truffle/api/interop/UnsupportedMessageException;
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
0 4 1 library Lcom/oracle/truffle/api/interop/InteropLibrary;
0 4 2 context Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;
0 4 3 language Lcom/oracle/truffle/polyglot/HostLanguage;
2 3 4 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
Exceptions:
throws com.oracle.truffle.api.interop.UnsupportedMessageException
Signature: (Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;Lcom/oracle/truffle/polyglot/HostLanguage;)J
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage()
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
RuntimeInvisibleParameterAnnotations:
0:
com.oracle.truffle.api.library.CachedLibrary(value = "this")
1:
com.oracle.truffle.api.dsl.CachedContext(value = Lcom/oracle/truffle/polyglot/HostLanguage;)
2:
com.oracle.truffle.api.dsl.CachedLanguage()
MethodParameters:
Name Flags
library
context
language
boolean hasArrayElements();
descriptor: ()Z
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyArray
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage()
readArrayElement(long, com.oracle.truffle.api.interop.InteropLibrary, com.oracle.truffle.api.TruffleLanguage$ContextReference<com.oracle.truffle.polyglot.HostLanguage$HostContext>, com.oracle.truffle.polyglot.HostLanguage);
descriptor: (JLcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)Ljava/lang/Object;
flags: (0x0000)
Code:
stack=7, locals=8, args_size=5
start local 0 start local 1 start local 3 start local 4 start local 5 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyArray
ifeq 4
1: aload 4
invokevirtual com.oracle.truffle.api.TruffleLanguage$ContextReference.get:()Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.HostLanguage$HostContext
getfield com.oracle.truffle.polyglot.HostLanguage$HostContext.internalContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 6
start local 6 2: aload 3
aload 5
invokevirtual com.oracle.truffle.polyglot.HostLanguage.getHostToGuestCache:()Lcom/oracle/truffle/polyglot/HostToGuestCodeCache;
getfield com.oracle.truffle.polyglot.HostToGuestCodeCache.arrayGet:Lcom/oracle/truffle/api/CallTarget;
iconst_3
anewarray java.lang.Object
dup
iconst_0
aload 6
aastore
dup
iconst_1
aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
aastore
dup
iconst_2
lload 1
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
invokestatic com.oracle.truffle.polyglot.GuestToHostRootNode.guestToHostCall:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
astore 7
start local 7 3: aload 6
aload 3
aload 7
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.toGuestValue:(Lcom/oracle/truffle/api/nodes/Node;Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 7 end local 6 4: StackMap locals:
StackMap stack:
invokestatic com.oracle.truffle.api.interop.UnsupportedMessageException.create:()Lcom/oracle/truffle/api/interop/UnsupportedMessageException;
athrow
end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
0 5 1 index J
0 5 3 library Lcom/oracle/truffle/api/interop/InteropLibrary;
0 5 4 context Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;
0 5 5 language Lcom/oracle/truffle/polyglot/HostLanguage;
2 4 6 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
3 4 7 result Ljava/lang/Object;
Exceptions:
throws com.oracle.truffle.api.interop.UnsupportedMessageException
Signature: (JLcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;Lcom/oracle/truffle/polyglot/HostLanguage;)Ljava/lang/Object;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage()
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
RuntimeInvisibleParameterAnnotations:
0:
1:
com.oracle.truffle.api.library.CachedLibrary(value = "this")
2:
com.oracle.truffle.api.dsl.CachedContext(value = Lcom/oracle/truffle/polyglot/HostLanguage;)
3:
com.oracle.truffle.api.dsl.CachedLanguage()
MethodParameters:
Name Flags
index
library
context
language
void writeArrayElement(long, , com.oracle.truffle.api.interop.InteropLibrary, com.oracle.truffle.api.TruffleLanguage$ContextReference<com.oracle.truffle.polyglot.HostLanguage$HostContext>, com.oracle.truffle.polyglot.HostLanguage);
descriptor: (JLjava/lang/Object;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)V
flags: (0x0000)
Code:
stack=7, locals=9, args_size=6
start local 0 start local 1 start local 3 start local 4 start local 5 start local 6 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyArray
ifeq 5
1: aload 5
invokevirtual com.oracle.truffle.api.TruffleLanguage$ContextReference.get:()Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.HostLanguage$HostContext
getfield com.oracle.truffle.polyglot.HostLanguage$HostContext.internalContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 7
start local 7 2: aload 7
aload 3
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.asValue:(Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
astore 8
start local 8 3: aload 4
aload 6
invokevirtual com.oracle.truffle.polyglot.HostLanguage.getHostToGuestCache:()Lcom/oracle/truffle/polyglot/HostToGuestCodeCache;
getfield com.oracle.truffle.polyglot.HostToGuestCodeCache.arraySet:Lcom/oracle/truffle/api/CallTarget;
iconst_4
anewarray java.lang.Object
dup
iconst_0
aload 7
aastore
dup
iconst_1
aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
aastore
dup
iconst_2
lload 1
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
dup
iconst_3
aload 8
aastore
invokestatic com.oracle.truffle.polyglot.GuestToHostRootNode.guestToHostCall:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 8 end local 7 4: goto 6
5: StackMap locals:
StackMap stack:
invokestatic com.oracle.truffle.api.interop.UnsupportedMessageException.create:()Lcom/oracle/truffle/api/interop/UnsupportedMessageException;
athrow
6: StackMap locals:
StackMap stack:
return
end local 6 end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
0 7 1 index J
0 7 3 value Ljava/lang/Object;
0 7 4 library Lcom/oracle/truffle/api/interop/InteropLibrary;
0 7 5 context Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;
0 7 6 language Lcom/oracle/truffle/polyglot/HostLanguage;
2 4 7 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
3 4 8 castValue Lorg/graalvm/polyglot/Value;
Exceptions:
throws com.oracle.truffle.api.interop.UnsupportedMessageException
Signature: (JLjava/lang/Object;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;Lcom/oracle/truffle/polyglot/HostLanguage;)V
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage()
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
RuntimeInvisibleParameterAnnotations:
0:
1:
2:
com.oracle.truffle.api.library.CachedLibrary(value = "this")
3:
com.oracle.truffle.api.dsl.CachedContext(value = Lcom/oracle/truffle/polyglot/HostLanguage;)
4:
com.oracle.truffle.api.dsl.CachedLanguage()
MethodParameters:
Name Flags
index
value
library
context
language
void removeArrayElement(long, com.oracle.truffle.api.interop.InteropLibrary, com.oracle.truffle.api.TruffleLanguage$ContextReference<com.oracle.truffle.polyglot.HostLanguage$HostContext>, com.oracle.truffle.polyglot.HostLanguage);
descriptor: (JLcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)V
flags: (0x0000)
Code:
stack=7, locals=8, args_size=5
start local 0 start local 1 start local 3 start local 4 start local 5 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyArray
ifeq 5
1: aload 4
invokevirtual com.oracle.truffle.api.TruffleLanguage$ContextReference.get:()Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.HostLanguage$HostContext
getfield com.oracle.truffle.polyglot.HostLanguage$HostContext.internalContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 6
start local 6 2: aload 3
aload 5
invokevirtual com.oracle.truffle.polyglot.HostLanguage.getHostToGuestCache:()Lcom/oracle/truffle/polyglot/HostToGuestCodeCache;
getfield com.oracle.truffle.polyglot.HostToGuestCodeCache.arrayRemove:Lcom/oracle/truffle/api/CallTarget;
iconst_3
anewarray java.lang.Object
dup
iconst_0
aload 6
aastore
dup
iconst_1
aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
aastore
dup
iconst_2
lload 1
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
invokestatic com.oracle.truffle.polyglot.GuestToHostRootNode.guestToHostCall:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
istore 7
start local 7 3: iload 7
ifne 6
4: lload 1
invokestatic com.oracle.truffle.api.interop.InvalidArrayIndexException.create:(J)Lcom/oracle/truffle/api/interop/InvalidArrayIndexException;
athrow
end local 7 end local 6 5: StackMap locals:
StackMap stack:
invokestatic com.oracle.truffle.api.interop.UnsupportedMessageException.create:()Lcom/oracle/truffle/api/interop/UnsupportedMessageException;
athrow
6: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
0 7 1 index J
0 7 3 library Lcom/oracle/truffle/api/interop/InteropLibrary;
0 7 4 context Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;
0 7 5 language Lcom/oracle/truffle/polyglot/HostLanguage;
2 5 6 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
3 5 7 result Z
Exceptions:
throws com.oracle.truffle.api.interop.UnsupportedMessageException, com.oracle.truffle.api.interop.InvalidArrayIndexException
Signature: (JLcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;Lcom/oracle/truffle/polyglot/HostLanguage;)V
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage()
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
RuntimeInvisibleParameterAnnotations:
0:
1:
com.oracle.truffle.api.library.CachedLibrary(value = "this")
2:
com.oracle.truffle.api.dsl.CachedContext(value = Lcom/oracle/truffle/polyglot/HostLanguage;)
3:
com.oracle.truffle.api.dsl.CachedLanguage()
MethodParameters:
Name Flags
index
library
context
language
long getArraySize(com.oracle.truffle.api.interop.InteropLibrary, com.oracle.truffle.api.TruffleLanguage$ContextReference<com.oracle.truffle.polyglot.HostLanguage$HostContext>, com.oracle.truffle.polyglot.HostLanguage);
descriptor: (Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)J
flags: (0x0000)
Code:
stack=6, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyArray
ifeq 3
1: aload 2
invokevirtual com.oracle.truffle.api.TruffleLanguage$ContextReference.get:()Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.HostLanguage$HostContext
getfield com.oracle.truffle.polyglot.HostLanguage$HostContext.internalContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 4
start local 4 2: aload 1
aload 3
invokevirtual com.oracle.truffle.polyglot.HostLanguage.getHostToGuestCache:()Lcom/oracle/truffle/polyglot/HostToGuestCodeCache;
getfield com.oracle.truffle.polyglot.HostToGuestCodeCache.arraySize:Lcom/oracle/truffle/api/CallTarget;
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 4
aastore
dup
iconst_1
aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
aastore
invokestatic com.oracle.truffle.polyglot.GuestToHostRootNode.guestToHostCall:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Long
invokevirtual java.lang.Long.longValue:()J
lreturn
end local 4 3: StackMap locals:
StackMap stack:
invokestatic com.oracle.truffle.api.interop.UnsupportedMessageException.create:()Lcom/oracle/truffle/api/interop/UnsupportedMessageException;
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
0 4 1 library Lcom/oracle/truffle/api/interop/InteropLibrary;
0 4 2 context Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;
0 4 3 language Lcom/oracle/truffle/polyglot/HostLanguage;
2 3 4 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
Exceptions:
throws com.oracle.truffle.api.interop.UnsupportedMessageException
Signature: (Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;Lcom/oracle/truffle/polyglot/HostLanguage;)J
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage()
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
RuntimeInvisibleParameterAnnotations:
0:
com.oracle.truffle.api.library.CachedLibrary(value = "this")
1:
com.oracle.truffle.api.dsl.CachedContext(value = Lcom/oracle/truffle/polyglot/HostLanguage;)
2:
com.oracle.truffle.api.dsl.CachedLanguage()
MethodParameters:
Name Flags
library
context
language
boolean isArrayElementExisting(long, com.oracle.truffle.api.interop.InteropLibrary, com.oracle.truffle.api.TruffleLanguage$ContextReference<com.oracle.truffle.polyglot.HostLanguage$HostContext>, com.oracle.truffle.polyglot.HostLanguage);
descriptor: (JLcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)Z
flags: (0x0000)
Code:
stack=6, locals=9, args_size=5
start local 0 start local 1 start local 3 start local 4 start local 5 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyArray
ifeq 5
1: aload 4
invokevirtual com.oracle.truffle.api.TruffleLanguage$ContextReference.get:()Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.HostLanguage$HostContext
getfield com.oracle.truffle.polyglot.HostLanguage$HostContext.internalContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 6
start local 6 2: aload 3
aload 5
invokevirtual com.oracle.truffle.polyglot.HostLanguage.getHostToGuestCache:()Lcom/oracle/truffle/polyglot/HostToGuestCodeCache;
getfield com.oracle.truffle.polyglot.HostToGuestCodeCache.arraySize:Lcom/oracle/truffle/api/CallTarget;
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 6
aastore
dup
iconst_1
aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
aastore
invokestatic com.oracle.truffle.polyglot.GuestToHostRootNode.guestToHostCall:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Long
invokevirtual java.lang.Long.longValue:()J
lstore 7
start local 7 3: lload 1
lconst_0
lcmp
iflt 4
lload 1
lload 7
lcmp
ifge 4
iconst_1
ireturn
StackMap locals: com.oracle.truffle.polyglot.PolyglotLanguageContext long
StackMap stack:
4: iconst_0
ireturn
end local 7 end local 6 5: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
0 6 1 index J
0 6 3 library Lcom/oracle/truffle/api/interop/InteropLibrary;
0 6 4 context Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;
0 6 5 language Lcom/oracle/truffle/polyglot/HostLanguage;
2 5 6 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
3 5 7 size J
Signature: (JLcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;Lcom/oracle/truffle/polyglot/HostLanguage;)Z
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage$Repeat(value = {com.oracle.truffle.api.library.ExportMessage(name = "isArrayElementReadable"), com.oracle.truffle.api.library.ExportMessage(name = "isArrayElementModifiable"), com.oracle.truffle.api.library.ExportMessage(name = "isArrayElementRemovable")})
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
RuntimeInvisibleParameterAnnotations:
0:
1:
com.oracle.truffle.api.library.CachedLibrary(value = "this")
2:
com.oracle.truffle.api.dsl.CachedContext(value = Lcom/oracle/truffle/polyglot/HostLanguage;)
3:
com.oracle.truffle.api.dsl.CachedLanguage()
MethodParameters:
Name Flags
index
library
context
language
boolean isArrayElementInsertable(long, com.oracle.truffle.api.interop.InteropLibrary, com.oracle.truffle.api.TruffleLanguage$ContextReference<com.oracle.truffle.polyglot.HostLanguage$HostContext>, com.oracle.truffle.polyglot.HostLanguage);
descriptor: (JLcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)Z
flags: (0x0000)
Code:
stack=6, locals=9, args_size=5
start local 0 start local 1 start local 3 start local 4 start local 5 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyArray
ifeq 5
1: aload 4
invokevirtual com.oracle.truffle.api.TruffleLanguage$ContextReference.get:()Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.HostLanguage$HostContext
getfield com.oracle.truffle.polyglot.HostLanguage$HostContext.internalContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 6
start local 6 2: aload 3
aload 5
invokevirtual com.oracle.truffle.polyglot.HostLanguage.getHostToGuestCache:()Lcom/oracle/truffle/polyglot/HostToGuestCodeCache;
getfield com.oracle.truffle.polyglot.HostToGuestCodeCache.arraySize:Lcom/oracle/truffle/api/CallTarget;
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 6
aastore
dup
iconst_1
aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
aastore
invokestatic com.oracle.truffle.polyglot.GuestToHostRootNode.guestToHostCall:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Long
invokevirtual java.lang.Long.longValue:()J
lstore 7
start local 7 3: lload 1
lconst_0
lcmp
iflt 4
lload 1
lload 7
lcmp
ifge 4
iconst_0
ireturn
StackMap locals: com.oracle.truffle.polyglot.PolyglotLanguageContext long
StackMap stack:
4: iconst_1
ireturn
end local 7 end local 6 5: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
0 6 1 index J
0 6 3 library Lcom/oracle/truffle/api/interop/InteropLibrary;
0 6 4 context Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;
0 6 5 language Lcom/oracle/truffle/polyglot/HostLanguage;
2 5 6 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
3 5 7 size J
Signature: (JLcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;Lcom/oracle/truffle/polyglot/HostLanguage;)Z
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage()
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
RuntimeInvisibleParameterAnnotations:
0:
1:
com.oracle.truffle.api.library.CachedLibrary(value = "this")
2:
com.oracle.truffle.api.dsl.CachedContext(value = Lcom/oracle/truffle/polyglot/HostLanguage;)
3:
com.oracle.truffle.api.dsl.CachedLanguage()
MethodParameters:
Name Flags
index
library
context
language
boolean hasMembers();
descriptor: ()Z
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyObject
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage()
getMembers(boolean, com.oracle.truffle.api.interop.InteropLibrary, com.oracle.truffle.api.TruffleLanguage$ContextReference<com.oracle.truffle.polyglot.HostLanguage$HostContext>, com.oracle.truffle.polyglot.HostLanguage);
descriptor: (ZLcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)Ljava/lang/Object;
flags: (0x0000)
Code:
stack=7, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyObject
ifeq 11
1: aload 3
invokevirtual com.oracle.truffle.api.TruffleLanguage$ContextReference.get:()Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.HostLanguage$HostContext
getfield com.oracle.truffle.polyglot.HostLanguage$HostContext.internalContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 5
start local 5 2: aload 2
aload 4
invokevirtual com.oracle.truffle.polyglot.HostLanguage.getHostToGuestCache:()Lcom/oracle/truffle/polyglot/HostToGuestCodeCache;
getfield com.oracle.truffle.polyglot.HostToGuestCodeCache.memberKeys:Lcom/oracle/truffle/api/CallTarget;
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 5
aastore
dup
iconst_1
aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
aastore
invokestatic com.oracle.truffle.polyglot.GuestToHostRootNode.guestToHostCall:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
astore 6
start local 6 3: aload 6
ifnonnull 5
4: getstatic com.oracle.truffle.polyglot.PolyglotProxy.EMPTY:Lorg/graalvm/polyglot/proxy/ProxyArray;
astore 6
5: StackMap locals: com.oracle.truffle.polyglot.PolyglotLanguageContext java.lang.Object
StackMap stack:
aload 5
aload 2
aload 6
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.toGuestValue:(Lcom/oracle/truffle/api/nodes/Node;Ljava/lang/Object;)Ljava/lang/Object;
astore 7
start local 7 6: 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 7
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.hasArrayElements:(Ljava/lang/Object;)Z
ifne 10
7: aload 5
ldc "getMemberKeys() returned invalid value %s but must return an array of member key Strings."
iconst_1
anewarray java.lang.Object
dup
iconst_0
8: aload 5
aload 7
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.asValue:(Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
invokevirtual org.graalvm.polyglot.Value.toString:()Ljava/lang/String;
aastore
9: invokestatic com.oracle.truffle.polyglot.PolyglotProxy.illegalProxy:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/RuntimeException;
athrow
10: StackMap locals: java.lang.Object
StackMap stack:
aload 7
areturn
end local 7 end local 6 end local 5 11: StackMap locals:
StackMap stack:
invokestatic com.oracle.truffle.api.interop.UnsupportedMessageException.create:()Lcom/oracle/truffle/api/interop/UnsupportedMessageException;
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
0 12 1 includeInternal Z
0 12 2 library Lcom/oracle/truffle/api/interop/InteropLibrary;
0 12 3 context Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;
0 12 4 language Lcom/oracle/truffle/polyglot/HostLanguage;
2 11 5 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
3 11 6 result Ljava/lang/Object;
6 11 7 guestValue Ljava/lang/Object;
Exceptions:
throws com.oracle.truffle.api.interop.UnsupportedMessageException
Signature: (ZLcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;Lcom/oracle/truffle/polyglot/HostLanguage;)Ljava/lang/Object;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage()
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
RuntimeInvisibleParameterAnnotations:
0:
1:
com.oracle.truffle.api.library.CachedLibrary(value = "this")
2:
com.oracle.truffle.api.dsl.CachedContext(value = Lcom/oracle/truffle/polyglot/HostLanguage;)
3:
com.oracle.truffle.api.dsl.CachedLanguage()
MethodParameters:
Name Flags
includeInternal
library
context
language
static java.lang.RuntimeException illegalProxy(com.oracle.truffle.polyglot.PolyglotLanguageContext, java.lang.String, java.lang.Object[]);
descriptor: (Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/RuntimeException;
flags: (0x0088) ACC_STATIC, ACC_VARARGS
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
new java.lang.IllegalStateException
dup
1: aload 1
aload 2
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
2: invokestatic com.oracle.truffle.polyglot.PolyglotImpl.hostToGuestException:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
0 3 1 message Ljava/lang/String;
0 3 2 parameters [Ljava/lang/Object;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
MethodParameters:
Name Flags
languageContext
message
parameters
readMember(java.lang.String, com.oracle.truffle.api.interop.InteropLibrary, com.oracle.truffle.api.TruffleLanguage$ContextReference<com.oracle.truffle.polyglot.HostLanguage$HostContext>, com.oracle.truffle.polyglot.HostLanguage);
descriptor: (Ljava/lang/String;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)Ljava/lang/Object;
flags: (0x0000)
Code:
stack=6, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyObject
ifeq 6
1: aload 0
aload 1
aload 2
aload 3
aload 4
invokevirtual com.oracle.truffle.polyglot.PolyglotProxy.isMemberExisting:(Ljava/lang/String;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)Z
ifne 3
2: aload 1
invokestatic com.oracle.truffle.api.interop.UnknownIdentifierException.create:(Ljava/lang/String;)Lcom/oracle/truffle/api/interop/UnknownIdentifierException;
athrow
3: StackMap locals:
StackMap stack:
aload 3
invokevirtual com.oracle.truffle.api.TruffleLanguage$ContextReference.get:()Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.HostLanguage$HostContext
getfield com.oracle.truffle.polyglot.HostLanguage$HostContext.internalContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 5
start local 5 4: aload 2
aload 4
invokevirtual com.oracle.truffle.polyglot.HostLanguage.getHostToGuestCache:()Lcom/oracle/truffle/polyglot/HostToGuestCodeCache;
getfield com.oracle.truffle.polyglot.HostToGuestCodeCache.getMember:Lcom/oracle/truffle/api/CallTarget;
iconst_3
anewarray java.lang.Object
dup
iconst_0
aload 5
aastore
dup
iconst_1
aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
aastore
dup
iconst_2
aload 1
aastore
invokestatic com.oracle.truffle.polyglot.GuestToHostRootNode.guestToHostCall:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
astore 6
start local 6 5: aload 5
aload 2
aload 6
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.toGuestValue:(Lcom/oracle/truffle/api/nodes/Node;Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 6 end local 5 6: StackMap locals:
StackMap stack:
invokestatic com.oracle.truffle.api.interop.UnsupportedMessageException.create:()Lcom/oracle/truffle/api/interop/UnsupportedMessageException;
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
0 7 1 member Ljava/lang/String;
0 7 2 library Lcom/oracle/truffle/api/interop/InteropLibrary;
0 7 3 context Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;
0 7 4 language Lcom/oracle/truffle/polyglot/HostLanguage;
4 6 5 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
5 6 6 result Ljava/lang/Object;
Exceptions:
throws com.oracle.truffle.api.interop.UnsupportedMessageException, com.oracle.truffle.api.interop.UnknownIdentifierException
Signature: (Ljava/lang/String;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;Lcom/oracle/truffle/polyglot/HostLanguage;)Ljava/lang/Object;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage()
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
RuntimeInvisibleParameterAnnotations:
0:
1:
com.oracle.truffle.api.library.CachedLibrary(value = "this")
2:
com.oracle.truffle.api.dsl.CachedContext(value = Lcom/oracle/truffle/polyglot/HostLanguage;)
3:
com.oracle.truffle.api.dsl.CachedLanguage()
MethodParameters:
Name Flags
member
library
context
language
void writeMember(java.lang.String, , com.oracle.truffle.api.interop.InteropLibrary, com.oracle.truffle.api.TruffleLanguage$ContextReference<com.oracle.truffle.polyglot.HostLanguage$HostContext>, com.oracle.truffle.polyglot.HostLanguage);
descriptor: (Ljava/lang/String;Ljava/lang/Object;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)V
flags: (0x0000)
Code:
stack=6, locals=8, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyObject
ifeq 5
1: aload 4
invokevirtual com.oracle.truffle.api.TruffleLanguage$ContextReference.get:()Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.HostLanguage$HostContext
getfield com.oracle.truffle.polyglot.HostLanguage$HostContext.internalContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 6
start local 6 2: aload 6
aload 2
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.asValue:(Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
astore 7
start local 7 3: aload 3
aload 5
invokevirtual com.oracle.truffle.polyglot.HostLanguage.getHostToGuestCache:()Lcom/oracle/truffle/polyglot/HostToGuestCodeCache;
getfield com.oracle.truffle.polyglot.HostToGuestCodeCache.putMember:Lcom/oracle/truffle/api/CallTarget;
iconst_4
anewarray java.lang.Object
dup
iconst_0
aload 6
aastore
dup
iconst_1
aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
aastore
dup
iconst_2
aload 1
aastore
dup
iconst_3
aload 7
aastore
invokestatic com.oracle.truffle.polyglot.GuestToHostRootNode.guestToHostCall:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 7 end local 6 4: goto 6
5: StackMap locals:
StackMap stack:
invokestatic com.oracle.truffle.api.interop.UnsupportedMessageException.create:()Lcom/oracle/truffle/api/interop/UnsupportedMessageException;
athrow
6: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
0 7 1 member Ljava/lang/String;
0 7 2 value Ljava/lang/Object;
0 7 3 library Lcom/oracle/truffle/api/interop/InteropLibrary;
0 7 4 context Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;
0 7 5 language Lcom/oracle/truffle/polyglot/HostLanguage;
2 4 6 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
3 4 7 castValue Lorg/graalvm/polyglot/Value;
Exceptions:
throws com.oracle.truffle.api.interop.UnsupportedMessageException
Signature: (Ljava/lang/String;Ljava/lang/Object;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;Lcom/oracle/truffle/polyglot/HostLanguage;)V
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage()
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
RuntimeInvisibleParameterAnnotations:
0:
1:
2:
com.oracle.truffle.api.library.CachedLibrary(value = "this")
3:
com.oracle.truffle.api.dsl.CachedContext(value = Lcom/oracle/truffle/polyglot/HostLanguage;)
4:
com.oracle.truffle.api.dsl.CachedLanguage()
MethodParameters:
Name Flags
member
value
library
context
language
invokeMember(java.lang.String, [], com.oracle.truffle.api.interop.InteropLibrary, com.oracle.truffle.api.interop.InteropLibrary, com.oracle.truffle.api.TruffleLanguage$ContextReference<com.oracle.truffle.polyglot.HostLanguage$HostContext>, com.oracle.truffle.polyglot.HostLanguage);
descriptor: (Ljava/lang/String;[Ljava/lang/Object;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)Ljava/lang/Object;
flags: (0x0000)
Code:
stack=5, locals=9, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyObject
ifeq 12
1: aload 0
aload 1
aload 3
aload 5
aload 6
invokevirtual com.oracle.truffle.polyglot.PolyglotProxy.isMemberExisting:(Ljava/lang/String;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)Z
ifne 3
2: aload 1
invokestatic com.oracle.truffle.api.interop.UnknownIdentifierException.create:(Ljava/lang/String;)Lcom/oracle/truffle/api/interop/UnknownIdentifierException;
athrow
3: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 3
aload 5
aload 6
invokevirtual com.oracle.truffle.polyglot.PolyglotProxy.readMember:(Ljava/lang/String;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)Ljava/lang/Object;
astore 7
start local 7 4: goto 7
end local 7 StackMap locals:
StackMap stack: java.lang.UnsupportedOperationException
5: pop
6: invokestatic com.oracle.truffle.api.interop.UnsupportedMessageException.create:()Lcom/oracle/truffle/api/interop/UnsupportedMessageException;
athrow
start local 7 7: StackMap locals: java.lang.Object
StackMap stack:
aload 5
invokevirtual com.oracle.truffle.api.TruffleLanguage$ContextReference.get:()Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.HostLanguage$HostContext
getfield com.oracle.truffle.polyglot.HostLanguage$HostContext.internalContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 8
start local 8 8: aload 8
aload 3
aload 7
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.toGuestValue:(Lcom/oracle/truffle/api/nodes/Node;Ljava/lang/Object;)Ljava/lang/Object;
astore 7
9: aload 4
aload 7
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.isExecutable:(Ljava/lang/Object;)Z
ifeq 11
10: aload 4
aload 7
aload 2
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.execute:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
areturn
11: StackMap locals: com.oracle.truffle.polyglot.PolyglotLanguageContext
StackMap stack:
invokestatic com.oracle.truffle.api.interop.UnsupportedMessageException.create:()Lcom/oracle/truffle/api/interop/UnsupportedMessageException;
athrow
end local 8 end local 7 12: StackMap locals:
StackMap stack:
invokestatic com.oracle.truffle.api.interop.UnsupportedMessageException.create:()Lcom/oracle/truffle/api/interop/UnsupportedMessageException;
athrow
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
0 13 1 member Ljava/lang/String;
0 13 2 arguments [Ljava/lang/Object;
0 13 3 library Lcom/oracle/truffle/api/interop/InteropLibrary;
0 13 4 executables Lcom/oracle/truffle/api/interop/InteropLibrary;
0 13 5 context Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;
0 13 6 language Lcom/oracle/truffle/polyglot/HostLanguage;
4 5 7 memberObject Ljava/lang/Object;
7 12 7 memberObject Ljava/lang/Object;
8 12 8 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
Exception table:
from to target type
3 4 5 Class java.lang.UnsupportedOperationException
Exceptions:
throws com.oracle.truffle.api.interop.UnsupportedMessageException, com.oracle.truffle.api.interop.UnsupportedTypeException, com.oracle.truffle.api.interop.ArityException, com.oracle.truffle.api.interop.UnknownIdentifierException
Signature: (Ljava/lang/String;[Ljava/lang/Object;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;Lcom/oracle/truffle/polyglot/HostLanguage;)Ljava/lang/Object;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage()
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
RuntimeInvisibleParameterAnnotations:
0:
1:
2:
com.oracle.truffle.api.library.CachedLibrary(value = "this")
3:
com.oracle.truffle.api.dsl.Cached$Shared(value = "executables")
com.oracle.truffle.api.library.CachedLibrary(limit = "LIMIT")
4:
com.oracle.truffle.api.dsl.CachedContext(value = Lcom/oracle/truffle/polyglot/HostLanguage;)
5:
com.oracle.truffle.api.dsl.CachedLanguage()
MethodParameters:
Name Flags
member
arguments
library
executables
context
language
boolean isMemberInvocable(java.lang.String, com.oracle.truffle.api.interop.InteropLibrary, com.oracle.truffle.api.interop.InteropLibrary, com.oracle.truffle.api.TruffleLanguage$ContextReference<com.oracle.truffle.polyglot.HostLanguage$HostContext>, com.oracle.truffle.polyglot.HostLanguage);
descriptor: (Ljava/lang/String;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)Z
flags: (0x0000)
Code:
stack=6, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyObject
ifeq 6
1: aload 0
aload 1
aload 2
aload 4
aload 5
invokevirtual com.oracle.truffle.polyglot.PolyglotProxy.isMemberExisting:(Ljava/lang/String;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)Z
ifeq 6
2: aload 3
aload 0
aload 1
aload 2
aload 4
aload 5
invokevirtual com.oracle.truffle.polyglot.PolyglotProxy.readMember:(Ljava/lang/String;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)Ljava/lang/Object;
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.isExecutable:(Ljava/lang/Object;)Z
3: ireturn
4: StackMap locals:
StackMap stack: com.oracle.truffle.api.interop.InteropException
pop
5: iconst_0
ireturn
6: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
0 7 1 member Ljava/lang/String;
0 7 2 library Lcom/oracle/truffle/api/interop/InteropLibrary;
0 7 3 executables Lcom/oracle/truffle/api/interop/InteropLibrary;
0 7 4 context Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;
0 7 5 language Lcom/oracle/truffle/polyglot/HostLanguage;
Exception table:
from to target type
2 3 4 Class com.oracle.truffle.api.interop.UnsupportedMessageException
2 3 4 Class com.oracle.truffle.api.interop.UnknownIdentifierException
Signature: (Ljava/lang/String;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;Lcom/oracle/truffle/polyglot/HostLanguage;)Z
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage()
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
RuntimeInvisibleParameterAnnotations:
0:
1:
com.oracle.truffle.api.library.CachedLibrary(value = "this")
2:
com.oracle.truffle.api.dsl.Cached$Shared(value = "executables")
com.oracle.truffle.api.library.CachedLibrary(limit = "LIMIT")
3:
com.oracle.truffle.api.dsl.CachedContext(value = Lcom/oracle/truffle/polyglot/HostLanguage;)
4:
com.oracle.truffle.api.dsl.CachedLanguage()
MethodParameters:
Name Flags
member
library
executables
context
language
void removeMember(java.lang.String, com.oracle.truffle.api.interop.InteropLibrary, com.oracle.truffle.api.TruffleLanguage$ContextReference<com.oracle.truffle.polyglot.HostLanguage$HostContext>, com.oracle.truffle.polyglot.HostLanguage);
descriptor: (Ljava/lang/String;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)V
flags: (0x0000)
Code:
stack=6, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyObject
ifeq 7
1: aload 0
aload 1
aload 2
aload 3
aload 4
invokevirtual com.oracle.truffle.polyglot.PolyglotProxy.isMemberExisting:(Ljava/lang/String;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)Z
ifne 3
2: aload 1
invokestatic com.oracle.truffle.api.interop.UnknownIdentifierException.create:(Ljava/lang/String;)Lcom/oracle/truffle/api/interop/UnknownIdentifierException;
athrow
3: StackMap locals:
StackMap stack:
aload 3
invokevirtual com.oracle.truffle.api.TruffleLanguage$ContextReference.get:()Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.HostLanguage$HostContext
getfield com.oracle.truffle.polyglot.HostLanguage$HostContext.internalContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 5
start local 5 4: aload 2
aload 4
invokevirtual com.oracle.truffle.polyglot.HostLanguage.getHostToGuestCache:()Lcom/oracle/truffle/polyglot/HostToGuestCodeCache;
getfield com.oracle.truffle.polyglot.HostToGuestCodeCache.removeMember:Lcom/oracle/truffle/api/CallTarget;
iconst_3
anewarray java.lang.Object
dup
iconst_0
aload 5
aastore
dup
iconst_1
aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
aastore
dup
iconst_2
aload 1
aastore
invokestatic com.oracle.truffle.polyglot.GuestToHostRootNode.guestToHostCall:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
istore 6
start local 6 5: iload 6
ifne 8
6: aload 1
invokestatic com.oracle.truffle.api.interop.UnknownIdentifierException.create:(Ljava/lang/String;)Lcom/oracle/truffle/api/interop/UnknownIdentifierException;
athrow
end local 6 end local 5 7: StackMap locals:
StackMap stack:
invokestatic com.oracle.truffle.api.interop.UnsupportedMessageException.create:()Lcom/oracle/truffle/api/interop/UnsupportedMessageException;
athrow
8: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
0 9 1 member Ljava/lang/String;
0 9 2 library Lcom/oracle/truffle/api/interop/InteropLibrary;
0 9 3 context Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;
0 9 4 language Lcom/oracle/truffle/polyglot/HostLanguage;
4 7 5 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
5 7 6 result Z
Exceptions:
throws com.oracle.truffle.api.interop.UnsupportedMessageException, com.oracle.truffle.api.interop.UnknownIdentifierException
Signature: (Ljava/lang/String;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;Lcom/oracle/truffle/polyglot/HostLanguage;)V
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage()
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
RuntimeInvisibleParameterAnnotations:
0:
1:
com.oracle.truffle.api.library.CachedLibrary(value = "this")
2:
com.oracle.truffle.api.dsl.CachedContext(value = Lcom/oracle/truffle/polyglot/HostLanguage;)
3:
com.oracle.truffle.api.dsl.CachedLanguage()
MethodParameters:
Name Flags
member
library
context
language
boolean isMemberExisting(java.lang.String, com.oracle.truffle.api.interop.InteropLibrary, com.oracle.truffle.api.TruffleLanguage$ContextReference<com.oracle.truffle.polyglot.HostLanguage$HostContext>, com.oracle.truffle.polyglot.HostLanguage);
descriptor: (Ljava/lang/String;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)Z
flags: (0x0000)
Code:
stack=6, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyObject
ifeq 3
1: aload 3
invokevirtual com.oracle.truffle.api.TruffleLanguage$ContextReference.get:()Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.HostLanguage$HostContext
getfield com.oracle.truffle.polyglot.HostLanguage$HostContext.internalContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 5
start local 5 2: aload 2
aload 4
invokevirtual com.oracle.truffle.polyglot.HostLanguage.getHostToGuestCache:()Lcom/oracle/truffle/polyglot/HostToGuestCodeCache;
getfield com.oracle.truffle.polyglot.HostToGuestCodeCache.hasMember:Lcom/oracle/truffle/api/CallTarget;
iconst_3
anewarray java.lang.Object
dup
iconst_0
aload 5
aastore
dup
iconst_1
aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
aastore
dup
iconst_2
aload 1
aastore
invokestatic com.oracle.truffle.polyglot.GuestToHostRootNode.guestToHostCall:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ireturn
end local 5 3: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
0 4 1 member Ljava/lang/String;
0 4 2 library Lcom/oracle/truffle/api/interop/InteropLibrary;
0 4 3 context Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;
0 4 4 language Lcom/oracle/truffle/polyglot/HostLanguage;
2 3 5 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
Signature: (Ljava/lang/String;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;Lcom/oracle/truffle/polyglot/HostLanguage;)Z
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage$Repeat(value = {com.oracle.truffle.api.library.ExportMessage(name = "isMemberReadable"), com.oracle.truffle.api.library.ExportMessage(name = "isMemberModifiable"), com.oracle.truffle.api.library.ExportMessage(name = "isMemberRemovable")})
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
RuntimeInvisibleParameterAnnotations:
0:
1:
com.oracle.truffle.api.library.CachedLibrary(value = "this")
2:
com.oracle.truffle.api.dsl.CachedContext(value = Lcom/oracle/truffle/polyglot/HostLanguage;)
3:
com.oracle.truffle.api.dsl.CachedLanguage()
MethodParameters:
Name Flags
member
library
context
language
boolean isMemberInsertable(java.lang.String, com.oracle.truffle.api.interop.InteropLibrary, com.oracle.truffle.api.TruffleLanguage$ContextReference<com.oracle.truffle.polyglot.HostLanguage$HostContext>, com.oracle.truffle.polyglot.HostLanguage);
descriptor: (Ljava/lang/String;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)Z
flags: (0x0000)
Code:
stack=5, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyObject
ifeq 4
1: aload 0
aload 1
aload 2
aload 3
aload 4
invokevirtual com.oracle.truffle.polyglot.PolyglotProxy.isMemberExisting:(Ljava/lang/String;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)Z
ifeq 2
iconst_0
goto 3
StackMap locals:
StackMap stack:
2: iconst_1
StackMap locals:
StackMap stack: int
3: ireturn
4: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
0 5 1 member Ljava/lang/String;
0 5 2 library Lcom/oracle/truffle/api/interop/InteropLibrary;
0 5 3 context Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;
0 5 4 language Lcom/oracle/truffle/polyglot/HostLanguage;
Signature: (Ljava/lang/String;Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;Lcom/oracle/truffle/polyglot/HostLanguage;)Z
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage()
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
RuntimeInvisibleParameterAnnotations:
0:
1:
com.oracle.truffle.api.library.CachedLibrary(value = "this")
2:
com.oracle.truffle.api.dsl.CachedContext(value = Lcom/oracle/truffle/polyglot/HostLanguage;)
3:
com.oracle.truffle.api.dsl.CachedLanguage()
MethodParameters:
Name Flags
member
library
context
language
boolean isDate();
descriptor: ()Z
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyDate
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
com.oracle.truffle.api.library.ExportMessage()
boolean isTime();
descriptor: ()Z
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyTime
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
com.oracle.truffle.api.library.ExportMessage()
boolean isTimeZone();
descriptor: ()Z
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyTimeZone
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
com.oracle.truffle.api.library.ExportMessage()
java.time.ZoneId asTimeZone(com.oracle.truffle.api.interop.InteropLibrary, com.oracle.truffle.api.TruffleLanguage$ContextReference<com.oracle.truffle.polyglot.HostLanguage$HostContext>, com.oracle.truffle.polyglot.HostLanguage);
descriptor: (Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)Ljava/time/ZoneId;
flags: (0x0000)
Code:
stack=6, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyTimeZone
ifeq 3
1: aload 2
invokevirtual com.oracle.truffle.api.TruffleLanguage$ContextReference.get:()Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.HostLanguage$HostContext
getfield com.oracle.truffle.polyglot.HostLanguage$HostContext.internalContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 4
start local 4 2: aload 1
aload 3
invokevirtual com.oracle.truffle.polyglot.HostLanguage.getHostToGuestCache:()Lcom/oracle/truffle/polyglot/HostToGuestCodeCache;
getfield com.oracle.truffle.polyglot.HostToGuestCodeCache.asTimezone:Lcom/oracle/truffle/api/CallTarget;
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 4
aastore
dup
iconst_1
aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
aastore
invokestatic com.oracle.truffle.polyglot.GuestToHostRootNode.guestToHostCall:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.time.ZoneId
areturn
end local 4 3: StackMap locals:
StackMap stack:
invokestatic com.oracle.truffle.api.interop.UnsupportedMessageException.create:()Lcom/oracle/truffle/api/interop/UnsupportedMessageException;
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
0 4 1 library Lcom/oracle/truffle/api/interop/InteropLibrary;
0 4 2 context Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;
0 4 3 language Lcom/oracle/truffle/polyglot/HostLanguage;
2 3 4 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
Exceptions:
throws com.oracle.truffle.api.interop.UnsupportedMessageException
Signature: (Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;Lcom/oracle/truffle/polyglot/HostLanguage;)Ljava/time/ZoneId;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage()
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
RuntimeInvisibleParameterAnnotations:
0:
com.oracle.truffle.api.library.CachedLibrary(value = "this")
1:
com.oracle.truffle.api.dsl.CachedContext(value = Lcom/oracle/truffle/polyglot/HostLanguage;)
2:
com.oracle.truffle.api.dsl.CachedLanguage()
MethodParameters:
Name Flags
library
context
language
java.time.LocalDate asDate(com.oracle.truffle.api.interop.InteropLibrary, com.oracle.truffle.api.TruffleLanguage$ContextReference<com.oracle.truffle.polyglot.HostLanguage$HostContext>, com.oracle.truffle.polyglot.HostLanguage);
descriptor: (Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)Ljava/time/LocalDate;
flags: (0x0000)
Code:
stack=6, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyDate
ifeq 3
1: aload 2
invokevirtual com.oracle.truffle.api.TruffleLanguage$ContextReference.get:()Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.HostLanguage$HostContext
getfield com.oracle.truffle.polyglot.HostLanguage$HostContext.internalContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 4
start local 4 2: aload 1
aload 3
invokevirtual com.oracle.truffle.polyglot.HostLanguage.getHostToGuestCache:()Lcom/oracle/truffle/polyglot/HostToGuestCodeCache;
getfield com.oracle.truffle.polyglot.HostToGuestCodeCache.asDate:Lcom/oracle/truffle/api/CallTarget;
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 4
aastore
dup
iconst_1
aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
aastore
invokestatic com.oracle.truffle.polyglot.GuestToHostRootNode.guestToHostCall:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.time.LocalDate
areturn
end local 4 3: StackMap locals:
StackMap stack:
invokestatic com.oracle.truffle.api.interop.UnsupportedMessageException.create:()Lcom/oracle/truffle/api/interop/UnsupportedMessageException;
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
0 4 1 library Lcom/oracle/truffle/api/interop/InteropLibrary;
0 4 2 context Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;
0 4 3 language Lcom/oracle/truffle/polyglot/HostLanguage;
2 3 4 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
Exceptions:
throws com.oracle.truffle.api.interop.UnsupportedMessageException
Signature: (Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;Lcom/oracle/truffle/polyglot/HostLanguage;)Ljava/time/LocalDate;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage()
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
RuntimeInvisibleParameterAnnotations:
0:
com.oracle.truffle.api.library.CachedLibrary(value = "this")
1:
com.oracle.truffle.api.dsl.CachedContext(value = Lcom/oracle/truffle/polyglot/HostLanguage;)
2:
com.oracle.truffle.api.dsl.CachedLanguage()
MethodParameters:
Name Flags
library
context
language
java.time.LocalTime asTime(com.oracle.truffle.api.interop.InteropLibrary, com.oracle.truffle.api.TruffleLanguage$ContextReference<com.oracle.truffle.polyglot.HostLanguage$HostContext>, com.oracle.truffle.polyglot.HostLanguage);
descriptor: (Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)Ljava/time/LocalTime;
flags: (0x0000)
Code:
stack=6, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyTime
ifeq 3
1: aload 2
invokevirtual com.oracle.truffle.api.TruffleLanguage$ContextReference.get:()Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.HostLanguage$HostContext
getfield com.oracle.truffle.polyglot.HostLanguage$HostContext.internalContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 4
start local 4 2: aload 1
aload 3
invokevirtual com.oracle.truffle.polyglot.HostLanguage.getHostToGuestCache:()Lcom/oracle/truffle/polyglot/HostToGuestCodeCache;
getfield com.oracle.truffle.polyglot.HostToGuestCodeCache.asTime:Lcom/oracle/truffle/api/CallTarget;
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 4
aastore
dup
iconst_1
aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
aastore
invokestatic com.oracle.truffle.polyglot.GuestToHostRootNode.guestToHostCall:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.time.LocalTime
areturn
end local 4 3: StackMap locals:
StackMap stack:
invokestatic com.oracle.truffle.api.interop.UnsupportedMessageException.create:()Lcom/oracle/truffle/api/interop/UnsupportedMessageException;
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
0 4 1 library Lcom/oracle/truffle/api/interop/InteropLibrary;
0 4 2 context Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;
0 4 3 language Lcom/oracle/truffle/polyglot/HostLanguage;
2 3 4 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
Exceptions:
throws com.oracle.truffle.api.interop.UnsupportedMessageException
Signature: (Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;Lcom/oracle/truffle/polyglot/HostLanguage;)Ljava/time/LocalTime;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage()
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
RuntimeInvisibleParameterAnnotations:
0:
com.oracle.truffle.api.library.CachedLibrary(value = "this")
1:
com.oracle.truffle.api.dsl.CachedContext(value = Lcom/oracle/truffle/polyglot/HostLanguage;)
2:
com.oracle.truffle.api.dsl.CachedLanguage()
MethodParameters:
Name Flags
library
context
language
java.time.Instant asInstant(com.oracle.truffle.api.interop.InteropLibrary, com.oracle.truffle.api.TruffleLanguage$ContextReference<com.oracle.truffle.polyglot.HostLanguage$HostContext>, com.oracle.truffle.polyglot.HostLanguage);
descriptor: (Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)Ljava/time/Instant;
flags: (0x0000)
Code:
stack=6, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyInstant
ifeq 3
1: aload 2
invokevirtual com.oracle.truffle.api.TruffleLanguage$ContextReference.get:()Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.HostLanguage$HostContext
getfield com.oracle.truffle.polyglot.HostLanguage$HostContext.internalContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 4
start local 4 2: aload 1
aload 3
invokevirtual com.oracle.truffle.polyglot.HostLanguage.getHostToGuestCache:()Lcom/oracle/truffle/polyglot/HostToGuestCodeCache;
getfield com.oracle.truffle.polyglot.HostToGuestCodeCache.asInstant:Lcom/oracle/truffle/api/CallTarget;
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 4
aastore
dup
iconst_1
aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
aastore
invokestatic com.oracle.truffle.polyglot.GuestToHostRootNode.guestToHostCall:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.time.Instant
areturn
end local 4 3: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.oracle.truffle.polyglot.PolyglotProxy.isDate:()Z
ifeq 5
aload 0
invokevirtual com.oracle.truffle.polyglot.PolyglotProxy.isTime:()Z
ifeq 5
aload 0
invokevirtual com.oracle.truffle.polyglot.PolyglotProxy.isTimeZone:()Z
ifeq 5
4: aload 0
aload 1
aload 2
aload 3
invokevirtual com.oracle.truffle.polyglot.PolyglotProxy.asDate:(Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)Ljava/time/LocalDate;
aload 0
aload 1
aload 2
aload 3
invokevirtual com.oracle.truffle.polyglot.PolyglotProxy.asTime:(Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)Ljava/time/LocalTime;
aload 0
aload 1
aload 2
aload 3
invokevirtual com.oracle.truffle.polyglot.PolyglotProxy.asTimeZone:(Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)Ljava/time/ZoneId;
invokestatic java.time.ZonedDateTime.of:(Ljava/time/LocalDate;Ljava/time/LocalTime;Ljava/time/ZoneId;)Ljava/time/ZonedDateTime;
invokevirtual java.time.ZonedDateTime.toInstant:()Ljava/time/Instant;
areturn
5: StackMap locals:
StackMap stack:
invokestatic com.oracle.truffle.api.interop.UnsupportedMessageException.create:()Lcom/oracle/truffle/api/interop/UnsupportedMessageException;
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
0 6 1 library Lcom/oracle/truffle/api/interop/InteropLibrary;
0 6 2 context Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;
0 6 3 language Lcom/oracle/truffle/polyglot/HostLanguage;
2 3 4 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
Exceptions:
throws com.oracle.truffle.api.interop.UnsupportedMessageException
Signature: (Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;Lcom/oracle/truffle/polyglot/HostLanguage;)Ljava/time/Instant;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
com.oracle.truffle.api.library.ExportMessage()
RuntimeInvisibleParameterAnnotations:
0:
com.oracle.truffle.api.library.CachedLibrary(value = "this")
1:
com.oracle.truffle.api.dsl.CachedContext(value = Lcom/oracle/truffle/polyglot/HostLanguage;)
2:
com.oracle.truffle.api.dsl.CachedLanguage()
MethodParameters:
Name Flags
library
context
language
boolean isDuration();
descriptor: ()Z
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyDuration
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
com.oracle.truffle.api.library.ExportMessage()
java.time.Duration asDuration(com.oracle.truffle.api.interop.InteropLibrary, com.oracle.truffle.api.TruffleLanguage$ContextReference<com.oracle.truffle.polyglot.HostLanguage$HostContext>, com.oracle.truffle.polyglot.HostLanguage);
descriptor: (Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;Lcom/oracle/truffle/polyglot/HostLanguage;)Ljava/time/Duration;
flags: (0x0000)
Code:
stack=6, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
instanceof org.graalvm.polyglot.proxy.ProxyDuration
ifeq 3
1: aload 2
invokevirtual com.oracle.truffle.api.TruffleLanguage$ContextReference.get:()Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.HostLanguage$HostContext
getfield com.oracle.truffle.polyglot.HostLanguage$HostContext.internalContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 4
start local 4 2: aload 1
aload 3
invokevirtual com.oracle.truffle.polyglot.HostLanguage.getHostToGuestCache:()Lcom/oracle/truffle/polyglot/HostToGuestCodeCache;
getfield com.oracle.truffle.polyglot.HostToGuestCodeCache.asDuration:Lcom/oracle/truffle/api/CallTarget;
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 4
aastore
dup
iconst_1
aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
aastore
invokestatic com.oracle.truffle.polyglot.GuestToHostRootNode.guestToHostCall:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/CallTarget;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.time.Duration
areturn
end local 4 3: StackMap locals:
StackMap stack:
invokestatic com.oracle.truffle.api.interop.UnsupportedMessageException.create:()Lcom/oracle/truffle/api/interop/UnsupportedMessageException;
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
0 4 1 library Lcom/oracle/truffle/api/interop/InteropLibrary;
0 4 2 context Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;
0 4 3 language Lcom/oracle/truffle/polyglot/HostLanguage;
2 3 4 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
Exceptions:
throws com.oracle.truffle.api.interop.UnsupportedMessageException
Signature: (Lcom/oracle/truffle/api/interop/InteropLibrary;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;Lcom/oracle/truffle/polyglot/HostLanguage;)Ljava/time/Duration;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage()
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
RuntimeInvisibleParameterAnnotations:
0:
com.oracle.truffle.api.library.CachedLibrary(value = "this")
1:
com.oracle.truffle.api.dsl.CachedContext(value = Lcom/oracle/truffle/polyglot/HostLanguage;)
2:
com.oracle.truffle.api.dsl.CachedLanguage()
MethodParameters:
Name Flags
library
context
language
boolean hasLanguage();
descriptor: ()Z
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage()
java.lang.Class<? extends com.oracle.truffle.api.TruffleLanguage<?>> getLanguage();
descriptor: ()Ljava/lang/Class;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: ldc Lcom/oracle/truffle/polyglot/HostLanguage;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
Signature: ()Ljava/lang/Class<+Lcom/oracle/truffle/api/TruffleLanguage<*>;>;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage()
toDisplayString(boolean, com.oracle.truffle.api.TruffleLanguage$ContextReference<com.oracle.truffle.polyglot.HostLanguage$HostContext>);
descriptor: (ZLcom/oracle/truffle/api/TruffleLanguage$ContextReference;)Ljava/lang/Object;
flags: (0x0000)
Code:
stack=2, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
1: areturn
2: StackMap locals:
StackMap stack: java.lang.Throwable
astore 3
start local 3 3: aload 2
invokevirtual com.oracle.truffle.api.TruffleLanguage$ContextReference.get:()Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.HostLanguage$HostContext
getfield com.oracle.truffle.polyglot.HostLanguage$HostContext.internalContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 4
start local 4 4: aload 4
aload 3
invokestatic com.oracle.truffle.polyglot.PolyglotImpl.hostToGuestException:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
0 5 1 config Z
0 5 2 context Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;
3 5 3 t Ljava/lang/Throwable;
4 5 4 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
Exception table:
from to target type
0 1 2 Class java.lang.Throwable
Signature: (ZLcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;)Ljava/lang/Object;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage()
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
RuntimeInvisibleParameterAnnotations:
0:
1:
com.oracle.truffle.api.dsl.CachedContext(value = Lcom/oracle/truffle/polyglot/HostLanguage;)
MethodParameters:
Name Flags
config
context
boolean hasMetaObject();
descriptor: ()Z
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage()
getMetaObject(com.oracle.truffle.api.TruffleLanguage$ContextReference<com.oracle.truffle.polyglot.HostLanguage$HostContext>);
descriptor: (Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;)Ljava/lang/Object;
flags: (0x0000)
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
astore 2
start local 2 1: aload 1
invokevirtual com.oracle.truffle.api.TruffleLanguage$ContextReference.get:()Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.HostLanguage$HostContext
getfield com.oracle.truffle.polyglot.HostLanguage$HostContext.internalContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 3
start local 3 2: aload 2
aload 3
invokestatic com.oracle.truffle.polyglot.HostObject.forClass:(Ljava/lang/Class;Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;)Lcom/oracle/truffle/polyglot/HostObject;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/polyglot/PolyglotProxy;
0 3 1 context Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;
1 3 2 javaObject Ljava/lang/Class<*>;
2 3 3 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
Signature: (Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;>;)Ljava/lang/Object;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage()
RuntimeInvisibleParameterAnnotations:
0:
com.oracle.truffle.api.dsl.CachedContext(value = Lcom/oracle/truffle/polyglot/HostLanguage;)
MethodParameters:
Name Flags
context
static int identityHashCode(com.oracle.truffle.polyglot.PolyglotProxy);
descriptor: (Lcom/oracle/truffle/polyglot/PolyglotProxy;)I
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
invokestatic java.lang.System.identityHashCode:(Ljava/lang/Object;)I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 receiver Lcom/oracle/truffle/polyglot/PolyglotProxy;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportMessage()
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
MethodParameters:
Name Flags
receiver
public static boolean isProxyGuestObject(com.oracle.truffle.api.interop.TruffleObject);
descriptor: (Lcom/oracle/truffle/api/interop/TruffleObject;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
instanceof com.oracle.truffle.polyglot.PolyglotProxy
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 value Lcom/oracle/truffle/api/interop/TruffleObject;
MethodParameters:
Name Flags
value
public static boolean isProxyGuestObject(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
instanceof com.oracle.truffle.polyglot.PolyglotProxy
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 value Ljava/lang/Object;
MethodParameters:
Name Flags
value
public static org.graalvm.polyglot.proxy.Proxy toProxyHostObject(com.oracle.truffle.api.interop.TruffleObject);
descriptor: (Lcom/oracle/truffle/api/interop/TruffleObject;)Lorg/graalvm/polyglot/proxy/Proxy;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
checkcast com.oracle.truffle.polyglot.PolyglotProxy
getfield com.oracle.truffle.polyglot.PolyglotProxy.proxy:Lorg/graalvm/polyglot/proxy/Proxy;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 value Lcom/oracle/truffle/api/interop/TruffleObject;
MethodParameters:
Name Flags
value
public static com.oracle.truffle.api.interop.TruffleObject toProxyGuestObject(org.graalvm.polyglot.proxy.Proxy);
descriptor: (Lorg/graalvm/polyglot/proxy/Proxy;)Lcom/oracle/truffle/api/interop/TruffleObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new com.oracle.truffle.polyglot.PolyglotProxy
dup
aload 0
invokespecial com.oracle.truffle.polyglot.PolyglotProxy.<init>:(Lorg/graalvm/polyglot/proxy/Proxy;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 receiver Lorg/graalvm/polyglot/proxy/Proxy;
MethodParameters:
Name Flags
receiver
}
SourceFile: "PolyglotProxy.java"
NestMembers:
com.oracle.truffle.polyglot.PolyglotProxy$1 com.oracle.truffle.polyglot.PolyglotProxy$IsIdenticalOrUndefined
InnerClasses:
public abstract TruffleBoundary = com.oracle.truffle.api.CompilerDirectives$TruffleBoundary of com.oracle.truffle.api.CompilerDirectives
public abstract ContextReference = com.oracle.truffle.api.TruffleLanguage$ContextReference of com.oracle.truffle.api.TruffleLanguage
public abstract Shared = com.oracle.truffle.api.dsl.Cached$Shared of com.oracle.truffle.api.dsl.Cached
public abstract Repeat = com.oracle.truffle.api.library.ExportMessage$Repeat of com.oracle.truffle.api.library.ExportMessage
final HostContext = com.oracle.truffle.polyglot.HostLanguage$HostContext of com.oracle.truffle.polyglot.HostLanguage
com.oracle.truffle.polyglot.PolyglotProxy$1
final IsIdenticalOrUndefined = com.oracle.truffle.polyglot.PolyglotProxy$IsIdenticalOrUndefined of com.oracle.truffle.polyglot.PolyglotProxy
RuntimeVisibleAnnotations:
com.oracle.truffle.api.library.ExportLibrary(value = Lcom/oracle/truffle/api/interop/InteropLibrary;)