final class com.oracle.truffle.polyglot.EngineAccessor$EngineImpl extends com.oracle.truffle.api.impl.Accessor$EngineSupport
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: com.oracle.truffle.polyglot.EngineAccessor$EngineImpl
super_class: com.oracle.truffle.api.impl.Accessor$EngineSupport
{
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lcom/oracle/truffle/polyglot/EngineAccessor;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial com.oracle.truffle.api.impl.Accessor$EngineSupport.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
public boolean isDisposed(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.getEngine:(Ljava/lang/Object;)Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
getfield com.oracle.truffle.polyglot.PolyglotEngineImpl.closed:Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 polyglotLanguageContext Ljava/lang/Object;
MethodParameters:
Name Flags
polyglotLanguageContext
public com.oracle.truffle.api.TruffleLanguage$ContextReference<java.lang.Object> getCurrentContextReference();
descriptor: (Ljava/lang/Object;)Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguage
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguage.getContextReference:()Lcom/oracle/truffle/polyglot/PolyglotReferences$AbstractContextReference;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 polyglotLanguage Ljava/lang/Object;
Signature: (Ljava/lang/Object;)Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<Ljava/lang/Object;>;
MethodParameters:
Name Flags
polyglotLanguage
public boolean hasCurrentContext();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: invokestatic com.oracle.truffle.polyglot.PolyglotContextImpl.currentNotEntered:()Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
ifnull 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
public boolean isPolyglotEvalAllowed(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
astore 2
start local 2 1: aload 2
aconst_null
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.isPolyglotEvalAllowed:(Ljava/lang/String;)Z
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 2 1 polyglotLanguageContext Ljava/lang/Object;
1 2 2 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
MethodParameters:
Name Flags
polyglotLanguageContext
public boolean isPolyglotBindingsAccessAllowed(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=3, args_size=2
start local 0 start local 1 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
astore 2
start local 2 1: aload 2
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.isPolyglotBindingsAccessAllowed:()Z
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 2 1 polyglotLanguageContext Ljava/lang/Object;
1 2 2 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
MethodParameters:
Name Flags
polyglotLanguageContext
public java.time.ZoneId getTimeZone(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/time/ZoneId;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.context:Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.config:Lcom/oracle/truffle/polyglot/PolyglotContextConfig;
invokevirtual com.oracle.truffle.polyglot.PolyglotContextConfig.getTimeZone:()Ljava/time/ZoneId;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 polyglotLanguageContext Ljava/lang/Object;
MethodParameters:
Name Flags
polyglotLanguageContext
public java.lang.Object getPolyglotEngine(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageInstance
getfield com.oracle.truffle.polyglot.PolyglotLanguageInstance.language:Lcom/oracle/truffle/polyglot/PolyglotLanguage;
getfield com.oracle.truffle.polyglot.PolyglotLanguage.engine:Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 polyglotLanguageInstance Ljava/lang/Object;
MethodParameters:
Name Flags
polyglotLanguageInstance
public <C> getDefaultLanguageView(com.oracle.truffle.api.TruffleLanguage<C>, C, );
descriptor: (Lcom/oracle/truffle/api/TruffleLanguage;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new com.oracle.truffle.polyglot.DefaultLanguageView
dup
aload 1
aload 2
aload 3
invokespecial com.oracle.truffle.polyglot.DefaultLanguageView.<init>:(Lcom/oracle/truffle/api/TruffleLanguage;Ljava/lang/Object;Ljava/lang/Object;)V
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 truffleLanguage Lcom/oracle/truffle/api/TruffleLanguage<TC;>;
0 1 2 context TC;
0 1 3 value Ljava/lang/Object;
Signature: <C:Ljava/lang/Object;>(Lcom/oracle/truffle/api/TruffleLanguage<TC;>;TC;Ljava/lang/Object;)Ljava/lang/Object;
MethodParameters:
Name Flags
truffleLanguage
context
value
public java.lang.Object getLanguageView(com.oracle.truffle.api.nodes.LanguageInfo, java.lang.Object);
descriptor: (Lcom/oracle/truffle/api/nodes/LanguageInfo;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: getstatic com.oracle.truffle.polyglot.EngineAccessor.NODES:Lcom/oracle/truffle/api/impl/Accessor$NodeSupport;
aload 1
invokevirtual com.oracle.truffle.api.impl.Accessor$NodeSupport.getPolyglotLanguage:(Lcom/oracle/truffle/api/nodes/LanguageInfo;)Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.PolyglotLanguage
astore 3
start local 3 1: invokestatic com.oracle.truffle.polyglot.PolyglotContextImpl.requireContext:()Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
aload 3
aconst_null
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.getContextInitialized:(Lcom/oracle/truffle/polyglot/PolyglotLanguage;Lcom/oracle/truffle/polyglot/PolyglotLanguage;)Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 4
start local 4 2: aload 4
aload 2
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.getLanguageView:(Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 4 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/EngineAccessor$EngineImpl;
0 3 1 viewLanguage Lcom/oracle/truffle/api/nodes/LanguageInfo;
0 3 2 value Ljava/lang/Object;
1 3 3 language Lcom/oracle/truffle/polyglot/PolyglotLanguage;
2 3 4 context Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
MethodParameters:
Name Flags
viewLanguage
value
public java.lang.Object getScopedView(com.oracle.truffle.api.nodes.LanguageInfo, com.oracle.truffle.api.nodes.Node, com.oracle.truffle.api.frame.Frame, java.lang.Object);
descriptor: (Lcom/oracle/truffle/api/nodes/LanguageInfo;Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/frame/Frame;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: getstatic com.oracle.truffle.polyglot.EngineAccessor.NODES:Lcom/oracle/truffle/api/impl/Accessor$NodeSupport;
aload 1
invokevirtual com.oracle.truffle.api.impl.Accessor$NodeSupport.getPolyglotLanguage:(Lcom/oracle/truffle/api/nodes/LanguageInfo;)Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.PolyglotLanguage
astore 5
start local 5 1: invokestatic com.oracle.truffle.polyglot.PolyglotContextImpl.requireContext:()Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
aload 5
aconst_null
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.getContextInitialized:(Lcom/oracle/truffle/polyglot/PolyglotLanguage;Lcom/oracle/truffle/polyglot/PolyglotLanguage;)Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 6
start local 6 2: aload 6
aload 2
aload 3
aload 4
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.getScopedView:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/frame/Frame;Ljava/lang/Object;)Ljava/lang/Object;
areturn
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 3 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 3 1 viewLanguage Lcom/oracle/truffle/api/nodes/LanguageInfo;
0 3 2 location Lcom/oracle/truffle/api/nodes/Node;
0 3 3 frame Lcom/oracle/truffle/api/frame/Frame;
0 3 4 value Ljava/lang/Object;
1 3 5 language Lcom/oracle/truffle/polyglot/PolyglotLanguage;
2 3 6 context Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
MethodParameters:
Name Flags
viewLanguage
location
frame
value
public com.oracle.truffle.api.nodes.LanguageInfo getLanguageInfo(, java.lang.Class<? extends com.oracle.truffle.api.TruffleLanguage<?>>);
descriptor: (Ljava/lang/Object;Ljava/lang/Class;)Lcom/oracle/truffle/api/nodes/LanguageInfo;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotInstrument
getfield com.oracle.truffle.polyglot.PolyglotInstrument.engine:Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
aload 2
iconst_1
invokevirtual com.oracle.truffle.polyglot.PolyglotEngineImpl.getLanguage:(Ljava/lang/Class;Z)Lcom/oracle/truffle/polyglot/PolyglotLanguage;
getfield com.oracle.truffle.polyglot.PolyglotLanguage.info:Lcom/oracle/truffle/api/nodes/LanguageInfo;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 polyglotInstrument Ljava/lang/Object;
0 1 2 languageClass Ljava/lang/Class<+Lcom/oracle/truffle/api/TruffleLanguage<*>;>;
Signature: (Ljava/lang/Object;Ljava/lang/Class<+Lcom/oracle/truffle/api/TruffleLanguage<*>;>;)Lcom/oracle/truffle/api/nodes/LanguageInfo;
MethodParameters:
Name Flags
polyglotInstrument
languageClass
public com.oracle.truffle.api.CallTarget parseForLanguage(java.lang.Object, com.oracle.truffle.api.source.Source, java.lang.String[], boolean);
descriptor: (Ljava/lang/Object;Lcom/oracle/truffle/api/source/Source;[Ljava/lang/String;Z)Lcom/oracle/truffle/api/CallTarget;
flags: (0x0001) ACC_PUBLIC
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 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
astore 5
start local 5 1: invokestatic com.oracle.truffle.polyglot.PolyglotContextImpl.currentNotEntered:()Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
aload 5
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.context:Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
if_acmpeq 4
2: invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreterAndInvalidate:()V
3: ldc "The context is not entered."
invokestatic com.oracle.truffle.polyglot.PolyglotEngineException.illegalState:(Ljava/lang/String;)Lcom/oracle/truffle/polyglot/PolyglotEngineException;
athrow
4: StackMap locals: com.oracle.truffle.polyglot.PolyglotLanguageContext
StackMap stack:
aload 5
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.context:Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.engine:Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
aload 5
aload 2
invokevirtual com.oracle.truffle.api.source.Source.getLanguage:()Ljava/lang/String;
aload 2
invokevirtual com.oracle.truffle.api.source.Source.getMimeType:()Ljava/lang/String;
iconst_1
iload 4
invokevirtual com.oracle.truffle.polyglot.PolyglotEngineImpl.findLanguage:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/String;Ljava/lang/String;ZZ)Lcom/oracle/truffle/polyglot/PolyglotLanguage;
astore 6
start local 6 5: aload 5
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.context:Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
aload 6
aload 5
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.language:Lcom/oracle/truffle/polyglot/PolyglotLanguage;
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.getContextInitialized:(Lcom/oracle/truffle/polyglot/PolyglotLanguage;Lcom/oracle/truffle/polyglot/PolyglotLanguage;)Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 7
start local 7 6: aload 7
aload 5
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.getLanguageInstance:()Lcom/oracle/truffle/polyglot/PolyglotLanguageInstance;
getfield com.oracle.truffle.polyglot.PolyglotLanguageInstance.language:Lcom/oracle/truffle/polyglot/PolyglotLanguage;
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.checkAccess:(Lcom/oracle/truffle/polyglot/PolyglotLanguage;)V
7: aload 7
aload 5
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.language:Lcom/oracle/truffle/polyglot/PolyglotLanguage;
aload 2
aload 3
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.parseCached:(Lcom/oracle/truffle/polyglot/PolyglotLanguage;Lcom/oracle/truffle/api/source/Source;[Ljava/lang/String;)Lcom/oracle/truffle/api/CallTarget;
areturn
end local 7 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 8 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 8 1 sourceLanguageContext Ljava/lang/Object;
0 8 2 source Lcom/oracle/truffle/api/source/Source;
0 8 3 argumentNames [Ljava/lang/String;
0 8 4 allowInternal Z
1 8 5 sourceContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
5 8 6 targetLanguage Lcom/oracle/truffle/polyglot/PolyglotLanguage;
6 8 7 targetContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
MethodParameters:
Name Flags
sourceLanguageContext
source
argumentNames
allowInternal
public com.oracle.truffle.api.TruffleLanguage$Env getEnvForInstrument(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)Lcom/oracle/truffle/api/TruffleLanguage$Env;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=3
start local 0 start local 1 start local 2 0: invokestatic com.oracle.truffle.polyglot.PolyglotContextImpl.requireContext:()Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
astore 3
start local 3 1: aload 3
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.engine:Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
aconst_null
aload 1
aload 2
iconst_1
iconst_1
invokevirtual com.oracle.truffle.polyglot.PolyglotEngineImpl.findLanguage:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/String;Ljava/lang/String;ZZ)Lcom/oracle/truffle/polyglot/PolyglotLanguage;
astore 4
start local 4 2: aload 3
aload 4
aconst_null
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.getContextInitialized:(Lcom/oracle/truffle/polyglot/PolyglotLanguage;Lcom/oracle/truffle/polyglot/PolyglotLanguage;)Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.env:Lcom/oracle/truffle/api/TruffleLanguage$Env;
areturn
end local 4 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/EngineAccessor$EngineImpl;
0 3 1 languageId Ljava/lang/String;
0 3 2 mimeType Ljava/lang/String;
1 3 3 context Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
2 3 4 foundLanguage Lcom/oracle/truffle/polyglot/PolyglotLanguage;
MethodParameters:
Name Flags
languageId
mimeType
public org.graalvm.polyglot.SourceSection createSourceSection(java.lang.Object, org.graalvm.polyglot.Source, com.oracle.truffle.api.source.SourceSection);
descriptor: (Ljava/lang/Object;Lorg/graalvm/polyglot/Source;Lcom/oracle/truffle/api/source/SourceSection;)Lorg/graalvm/polyglot/SourceSection;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotImpl$VMObject
invokeinterface com.oracle.truffle.polyglot.PolyglotImpl$VMObject.getImpl:()Lcom/oracle/truffle/polyglot/PolyglotImpl;
astore 4
start local 4 1: aload 4
aload 3
invokevirtual com.oracle.truffle.polyglot.PolyglotImpl.getPolyglotSourceSection:(Lcom/oracle/truffle/api/source/SourceSection;)Lorg/graalvm/polyglot/SourceSection;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 2 1 polyglotObject Ljava/lang/Object;
0 2 2 source Lorg/graalvm/polyglot/Source;
0 2 3 sectionImpl Lcom/oracle/truffle/api/source/SourceSection;
1 2 4 impl Lcom/oracle/truffle/polyglot/PolyglotImpl;
MethodParameters:
Name Flags
polyglotObject
source
sectionImpl
public com.oracle.truffle.api.TruffleFile getTruffleFile(java.lang.String);
descriptor: (Ljava/lang/String;)Lcom/oracle/truffle/api/TruffleFile;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.truffle.polyglot.PolyglotContextImpl.requireContext:()Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
astore 2
start local 2 1: getstatic com.oracle.truffle.polyglot.EngineAccessor.LANGUAGE:Lcom/oracle/truffle/api/impl/Accessor$LanguageSupport;
aload 2
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.getHostContext:()Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.getPublicFileSystemContext:()Ljava/lang/Object;
aload 1
invokevirtual com.oracle.truffle.api.impl.Accessor$LanguageSupport.getTruffleFile:(Ljava/lang/Object;Ljava/lang/String;)Lcom/oracle/truffle/api/TruffleFile;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 2 1 path Ljava/lang/String;
1 2 2 context Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
MethodParameters:
Name Flags
path
public com.oracle.truffle.api.TruffleFile getTruffleFile(java.net.URI);
descriptor: (Ljava/net/URI;)Lcom/oracle/truffle/api/TruffleFile;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.truffle.polyglot.PolyglotContextImpl.requireContext:()Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
astore 2
start local 2 1: getstatic com.oracle.truffle.polyglot.EngineAccessor.LANGUAGE:Lcom/oracle/truffle/api/impl/Accessor$LanguageSupport;
aload 2
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.getHostContext:()Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.getPublicFileSystemContext:()Ljava/lang/Object;
aload 1
invokevirtual com.oracle.truffle.api.impl.Accessor$LanguageSupport.getTruffleFile:(Ljava/lang/Object;Ljava/net/URI;)Lcom/oracle/truffle/api/TruffleFile;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 2 1 uri Ljava/net/URI;
1 2 2 context Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
MethodParameters:
Name Flags
uri
public <T> java.lang.Iterable<T> loadServices(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Ljava/lang/Iterable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=8, args_size=2
start local 0 start local 1 0: new java.util.LinkedHashMap
dup
invokespecial java.util.LinkedHashMap.<init>:()V
astore 2
start local 2 1: aload 1
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
ldc Lcom/oracle/truffle/api/Truffle;
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
if_acmpne 6
2: aload 1
aload 1
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
invokestatic java.util.ServiceLoader.load:(Ljava/lang/Class;Ljava/lang/ClassLoader;)Ljava/util/ServiceLoader;
invokevirtual java.util.ServiceLoader.iterator:()Ljava/util/Iterator;
astore 4
goto 5
StackMap locals: com.oracle.truffle.polyglot.EngineAccessor$EngineImpl java.lang.Class java.util.Map top java.util.Iterator
StackMap stack:
3: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Object
astore 3
start local 3 4: aload 2
aload 3
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aload 3
invokeinterface java.util.Map.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 3 5: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
6: StackMap locals: com.oracle.truffle.polyglot.EngineAccessor$EngineImpl java.lang.Class java.util.Map
StackMap stack:
invokestatic com.oracle.truffle.polyglot.EngineAccessor.locatorOrDefaultLoaders:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 15
StackMap locals: com.oracle.truffle.polyglot.EngineAccessor$EngineImpl java.lang.Class java.util.Map top java.util.Iterator
StackMap stack:
7: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.EngineAccessor$AbstractClassLoaderSupplier
astore 3
start local 3 8: aload 3
invokevirtual com.oracle.truffle.polyglot.EngineAccessor$AbstractClassLoaderSupplier.get:()Ljava/lang/Object;
checkcast java.lang.ClassLoader
astore 5
start local 5 9: aload 5
aload 1
invokestatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.seesTheSameClass:(Ljava/lang/ClassLoader;Ljava/lang/Class;)Z
ifeq 15
10: getstatic com.oracle.truffle.polyglot.EngineAccessor.JDKSERVICES:Lcom/oracle/truffle/api/impl/Accessor$JDKSupport;
aload 5
aconst_null
invokevirtual com.oracle.truffle.api.impl.Accessor$JDKSupport.exportTo:(Ljava/lang/ClassLoader;Ljava/lang/String;)V
11: aload 1
aload 5
invokestatic java.util.ServiceLoader.load:(Ljava/lang/Class;Ljava/lang/ClassLoader;)Ljava/util/ServiceLoader;
invokevirtual java.util.ServiceLoader.iterator:()Ljava/util/Iterator;
astore 7
goto 14
StackMap locals: com.oracle.truffle.polyglot.EngineAccessor$EngineImpl java.lang.Class java.util.Map com.oracle.truffle.polyglot.EngineAccessor$AbstractClassLoaderSupplier java.util.Iterator java.lang.ClassLoader top java.util.Iterator
StackMap stack:
12: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Object
astore 6
start local 6 13: aload 2
aload 6
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aload 6
invokeinterface java.util.Map.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 6 14: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 12
end local 5 end local 3 15: StackMap locals: com.oracle.truffle.polyglot.EngineAccessor$EngineImpl java.lang.Class java.util.Map top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
16: aload 2
invokeinterface java.util.Map.values:()Ljava/util/Collection;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 17 1 type Ljava/lang/Class<TT;>;
1 17 2 found Ljava/util/Map<Ljava/lang/Class<*>;TT;>;
4 5 3 service TT;
8 15 3 loaderSupplier Lcom/oracle/truffle/polyglot/EngineAccessor$AbstractClassLoaderSupplier;
9 15 5 loader Ljava/lang/ClassLoader;
13 14 6 service TT;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)Ljava/lang/Iterable<TT;>;
MethodParameters:
Name Flags
type
private static boolean seesTheSameClass(java.lang.ClassLoader, java.lang.Class<?>);
descriptor: (Ljava/lang/ClassLoader;Ljava/lang/Class;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
ifnull 1
aload 0
aload 1
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.ClassLoader.loadClass:(Ljava/lang/String;)Ljava/lang/Class;
aload 1
if_acmpne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
2: ireturn
3: StackMap locals:
StackMap stack: java.lang.ClassNotFoundException
pop
4: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 loader Ljava/lang/ClassLoader;
0 5 1 type Ljava/lang/Class<*>;
Exception table:
from to target type
0 2 3 Class java.lang.ClassNotFoundException
Signature: (Ljava/lang/ClassLoader;Ljava/lang/Class<*>;)Z
MethodParameters:
Name Flags
loader
type
public <T> T lookup(com.oracle.truffle.api.InstrumentInfo, java.lang.Class<T>);
descriptor: (Lcom/oracle/truffle/api/InstrumentInfo;Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: getstatic com.oracle.truffle.polyglot.EngineAccessor.LANGUAGE:Lcom/oracle/truffle/api/impl/Accessor$LanguageSupport;
aload 1
invokevirtual com.oracle.truffle.api.impl.Accessor$LanguageSupport.getPolyglotInstrument:(Lcom/oracle/truffle/api/InstrumentInfo;)Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.PolyglotInstrument
astore 3
start local 3 1: aload 3
aload 2
invokevirtual com.oracle.truffle.polyglot.PolyglotInstrument.lookupInternal:(Ljava/lang/Class;)Ljava/lang/Object;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 2 1 info Lcom/oracle/truffle/api/InstrumentInfo;
0 2 2 serviceClass Ljava/lang/Class<TT;>;
1 2 3 instrument Lcom/oracle/truffle/polyglot/PolyglotInstrument;
Signature: <T:Ljava/lang/Object;>(Lcom/oracle/truffle/api/InstrumentInfo;Ljava/lang/Class<TT;>;)TT;
MethodParameters:
Name Flags
info
serviceClass
public <S> S lookup(com.oracle.truffle.api.nodes.LanguageInfo, java.lang.Class<S>);
descriptor: (Lcom/oracle/truffle/api/nodes/LanguageInfo;Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=3
start local 0 start local 1 start local 2 0: getstatic com.oracle.truffle.polyglot.EngineAccessor.NODES:Lcom/oracle/truffle/api/impl/Accessor$NodeSupport;
aload 1
invokevirtual com.oracle.truffle.api.impl.Accessor$NodeSupport.getPolyglotLanguage:(Lcom/oracle/truffle/api/nodes/LanguageInfo;)Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.PolyglotLanguage
astore 3
start local 3 1: aload 3
getfield com.oracle.truffle.polyglot.PolyglotLanguage.cache:Lcom/oracle/truffle/polyglot/LanguageCache;
aload 2
invokevirtual com.oracle.truffle.polyglot.LanguageCache.supportsService:(Ljava/lang/Class;)Z
ifne 3
2: aconst_null
areturn
3: StackMap locals: com.oracle.truffle.polyglot.PolyglotLanguage
StackMap stack:
invokestatic com.oracle.truffle.polyglot.PolyglotContextImpl.requireContext:()Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
aload 3
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.getContext:(Lcom/oracle/truffle/polyglot/PolyglotLanguage;)Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 4
start local 4 4: aload 4
aload 3
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.ensureCreated:(Lcom/oracle/truffle/polyglot/PolyglotLanguage;)V
5: aload 4
aload 2
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.lookupService:(Ljava/lang/Class;)Ljava/lang/Object;
areturn
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/EngineAccessor$EngineImpl;
0 6 1 info Lcom/oracle/truffle/api/nodes/LanguageInfo;
0 6 2 serviceClass Ljava/lang/Class<TS;>;
1 6 3 language Lcom/oracle/truffle/polyglot/PolyglotLanguage;
4 6 4 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
Signature: <S:Ljava/lang/Object;>(Lcom/oracle/truffle/api/nodes/LanguageInfo;Ljava/lang/Class<TS;>;)TS;
MethodParameters:
Name Flags
info
serviceClass
public <C, T extends com.oracle.truffle.api.TruffleLanguage<C>> C getCurrentContext(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 1
invokestatic com.oracle.truffle.api.CompilerAsserts.partialEvaluationConstant:(Ljava/lang/Object;)V
1: invokestatic com.oracle.truffle.polyglot.PolyglotContextImpl.requireContext:()Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
aload 1
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.getLanguageContext:(Ljava/lang/Class;)Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 2
start local 2 2: aload 2
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.env:Lcom/oracle/truffle/api/TruffleLanguage$Env;
astore 3
start local 3 3: aload 3
ifnonnull 6
4: invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreterAndInvalidate:()V
5: ldc "Current context is not yet initialized or already disposed."
invokestatic com.oracle.truffle.polyglot.PolyglotEngineException.illegalState:(Ljava/lang/String;)Lcom/oracle/truffle/polyglot/PolyglotEngineException;
athrow
6: StackMap locals: com.oracle.truffle.polyglot.PolyglotLanguageContext com.oracle.truffle.api.TruffleLanguage$Env
StackMap stack:
getstatic com.oracle.truffle.polyglot.EngineAccessor.LANGUAGE:Lcom/oracle/truffle/api/impl/Accessor$LanguageSupport;
aload 3
invokevirtual com.oracle.truffle.api.impl.Accessor$LanguageSupport.getContext:(Lcom/oracle/truffle/api/TruffleLanguage$Env;)Ljava/lang/Object;
areturn
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/EngineAccessor$EngineImpl;
0 7 1 languageClass Ljava/lang/Class<TT;>;
2 7 2 context Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
3 7 3 env Lcom/oracle/truffle/api/TruffleLanguage$Env;
Signature: <C:Ljava/lang/Object;T:Lcom/oracle/truffle/api/TruffleLanguage<TC;>;>(Ljava/lang/Class<TT;>;)TC;
MethodParameters:
Name Flags
languageClass
public com.oracle.truffle.api.TruffleContext getTruffleContext(java.lang.Object);
descriptor: (Ljava/lang/Object;)Lcom/oracle/truffle/api/TruffleContext;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=3, args_size=2
start local 0 start local 1 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
astore 2
start local 2 1: aload 2
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.context:Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.currentTruffleContext:Lcom/oracle/truffle/api/TruffleContext;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 2 1 polyglotLanguageContext Ljava/lang/Object;
1 2 2 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
MethodParameters:
Name Flags
polyglotLanguageContext
public com.oracle.truffle.api.TruffleContext getCurrentCreatorTruffleContext();
descriptor: ()Lcom/oracle/truffle/api/TruffleContext;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=1
start local 0 0: invokestatic com.oracle.truffle.polyglot.PolyglotContextImpl.currentNotEntered:()Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
astore 1
start local 1 1: aload 1
ifnull 2
aload 1
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.creatorTruffleContext:Lcom/oracle/truffle/api/TruffleContext;
goto 3
StackMap locals: com.oracle.truffle.polyglot.PolyglotContextImpl
StackMap stack:
2: aconst_null
StackMap locals:
StackMap stack: com.oracle.truffle.api.TruffleContext
3: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
1 4 1 context Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
public <T extends com.oracle.truffle.api.TruffleLanguage<?>> T getCurrentLanguage(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Lcom/oracle/truffle/api/TruffleLanguage;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 1
invokestatic com.oracle.truffle.api.CompilerAsserts.partialEvaluationConstant:(Ljava/lang/Object;)V
1: invokestatic com.oracle.truffle.polyglot.PolyglotContextImpl.requireContext:()Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
astore 2
start local 2 2: aload 2
aload 1
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.getLanguageContext:(Ljava/lang/Class;)Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.env:Lcom/oracle/truffle/api/TruffleLanguage$Env;
astore 3
start local 3 3: aload 3
ifnonnull 6
4: invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreterAndInvalidate:()V
5: ldc "Current context is not yet initialized or already disposed."
invokestatic com.oracle.truffle.polyglot.PolyglotEngineException.illegalState:(Ljava/lang/String;)Lcom/oracle/truffle/polyglot/PolyglotEngineException;
athrow
6: StackMap locals: com.oracle.truffle.polyglot.PolyglotContextImpl com.oracle.truffle.api.TruffleLanguage$Env
StackMap stack:
getstatic com.oracle.truffle.polyglot.EngineAccessor.LANGUAGE:Lcom/oracle/truffle/api/impl/Accessor$LanguageSupport;
aload 3
invokevirtual com.oracle.truffle.api.impl.Accessor$LanguageSupport.getLanguage:(Lcom/oracle/truffle/api/TruffleLanguage$Env;)Lcom/oracle/truffle/api/TruffleLanguage;
areturn
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/EngineAccessor$EngineImpl;
0 7 1 languageClass Ljava/lang/Class<TT;>;
2 7 2 context Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
3 7 3 env Lcom/oracle/truffle/api/TruffleLanguage$Env;
Signature: <T:Lcom/oracle/truffle/api/TruffleLanguage<*>;>(Ljava/lang/Class<TT;>;)TT;
MethodParameters:
Name Flags
languageClass
public java.util.Map<java.lang.String, com.oracle.truffle.api.nodes.LanguageInfo> getInternalLanguages();
descriptor: (Ljava/lang/Object;)Ljava/util/Map;
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.PolyglotLanguageContext
ifeq 2
1: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
iconst_1
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.getAccessibleLanguages:(Z)Ljava/util/Map;
areturn
2: StackMap locals:
StackMap stack:
aload 1
invokestatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.getEngine:(Ljava/lang/Object;)Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
getfield com.oracle.truffle.polyglot.PolyglotEngineImpl.idToInternalLanguageInfo:Ljava/util/Map;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 3 1 polyglotObject Ljava/lang/Object;
Signature: (Ljava/lang/Object;)Ljava/util/Map<Ljava/lang/String;Lcom/oracle/truffle/api/nodes/LanguageInfo;>;
MethodParameters:
Name Flags
polyglotObject
public java.util.Map<java.lang.String, com.oracle.truffle.api.nodes.LanguageInfo> getPublicLanguages();
descriptor: (Ljava/lang/Object;)Ljava/util/Map;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
iconst_0
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.getAccessibleLanguages:(Z)Ljava/util/Map;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 polyglotObject Ljava/lang/Object;
Signature: (Ljava/lang/Object;)Ljava/util/Map<Ljava/lang/String;Lcom/oracle/truffle/api/nodes/LanguageInfo;>;
MethodParameters:
Name Flags
polyglotObject
public java.util.Map<java.lang.String, com.oracle.truffle.api.InstrumentInfo> getInstruments();
descriptor: (Ljava/lang/Object;)Ljava/util/Map;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.getEngine:(Ljava/lang/Object;)Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
getfield com.oracle.truffle.polyglot.PolyglotEngineImpl.idToInternalInstrumentInfo:Ljava/util/Map;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 polyglotObject Ljava/lang/Object;
Signature: (Ljava/lang/Object;)Ljava/util/Map<Ljava/lang/String;Lcom/oracle/truffle/api/InstrumentInfo;>;
MethodParameters:
Name Flags
polyglotObject
private static com.oracle.truffle.polyglot.PolyglotEngineImpl getEngine(java.lang.Object);
descriptor: (Ljava/lang/Object;)Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
instanceof com.oracle.truffle.polyglot.PolyglotImpl$VMObject
ifne 2
1: invokestatic com.oracle.truffle.api.CompilerDirectives.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
2: StackMap locals:
StackMap stack:
aload 0
checkcast com.oracle.truffle.polyglot.PolyglotImpl$VMObject
invokeinterface com.oracle.truffle.polyglot.PolyglotImpl$VMObject.getEngine:()Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 polyglotObject Ljava/lang/Object;
Exceptions:
throws java.lang.AssertionError
MethodParameters:
Name Flags
polyglotObject
public com.oracle.truffle.api.TruffleLanguage$Env getEnvForInstrument(com.oracle.truffle.api.nodes.LanguageInfo);
descriptor: (Lcom/oracle/truffle/api/nodes/LanguageInfo;)Lcom/oracle/truffle/api/TruffleLanguage$Env;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: getstatic com.oracle.truffle.polyglot.EngineAccessor.NODES:Lcom/oracle/truffle/api/impl/Accessor$NodeSupport;
aload 1
invokevirtual com.oracle.truffle.api.impl.Accessor$NodeSupport.getPolyglotLanguage:(Lcom/oracle/truffle/api/nodes/LanguageInfo;)Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.PolyglotLanguage
astore 2
start local 2 1: invokestatic com.oracle.truffle.polyglot.PolyglotContextImpl.requireContext:()Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
aload 2
aconst_null
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.getContextInitialized:(Lcom/oracle/truffle/polyglot/PolyglotLanguage;Lcom/oracle/truffle/polyglot/PolyglotLanguage;)Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.env:Lcom/oracle/truffle/api/TruffleLanguage$Env;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 2 1 info Lcom/oracle/truffle/api/nodes/LanguageInfo;
1 2 2 language Lcom/oracle/truffle/polyglot/PolyglotLanguage;
MethodParameters:
Name Flags
info
static com.oracle.truffle.polyglot.PolyglotLanguage findObjectLanguage(com.oracle.truffle.polyglot.PolyglotEngineImpl, java.lang.Object);
descriptor: (Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;Ljava/lang/Object;)Lcom/oracle/truffle/polyglot/PolyglotLanguage;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.truffle.api.interop.InteropLibrary.getFactory:()Lcom/oracle/truffle/api/library/LibraryFactory;
aload 1
invokevirtual com.oracle.truffle.api.library.LibraryFactory.getUncached:(Ljava/lang/Object;)Lcom/oracle/truffle/api/library/Library;
checkcast com.oracle.truffle.api.interop.InteropLibrary
astore 2
start local 2 1: aload 2
aload 1
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.hasLanguage:(Ljava/lang/Object;)Z
ifeq 6
2: aload 0
aload 2
aload 1
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.getLanguage:(Ljava/lang/Object;)Ljava/lang/Class;
iconst_0
invokevirtual com.oracle.truffle.polyglot.PolyglotEngineImpl.getLanguage:(Ljava/lang/Class;Z)Lcom/oracle/truffle/polyglot/PolyglotLanguage;
3: areturn
4: StackMap locals: com.oracle.truffle.polyglot.PolyglotEngineImpl java.lang.Object com.oracle.truffle.api.interop.InteropLibrary
StackMap stack: com.oracle.truffle.api.interop.UnsupportedMessageException
astore 3
start local 3 5: aload 3
invokestatic com.oracle.truffle.api.CompilerDirectives.shouldNotReachHere:(Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
athrow
end local 3 6: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 engine Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
0 7 1 value Ljava/lang/Object;
1 7 2 lib Lcom/oracle/truffle/api/interop/InteropLibrary;
5 6 3 e Lcom/oracle/truffle/api/interop/UnsupportedMessageException;
Exception table:
from to target type
2 3 4 Class com.oracle.truffle.api.interop.UnsupportedMessageException
MethodParameters:
Name Flags
engine
value
static com.oracle.truffle.polyglot.PolyglotLanguage getLanguageView(com.oracle.truffle.polyglot.PolyglotEngineImpl, java.lang.Object);
descriptor: (Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;Ljava/lang/Object;)Lcom/oracle/truffle/polyglot/PolyglotLanguage;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.truffle.api.interop.InteropLibrary.getFactory:()Lcom/oracle/truffle/api/library/LibraryFactory;
aload 1
invokevirtual com.oracle.truffle.api.library.LibraryFactory.getUncached:(Ljava/lang/Object;)Lcom/oracle/truffle/api/library/Library;
checkcast com.oracle.truffle.api.interop.InteropLibrary
astore 2
start local 2 1: aload 2
aload 1
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.hasLanguage:(Ljava/lang/Object;)Z
ifeq 6
2: aload 0
aload 2
aload 1
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.getLanguage:(Ljava/lang/Object;)Ljava/lang/Class;
iconst_0
invokevirtual com.oracle.truffle.polyglot.PolyglotEngineImpl.getLanguage:(Ljava/lang/Class;Z)Lcom/oracle/truffle/polyglot/PolyglotLanguage;
3: areturn
4: StackMap locals: com.oracle.truffle.polyglot.PolyglotEngineImpl java.lang.Object com.oracle.truffle.api.interop.InteropLibrary
StackMap stack: com.oracle.truffle.api.interop.UnsupportedMessageException
astore 3
start local 3 5: aload 3
invokestatic com.oracle.truffle.api.CompilerDirectives.shouldNotReachHere:(Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
athrow
end local 3 6: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 engine Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
0 7 1 value Ljava/lang/Object;
1 7 2 lib Lcom/oracle/truffle/api/interop/InteropLibrary;
5 6 3 e Lcom/oracle/truffle/api/interop/UnsupportedMessageException;
Exception table:
from to target type
2 3 4 Class com.oracle.truffle.api.interop.UnsupportedMessageException
MethodParameters:
Name Flags
engine
value
static boolean isPrimitive(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
astore 1
start local 1 1: aload 1
ldc Ljava/lang/Boolean;
if_acmpeq 5
aload 1
ldc Ljava/lang/Byte;
if_acmpeq 5
aload 1
ldc Ljava/lang/Short;
if_acmpeq 5
aload 1
ldc Ljava/lang/Integer;
if_acmpeq 5
aload 1
ldc Ljava/lang/Long;
if_acmpeq 5
2: aload 1
ldc Ljava/lang/Float;
if_acmpeq 5
aload 1
ldc Ljava/lang/Double;
if_acmpeq 5
3: aload 1
ldc Ljava/lang/Character;
if_acmpeq 5
aload 1
ldc Ljava/lang/String;
if_acmpeq 5
4: iconst_0
ireturn
StackMap locals: java.lang.Class
StackMap stack:
5: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 value Ljava/lang/Object;
1 6 1 valueClass Ljava/lang/Class<*>;
MethodParameters:
Name Flags
value final
public com.oracle.truffle.api.TruffleLanguage$Env getLegacyLanguageEnv(java.lang.Object, boolean);
descriptor: (Ljava/lang/Object;Z)Lcom/oracle/truffle/api/TruffleLanguage$Env;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=3
start local 0 start local 1 start local 2 0: invokestatic com.oracle.truffle.polyglot.PolyglotContextImpl.currentNotEntered:()Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
astore 3
start local 3 1: aload 3
ifnonnull 3
2: aconst_null
areturn
3: StackMap locals: com.oracle.truffle.polyglot.PolyglotContextImpl
StackMap stack:
aload 3
aload 1
invokestatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.findLegacyLanguage:(Lcom/oracle/truffle/polyglot/PolyglotContextImpl;Ljava/lang/Object;)Lcom/oracle/truffle/polyglot/PolyglotLanguage;
astore 4
start local 4 4: aload 4
ifnonnull 6
5: aconst_null
areturn
6: StackMap locals: com.oracle.truffle.polyglot.PolyglotLanguage
StackMap stack:
aload 3
aload 4
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.getContext:(Lcom/oracle/truffle/polyglot/PolyglotLanguage;)Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.env:Lcom/oracle/truffle/api/TruffleLanguage$Env;
areturn
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/EngineAccessor$EngineImpl;
0 7 1 obj Ljava/lang/Object;
0 7 2 nullForHost Z
1 7 3 context Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
4 7 4 language Lcom/oracle/truffle/polyglot/PolyglotLanguage;
MethodParameters:
Name Flags
obj
nullForHost
private static com.oracle.truffle.polyglot.PolyglotLanguage findLegacyLanguage(com.oracle.truffle.polyglot.PolyglotContextImpl, java.lang.Object);
descriptor: (Lcom/oracle/truffle/polyglot/PolyglotContextImpl;Ljava/lang/Object;)Lcom/oracle/truffle/polyglot/PolyglotLanguage;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=8, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
start local 2 1: aload 0
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.contexts:[Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 9
StackMap locals: com.oracle.truffle.polyglot.PolyglotContextImpl java.lang.Object com.oracle.truffle.polyglot.PolyglotLanguage top int int com.oracle.truffle.polyglot.PolyglotLanguageContext[]
StackMap stack:
2: aload 6
iload 4
aaload
astore 3
start local 3 3: aload 3
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.isCreated:()Z
ifeq 8
4: aload 3
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.env:Lcom/oracle/truffle/api/TruffleLanguage$Env;
astore 7
start local 7 5: getstatic com.oracle.truffle.polyglot.EngineAccessor.LANGUAGE:Lcom/oracle/truffle/api/impl/Accessor$LanguageSupport;
aload 7
aload 1
invokevirtual com.oracle.truffle.api.impl.Accessor$LanguageSupport.isObjectOfLanguage:(Lcom/oracle/truffle/api/TruffleLanguage$Env;Ljava/lang/Object;)Z
ifeq 8
6: aload 3
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.language:Lcom/oracle/truffle/polyglot/PolyglotLanguage;
astore 2
7: goto 10
end local 7 end local 3 8: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
9: iload 4
iload 5
if_icmplt 2
10: StackMap locals: com.oracle.truffle.polyglot.PolyglotContextImpl java.lang.Object com.oracle.truffle.polyglot.PolyglotLanguage
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 context Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
0 11 1 value Ljava/lang/Object;
1 11 2 foundLanguage Lcom/oracle/truffle/polyglot/PolyglotLanguage;
3 8 3 searchContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
5 8 7 searchEnv Lcom/oracle/truffle/api/TruffleLanguage$Env;
MethodParameters:
Name Flags
context
value
public java.lang.Object getCurrentPolyglotEngine();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=1
start local 0 0: invokestatic com.oracle.truffle.polyglot.PolyglotContextImpl.currentNotEntered:()Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
astore 1
start local 1 1: aload 1
ifnonnull 3
2: aconst_null
areturn
3: StackMap locals: com.oracle.truffle.polyglot.PolyglotContextImpl
StackMap stack:
aload 1
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.engine:Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
1 4 1 context Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
public boolean isMultiThreaded(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.truffle.polyglot.PolyglotContextImpl.currentNotEntered:()Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
astore 2
start local 2 1: aload 2
ifnonnull 3
2: iconst_1
ireturn
3: StackMap locals: com.oracle.truffle.polyglot.PolyglotContextImpl
StackMap stack:
aload 1
invokestatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.isPrimitive:(Ljava/lang/Object;)Z
ifeq 5
4: iconst_0
ireturn
5: StackMap locals:
StackMap stack:
aload 1
instanceof com.oracle.truffle.polyglot.HostObject
ifne 6
aload 1
instanceof com.oracle.truffle.polyglot.PolyglotBindings
ifeq 7
6: StackMap locals:
StackMap stack:
iconst_1
ireturn
7: StackMap locals:
StackMap stack:
aload 2
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.engine:Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
aload 1
invokestatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.findObjectLanguage:(Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;Ljava/lang/Object;)Lcom/oracle/truffle/polyglot/PolyglotLanguage;
astore 3
start local 3 8: aload 3
ifnonnull 10
9: iconst_1
ireturn
10: StackMap locals: com.oracle.truffle.polyglot.PolyglotLanguage
StackMap stack:
aload 2
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.singleThreaded:Lcom/oracle/truffle/api/Assumption;
invokeinterface com.oracle.truffle.api.Assumption.isValid:()Z
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 11 1 guestObject Ljava/lang/Object;
1 11 2 context Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
8 11 3 language Lcom/oracle/truffle/polyglot/PolyglotLanguage;
MethodParameters:
Name Flags
guestObject
public boolean isEvalRoot(com.oracle.truffle.api.nodes.RootNode);
descriptor: (Lcom/oracle/truffle/api/nodes/RootNode;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 target Lcom/oracle/truffle/api/nodes/RootNode;
MethodParameters:
Name Flags
target
public java.lang.RuntimeException engineToLanguageException(java.lang.Throwable);
descriptor: (Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic com.oracle.truffle.polyglot.PolyglotImpl.engineToLanguageException:(Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 t Ljava/lang/Throwable;
MethodParameters:
Name Flags
t
public java.lang.RuntimeException engineToInstrumentException(java.lang.Throwable);
descriptor: (Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic com.oracle.truffle.polyglot.PolyglotImpl.engineToInstrumentException:(Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 t Ljava/lang/Throwable;
MethodParameters:
Name Flags
t
public java.lang.Object getCurrentFileSystemContext();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: invokestatic com.oracle.truffle.polyglot.PolyglotContextImpl.requireContext:()Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.getHostContext:()Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.getPublicFileSystemContext:()Ljava/lang/Object;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
public java.lang.Object getPublicFileSystemContext(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.getPublicFileSystemContext:()Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 polyglotLanguageContext Ljava/lang/Object;
MethodParameters:
Name Flags
polyglotLanguageContext
public java.lang.Object getInternalFileSystemContext(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.getInternalFileSystemContext:()Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 polyglotLanguageContext Ljava/lang/Object;
MethodParameters:
Name Flags
polyglotLanguageContext
public java.util.Map<java.lang.String, java.util.Collection<? extends com.oracle.truffle.api.TruffleFile$FileTypeDetector>> getEngineFileTypeDetectors();
descriptor: (Ljava/lang/Object;)Ljava/util/Map;
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.PolyglotLanguageContext
ifeq 2
1: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.context:Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.engine:Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
invokevirtual com.oracle.truffle.polyglot.PolyglotEngineImpl.getFileTypeDetectorsSupplier:()Ljava/util/function/Supplier;
invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
checkcast java.util.Map
areturn
2: StackMap locals:
StackMap stack:
aload 1
instanceof com.oracle.truffle.polyglot.PolyglotSource$EmbedderFileSystemContext
ifeq 4
3: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotSource$EmbedderFileSystemContext
getfield com.oracle.truffle.polyglot.PolyglotSource$EmbedderFileSystemContext.fileTypeDetectors:Ljava/util/function/Supplier;
invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
checkcast java.util.Map
areturn
4: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 5 1 engineFileSystemObject Ljava/lang/Object;
Signature: (Ljava/lang/Object;)Ljava/util/Map<Ljava/lang/String;Ljava/util/Collection<+Lcom/oracle/truffle/api/TruffleFile$FileTypeDetector;>;>;
MethodParameters:
Name Flags
engineFileSystemObject
public java.util.Set<java.lang.String> getValidMimeTypes(, java.lang.String);
descriptor: (Ljava/lang/Object;Ljava/lang/String;)Ljava/util/Set;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
invokestatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.getLanguageCache:(Ljava/lang/Object;Ljava/lang/String;)Lcom/oracle/truffle/polyglot/LanguageCache;
astore 3
start local 3 1: aload 3
ifnull 3
2: aload 3
invokevirtual com.oracle.truffle.polyglot.LanguageCache.getMimeTypes:()Ljava/util/Set;
areturn
3: StackMap locals: com.oracle.truffle.polyglot.LanguageCache
StackMap stack:
invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
areturn
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/EngineAccessor$EngineImpl;
0 4 1 engineObject Ljava/lang/Object;
0 4 2 language Ljava/lang/String;
1 4 3 lang Lcom/oracle/truffle/polyglot/LanguageCache;
Signature: (Ljava/lang/Object;Ljava/lang/String;)Ljava/util/Set<Ljava/lang/String;>;
MethodParameters:
Name Flags
engineObject
language
private static com.oracle.truffle.polyglot.LanguageCache getLanguageCache(java.lang.Object, java.lang.String);
descriptor: (Ljava/lang/Object;Ljava/lang/String;)Lcom/oracle/truffle/polyglot/LanguageCache;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
instanceof com.oracle.truffle.polyglot.PolyglotLanguageContext
ifeq 5
1: aload 0
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.context:Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.engine:Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
getfield com.oracle.truffle.polyglot.PolyglotEngineImpl.idToLanguage:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.PolyglotLanguage
astore 2
start local 2 2: aload 2
ifnull 4
3: aload 2
getfield com.oracle.truffle.polyglot.PolyglotLanguage.cache:Lcom/oracle/truffle/polyglot/LanguageCache;
areturn
4: StackMap locals: com.oracle.truffle.polyglot.PolyglotLanguage
StackMap stack:
aconst_null
areturn
end local 2 5: StackMap locals:
StackMap stack:
aload 0
instanceof com.oracle.truffle.polyglot.PolyglotSource$EmbedderFileSystemContext
ifeq 7
6: aload 0
checkcast com.oracle.truffle.polyglot.PolyglotSource$EmbedderFileSystemContext
getfield com.oracle.truffle.polyglot.PolyglotSource$EmbedderFileSystemContext.cachedLanguages:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.LanguageCache
areturn
7: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 engineObject Ljava/lang/Object;
0 8 1 language Ljava/lang/String;
2 5 2 polyglotLanguage Lcom/oracle/truffle/polyglot/PolyglotLanguage;
Exceptions:
throws java.lang.AssertionError
MethodParameters:
Name Flags
engineObject
language
public boolean isCharacterBasedSource(java.lang.Object, java.lang.String, java.lang.String);
descriptor: (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
aload 2
invokestatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.getLanguageCache:(Ljava/lang/Object;Ljava/lang/String;)Lcom/oracle/truffle/polyglot/LanguageCache;
astore 4
start local 4 1: aload 4
ifnonnull 3
2: iconst_1
ireturn
3: StackMap locals: com.oracle.truffle.polyglot.LanguageCache
StackMap stack:
aload 3
astore 5
start local 5 4: aload 5
ifnonnull 6
5: aload 4
invokevirtual com.oracle.truffle.polyglot.LanguageCache.getDefaultMimeType:()Ljava/lang/String;
astore 5
6: StackMap locals: java.lang.String
StackMap stack:
aload 5
ifnull 7
aload 4
invokevirtual com.oracle.truffle.polyglot.LanguageCache.getMimeTypes:()Ljava/util/Set;
aload 5
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifne 8
7: StackMap locals:
StackMap stack:
iconst_1
ireturn
8: StackMap locals:
StackMap stack:
aload 4
aload 5
invokevirtual com.oracle.truffle.polyglot.LanguageCache.isCharacterMimeType:(Ljava/lang/String;)Z
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 9 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 9 1 fsEngineObject Ljava/lang/Object;
0 9 2 language Ljava/lang/String;
0 9 3 mimeType Ljava/lang/String;
1 9 4 cache Lcom/oracle/truffle/polyglot/LanguageCache;
4 9 5 useMimeType Ljava/lang/String;
MethodParameters:
Name Flags
fsEngineObject
language
mimeType
public boolean isMimeTypeSupported(java.lang.Object, java.lang.String);
descriptor: (Ljava/lang/Object;Ljava/lang/String;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokestatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.getEngine:(Ljava/lang/Object;)Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
astore 3
start local 3 1: aload 3
getfield com.oracle.truffle.polyglot.PolyglotEngineImpl.idToLanguage:Ljava/util/Map;
invokeinterface java.util.Map.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 5
goto 5
StackMap locals: com.oracle.truffle.polyglot.EngineAccessor$EngineImpl java.lang.Object java.lang.String com.oracle.truffle.polyglot.PolyglotEngineImpl top java.util.Iterator
StackMap stack:
2: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.PolyglotLanguage
astore 4
start local 4 3: aload 4
getfield com.oracle.truffle.polyglot.PolyglotLanguage.cache:Lcom/oracle/truffle/polyglot/LanguageCache;
invokevirtual com.oracle.truffle.polyglot.LanguageCache.getMimeTypes:()Ljava/util/Set;
aload 2
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 5
4: iconst_1
ireturn
end local 4 5: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
6: iconst_0
ireturn
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/EngineAccessor$EngineImpl;
0 7 1 polyglotLanguageContext Ljava/lang/Object;
0 7 2 mimeType Ljava/lang/String;
1 7 3 engine Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
3 5 4 language Lcom/oracle/truffle/polyglot/PolyglotLanguage;
MethodParameters:
Name Flags
polyglotLanguageContext
mimeType
public java.lang.Object getInstrumentationHandler(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.getEngine:(Ljava/lang/Object;)Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
getfield com.oracle.truffle.polyglot.PolyglotEngineImpl.instrumentationHandler:Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 polyglotObject Ljava/lang/Object;
MethodParameters:
Name Flags
polyglotObject
public java.lang.Object importSymbol(java.lang.Object, com.oracle.truffle.api.TruffleLanguage$Env, java.lang.String);
descriptor: (Ljava/lang/Object;Lcom/oracle/truffle/api/TruffleLanguage$Env;Ljava/lang/String;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
astore 4
start local 4 1: aload 4
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.context:Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.polyglotBindings:Ljava/util/Map;
aload 3
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.graalvm.polyglot.Value
astore 5
start local 5 2: aload 5
ifnull 4
3: aload 4
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.getAPIAccess:()Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$APIAccess;
aload 5
invokevirtual org.graalvm.polyglot.impl.AbstractPolyglotImpl$APIAccess.getReceiver:(Lorg/graalvm/polyglot/Value;)Ljava/lang/Object;
areturn
4: StackMap locals: com.oracle.truffle.polyglot.PolyglotLanguageContext org.graalvm.polyglot.Value
StackMap stack:
aload 4
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.context:Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
aload 3
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.findLegacyExportedSymbol:(Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
astore 5
5: aload 5
ifnull 7
6: aload 4
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.getAPIAccess:()Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$APIAccess;
aload 5
invokevirtual org.graalvm.polyglot.impl.AbstractPolyglotImpl$APIAccess.getReceiver:(Lorg/graalvm/polyglot/Value;)Ljava/lang/Object;
areturn
7: StackMap locals:
StackMap stack:
aconst_null
areturn
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 8 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 8 1 polyglotLanguageContext Ljava/lang/Object;
0 8 2 env Lcom/oracle/truffle/api/TruffleLanguage$Env;
0 8 3 symbolName Ljava/lang/String;
1 8 4 context Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
2 8 5 value Lorg/graalvm/polyglot/Value;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
MethodParameters:
Name Flags
polyglotLanguageContext
env
symbolName
public java.lang.Object lookupHostSymbol(java.lang.Object, com.oracle.truffle.api.TruffleLanguage$Env, java.lang.String);
descriptor: (Ljava/lang/Object;Lcom/oracle/truffle/api/TruffleLanguage$Env;Ljava/lang/String;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
astore 4
start local 4 1: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.context:Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.getHostContextImpl:()Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;
astore 5
start local 5 2: aload 5
aload 3
invokevirtual com.oracle.truffle.polyglot.HostLanguage$HostContext.findClass:(Ljava/lang/String;)Ljava/lang/Class;
astore 6
start local 6 3: aload 6
ifnonnull 5
4: aconst_null
areturn
5: StackMap locals: com.oracle.truffle.polyglot.PolyglotLanguageContext com.oracle.truffle.polyglot.HostLanguage$HostContext java.lang.Class
StackMap stack:
aload 6
aload 4
invokestatic com.oracle.truffle.polyglot.HostObject.forStaticClass:(Ljava/lang/Class;Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;)Lcom/oracle/truffle/polyglot/HostObject;
areturn
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 6 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 6 1 polyglotLanguageContext Ljava/lang/Object;
0 6 2 env Lcom/oracle/truffle/api/TruffleLanguage$Env;
0 6 3 symbolName Ljava/lang/String;
1 6 4 context Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
2 6 5 hostContext Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;
3 6 6 clazz Ljava/lang/Class<*>;
MethodParameters:
Name Flags
polyglotLanguageContext
env
symbolName
public asHostSymbol(, java.lang.Class<?>);
descriptor: (Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
astore 3
start local 3 1: aload 2
aload 3
invokestatic com.oracle.truffle.polyglot.HostObject.forStaticClass:(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 2 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 2 1 polyglotLanguageContext Ljava/lang/Object;
0 2 2 symbolClass Ljava/lang/Class<*>;
1 2 3 context Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
Signature: (Ljava/lang/Object;Ljava/lang/Class<*>;)Ljava/lang/Object;
MethodParameters:
Name Flags
polyglotLanguageContext
symbolClass
public boolean isHostAccessAllowed(java.lang.Object, com.oracle.truffle.api.TruffleLanguage$Env);
descriptor: (Ljava/lang/Object;Lcom/oracle/truffle/api/TruffleLanguage$Env;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
astore 3
start local 3 1: aload 3
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.context:Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.config:Lcom/oracle/truffle/polyglot/PolyglotContextConfig;
getfield com.oracle.truffle.polyglot.PolyglotContextConfig.hostLookupAllowed:Z
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 2 1 polyglotLanguageContext Ljava/lang/Object;
0 2 2 env Lcom/oracle/truffle/api/TruffleLanguage$Env;
1 2 3 context Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
MethodParameters:
Name Flags
polyglotLanguageContext
env
public boolean isNativeAccessAllowed(java.lang.Object, com.oracle.truffle.api.TruffleLanguage$Env);
descriptor: (Ljava/lang/Object;Lcom/oracle/truffle/api/TruffleLanguage$Env;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
astore 3
start local 3 1: aload 3
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.context:Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.config:Lcom/oracle/truffle/polyglot/PolyglotContextConfig;
getfield com.oracle.truffle.polyglot.PolyglotContextConfig.nativeAccessAllowed:Z
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 2 1 polyglotLanguageContext Ljava/lang/Object;
0 2 2 env Lcom/oracle/truffle/api/TruffleLanguage$Env;
1 2 3 context Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
MethodParameters:
Name Flags
polyglotLanguageContext
env
public boolean inContextPreInitialization(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=3, args_size=2
start local 0 start local 1 0: aload 1
instanceof com.oracle.truffle.polyglot.PolyglotContextImpl
ifeq 3
1: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotContextImpl
astore 2
start local 2 2: goto 9
end local 2 StackMap locals:
StackMap stack:
3: aload 1
instanceof com.oracle.truffle.polyglot.PolyglotLanguageContext
ifeq 6
4: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.context:Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
astore 2
start local 2 5: goto 9
end local 2 StackMap locals:
StackMap stack:
6: aload 1
instanceof com.oracle.truffle.polyglot.PolyglotSource$EmbedderFileSystemContext
ifeq 8
7: iconst_0
ireturn
8: StackMap locals:
StackMap stack:
invokestatic com.oracle.truffle.api.CompilerDirectives.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
start local 2 9: StackMap locals: com.oracle.truffle.polyglot.PolyglotContextImpl
StackMap stack:
aload 2
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.inContextPreInitialization:Z
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 10 1 polyglotObject Ljava/lang/Object;
2 3 2 polyglotContext Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
5 6 2 polyglotContext Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
9 10 2 polyglotContext Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
MethodParameters:
Name Flags
polyglotObject
public void exportSymbol(java.lang.Object, java.lang.String, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
astore 4
start local 4 1: aload 3
ifnonnull 4
2: aload 4
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.context:Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.getPolyglotGuestBindings:()Ljava/util/Map;
aload 2
invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
3: return
4: StackMap locals: com.oracle.truffle.polyglot.PolyglotLanguageContext
StackMap stack:
aload 3
invokestatic com.oracle.truffle.polyglot.PolyglotImpl.isGuestPrimitive:(Ljava/lang/Object;)Z
ifne 6
aload 3
instanceof com.oracle.truffle.api.interop.TruffleObject
ifne 6
5: new java.lang.IllegalArgumentException
dup
ldc "Invalid exported value. Must be an interop value."
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals:
StackMap stack:
aload 4
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.context:Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.getPolyglotGuestBindings:()Ljava/util/Map;
aload 2
aload 4
aload 3
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.asValue:(Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
7: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 8 1 polyglotLanguageContext Ljava/lang/Object;
0 8 2 symbolName Ljava/lang/String;
0 8 3 value Ljava/lang/Object;
1 8 4 context Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
MethodParameters:
Name Flags
polyglotLanguageContext
symbolName
value
public java.util.Map<java.lang.String, ? extends java.lang.Object> getExportedSymbols();
descriptor: ()Ljava/util/Map;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: invokestatic com.oracle.truffle.polyglot.PolyglotContextImpl.currentNotEntered:()Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
astore 1
start local 1 1: aload 1
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.getPolyglotBindings:()Lorg/graalvm/polyglot/Value;
ldc Ljava/util/Map;
invokevirtual org.graalvm.polyglot.Value.as:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast java.util.Map
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
1 2 1 currentContext Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
Signature: ()Ljava/util/Map<Ljava/lang/String;+Ljava/lang/Object;>;
public java.lang.Object getPolyglotBindingsObject();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=1
start local 0 0: invokestatic com.oracle.truffle.polyglot.PolyglotContextImpl.currentNotEntered:()Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
astore 1
start local 1 1: aload 1
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.getPolyglotBindingsObject:()Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
1 2 1 currentContext Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
public java.lang.Object toGuestValue(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 2
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
astore 3
start local 3 1: aload 1
instanceof org.graalvm.polyglot.Value
ifeq 4
2: aload 3
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.getImpl:()Lcom/oracle/truffle/polyglot/PolyglotImpl;
invokevirtual com.oracle.truffle.polyglot.PolyglotImpl.getAPIAccess:()Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$APIAccess;
aload 1
checkcast org.graalvm.polyglot.Value
invokevirtual org.graalvm.polyglot.impl.AbstractPolyglotImpl$APIAccess.getImpl:(Lorg/graalvm/polyglot/Value;)Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractValueImpl;
checkcast com.oracle.truffle.polyglot.PolyglotValue
astore 4
start local 4 3: aload 4
getfield com.oracle.truffle.polyglot.PolyglotValue.languageContext:Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 3
end local 4 4: StackMap locals: com.oracle.truffle.polyglot.PolyglotLanguageContext
StackMap stack:
aload 3
aconst_null
aload 1
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.toGuestValue:(Lcom/oracle/truffle/api/nodes/Node;Ljava/lang/Object;)Ljava/lang/Object;
areturn
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/EngineAccessor$EngineImpl;
0 5 1 obj Ljava/lang/Object;
0 5 2 context Ljava/lang/Object;
1 5 3 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
3 4 4 valueImpl Lcom/oracle/truffle/polyglot/PolyglotValue;
MethodParameters:
Name Flags
obj
context
public java.lang.Object asBoxedGuestValue(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
astore 3
start local 3 1: aload 1
invokestatic com.oracle.truffle.polyglot.PolyglotImpl.isGuestPrimitive:(Ljava/lang/Object;)Z
ifeq 3
2: aload 1
aload 3
invokestatic com.oracle.truffle.polyglot.HostObject.forObject:(Ljava/lang/Object;Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;)Lcom/oracle/truffle/polyglot/HostObject;
areturn
3: StackMap locals: com.oracle.truffle.polyglot.PolyglotLanguageContext
StackMap stack:
aload 1
instanceof com.oracle.truffle.api.interop.TruffleObject
ifeq 5
4: aload 1
areturn
5: StackMap locals:
StackMap stack:
invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreterAndInvalidate:()V
6: new java.lang.IllegalArgumentException
dup
ldc "Provided value not an interop value."
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
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/EngineAccessor$EngineImpl;
0 7 1 guestObject Ljava/lang/Object;
0 7 2 polyglotLanguageContext Ljava/lang/Object;
1 7 3 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
MethodParameters:
Name Flags
guestObject
polyglotLanguageContext
public java.lang.Iterable<com.oracle.truffle.api.Scope> createDefaultLexicalScope(com.oracle.truffle.api.nodes.Node, com.oracle.truffle.api.frame.Frame, java.lang.Class<? extends com.oracle.truffle.api.TruffleLanguage<?>>);
descriptor: (Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/frame/Frame;Ljava/lang/Class;)Ljava/lang/Iterable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
aload 2
aload 3
invokestatic com.oracle.truffle.polyglot.LegacyDefaultScope.lexicalScope:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/frame/Frame;Ljava/lang/Class;)Ljava/lang/Iterable;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 node Lcom/oracle/truffle/api/nodes/Node;
0 1 2 frame Lcom/oracle/truffle/api/frame/Frame;
0 1 3 language Ljava/lang/Class<+Lcom/oracle/truffle/api/TruffleLanguage<*>;>;
Signature: (Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/frame/Frame;Ljava/lang/Class<+Lcom/oracle/truffle/api/TruffleLanguage<*>;>;)Ljava/lang/Iterable<Lcom/oracle/truffle/api/Scope;>;
MethodParameters:
Name Flags
node
frame
language
public java.lang.Iterable<com.oracle.truffle.api.Scope> createDefaultTopScope();
descriptor: (Ljava/lang/Object;)Ljava/lang/Iterable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic com.oracle.truffle.polyglot.LegacyDefaultScope.topScope:(Ljava/lang/Object;)Ljava/lang/Iterable;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 global Ljava/lang/Object;
Signature: (Ljava/lang/Object;)Ljava/lang/Iterable<Lcom/oracle/truffle/api/Scope;>;
MethodParameters:
Name Flags
global
public getDefaultVariables(com.oracle.truffle.api.nodes.RootNode, com.oracle.truffle.api.frame.Frame, java.lang.Class<? extends com.oracle.truffle.api.TruffleLanguage<?>>);
descriptor: (Lcom/oracle/truffle/api/nodes/RootNode;Lcom/oracle/truffle/api/frame/Frame;Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
aload 2
aload 3
invokestatic com.oracle.truffle.polyglot.DefaultScope.getVariables:(Lcom/oracle/truffle/api/nodes/RootNode;Lcom/oracle/truffle/api/frame/Frame;Ljava/lang/Class;)Ljava/lang/Object;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 root Lcom/oracle/truffle/api/nodes/RootNode;
0 1 2 frame Lcom/oracle/truffle/api/frame/Frame;
0 1 3 language Ljava/lang/Class<+Lcom/oracle/truffle/api/TruffleLanguage<*>;>;
Signature: (Lcom/oracle/truffle/api/nodes/RootNode;Lcom/oracle/truffle/api/frame/Frame;Ljava/lang/Class<+Lcom/oracle/truffle/api/TruffleLanguage<*>;>;)Ljava/lang/Object;
MethodParameters:
Name Flags
root
frame
language
public getDefaultArguments([], java.lang.Class<? extends com.oracle.truffle.api.TruffleLanguage<?>>);
descriptor: ([Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
invokestatic com.oracle.truffle.polyglot.DefaultScope.getArguments:([Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 frameArguments [Ljava/lang/Object;
0 1 2 language Ljava/lang/Class<+Lcom/oracle/truffle/api/TruffleLanguage<*>;>;
Signature: ([Ljava/lang/Object;Ljava/lang/Class<+Lcom/oracle/truffle/api/TruffleLanguage<*>;>;)Ljava/lang/Object;
MethodParameters:
Name Flags
frameArguments
language
public void reportAllLanguageContexts(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotEngineImpl
aload 2
checkcast com.oracle.truffle.api.instrumentation.ContextsListener
invokevirtual com.oracle.truffle.polyglot.PolyglotEngineImpl.reportAllLanguageContexts:(Lcom/oracle/truffle/api/instrumentation/ContextsListener;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 2 1 polyglotEngine Ljava/lang/Object;
0 2 2 contextsListener Ljava/lang/Object;
MethodParameters:
Name Flags
polyglotEngine
contextsListener
public void reportAllContextThreads(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotEngineImpl
aload 2
checkcast com.oracle.truffle.api.instrumentation.ThreadsListener
invokevirtual com.oracle.truffle.polyglot.PolyglotEngineImpl.reportAllContextThreads:(Lcom/oracle/truffle/api/instrumentation/ThreadsListener;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 2 1 polyglotEngine Ljava/lang/Object;
0 2 2 threadsListener Ljava/lang/Object;
MethodParameters:
Name Flags
polyglotEngine
threadsListener
public com.oracle.truffle.api.TruffleContext getParentContext(java.lang.Object);
descriptor: (Ljava/lang/Object;)Lcom/oracle/truffle/api/TruffleContext;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=3, args_size=2
start local 0 start local 1 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotContextImpl
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.parent:Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
astore 2
start local 2 1: aload 2
ifnull 3
2: aload 2
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.currentTruffleContext:Lcom/oracle/truffle/api/TruffleContext;
areturn
3: StackMap locals: com.oracle.truffle.polyglot.PolyglotContextImpl
StackMap stack:
aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 4 1 polyglotContext Ljava/lang/Object;
1 4 2 parent Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
MethodParameters:
Name Flags
polyglotContext
public java.lang.Object enterInternalContext(com.oracle.truffle.api.nodes.Node, java.lang.Object);
descriptor: (Lcom/oracle/truffle/api/nodes/Node;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 2
checkcast com.oracle.truffle.polyglot.PolyglotContextImpl
astore 3
start local 3 1: aload 1
aload 3
invokestatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.resolveEngine:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/polyglot/PolyglotContextImpl;)Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
astore 4
start local 4 2: aload 4
invokestatic com.oracle.truffle.api.CompilerDirectives.isPartialEvaluationConstant:(Ljava/lang/Object;)Z
ifeq 4
3: aload 4
aload 3
invokevirtual com.oracle.truffle.polyglot.PolyglotEngineImpl.enter:(Lcom/oracle/truffle/polyglot/PolyglotContextImpl;)Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
areturn
4: StackMap locals: com.oracle.truffle.polyglot.PolyglotContextImpl com.oracle.truffle.polyglot.PolyglotEngineImpl
StackMap stack:
aload 3
aload 4
invokestatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.enterInternalContextBoundary:(Lcom/oracle/truffle/polyglot/PolyglotContextImpl;Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;)Ljava/lang/Object;
areturn
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/EngineAccessor$EngineImpl;
0 5 1 node Lcom/oracle/truffle/api/nodes/Node;
0 5 2 polyglotLanguageContext Ljava/lang/Object;
1 5 3 context Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
2 5 4 engine Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
MethodParameters:
Name Flags
node
polyglotLanguageContext
private static java.lang.Object enterInternalContextBoundary(com.oracle.truffle.polyglot.PolyglotContextImpl, com.oracle.truffle.polyglot.PolyglotEngineImpl);
descriptor: (Lcom/oracle/truffle/polyglot/PolyglotContextImpl;Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
invokevirtual com.oracle.truffle.polyglot.PolyglotEngineImpl.enter:(Lcom/oracle/truffle/polyglot/PolyglotContextImpl;)Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 context Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
0 1 1 engine Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
MethodParameters:
Name Flags
context
engine
public void leaveInternalContext(com.oracle.truffle.api.nodes.Node, java.lang.Object, java.lang.Object);
descriptor: (Lcom/oracle/truffle/api/nodes/Node;Ljava/lang/Object;Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokestatic com.oracle.truffle.api.CompilerAsserts.partialEvaluationConstant:(Ljava/lang/Object;)V
1: aload 2
checkcast com.oracle.truffle.polyglot.PolyglotContextImpl
astore 4
start local 4 2: aload 1
aload 4
invokestatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.resolveEngine:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/polyglot/PolyglotContextImpl;)Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
astore 5
start local 5 3: aload 5
invokestatic com.oracle.truffle.api.CompilerDirectives.isPartialEvaluationConstant:(Ljava/lang/Object;)Z
ifeq 6
4: aload 5
aload 3
checkcast com.oracle.truffle.polyglot.PolyglotContextImpl
aload 4
invokevirtual com.oracle.truffle.polyglot.PolyglotEngineImpl.leave:(Lcom/oracle/truffle/polyglot/PolyglotContextImpl;Lcom/oracle/truffle/polyglot/PolyglotContextImpl;)V
5: goto 7
6: StackMap locals: com.oracle.truffle.polyglot.PolyglotContextImpl com.oracle.truffle.polyglot.PolyglotEngineImpl
StackMap stack:
aload 3
aload 4
aload 5
invokestatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.leaveInternalContextBoundary:(Ljava/lang/Object;Lcom/oracle/truffle/polyglot/PolyglotContextImpl;Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;)V
7: 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 8 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 8 1 node Lcom/oracle/truffle/api/nodes/Node;
0 8 2 impl Ljava/lang/Object;
0 8 3 prev Ljava/lang/Object;
2 8 4 context Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
3 8 5 engine Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
MethodParameters:
Name Flags
node
impl
prev
private static void leaveInternalContextBoundary(java.lang.Object, com.oracle.truffle.polyglot.PolyglotContextImpl, com.oracle.truffle.polyglot.PolyglotEngineImpl);
descriptor: (Ljava/lang/Object;Lcom/oracle/truffle/polyglot/PolyglotContextImpl;Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
aload 0
checkcast com.oracle.truffle.polyglot.PolyglotContextImpl
aload 1
invokevirtual com.oracle.truffle.polyglot.PolyglotEngineImpl.leave:(Lcom/oracle/truffle/polyglot/PolyglotContextImpl;Lcom/oracle/truffle/polyglot/PolyglotContextImpl;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 prev Ljava/lang/Object;
0 2 1 context Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
0 2 2 engine Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
MethodParameters:
Name Flags
prev
context
engine
private static com.oracle.truffle.polyglot.PolyglotEngineImpl resolveEngine(com.oracle.truffle.api.nodes.Node, com.oracle.truffle.polyglot.PolyglotContextImpl);
descriptor: (Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/polyglot/PolyglotContextImpl;)Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
ifnull 9
1: aload 0
invokevirtual com.oracle.truffle.api.nodes.Node.getRootNode:()Lcom/oracle/truffle/api/nodes/RootNode;
astore 3
start local 3 2: aload 3
ifnonnull 5
3: invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreterAndInvalidate:()V
4: new java.lang.IllegalStateException
dup
ldc "Passed node is not yet adopted. Adopt it first."
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals: com.oracle.truffle.api.nodes.Node com.oracle.truffle.polyglot.PolyglotContextImpl top com.oracle.truffle.api.nodes.RootNode
StackMap stack:
aload 3
invokestatic com.oracle.truffle.api.CompilerAsserts.partialEvaluationConstant:(Ljava/lang/Object;)V
6: getstatic com.oracle.truffle.polyglot.EngineAccessor.NODES:Lcom/oracle/truffle/api/impl/Accessor$NodeSupport;
aload 3
invokevirtual com.oracle.truffle.api.impl.Accessor$NodeSupport.getPolyglotEngine:(Lcom/oracle/truffle/api/nodes/RootNode;)Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.PolyglotEngineImpl
astore 2
start local 2 7: aload 2
invokestatic com.oracle.truffle.api.CompilerAsserts.partialEvaluationConstant:(Ljava/lang/Object;)V
8: getstatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.$assertionsDisabled:Z
ifne 10
aload 2
ifnonnull 10
new java.lang.AssertionError
dup
ldc "root node engine must not be null"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
end local 3 end local 2 9: StackMap locals: com.oracle.truffle.api.nodes.Node com.oracle.truffle.polyglot.PolyglotContextImpl
StackMap stack:
aload 1
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.engine:Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
astore 2
start local 2 10: StackMap locals: com.oracle.truffle.polyglot.PolyglotEngineImpl
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 node Lcom/oracle/truffle/api/nodes/Node;
0 11 1 context Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
7 9 2 engine Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
10 11 2 engine Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
2 9 3 root Lcom/oracle/truffle/api/nodes/RootNode;
MethodParameters:
Name Flags
node
context
public boolean isContextEntered(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: invokestatic com.oracle.truffle.polyglot.PolyglotContextImpl.currentNotEntered:()Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
aload 1
if_acmpne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 2 1 impl Ljava/lang/Object;
MethodParameters:
Name Flags
impl
public com.oracle.truffle.api.TruffleContext createInternalContext(, java.util.Map<java.lang.String, java.lang.Object>);
descriptor: (Ljava/lang/Object;Ljava/util/Map;)Lcom/oracle/truffle/api/TruffleContext;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
astore 3
start local 3 1: aload 3
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.context:Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
dup
astore 5
monitorenter
2: new com.oracle.truffle.polyglot.PolyglotContextImpl
dup
aload 3
aload 2
invokespecial com.oracle.truffle.polyglot.PolyglotContextImpl.<init>:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/util/Map;)V
astore 4
start local 4 3: aload 4
aload 4
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.getAPIAccess:()Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$APIAccess;
aload 4
invokevirtual org.graalvm.polyglot.impl.AbstractPolyglotImpl$APIAccess.newContext:(Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractContextImpl;)Lorg/graalvm/polyglot/Context;
putfield com.oracle.truffle.polyglot.PolyglotContextImpl.creatorApi:Lorg/graalvm/polyglot/Context;
4: aload 4
aload 4
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.getAPIAccess:()Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$APIAccess;
aload 4
invokevirtual org.graalvm.polyglot.impl.AbstractPolyglotImpl$APIAccess.newContext:(Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$AbstractContextImpl;)Lorg/graalvm/polyglot/Context;
putfield com.oracle.truffle.polyglot.PolyglotContextImpl.currentApi:Lorg/graalvm/polyglot/Context;
5: aload 5
monitorexit
6: goto 9
end local 4 StackMap locals: com.oracle.truffle.polyglot.EngineAccessor$EngineImpl java.lang.Object java.util.Map com.oracle.truffle.polyglot.PolyglotLanguageContext top com.oracle.truffle.polyglot.PolyglotContextImpl
StackMap stack: java.lang.Throwable
7: aload 5
monitorexit
8: athrow
start local 4 9: StackMap locals: com.oracle.truffle.polyglot.EngineAccessor$EngineImpl java.lang.Object java.util.Map com.oracle.truffle.polyglot.PolyglotLanguageContext com.oracle.truffle.polyglot.PolyglotContextImpl
StackMap stack:
aload 4
dup
astore 5
monitorenter
10: aload 4
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.initializeContextLocals:()V
11: aload 4
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.engine:Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
aload 3
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.context:Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
invokevirtual com.oracle.truffle.polyglot.PolyglotEngineImpl.initializeMultiContext:(Lcom/oracle/truffle/polyglot/PolyglotContextImpl;)V
12: aload 4
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.notifyContextCreated:()V
13: aload 4
aload 3
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.language:Lcom/oracle/truffle/polyglot/PolyglotLanguage;
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguage.getId:()Ljava/lang/String;
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.initializeLanguage:(Ljava/lang/String;)Z
pop
14: aload 5
monitorexit
15: goto 18
StackMap locals: com.oracle.truffle.polyglot.EngineAccessor$EngineImpl java.lang.Object java.util.Map com.oracle.truffle.polyglot.PolyglotLanguageContext com.oracle.truffle.polyglot.PolyglotContextImpl com.oracle.truffle.polyglot.PolyglotContextImpl
StackMap stack: java.lang.Throwable
16: aload 5
monitorexit
17: athrow
18: StackMap locals:
StackMap stack:
aload 4
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.creatorTruffleContext:Lcom/oracle/truffle/api/TruffleContext;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 19 1 sourcePolyglotLanguageContext Ljava/lang/Object;
0 19 2 config Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
1 19 3 creator Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
3 7 4 impl Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
9 19 4 impl Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
Exception table:
from to target type
2 6 7 any
7 8 7 any
10 15 16 any
16 17 16 any
Signature: (Ljava/lang/Object;Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;)Lcom/oracle/truffle/api/TruffleContext;
MethodParameters:
Name Flags
sourcePolyglotLanguageContext
config
public boolean isCreateThreadAllowed(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.context:Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.config:Lcom/oracle/truffle/polyglot/PolyglotContextConfig;
getfield com.oracle.truffle.polyglot.PolyglotContextConfig.createThreadAllowed:Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 polyglotLanguageContext Ljava/lang/Object;
MethodParameters:
Name Flags
polyglotLanguageContext
public java.lang.Thread createThread(java.lang.Object, java.lang.Runnable, java.lang.Object, java.lang.ThreadGroup, long);
descriptor: (Ljava/lang/Object;Ljava/lang/Runnable;Ljava/lang/Object;Ljava/lang/ThreadGroup;J)Ljava/lang/Thread;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=9, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
aload 1
invokevirtual com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.isCreateThreadAllowed:(Ljava/lang/Object;)Z
ifne 2
1: ldc "Creating threads is not allowed."
invokestatic com.oracle.truffle.polyglot.PolyglotEngineException.illegalState:(Ljava/lang/String;)Lcom/oracle/truffle/polyglot/PolyglotEngineException;
athrow
2: StackMap locals:
StackMap stack:
aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
astore 7
start local 7 3: aload 3
ifnull 6
4: aload 3
checkcast com.oracle.truffle.polyglot.PolyglotContextImpl
astore 8
start local 8 5: aload 8
aload 7
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.language:Lcom/oracle/truffle/polyglot/PolyglotLanguage;
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.getContext:(Lcom/oracle/truffle/polyglot/PolyglotLanguage;)Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 7
end local 8 6: StackMap locals: com.oracle.truffle.polyglot.PolyglotLanguageContext
StackMap stack:
new com.oracle.truffle.polyglot.PolyglotThread
dup
aload 7
aload 2
aload 4
lload 5
invokespecial com.oracle.truffle.polyglot.PolyglotThread.<init>:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Runnable;Ljava/lang/ThreadGroup;J)V
astore 8
start local 8 7: aload 7
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.context:Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
aload 8
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.checkMultiThreadedAccess:(Lcom/oracle/truffle/polyglot/PolyglotThread;)V
8: aload 8
areturn
end local 8 end local 7 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 9 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 9 1 polyglotLanguageContext Ljava/lang/Object;
0 9 2 runnable Ljava/lang/Runnable;
0 9 3 innerContextImpl Ljava/lang/Object;
0 9 4 group Ljava/lang/ThreadGroup;
0 9 5 stackSize J
3 9 7 threadContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
5 6 8 innerContext Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
7 9 8 newThread Lcom/oracle/truffle/polyglot/PolyglotThread;
MethodParameters:
Name Flags
polyglotLanguageContext
runnable
innerContextImpl
group
stackSize
public java.lang.RuntimeException wrapHostException(com.oracle.truffle.api.nodes.Node, java.lang.Object, java.lang.Throwable);
descriptor: (Lcom/oracle/truffle/api/nodes/Node;Ljava/lang/Object;Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
aload 3
invokestatic com.oracle.truffle.polyglot.PolyglotImpl.hostToGuestException:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 location Lcom/oracle/truffle/api/nodes/Node;
0 1 2 languageContext Ljava/lang/Object;
0 1 3 exception Ljava/lang/Throwable;
MethodParameters:
Name Flags
location
languageContext
exception
public boolean isHostException(java.lang.Throwable);
descriptor: (Ljava/lang/Throwable;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof com.oracle.truffle.polyglot.HostException
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 exception Ljava/lang/Throwable;
MethodParameters:
Name Flags
exception
public java.lang.Throwable asHostException(java.lang.Throwable);
descriptor: (Ljava/lang/Throwable;)Ljava/lang/Throwable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof com.oracle.truffle.polyglot.HostException
ifne 3
1: invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreterAndInvalidate:()V
2: new java.lang.IllegalArgumentException
dup
ldc "Provided value not a host exception."
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals:
StackMap stack:
aload 1
checkcast com.oracle.truffle.polyglot.HostException
invokevirtual com.oracle.truffle.polyglot.HostException.getOriginal:()Ljava/lang/Throwable;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 4 1 exception Ljava/lang/Throwable;
MethodParameters:
Name Flags
exception
public java.lang.Object getCurrentHostContext();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=1
start local 0 0: invokestatic com.oracle.truffle.polyglot.PolyglotContextImpl.currentNotEntered:()Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
astore 1
start local 1 1: aload 1
ifnonnull 2
aconst_null
goto 3
StackMap locals: com.oracle.truffle.polyglot.PolyglotContextImpl
StackMap stack:
2: aload 1
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.getHostContext:()Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
StackMap locals:
StackMap stack: com.oracle.truffle.polyglot.PolyglotLanguageContext
3: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
1 4 1 polyglotContext Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
public java.lang.Object getPolyglotBindingsForLanguage(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.getPolyglotGuestBindings:()Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 polyglotLanguageContext Ljava/lang/Object;
MethodParameters:
Name Flags
polyglotLanguageContext
public java.lang.Object findMetaObjectForLanguage(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=3
start local 0 start local 1 start local 2 0: invokestatic com.oracle.truffle.api.interop.InteropLibrary.getFactory:()Lcom/oracle/truffle/api/library/LibraryFactory;
aload 2
invokevirtual com.oracle.truffle.api.library.LibraryFactory.getUncached:(Ljava/lang/Object;)Lcom/oracle/truffle/api/library/Library;
checkcast com.oracle.truffle.api.interop.InteropLibrary
astore 3
start local 3 1: aload 3
aload 2
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.hasMetaObject:(Ljava/lang/Object;)Z
ifeq 6
2: aload 3
aload 2
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.getMetaObject:(Ljava/lang/Object;)Ljava/lang/Object;
3: areturn
4: StackMap locals: com.oracle.truffle.polyglot.EngineAccessor$EngineImpl java.lang.Object java.lang.Object com.oracle.truffle.api.interop.InteropLibrary
StackMap stack: com.oracle.truffle.api.interop.UnsupportedMessageException
astore 4
start local 4 5: ldc "Unexpected unsupported message."
aload 4
invokestatic com.oracle.truffle.api.CompilerDirectives.shouldNotReachHere:(Ljava/lang/String;Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
athrow
end local 4 6: StackMap locals:
StackMap stack:
aconst_null
areturn
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/EngineAccessor$EngineImpl;
0 7 1 polyglotLanguageContext Ljava/lang/Object;
0 7 2 value Ljava/lang/Object;
1 7 3 lib Lcom/oracle/truffle/api/interop/InteropLibrary;
5 6 4 e Lcom/oracle/truffle/api/interop/UnsupportedMessageException;
Exception table:
from to target type
2 3 4 Class com.oracle.truffle.api.interop.UnsupportedMessageException
MethodParameters:
Name Flags
polyglotLanguageContext
value
public org.graalvm.polyglot.PolyglotException wrapGuestException(java.lang.String, java.lang.Throwable);
descriptor: (Ljava/lang/String;Ljava/lang/Throwable;)Lorg/graalvm/polyglot/PolyglotException;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=6, args_size=3
start local 0 start local 1 start local 2 0: invokestatic com.oracle.truffle.polyglot.PolyglotContextImpl.currentNotEntered:()Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
astore 3
start local 3 1: aload 3
ifnonnull 3
2: aconst_null
areturn
3: StackMap locals: com.oracle.truffle.polyglot.PolyglotContextImpl
StackMap stack:
aload 3
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.engine:Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
aconst_null
aload 1
aconst_null
iconst_1
iconst_1
invokevirtual com.oracle.truffle.polyglot.PolyglotEngineImpl.findLanguage:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/String;Ljava/lang/String;ZZ)Lcom/oracle/truffle/polyglot/PolyglotLanguage;
astore 4
start local 4 4: aload 3
aload 4
aconst_null
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.getContextInitialized:(Lcom/oracle/truffle/polyglot/PolyglotLanguage;Lcom/oracle/truffle/polyglot/PolyglotLanguage;)Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 5
start local 5 5: aload 5
aload 2
iconst_1
invokestatic com.oracle.truffle.polyglot.PolyglotImpl.guestToHostException:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/lang/Throwable;Z)Lorg/graalvm/polyglot/PolyglotException;
areturn
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 6 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 6 1 languageId Ljava/lang/String;
0 6 2 e Ljava/lang/Throwable;
1 6 3 pc Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
4 6 4 language Lcom/oracle/truffle/polyglot/PolyglotLanguage;
5 6 5 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
MethodParameters:
Name Flags
languageId
e
public java.util.Set<? extends java.lang.Class<?>> getProvidedTags(com.oracle.truffle.api.nodes.LanguageInfo);
descriptor: (Lcom/oracle/truffle/api/nodes/LanguageInfo;)Ljava/util/Set;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: getstatic com.oracle.truffle.polyglot.EngineAccessor.NODES:Lcom/oracle/truffle/api/impl/Accessor$NodeSupport;
aload 1
invokevirtual com.oracle.truffle.api.impl.Accessor$NodeSupport.getPolyglotLanguage:(Lcom/oracle/truffle/api/nodes/LanguageInfo;)Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.PolyglotLanguage
getfield com.oracle.truffle.polyglot.PolyglotLanguage.cache:Lcom/oracle/truffle/polyglot/LanguageCache;
invokevirtual com.oracle.truffle.polyglot.LanguageCache.getProvidedTags:()Ljava/util/Set;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 language Lcom/oracle/truffle/api/nodes/LanguageInfo;
Signature: (Lcom/oracle/truffle/api/nodes/LanguageInfo;)Ljava/util/Set<+Ljava/lang/Class<*>;>;
MethodParameters:
Name Flags
language
public <T> T getOrCreateRuntimeData();
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=3, args_size=2
start local 0 start local 1 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotEngineImpl
astore 2
start local 2 1: aload 2
ifnonnull 3
2: invokestatic com.oracle.truffle.polyglot.PolyglotEngineImpl.getFallbackEngine:()Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
astore 2
3: StackMap locals: com.oracle.truffle.polyglot.PolyglotEngineImpl
StackMap stack:
aload 2
getfield com.oracle.truffle.polyglot.PolyglotEngineImpl.runtimeData:Ljava/lang/Object;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 4 1 polyglotEngine Ljava/lang/Object;
1 4 2 useEngine Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Object;)TT;
MethodParameters:
Name Flags
polyglotEngine
public org.graalvm.options.OptionValues getEngineOptionValues(java.lang.Object);
descriptor: (Ljava/lang/Object;)Lorg/graalvm/options/OptionValues;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotEngineImpl
getfield com.oracle.truffle.polyglot.PolyglotEngineImpl.engineOptionValues:Lcom/oracle/truffle/polyglot/OptionValuesImpl;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 polyglotEngine Ljava/lang/Object;
MethodParameters:
Name Flags
polyglotEngine
public java.util.Collection<com.oracle.truffle.api.CallTarget> findCallTargets();
descriptor: (Ljava/lang/Object;)Ljava/util/Collection;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: getstatic com.oracle.truffle.polyglot.EngineAccessor.INSTRUMENT:Lcom/oracle/truffle/api/impl/Accessor$InstrumentSupport;
aload 1
checkcast com.oracle.truffle.polyglot.PolyglotEngineImpl
getfield com.oracle.truffle.polyglot.PolyglotEngineImpl.instrumentationHandler:Ljava/lang/Object;
invokevirtual com.oracle.truffle.api.impl.Accessor$InstrumentSupport.getLoadedCallTargets:(Ljava/lang/Object;)Ljava/util/Collection;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 polyglotEngine Ljava/lang/Object;
Signature: (Ljava/lang/Object;)Ljava/util/Collection<Lcom/oracle/truffle/api/CallTarget;>;
MethodParameters:
Name Flags
polyglotEngine
public void preinitializeContext(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotEngineImpl
invokevirtual com.oracle.truffle.polyglot.PolyglotEngineImpl.preInitialize:()V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 2 1 polyglotEngine Ljava/lang/Object;
MethodParameters:
Name Flags
polyglotEngine
public void finalizeStore(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotEngineImpl
invokevirtual com.oracle.truffle.polyglot.PolyglotEngineImpl.finalizeStore:()V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 2 1 polyglotEngine Ljava/lang/Object;
MethodParameters:
Name Flags
polyglotEngine
public java.lang.Object getEngineLock(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotEngineImpl
getfield com.oracle.truffle.polyglot.PolyglotEngineImpl.lock:Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 polyglotEngine Ljava/lang/Object;
MethodParameters:
Name Flags
polyglotEngine
public boolean isInternal(org.graalvm.polyglot.io.FileSystem);
descriptor: (Lorg/graalvm/polyglot/io/FileSystem;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic com.oracle.truffle.polyglot.FileSystems.isInternal:(Lorg/graalvm/polyglot/io/FileSystem;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 fs Lorg/graalvm/polyglot/io/FileSystem;
MethodParameters:
Name Flags
fs
public boolean hasAllAccess(org.graalvm.polyglot.io.FileSystem);
descriptor: (Lorg/graalvm/polyglot/io/FileSystem;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic com.oracle.truffle.polyglot.FileSystems.hasAllAccess:(Lorg/graalvm/polyglot/io/FileSystem;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 fs Lorg/graalvm/polyglot/io/FileSystem;
MethodParameters:
Name Flags
fs
public void addToHostClassPath(java.lang.Object, com.oracle.truffle.api.TruffleFile);
descriptor: (Ljava/lang/Object;Lcom/oracle/truffle/api/TruffleFile;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.context:Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.getHostContextImpl:()Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;
astore 3
start local 3 1: aload 3
aload 2
invokevirtual com.oracle.truffle.polyglot.HostLanguage$HostContext.addToHostClasspath:(Lcom/oracle/truffle/api/TruffleFile;)V
2: return
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/EngineAccessor$EngineImpl;
0 3 1 polyglotLanguageContext Ljava/lang/Object;
0 3 2 entry Lcom/oracle/truffle/api/TruffleFile;
1 3 3 hostContext Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;
MethodParameters:
Name Flags
polyglotLanguageContext
entry
public java.lang.String getLanguageHome(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguage
getfield com.oracle.truffle.polyglot.PolyglotLanguage.cache:Lcom/oracle/truffle/polyglot/LanguageCache;
invokevirtual com.oracle.truffle.polyglot.LanguageCache.getLanguageHome:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 engineObject Ljava/lang/Object;
MethodParameters:
Name Flags
engineObject
public boolean isInstrumentExceptionsAreThrown(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokestatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.getEngine:(Ljava/lang/Object;)Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
getfield com.oracle.truffle.polyglot.PolyglotEngineImpl.engineOptionValues:Lcom/oracle/truffle/polyglot/OptionValuesImpl;
astore 2
start local 2 1: invokestatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.areAssertionsEnabled:()Z
ifeq 2
aload 2
getstatic com.oracle.truffle.polyglot.PolyglotEngineOptions.InstrumentExceptionsAreThrown:Lorg/graalvm/options/OptionKey;
invokevirtual com.oracle.truffle.polyglot.OptionValuesImpl.hasBeenSet:(Lorg/graalvm/options/OptionKey;)Z
ifeq 4
2: StackMap locals: com.oracle.truffle.polyglot.OptionValuesImpl
StackMap stack:
aload 2
getstatic com.oracle.truffle.polyglot.PolyglotEngineOptions.InstrumentExceptionsAreThrown:Lorg/graalvm/options/OptionKey;
invokevirtual com.oracle.truffle.polyglot.OptionValuesImpl.get:(Lorg/graalvm/options/OptionKey;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ifne 4
3: iconst_0
ireturn
StackMap locals:
StackMap stack:
4: iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 5 1 polyglotEngine Ljava/lang/Object;
1 5 2 engineOptionValues Lcom/oracle/truffle/polyglot/OptionValuesImpl;
MethodParameters:
Name Flags
polyglotEngine
private static boolean areAssertionsEnabled();
descriptor: ()Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=0
0: iconst_0
istore 0
start local 0 1: getstatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.$assertionsDisabled:Z
ifne 2
iconst_1
dup
istore 0
ifne 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals: int
StackMap stack:
iload 0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
1 3 0 assertsEnabled Z
public java.lang.Object createDefaultLoggerCache();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: invokestatic com.oracle.truffle.polyglot.PolyglotLoggers.defaultSPI:()Lcom/oracle/truffle/polyglot/PolyglotLoggers$LoggerCache;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
public java.util.logging.Handler getLogHandler(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/util/logging/Handler;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLoggers$LoggerCache
invokeinterface com.oracle.truffle.polyglot.PolyglotLoggers$LoggerCache.getLogHandler:()Ljava/util/logging/Handler;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 loggerCache Ljava/lang/Object;
MethodParameters:
Name Flags
loggerCache
public java.util.logging.LogRecord createLogRecord(java.lang.Object, java.util.logging.Level, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.Object[], java.lang.Throwable);
descriptor: (Ljava/lang/Object;Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;Ljava/lang/Throwable;)Ljava/util/logging/LogRecord;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=9, args_size=9
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLoggers$LoggerCache
aload 2
aload 3
aload 4
aload 5
aload 6
aload 7
aload 8
invokeinterface com.oracle.truffle.polyglot.PolyglotLoggers$LoggerCache.createLogRecord:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;Ljava/lang/Throwable;)Ljava/util/logging/LogRecord;
areturn
end local 8 end local 7 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 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 loggerCache Ljava/lang/Object;
0 1 2 level Ljava/util/logging/Level;
0 1 3 loggerName Ljava/lang/String;
0 1 4 message Ljava/lang/String;
0 1 5 className Ljava/lang/String;
0 1 6 methodName Ljava/lang/String;
0 1 7 parameters [Ljava/lang/Object;
0 1 8 thrown Ljava/lang/Throwable;
MethodParameters:
Name Flags
loggerCache
level
loggerName
message
className
methodName
parameters
thrown
public java.lang.Object getCurrentOuterContext();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: invokestatic com.oracle.truffle.polyglot.PolyglotLoggers.getCurrentOuterContext:()Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
public java.util.Map<java.lang.String, java.util.logging.Level> getLogLevels();
descriptor: (Ljava/lang/Object;)Ljava/util/Map;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLoggers$LoggerCache
invokeinterface com.oracle.truffle.polyglot.PolyglotLoggers$LoggerCache.getLogLevels:()Ljava/util/Map;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 loggerCache Ljava/lang/Object;
Signature: (Ljava/lang/Object;)Ljava/util/Map<Ljava/lang/String;Ljava/util/logging/Level;>;
MethodParameters:
Name Flags
loggerCache final
public java.lang.Object getLoggerOwner(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLoggers$LoggerCache
invokeinterface com.oracle.truffle.polyglot.PolyglotLoggers$LoggerCache.getEngine:()Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 loggerCache Ljava/lang/Object;
MethodParameters:
Name Flags
loggerCache
public java.util.Set<java.lang.String> getLanguageIds();
descriptor: ()Ljava/util/Set;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: invokestatic com.oracle.truffle.polyglot.LanguageCache.languages:()Ljava/util/Map;
invokeinterface java.util.Map.keySet:()Ljava/util/Set;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
Signature: ()Ljava/util/Set<Ljava/lang/String;>;
public java.util.Set<java.lang.String> getInstrumentIds();
descriptor: ()Ljava/util/Set;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=1
start local 0 0: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 1
start local 1 1: invokestatic com.oracle.truffle.polyglot.InstrumentCache.load:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 4
StackMap locals: com.oracle.truffle.polyglot.EngineAccessor$EngineImpl java.util.Set top java.util.Iterator
StackMap stack:
2: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.InstrumentCache
astore 2
start local 2 3: aload 1
aload 2
invokevirtual com.oracle.truffle.polyglot.InstrumentCache.getId:()Ljava/lang/String;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 2 4: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
1 6 1 ids Ljava/util/Set<Ljava/lang/String;>;
3 4 2 cache Lcom/oracle/truffle/polyglot/InstrumentCache;
Signature: ()Ljava/util/Set<Ljava/lang/String;>;
public java.util.Set<java.lang.String> getInternalIds();
descriptor: ()Ljava/util/Set;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: invokestatic com.oracle.truffle.polyglot.PolyglotLoggers.getInternalIds:()Ljava/util/Set;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
Signature: ()Ljava/util/Set<Ljava/lang/String;>;
public java.lang.Object asHostObject(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: getstatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.$assertionsDisabled:Z
ifne 1
aload 0
aload 1
invokevirtual com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.isHostObject:(Ljava/lang/Object;)Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 1
invokestatic com.oracle.truffle.polyglot.HostObject.valueOf:(Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 2 1 obj Ljava/lang/Object;
MethodParameters:
Name Flags
obj
public boolean isHostFunction(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic com.oracle.truffle.polyglot.HostFunction.isInstance:(Ljava/lang/Object;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 obj Ljava/lang/Object;
MethodParameters:
Name Flags
obj
public boolean isHostObject(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic com.oracle.truffle.polyglot.HostObject.isInstance:(Ljava/lang/Object;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 obj Ljava/lang/Object;
MethodParameters:
Name Flags
obj
public boolean isHostSymbol(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic com.oracle.truffle.polyglot.HostObject.isHostObjectInstance:(Ljava/lang/Object;)Z
ifeq 2
1: aload 1
checkcast com.oracle.truffle.polyglot.HostObject
invokevirtual com.oracle.truffle.polyglot.HostObject.isStaticClass:()Z
ireturn
2: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 3 1 obj Ljava/lang/Object;
MethodParameters:
Name Flags
obj
public <S> S lookupService(, com.oracle.truffle.api.nodes.LanguageInfo, com.oracle.truffle.api.nodes.LanguageInfo, java.lang.Class<S>);
descriptor: (Ljava/lang/Object;Lcom/oracle/truffle/api/nodes/LanguageInfo;Lcom/oracle/truffle/api/nodes/LanguageInfo;Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: getstatic com.oracle.truffle.polyglot.EngineAccessor.NODES:Lcom/oracle/truffle/api/impl/Accessor$NodeSupport;
aload 2
invokevirtual com.oracle.truffle.api.impl.Accessor$NodeSupport.getPolyglotLanguage:(Lcom/oracle/truffle/api/nodes/LanguageInfo;)Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.PolyglotLanguage
astore 5
start local 5 1: aload 5
getfield com.oracle.truffle.polyglot.PolyglotLanguage.cache:Lcom/oracle/truffle/polyglot/LanguageCache;
aload 4
invokevirtual com.oracle.truffle.polyglot.LanguageCache.supportsService:(Ljava/lang/Class;)Z
ifne 3
2: aconst_null
areturn
3: StackMap locals: com.oracle.truffle.polyglot.PolyglotLanguage
StackMap stack:
aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.context:Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
aload 5
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.getContext:(Lcom/oracle/truffle/polyglot/PolyglotLanguage;)Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 6
start local 6 4: aload 6
getstatic com.oracle.truffle.polyglot.EngineAccessor.NODES:Lcom/oracle/truffle/api/impl/Accessor$NodeSupport;
aload 3
invokevirtual com.oracle.truffle.api.impl.Accessor$NodeSupport.getPolyglotLanguage:(Lcom/oracle/truffle/api/nodes/LanguageInfo;)Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.PolyglotLanguage
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.ensureCreated:(Lcom/oracle/truffle/polyglot/PolyglotLanguage;)V
5: aload 6
aload 4
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.lookupService:(Ljava/lang/Class;)Ljava/lang/Object;
areturn
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 6 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 6 1 polyglotLanguageContext Ljava/lang/Object;
0 6 2 language Lcom/oracle/truffle/api/nodes/LanguageInfo;
0 6 3 accessingLanguage Lcom/oracle/truffle/api/nodes/LanguageInfo;
0 6 4 type Ljava/lang/Class<TS;>;
1 6 5 lang Lcom/oracle/truffle/polyglot/PolyglotLanguage;
4 6 6 context Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
Signature: <S:Ljava/lang/Object;>(Ljava/lang/Object;Lcom/oracle/truffle/api/nodes/LanguageInfo;Lcom/oracle/truffle/api/nodes/LanguageInfo;Ljava/lang/Class<TS;>;)TS;
MethodParameters:
Name Flags
polyglotLanguageContext
language
accessingLanguage
type
public com.oracle.truffle.api.TruffleLogger getLogger(java.lang.Object, java.lang.String);
descriptor: (Ljava/lang/Object;Ljava/lang/String;)Lcom/oracle/truffle/api/TruffleLogger;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotInstrument
astore 3
start local 3 1: aload 3
invokevirtual com.oracle.truffle.polyglot.PolyglotInstrument.getId:()Ljava/lang/String;
astore 4
start local 4 2: aload 1
invokestatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.getEngine:(Ljava/lang/Object;)Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
astore 5
start local 5 3: aload 5
invokevirtual com.oracle.truffle.polyglot.PolyglotEngineImpl.getOrCreateEngineLoggers:()Ljava/lang/Object;
astore 6
start local 6 4: getstatic com.oracle.truffle.polyglot.EngineAccessor.LANGUAGE:Lcom/oracle/truffle/api/impl/Accessor$LanguageSupport;
aload 4
aload 2
aload 6
invokevirtual com.oracle.truffle.api.impl.Accessor$LanguageSupport.getLogger:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)Lcom/oracle/truffle/api/TruffleLogger;
areturn
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 5 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 5 1 polyglotInstrument Ljava/lang/Object;
0 5 2 loggerName Ljava/lang/String;
1 5 3 instrument Lcom/oracle/truffle/polyglot/PolyglotInstrument;
2 5 4 id Ljava/lang/String;
3 5 5 engine Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
4 5 6 loggerCache Ljava/lang/Object;
MethodParameters:
Name Flags
polyglotInstrument
loggerName
public convertPrimitive(, java.lang.Class<?>);
descriptor: (Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
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
invokestatic com.oracle.truffle.polyglot.ToHostNode.convertLossLess:(Ljava/lang/Object;Ljava/lang/Class;Lcom/oracle/truffle/api/interop/InteropLibrary;)Ljava/lang/Object;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 value Ljava/lang/Object;
0 1 2 requestedType Ljava/lang/Class<*>;
Signature: (Ljava/lang/Object;Ljava/lang/Class<*>;)Ljava/lang/Object;
MethodParameters:
Name Flags
value
requestedType
public <T extends com.oracle.truffle.api.TruffleLanguage<C>, C> com.oracle.truffle.api.TruffleLanguage$ContextReference<C> lookupContextReference(, com.oracle.truffle.api.TruffleLanguage<?>, java.lang.Class<T>);
descriptor: (Ljava/lang/Object;Lcom/oracle/truffle/api/TruffleLanguage;Ljava/lang/Class;)Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.$assertionsDisabled:Z
ifne 1
aload 2
ifnull 1
aload 2
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aload 3
if_acmpne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 1
checkcast com.oracle.truffle.polyglot.PolyglotEngineImpl
aload 3
invokevirtual com.oracle.truffle.polyglot.PolyglotEngineImpl.getCurrentLanguageInstance:(Ljava/lang/Class;)Lcom/oracle/truffle/polyglot/PolyglotLanguageInstance;
astore 4
start local 4 2: aload 4
aload 2
invokestatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.resolveLanguage:(Lcom/oracle/truffle/api/TruffleLanguage;)Lcom/oracle/truffle/polyglot/PolyglotLanguage;
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageInstance.lookupContextSupplier:(Lcom/oracle/truffle/polyglot/PolyglotLanguage;)Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;
areturn
end local 4 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/EngineAccessor$EngineImpl;
0 3 1 polyglotEngine Ljava/lang/Object;
0 3 2 sourceLanguageSPI Lcom/oracle/truffle/api/TruffleLanguage<*>;
0 3 3 targetLanguageClass Ljava/lang/Class<TT;>;
2 3 4 instance Lcom/oracle/truffle/polyglot/PolyglotLanguageInstance;
Signature: <T:Lcom/oracle/truffle/api/TruffleLanguage<TC;>;C:Ljava/lang/Object;>(Ljava/lang/Object;Lcom/oracle/truffle/api/TruffleLanguage<*>;Ljava/lang/Class<TT;>;)Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<TC;>;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
MethodParameters:
Name Flags
polyglotEngine
sourceLanguageSPI
targetLanguageClass
public <T extends com.oracle.truffle.api.TruffleLanguage<C>, C> com.oracle.truffle.api.TruffleLanguage$ContextReference<C> getDirectContextReference(, com.oracle.truffle.api.TruffleLanguage<?>, java.lang.Class<T>);
descriptor: (Ljava/lang/Object;Lcom/oracle/truffle/api/TruffleLanguage;Ljava/lang/Class;)Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.$assertionsDisabled:Z
ifne 1
aload 2
ifnull 1
aload 2
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aload 3
if_acmpeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 2
invokestatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.resolveLanguageInstance:(Lcom/oracle/truffle/api/TruffleLanguage;)Lcom/oracle/truffle/polyglot/PolyglotLanguageInstance;
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageInstance.getDirectContextSupplier:()Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 2 1 polyglotEngine Ljava/lang/Object;
0 2 2 sourceLanguageSPI Lcom/oracle/truffle/api/TruffleLanguage<*>;
0 2 3 targetLanguageClass Ljava/lang/Class<TT;>;
Signature: <T:Lcom/oracle/truffle/api/TruffleLanguage<TC;>;C:Ljava/lang/Object;>(Ljava/lang/Object;Lcom/oracle/truffle/api/TruffleLanguage<*>;Ljava/lang/Class<TT;>;)Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<TC;>;
MethodParameters:
Name Flags
polyglotEngine
sourceLanguageSPI
targetLanguageClass
public <T extends com.oracle.truffle.api.TruffleLanguage<?>> com.oracle.truffle.api.TruffleLanguage$LanguageReference<T> getDirectLanguageReference(, com.oracle.truffle.api.TruffleLanguage<?>, java.lang.Class<T>);
descriptor: (Ljava/lang/Object;Lcom/oracle/truffle/api/TruffleLanguage;Ljava/lang/Class;)Lcom/oracle/truffle/api/TruffleLanguage$LanguageReference;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.$assertionsDisabled:Z
ifne 1
aload 2
ifnull 1
aload 2
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aload 3
if_acmpeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 2
invokestatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.resolveLanguageInstance:(Lcom/oracle/truffle/api/TruffleLanguage;)Lcom/oracle/truffle/polyglot/PolyglotLanguageInstance;
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageInstance.getDirectLanguageReference:()Lcom/oracle/truffle/api/TruffleLanguage$LanguageReference;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 2 1 polyglotEngine Ljava/lang/Object;
0 2 2 sourceLanguageSPI Lcom/oracle/truffle/api/TruffleLanguage<*>;
0 2 3 targetLanguageClass Ljava/lang/Class<TT;>;
Signature: <T:Lcom/oracle/truffle/api/TruffleLanguage<*>;>(Ljava/lang/Object;Lcom/oracle/truffle/api/TruffleLanguage<*>;Ljava/lang/Class<TT;>;)Lcom/oracle/truffle/api/TruffleLanguage$LanguageReference<TT;>;
MethodParameters:
Name Flags
polyglotEngine
sourceLanguageSPI
targetLanguageClass
public <T extends com.oracle.truffle.api.TruffleLanguage<?>> com.oracle.truffle.api.TruffleLanguage$LanguageReference<T> lookupLanguageReference(, com.oracle.truffle.api.TruffleLanguage<?>, java.lang.Class<T>);
descriptor: (Ljava/lang/Object;Lcom/oracle/truffle/api/TruffleLanguage;Ljava/lang/Class;)Lcom/oracle/truffle/api/TruffleLanguage$LanguageReference;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.$assertionsDisabled:Z
ifne 1
aload 2
ifnull 1
aload 2
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aload 3
if_acmpne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 1
checkcast com.oracle.truffle.polyglot.PolyglotEngineImpl
aload 3
invokevirtual com.oracle.truffle.polyglot.PolyglotEngineImpl.getCurrentLanguageInstance:(Ljava/lang/Class;)Lcom/oracle/truffle/polyglot/PolyglotLanguageInstance;
astore 4
start local 4 2: aload 4
aload 2
invokestatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.resolveLanguage:(Lcom/oracle/truffle/api/TruffleLanguage;)Lcom/oracle/truffle/polyglot/PolyglotLanguage;
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageInstance.lookupLanguageSupplier:(Lcom/oracle/truffle/polyglot/PolyglotLanguage;)Lcom/oracle/truffle/api/TruffleLanguage$LanguageReference;
areturn
end local 4 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/EngineAccessor$EngineImpl;
0 3 1 polyglotEngineImpl Ljava/lang/Object;
0 3 2 sourceLanguageSPI Lcom/oracle/truffle/api/TruffleLanguage<*>;
0 3 3 targetLanguageClass Ljava/lang/Class<TT;>;
2 3 4 instance Lcom/oracle/truffle/polyglot/PolyglotLanguageInstance;
Signature: <T:Lcom/oracle/truffle/api/TruffleLanguage<*>;>(Ljava/lang/Object;Lcom/oracle/truffle/api/TruffleLanguage<*>;Ljava/lang/Class<TT;>;)Lcom/oracle/truffle/api/TruffleLanguage$LanguageReference<TT;>;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
MethodParameters:
Name Flags
polyglotEngineImpl
sourceLanguageSPI
targetLanguageClass
private static com.oracle.truffle.polyglot.PolyglotLanguageInstance resolveLanguageInstance(com.oracle.truffle.api.TruffleLanguage<?>);
descriptor: (Lcom/oracle/truffle/api/TruffleLanguage;)Lcom/oracle/truffle/polyglot/PolyglotLanguageInstance;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
getstatic com.oracle.truffle.polyglot.EngineAccessor.LANGUAGE:Lcom/oracle/truffle/api/impl/Accessor$LanguageSupport;
aload 0
invokevirtual com.oracle.truffle.api.impl.Accessor$LanguageSupport.getPolyglotLanguageInstance:(Lcom/oracle/truffle/api/TruffleLanguage;)Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.PolyglotLanguageInstance
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 sourceLanguageSPI Lcom/oracle/truffle/api/TruffleLanguage<*>;
Signature: (Lcom/oracle/truffle/api/TruffleLanguage<*>;)Lcom/oracle/truffle/polyglot/PolyglotLanguageInstance;
MethodParameters:
Name Flags
sourceLanguageSPI
private static com.oracle.truffle.polyglot.PolyglotLanguage resolveLanguage(com.oracle.truffle.api.TruffleLanguage<?>);
descriptor: (Lcom/oracle/truffle/api/TruffleLanguage;)Lcom/oracle/truffle/polyglot/PolyglotLanguage;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
getstatic com.oracle.truffle.polyglot.EngineAccessor.LANGUAGE:Lcom/oracle/truffle/api/impl/Accessor$LanguageSupport;
aload 0
invokevirtual com.oracle.truffle.api.impl.Accessor$LanguageSupport.getPolyglotLanguageInstance:(Lcom/oracle/truffle/api/TruffleLanguage;)Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.PolyglotLanguageInstance
getfield com.oracle.truffle.polyglot.PolyglotLanguageInstance.language:Lcom/oracle/truffle/polyglot/PolyglotLanguage;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 sourceLanguageSPI Lcom/oracle/truffle/api/TruffleLanguage<*>;
Signature: (Lcom/oracle/truffle/api/TruffleLanguage<*>;)Lcom/oracle/truffle/polyglot/PolyglotLanguage;
MethodParameters:
Name Flags
sourceLanguageSPI
public org.graalvm.polyglot.io.FileSystem getFileSystem(java.lang.Object);
descriptor: (Ljava/lang/Object;)Lorg/graalvm/polyglot/io/FileSystem;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotContextImpl
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.config:Lcom/oracle/truffle/polyglot/PolyglotContextConfig;
getfield com.oracle.truffle.polyglot.PolyglotContextConfig.fileSystem:Lorg/graalvm/polyglot/io/FileSystem;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 polyglotContext Ljava/lang/Object;
MethodParameters:
Name Flags
polyglotContext
public int getAsynchronousStackDepth(java.lang.Object);
descriptor: (Ljava/lang/Object;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguage
getfield com.oracle.truffle.polyglot.PolyglotLanguage.engine:Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
invokevirtual com.oracle.truffle.polyglot.PolyglotEngineImpl.getAsynchronousStackDepth:()I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 polylgotLanguage Ljava/lang/Object;
MethodParameters:
Name Flags
polylgotLanguage
public void setAsynchronousStackDepth(java.lang.Object, int);
descriptor: (Ljava/lang/Object;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokestatic com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.getEngine:(Ljava/lang/Object;)Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
aload 1
checkcast com.oracle.truffle.polyglot.PolyglotInstrument
iload 2
invokevirtual com.oracle.truffle.polyglot.PolyglotEngineImpl.setAsynchronousStackDepth:(Lcom/oracle/truffle/polyglot/PolyglotInstrument;I)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 2 1 polyglotInstrument Ljava/lang/Object;
0 2 2 depth I
MethodParameters:
Name Flags
polyglotInstrument
depth
public boolean isCreateProcessAllowed(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.context:Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.config:Lcom/oracle/truffle/polyglot/PolyglotContextConfig;
getfield com.oracle.truffle.polyglot.PolyglotContextConfig.createProcessAllowed:Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 polylgotLanguageContext Ljava/lang/Object;
MethodParameters:
Name Flags
polylgotLanguageContext
public java.util.Map<java.lang.String, java.lang.String> getProcessEnvironment();
descriptor: (Ljava/lang/Object;)Ljava/util/Map;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.context:Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.config:Lcom/oracle/truffle/polyglot/PolyglotContextConfig;
invokevirtual com.oracle.truffle.polyglot.PolyglotContextConfig.getEnvironment:()Ljava/util/Map;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 polyglotLanguageContext Ljava/lang/Object;
Signature: (Ljava/lang/Object;)Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
MethodParameters:
Name Flags
polyglotLanguageContext
public java.lang.Process createSubProcess(, java.util.List<java.lang.String>, java.lang.String, java.util.Map<java.lang.String, java.lang.String>, boolean, org.graalvm.polyglot.io.ProcessHandler$Redirect, org.graalvm.polyglot.io.ProcessHandler$Redirect, org.graalvm.polyglot.io.ProcessHandler$Redirect);
descriptor: (Ljava/lang/Object;Ljava/util/List;Ljava/lang/String;Ljava/util/Map;ZLorg/graalvm/polyglot/io/ProcessHandler$Redirect;Lorg/graalvm/polyglot/io/ProcessHandler$Redirect;Lorg/graalvm/polyglot/io/ProcessHandler$Redirect;)Ljava/lang/Process;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=16, args_size=9
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
astore 9
start local 9 1: aload 9
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.getImpl:()Lcom/oracle/truffle/polyglot/PolyglotImpl;
invokevirtual com.oracle.truffle.polyglot.PolyglotImpl.getIO:()Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$IOAccess;
aload 7
invokevirtual org.graalvm.polyglot.impl.AbstractPolyglotImpl$IOAccess.getOutputStream:(Lorg/graalvm/polyglot/io/ProcessHandler$Redirect;)Ljava/io/OutputStream;
astore 10
start local 10 2: aload 9
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.getImpl:()Lcom/oracle/truffle/polyglot/PolyglotImpl;
invokevirtual com.oracle.truffle.polyglot.PolyglotImpl.getIO:()Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$IOAccess;
aload 8
invokevirtual org.graalvm.polyglot.impl.AbstractPolyglotImpl$IOAccess.getOutputStream:(Lorg/graalvm/polyglot/io/ProcessHandler$Redirect;)Ljava/io/OutputStream;
astore 11
start local 11 3: aload 10
ifnonnull 4
aload 7
goto 5
StackMap locals: com.oracle.truffle.polyglot.PolyglotLanguageContext java.io.OutputStream java.io.OutputStream
StackMap stack:
4: getstatic org.graalvm.polyglot.io.ProcessHandler$Redirect.PIPE:Lorg/graalvm/polyglot/io/ProcessHandler$Redirect;
StackMap locals:
StackMap stack: org.graalvm.polyglot.io.ProcessHandler$Redirect
5: astore 12
start local 12 6: aload 11
ifnonnull 7
aload 8
goto 8
StackMap locals: org.graalvm.polyglot.io.ProcessHandler$Redirect
StackMap stack:
7: getstatic org.graalvm.polyglot.io.ProcessHandler$Redirect.PIPE:Lorg/graalvm/polyglot/io/ProcessHandler$Redirect;
StackMap locals:
StackMap stack: org.graalvm.polyglot.io.ProcessHandler$Redirect
8: astore 13
start local 13 9: aload 9
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.getImpl:()Lcom/oracle/truffle/polyglot/PolyglotImpl;
invokevirtual com.oracle.truffle.polyglot.PolyglotImpl.getIO:()Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$IOAccess;
aload 2
aload 3
aload 4
iload 5
aload 6
aload 12
aload 13
invokevirtual org.graalvm.polyglot.impl.AbstractPolyglotImpl$IOAccess.newProcessCommand:(Ljava/util/List;Ljava/lang/String;Ljava/util/Map;ZLorg/graalvm/polyglot/io/ProcessHandler$Redirect;Lorg/graalvm/polyglot/io/ProcessHandler$Redirect;Lorg/graalvm/polyglot/io/ProcessHandler$Redirect;)Lorg/graalvm/polyglot/io/ProcessHandler$ProcessCommand;
astore 14
start local 14 10: aload 9
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.context:Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.config:Lcom/oracle/truffle/polyglot/PolyglotContextConfig;
getfield com.oracle.truffle.polyglot.PolyglotContextConfig.processHandler:Lorg/graalvm/polyglot/io/ProcessHandler;
aload 14
invokeinterface org.graalvm.polyglot.io.ProcessHandler.start:(Lorg/graalvm/polyglot/io/ProcessHandler$ProcessCommand;)Ljava/lang/Process;
astore 15
start local 15 11: aload 9
12: aload 2
13: aload 15
14: aload 10
15: aload 11
16: invokestatic com.oracle.truffle.polyglot.ProcessHandlers.decorate:(Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;Ljava/util/List;Ljava/lang/Process;Ljava/io/OutputStream;Ljava/io/OutputStream;)Ljava/lang/Process;
areturn
end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 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 17 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 17 1 polyglotLanguageContext Ljava/lang/Object;
0 17 2 cmd Ljava/util/List<Ljava/lang/String;>;
0 17 3 cwd Ljava/lang/String;
0 17 4 environment Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
0 17 5 redirectErrorStream Z
0 17 6 inputRedirect Lorg/graalvm/polyglot/io/ProcessHandler$Redirect;
0 17 7 outputRedirect Lorg/graalvm/polyglot/io/ProcessHandler$Redirect;
0 17 8 errorRedirect Lorg/graalvm/polyglot/io/ProcessHandler$Redirect;
1 17 9 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
2 17 10 stdOut Ljava/io/OutputStream;
3 17 11 stdErr Ljava/io/OutputStream;
6 17 12 useOutputRedirect Lorg/graalvm/polyglot/io/ProcessHandler$Redirect;
9 17 13 useErrorRedirect Lorg/graalvm/polyglot/io/ProcessHandler$Redirect;
10 17 14 command Lorg/graalvm/polyglot/io/ProcessHandler$ProcessCommand;
11 17 15 process Ljava/lang/Process;
Exceptions:
throws java.io.IOException
Signature: (Ljava/lang/Object;Ljava/util/List<Ljava/lang/String;>;Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;ZLorg/graalvm/polyglot/io/ProcessHandler$Redirect;Lorg/graalvm/polyglot/io/ProcessHandler$Redirect;Lorg/graalvm/polyglot/io/ProcessHandler$Redirect;)Ljava/lang/Process;
MethodParameters:
Name Flags
polyglotLanguageContext
cmd
cwd
environment
redirectErrorStream
inputRedirect
outputRedirect
errorRedirect
public boolean hasDefaultProcessHandler(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.context:Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.config:Lcom/oracle/truffle/polyglot/PolyglotContextConfig;
getfield com.oracle.truffle.polyglot.PolyglotContextConfig.processHandler:Lorg/graalvm/polyglot/io/ProcessHandler;
invokestatic com.oracle.truffle.polyglot.ProcessHandlers.isDefault:(Lorg/graalvm/polyglot/io/ProcessHandler;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 polyglotLanguageContext Ljava/lang/Object;
MethodParameters:
Name Flags
polyglotLanguageContext
public org.graalvm.polyglot.io.ProcessHandler$Redirect createRedirectToOutputStream(java.lang.Object, java.io.OutputStream);
descriptor: (Ljava/lang/Object;Ljava/io/OutputStream;)Lorg/graalvm/polyglot/io/ProcessHandler$Redirect;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.getImpl:()Lcom/oracle/truffle/polyglot/PolyglotImpl;
invokevirtual com.oracle.truffle.polyglot.PolyglotImpl.getIO:()Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl$IOAccess;
aload 2
invokevirtual org.graalvm.polyglot.impl.AbstractPolyglotImpl$IOAccess.createRedirectToStream:(Ljava/io/OutputStream;)Lorg/graalvm/polyglot/io/ProcessHandler$Redirect;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 polyglotLanguageContext Ljava/lang/Object;
0 1 2 stream Ljava/io/OutputStream;
MethodParameters:
Name Flags
polyglotLanguageContext
stream
public boolean isIOAllowed();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: getstatic com.oracle.truffle.polyglot.PolyglotEngineImpl.ALLOW_IO:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
public java.lang.String getUnparsedOptionValue(org.graalvm.options.OptionValues, org.graalvm.options.OptionKey<?>);
descriptor: (Lorg/graalvm/options/OptionValues;Lorg/graalvm/options/OptionKey;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
instanceof com.oracle.truffle.polyglot.OptionValuesImpl
ifne 2
1: new java.lang.IllegalArgumentException
dup
ldc "Only %s is supported."
iconst_1
anewarray java.lang.Object
dup
iconst_0
ldc Lcom/oracle/truffle/polyglot/OptionValuesImpl;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 1
checkcast com.oracle.truffle.polyglot.OptionValuesImpl
aload 2
invokevirtual com.oracle.truffle.polyglot.OptionValuesImpl.getUnparsedOptionValue:(Lorg/graalvm/options/OptionKey;)Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 3 1 optionValues Lorg/graalvm/options/OptionValues;
0 3 2 optionKey Lorg/graalvm/options/OptionKey<*>;
Signature: (Lorg/graalvm/options/OptionValues;Lorg/graalvm/options/OptionKey<*>;)Ljava/lang/String;
MethodParameters:
Name Flags
optionValues
optionKey
public java.lang.String getRelativePathInLanguageHome(com.oracle.truffle.api.TruffleFile);
descriptor: (Lcom/oracle/truffle/api/TruffleFile;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic com.oracle.truffle.polyglot.FileSystems.getRelativePathInLanguageHome:(Lcom/oracle/truffle/api/TruffleFile;)Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 truffleFile Lcom/oracle/truffle/api/TruffleFile;
MethodParameters:
Name Flags
truffleFile
public void onSourceCreated(com.oracle.truffle.api.source.Source);
descriptor: (Lcom/oracle/truffle/api/source/Source;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.truffle.polyglot.PolyglotContextImpl.currentNotEntered:()Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
astore 2
start local 2 1: aload 2
ifnull 3
aload 2
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.sourcesToInvalidate:Ljava/util/List;
ifnull 3
2: aload 2
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.sourcesToInvalidate:Ljava/util/List;
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
3: StackMap locals: com.oracle.truffle.polyglot.PolyglotContextImpl
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 4 1 source Lcom/oracle/truffle/api/source/Source;
1 4 2 currentContext Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
MethodParameters:
Name Flags
source
public java.lang.String getReinitializedPath(com.oracle.truffle.api.TruffleFile);
descriptor: (Lcom/oracle/truffle/api/TruffleFile;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: getstatic com.oracle.truffle.polyglot.EngineAccessor.LANGUAGE:Lcom/oracle/truffle/api/impl/Accessor$LanguageSupport;
aload 1
invokevirtual com.oracle.truffle.api.impl.Accessor$LanguageSupport.getFileSystem:(Lcom/oracle/truffle/api/TruffleFile;)Lorg/graalvm/polyglot/io/FileSystem;
astore 2
start local 2 1: getstatic com.oracle.truffle.polyglot.EngineAccessor.LANGUAGE:Lcom/oracle/truffle/api/impl/Accessor$LanguageSupport;
aload 1
invokevirtual com.oracle.truffle.api.impl.Accessor$LanguageSupport.getPath:(Lcom/oracle/truffle/api/TruffleFile;)Ljava/nio/file/Path;
astore 3
start local 3 2: aload 2
checkcast com.oracle.truffle.polyglot.FileSystems$PreInitializeContextFileSystem
aload 3
invokevirtual com.oracle.truffle.polyglot.FileSystems$PreInitializeContextFileSystem.pathToString:(Ljava/nio/file/Path;)Ljava/lang/String;
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/EngineAccessor$EngineImpl;
0 3 1 truffleFile Lcom/oracle/truffle/api/TruffleFile;
1 3 2 fs Lorg/graalvm/polyglot/io/FileSystem;
2 3 3 path Ljava/nio/file/Path;
MethodParameters:
Name Flags
truffleFile
public java.net.URI getReinitializedURI(com.oracle.truffle.api.TruffleFile);
descriptor: (Lcom/oracle/truffle/api/TruffleFile;)Ljava/net/URI;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: getstatic com.oracle.truffle.polyglot.EngineAccessor.LANGUAGE:Lcom/oracle/truffle/api/impl/Accessor$LanguageSupport;
aload 1
invokevirtual com.oracle.truffle.api.impl.Accessor$LanguageSupport.getFileSystem:(Lcom/oracle/truffle/api/TruffleFile;)Lorg/graalvm/polyglot/io/FileSystem;
astore 2
start local 2 1: getstatic com.oracle.truffle.polyglot.EngineAccessor.LANGUAGE:Lcom/oracle/truffle/api/impl/Accessor$LanguageSupport;
aload 1
invokevirtual com.oracle.truffle.api.impl.Accessor$LanguageSupport.getPath:(Lcom/oracle/truffle/api/TruffleFile;)Ljava/nio/file/Path;
astore 3
start local 3 2: aload 2
checkcast com.oracle.truffle.polyglot.FileSystems$PreInitializeContextFileSystem
aload 3
invokevirtual com.oracle.truffle.polyglot.FileSystems$PreInitializeContextFileSystem.absolutePathtoURI:(Ljava/nio/file/Path;)Ljava/net/URI;
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/EngineAccessor$EngineImpl;
0 3 1 truffleFile Lcom/oracle/truffle/api/TruffleFile;
1 3 2 fs Lorg/graalvm/polyglot/io/FileSystem;
2 3 3 path Ljava/nio/file/Path;
MethodParameters:
Name Flags
truffleFile
public boolean initializeLanguage(java.lang.Object, com.oracle.truffle.api.nodes.LanguageInfo);
descriptor: (Ljava/lang/Object;Lcom/oracle/truffle/api/nodes/LanguageInfo;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=3
start local 0 start local 1 start local 2 0: getstatic com.oracle.truffle.polyglot.EngineAccessor.NODES:Lcom/oracle/truffle/api/impl/Accessor$NodeSupport;
aload 2
invokevirtual com.oracle.truffle.api.impl.Accessor$NodeSupport.getPolyglotLanguage:(Lcom/oracle/truffle/api/nodes/LanguageInfo;)Ljava/lang/Object;
checkcast com.oracle.truffle.polyglot.PolyglotLanguage
astore 3
start local 3 1: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.context:Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
aload 3
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.getContext:(Lcom/oracle/truffle/polyglot/PolyglotLanguage;)Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
astore 4
start local 4 2: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.language:Lcom/oracle/truffle/polyglot/PolyglotLanguage;
astore 5
start local 5 3: aload 4
aload 5
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.checkAccess:(Lcom/oracle/truffle/polyglot/PolyglotLanguage;)V
4: goto 9
StackMap locals: com.oracle.truffle.polyglot.EngineAccessor$EngineImpl java.lang.Object com.oracle.truffle.api.nodes.LanguageInfo com.oracle.truffle.polyglot.PolyglotLanguage com.oracle.truffle.polyglot.PolyglotLanguageContext com.oracle.truffle.polyglot.PolyglotLanguage
StackMap stack: com.oracle.truffle.polyglot.PolyglotEngineException
5: astore 6
start local 6 6: aload 6
getfield com.oracle.truffle.polyglot.PolyglotEngineException.e:Ljava/lang/RuntimeException;
instanceof java.lang.IllegalArgumentException
ifeq 8
7: new java.lang.SecurityException
dup
aload 6
getfield com.oracle.truffle.polyglot.PolyglotEngineException.e:Ljava/lang/RuntimeException;
invokevirtual java.lang.RuntimeException.getMessage:()Ljava/lang/String;
invokespecial java.lang.SecurityException.<init>:(Ljava/lang/String;)V
athrow
8: StackMap locals: com.oracle.truffle.polyglot.PolyglotEngineException
StackMap stack:
aload 6
athrow
end local 6 9: StackMap locals:
StackMap stack:
aload 4
aload 5
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.ensureInitialized:(Lcom/oracle/truffle/polyglot/PolyglotLanguage;)Z
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 10 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 10 1 polyglotLanguageContext Ljava/lang/Object;
0 10 2 targetLanguage Lcom/oracle/truffle/api/nodes/LanguageInfo;
1 10 3 targetPolyglotLanguage Lcom/oracle/truffle/polyglot/PolyglotLanguage;
2 10 4 targetLanguageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
3 10 5 accessingPolyglotLanguage Lcom/oracle/truffle/polyglot/PolyglotLanguage;
6 9 6 notAccessible Lcom/oracle/truffle/polyglot/PolyglotEngineException;
Exception table:
from to target type
3 4 5 Class com.oracle.truffle.polyglot.PolyglotEngineException
MethodParameters:
Name Flags
polyglotLanguageContext
targetLanguage
public boolean isHostToGuestRootNode(com.oracle.truffle.api.nodes.RootNode);
descriptor: (Lcom/oracle/truffle/api/nodes/RootNode;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof com.oracle.truffle.polyglot.HostToGuestRootNode
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 rootNode Lcom/oracle/truffle/api/nodes/RootNode;
MethodParameters:
Name Flags
rootNode
public java.lang.AssertionError invalidSharingError(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/AssertionError;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotEngineImpl
invokestatic com.oracle.truffle.polyglot.PolyglotReferences.invalidSharingError:(Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;)Ljava/lang/AssertionError;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 polyglotEngine Ljava/lang/Object;
Exceptions:
throws java.lang.AssertionError
MethodParameters:
Name Flags
polyglotEngine
public <T> com.oracle.truffle.api.ContextLocal<T> createInstrumentContextLocal();
descriptor: (Ljava/lang/Object;)Lcom/oracle/truffle/api/ContextLocal;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic com.oracle.truffle.polyglot.PolyglotLocals.createInstrumentContextLocal:(Ljava/lang/Object;)Lcom/oracle/truffle/api/ContextLocal;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 factory Ljava/lang/Object;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Object;)Lcom/oracle/truffle/api/ContextLocal<TT;>;
MethodParameters:
Name Flags
factory
public <T> com.oracle.truffle.api.ContextThreadLocal<T> createInstrumentContextThreadLocal();
descriptor: (Ljava/lang/Object;)Lcom/oracle/truffle/api/ContextThreadLocal;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic com.oracle.truffle.polyglot.PolyglotLocals.createInstrumentContextThreadLocal:(Ljava/lang/Object;)Lcom/oracle/truffle/api/ContextThreadLocal;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 factory Ljava/lang/Object;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Object;)Lcom/oracle/truffle/api/ContextThreadLocal<TT;>;
MethodParameters:
Name Flags
factory
public <T> com.oracle.truffle.api.ContextLocal<T> createLanguageContextLocal();
descriptor: (Ljava/lang/Object;)Lcom/oracle/truffle/api/ContextLocal;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic com.oracle.truffle.polyglot.PolyglotLocals.createLanguageContextLocal:(Ljava/lang/Object;)Lcom/oracle/truffle/api/ContextLocal;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 factory Ljava/lang/Object;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Object;)Lcom/oracle/truffle/api/ContextLocal<TT;>;
MethodParameters:
Name Flags
factory
public <T> com.oracle.truffle.api.ContextThreadLocal<T> createLanguageContextThreadLocal();
descriptor: (Ljava/lang/Object;)Lcom/oracle/truffle/api/ContextThreadLocal;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic com.oracle.truffle.polyglot.PolyglotLocals.createLanguageContextThreadLocal:(Ljava/lang/Object;)Lcom/oracle/truffle/api/ContextThreadLocal;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 factory Ljava/lang/Object;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Object;)Lcom/oracle/truffle/api/ContextThreadLocal<TT;>;
MethodParameters:
Name Flags
factory
public void initializeInstrumentContextLocal(java.util.List<? extends com.oracle.truffle.api.ContextLocal<?>>, );
descriptor: (Ljava/util/List;Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
checkcast com.oracle.truffle.polyglot.PolyglotInstrument
invokestatic com.oracle.truffle.polyglot.PolyglotLocals.initializeInstrumentContextLocals:(Ljava/util/List;Lcom/oracle/truffle/polyglot/PolyglotInstrument;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 2 1 locals Ljava/util/List<+Lcom/oracle/truffle/api/ContextLocal<*>;>;
0 2 2 polyglotInstrument Ljava/lang/Object;
Signature: (Ljava/util/List<+Lcom/oracle/truffle/api/ContextLocal<*>;>;Ljava/lang/Object;)V
MethodParameters:
Name Flags
locals
polyglotInstrument
public void initializeInstrumentContextThreadLocal(java.util.List<? extends com.oracle.truffle.api.ContextThreadLocal<?>>, );
descriptor: (Ljava/util/List;Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
checkcast com.oracle.truffle.polyglot.PolyglotInstrument
invokestatic com.oracle.truffle.polyglot.PolyglotLocals.initializeInstrumentContextThreadLocals:(Ljava/util/List;Lcom/oracle/truffle/polyglot/PolyglotInstrument;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 2 1 local Ljava/util/List<+Lcom/oracle/truffle/api/ContextThreadLocal<*>;>;
0 2 2 polyglotInstrument Ljava/lang/Object;
Signature: (Ljava/util/List<+Lcom/oracle/truffle/api/ContextThreadLocal<*>;>;Ljava/lang/Object;)V
MethodParameters:
Name Flags
local
polyglotInstrument
public boolean isPolyglotObject(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: invokestatic com.oracle.truffle.polyglot.PolyglotImpl.getInstance:()Lcom/oracle/truffle/polyglot/PolyglotImpl;
aload 1
if_acmpne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 2 1 polyglotObject Ljava/lang/Object;
MethodParameters:
Name Flags
polyglotObject
public void initializeLanguageContextLocal(java.util.List<? extends com.oracle.truffle.api.ContextLocal<?>>, );
descriptor: (Ljava/util/List;Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
checkcast com.oracle.truffle.polyglot.PolyglotLanguageInstance
invokestatic com.oracle.truffle.polyglot.PolyglotLocals.initializeLanguageContextLocals:(Ljava/util/List;Lcom/oracle/truffle/polyglot/PolyglotLanguageInstance;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 2 1 locals Ljava/util/List<+Lcom/oracle/truffle/api/ContextLocal<*>;>;
0 2 2 polyglotLanguageInstance Ljava/lang/Object;
Signature: (Ljava/util/List<+Lcom/oracle/truffle/api/ContextLocal<*>;>;Ljava/lang/Object;)V
MethodParameters:
Name Flags
locals
polyglotLanguageInstance
public void initializeLanguageContextThreadLocal(java.util.List<? extends com.oracle.truffle.api.ContextThreadLocal<?>>, );
descriptor: (Ljava/util/List;Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
checkcast com.oracle.truffle.polyglot.PolyglotLanguageInstance
invokestatic com.oracle.truffle.polyglot.PolyglotLocals.initializeLanguageContextThreadLocals:(Ljava/util/List;Lcom/oracle/truffle/polyglot/PolyglotLanguageInstance;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 2 1 local Ljava/util/List<+Lcom/oracle/truffle/api/ContextThreadLocal<*>;>;
0 2 2 polyglotLanguageInstance Ljava/lang/Object;
Signature: (Ljava/util/List<+Lcom/oracle/truffle/api/ContextThreadLocal<*>;>;Ljava/lang/Object;)V
MethodParameters:
Name Flags
local
polyglotLanguageInstance
public org.graalvm.options.OptionValues getInstrumentContextOptions(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Lorg/graalvm/options/OptionValues;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotInstrument
astore 3
start local 3 1: aload 2
checkcast com.oracle.truffle.polyglot.PolyglotContextImpl
astore 4
start local 4 2: aload 4
aload 3
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.getInstrumentContextOptions:(Lcom/oracle/truffle/polyglot/PolyglotInstrument;)Lorg/graalvm/options/OptionValues;
areturn
end local 4 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/EngineAccessor$EngineImpl;
0 3 1 polyglotInstrument Ljava/lang/Object;
0 3 2 polyglotContext Ljava/lang/Object;
1 3 3 instrument Lcom/oracle/truffle/polyglot/PolyglotInstrument;
2 3 4 context Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
MethodParameters:
Name Flags
polyglotInstrument
polyglotContext
public boolean isContextClosed(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotContextImpl
astore 2
start local 2 1: aload 2
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.invalid:Z
ifeq 3
aload 2
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.closingThread:Ljava/lang/Thread;
invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
if_acmpeq 3
2: iconst_1
ireturn
3: StackMap locals: com.oracle.truffle.polyglot.PolyglotContextImpl
StackMap stack:
aload 2
getfield com.oracle.truffle.polyglot.PolyglotContextImpl.closed:Z
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 4 1 polyglotContext Ljava/lang/Object;
1 4 2 context Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
MethodParameters:
Name Flags
polyglotContext
public boolean isContextActive(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotContextImpl
astore 2
start local 2 1: aload 2
invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.isActive:(Ljava/lang/Thread;)Z
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 2 1 polyglotContext Ljava/lang/Object;
1 2 2 context Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
MethodParameters:
Name Flags
polyglotContext
public void closeContext(java.lang.Object, boolean, com.oracle.truffle.api.nodes.Node, boolean, java.lang.String);
descriptor: (Ljava/lang/Object;ZLcom/oracle/truffle/api/nodes/Node;ZLjava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=9, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotContextImpl
astore 6
start local 6 1: iload 2
ifeq 11
2: aload 0
aload 6
invokevirtual com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.isContextActive:(Ljava/lang/Object;)Z
istore 7
start local 7 3: aload 0
aload 6
invokevirtual com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.isContextEntered:(Ljava/lang/Object;)Z
istore 8
start local 8 4: iload 7
ifeq 6
iload 8
ifne 6
5: ldc "The context is currently active on the current thread but another different context is entered as top-most context. Leave or close the top-most context first or close the context on a separate thread to resolve this problem."
iconst_0
anewarray java.lang.Object
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokestatic com.oracle.truffle.polyglot.PolyglotEngineException.illegalState:(Ljava/lang/String;)Lcom/oracle/truffle/polyglot/PolyglotEngineException;
athrow
6: StackMap locals: com.oracle.truffle.polyglot.PolyglotContextImpl int int
StackMap stack:
aload 6
iload 4
aload 5
iload 8
ifeq 7
iconst_0
goto 8
StackMap locals: com.oracle.truffle.polyglot.EngineAccessor$EngineImpl java.lang.Object int com.oracle.truffle.api.nodes.Node int java.lang.String com.oracle.truffle.polyglot.PolyglotContextImpl int int
StackMap stack: com.oracle.truffle.polyglot.PolyglotContextImpl int java.lang.String
7: iconst_1
StackMap locals: com.oracle.truffle.polyglot.EngineAccessor$EngineImpl java.lang.Object int com.oracle.truffle.api.nodes.Node int java.lang.String com.oracle.truffle.polyglot.PolyglotContextImpl int int
StackMap stack: com.oracle.truffle.polyglot.PolyglotContextImpl int java.lang.String int
8: invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.cancel:(ZLjava/lang/String;Z)V
9: iload 8
ifeq 14
10: aload 6
aload 3
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.createCancelException:(Lcom/oracle/truffle/api/nodes/Node;)Lcom/oracle/truffle/polyglot/PolyglotEngineImpl$CancelExecution;
athrow
end local 8 end local 7 11: StackMap locals:
StackMap stack:
aload 6
iconst_0
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.isActiveNotCancelled:(Z)Z
ifeq 13
12: new java.lang.IllegalStateException
dup
ldc "The context is currently active and cannot be closed. Make sure no thread is running or call closeCancelled on the context to resolve this."
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
13: StackMap locals:
StackMap stack:
aload 6
iconst_0
iconst_0
iconst_1
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.closeImpl:(ZZZ)Z
pop
14: StackMap locals:
StackMap stack:
return
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 15 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 15 1 impl Ljava/lang/Object;
0 15 2 force Z
0 15 3 closeLocation Lcom/oracle/truffle/api/nodes/Node;
0 15 4 resourceExhaused Z
0 15 5 resourceExhausedReason Ljava/lang/String;
1 15 6 context Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
3 11 7 isActive Z
4 11 8 entered Z
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
MethodParameters:
Name Flags
impl
force
closeLocation
resourceExhaused
resourceExhausedReason
public <T, G> java.util.Iterator<T> mergeHostGuestFrames(java.lang.StackTraceElement[], java.util.Iterator<G>, boolean, java.util.function.Function<java.lang.StackTraceElement, T>, java.util.function.Function<G, T>);
descriptor: ([Ljava/lang/StackTraceElement;Ljava/util/Iterator;ZLjava/util/function/Function;Ljava/util/function/Function;)Ljava/util/Iterator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: new com.oracle.truffle.polyglot.PolyglotExceptionImpl$MergedHostGuestIterator
dup
aload 1
aload 2
iload 3
aload 4
aload 5
invokespecial com.oracle.truffle.polyglot.PolyglotExceptionImpl$MergedHostGuestIterator.<init>:([Ljava/lang/StackTraceElement;Ljava/util/Iterator;ZLjava/util/function/Function;Ljava/util/function/Function;)V
areturn
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 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 hostStack [Ljava/lang/StackTraceElement;
0 1 2 guestFrames Ljava/util/Iterator<TG;>;
0 1 3 inHostLanguage Z
0 1 4 hostFrameConvertor Ljava/util/function/Function<Ljava/lang/StackTraceElement;TT;>;
0 1 5 guestFrameConvertor Ljava/util/function/Function<TG;TT;>;
Signature: <T:Ljava/lang/Object;G:Ljava/lang/Object;>([Ljava/lang/StackTraceElement;Ljava/util/Iterator<TG;>;ZLjava/util/function/Function<Ljava/lang/StackTraceElement;TT;>;Ljava/util/function/Function<TG;TT;>;)Ljava/util/Iterator<TT;>;
MethodParameters:
Name Flags
hostStack
guestFrames
inHostLanguage
hostFrameConvertor
guestFrameConvertor
public createHostAdapterClass(, java.lang.Class<?>[], );
descriptor: (Ljava/lang/Object;[Ljava/lang/Class;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: invokestatic com.oracle.truffle.api.CompilerAsserts.neverPartOfCompilation:()V
1: aload 1
checkcast com.oracle.truffle.polyglot.PolyglotLanguageContext
astore 4
start local 4 2: aload 4
invokevirtual com.oracle.truffle.polyglot.PolyglotLanguageContext.getEngine:()Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
astore 5
start local 5 3: aload 4
getfield com.oracle.truffle.polyglot.PolyglotLanguageContext.context:Lcom/oracle/truffle/polyglot/PolyglotContextImpl;
invokevirtual com.oracle.truffle.polyglot.PolyglotContextImpl.getHostContextImpl:()Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;
astore 6
start local 6 4: aload 5
aload 6
aload 2
aload 3
invokestatic com.oracle.truffle.polyglot.HostAdapterFactory.getAdapterClassFor:(Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;[Ljava/lang/Class;Ljava/lang/Object;)Lcom/oracle/truffle/polyglot/HostAdapterFactory$AdapterResult;
astore 7
start local 7 5: aload 7
invokevirtual com.oracle.truffle.polyglot.HostAdapterFactory$AdapterResult.isSuccess:()Z
ifne 7
6: aload 7
invokevirtual com.oracle.truffle.polyglot.HostAdapterFactory$AdapterResult.throwException:()Lcom/oracle/truffle/polyglot/PolyglotEngineException;
athrow
7: StackMap locals: com.oracle.truffle.polyglot.EngineAccessor$EngineImpl java.lang.Object java.lang.Class[] java.lang.Object com.oracle.truffle.polyglot.PolyglotLanguageContext com.oracle.truffle.polyglot.PolyglotEngineImpl com.oracle.truffle.polyglot.HostLanguage$HostContext com.oracle.truffle.polyglot.HostAdapterFactory$AdapterResult
StackMap stack:
aload 0
aload 1
aload 7
invokevirtual com.oracle.truffle.polyglot.HostAdapterFactory$AdapterResult.getAdapterClass:()Ljava/lang/Class;
invokevirtual com.oracle.truffle.polyglot.EngineAccessor$EngineImpl.asHostSymbol:(Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;
areturn
end local 7 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 8 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 8 1 polyglotLanguageContext Ljava/lang/Object;
0 8 2 types [Ljava/lang/Class;
0 8 3 classOverrides Ljava/lang/Object;
2 8 4 languageContext Lcom/oracle/truffle/polyglot/PolyglotLanguageContext;
3 8 5 engine Lcom/oracle/truffle/polyglot/PolyglotEngineImpl;
4 8 6 hostContext Lcom/oracle/truffle/polyglot/HostLanguage$HostContext;
5 8 7 adapter Lcom/oracle/truffle/polyglot/HostAdapterFactory$AdapterResult;
Signature: (Ljava/lang/Object;[Ljava/lang/Class<*>;Ljava/lang/Object;)Ljava/lang/Object;
MethodParameters:
Name Flags
polyglotLanguageContext
types
classOverrides
public java.lang.Iterable<com.oracle.truffle.api.Scope> findLibraryLocalScopesToLegacy(com.oracle.truffle.api.nodes.Node, com.oracle.truffle.api.frame.Frame);
descriptor: (Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/frame/Frame;)Ljava/lang/Iterable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
invokestatic com.oracle.truffle.polyglot.LegacyScopesBridge.findLibraryLocalScopesToLegacy:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/frame/Frame;)Ljava/lang/Iterable;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 node Lcom/oracle/truffle/api/nodes/Node;
0 1 2 frame Lcom/oracle/truffle/api/frame/Frame;
Signature: (Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/frame/Frame;)Ljava/lang/Iterable<Lcom/oracle/truffle/api/Scope;>;
MethodParameters:
Name Flags
node
frame
public java.lang.Iterable<com.oracle.truffle.api.Scope> topScopesToLegacy();
descriptor: (Ljava/lang/Object;)Ljava/lang/Iterable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic com.oracle.truffle.polyglot.LegacyScopesBridge.topScopesToLegacy:(Ljava/lang/Object;)Ljava/lang/Iterable;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 scope Ljava/lang/Object;
Signature: (Ljava/lang/Object;)Ljava/lang/Iterable<Lcom/oracle/truffle/api/Scope;>;
MethodParameters:
Name Flags
scope
public boolean legacyScopesHasScope(com.oracle.truffle.api.nodes.NodeInterface, java.util.Iterator<com.oracle.truffle.api.Scope>);
descriptor: (Lcom/oracle/truffle/api/nodes/NodeInterface;Ljava/util/Iterator;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
invokestatic com.oracle.truffle.polyglot.LegacyScopesBridge.legacyScopesHasScope:(Lcom/oracle/truffle/api/nodes/NodeInterface;Ljava/util/Iterator;)Z
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 node Lcom/oracle/truffle/api/nodes/NodeInterface;
0 1 2 legacyScopes Ljava/util/Iterator<Lcom/oracle/truffle/api/Scope;>;
Signature: (Lcom/oracle/truffle/api/nodes/NodeInterface;Ljava/util/Iterator<Lcom/oracle/truffle/api/Scope;>;)Z
MethodParameters:
Name Flags
node
legacyScopes
public legacyScopes2ScopeObject(com.oracle.truffle.api.nodes.NodeInterface, java.util.Iterator<com.oracle.truffle.api.Scope>, java.lang.Class<? extends com.oracle.truffle.api.TruffleLanguage<?>>);
descriptor: (Lcom/oracle/truffle/api/nodes/NodeInterface;Ljava/util/Iterator;Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
aload 2
aload 3
invokestatic com.oracle.truffle.polyglot.LegacyScopesBridge.legacyScopes2ScopeObject:(Lcom/oracle/truffle/api/nodes/NodeInterface;Ljava/util/Iterator;Ljava/lang/Class;)Ljava/lang/Object;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/polyglot/EngineAccessor$EngineImpl;
0 1 1 node Lcom/oracle/truffle/api/nodes/NodeInterface;
0 1 2 legacyScopes Ljava/util/Iterator<Lcom/oracle/truffle/api/Scope;>;
0 1 3 language Ljava/lang/Class<+Lcom/oracle/truffle/api/TruffleLanguage<*>;>;
Signature: (Lcom/oracle/truffle/api/nodes/NodeInterface;Ljava/util/Iterator<Lcom/oracle/truffle/api/Scope;>;Ljava/lang/Class<+Lcom/oracle/truffle/api/TruffleLanguage<*>;>;)Ljava/lang/Object;
MethodParameters:
Name Flags
node
legacyScopes
language
}
SourceFile: "EngineAccessor.java"
NestHost: com.oracle.truffle.polyglot.EngineAccessor
InnerClasses:
public abstract TruffleBoundary = com.oracle.truffle.api.CompilerDirectives$TruffleBoundary of com.oracle.truffle.api.CompilerDirectives
public abstract FileTypeDetector = com.oracle.truffle.api.TruffleFile$FileTypeDetector of com.oracle.truffle.api.TruffleFile
public abstract ContextReference = com.oracle.truffle.api.TruffleLanguage$ContextReference of com.oracle.truffle.api.TruffleLanguage
public final Env = com.oracle.truffle.api.TruffleLanguage$Env of com.oracle.truffle.api.TruffleLanguage
public abstract LanguageReference = com.oracle.truffle.api.TruffleLanguage$LanguageReference of com.oracle.truffle.api.TruffleLanguage
public abstract EngineSupport = com.oracle.truffle.api.impl.Accessor$EngineSupport of com.oracle.truffle.api.impl.Accessor
public abstract InstrumentSupport = com.oracle.truffle.api.impl.Accessor$InstrumentSupport of com.oracle.truffle.api.impl.Accessor
public final JDKSupport = com.oracle.truffle.api.impl.Accessor$JDKSupport of com.oracle.truffle.api.impl.Accessor
public abstract LanguageSupport = com.oracle.truffle.api.impl.Accessor$LanguageSupport of com.oracle.truffle.api.impl.Accessor
public abstract NodeSupport = com.oracle.truffle.api.impl.Accessor$NodeSupport of com.oracle.truffle.api.impl.Accessor
abstract AbstractClassLoaderSupplier = com.oracle.truffle.polyglot.EngineAccessor$AbstractClassLoaderSupplier of com.oracle.truffle.polyglot.EngineAccessor
final EngineImpl = com.oracle.truffle.polyglot.EngineAccessor$EngineImpl of com.oracle.truffle.polyglot.EngineAccessor
final PreInitializeContextFileSystem = com.oracle.truffle.polyglot.FileSystems$PreInitializeContextFileSystem of com.oracle.truffle.polyglot.FileSystems
final AdapterResult = com.oracle.truffle.polyglot.HostAdapterFactory$AdapterResult of com.oracle.truffle.polyglot.HostAdapterFactory
final HostContext = com.oracle.truffle.polyglot.HostLanguage$HostContext of com.oracle.truffle.polyglot.HostLanguage
final CancelExecution = com.oracle.truffle.polyglot.PolyglotEngineImpl$CancelExecution of com.oracle.truffle.polyglot.PolyglotEngineImpl
MergedHostGuestIterator = com.oracle.truffle.polyglot.PolyglotExceptionImpl$MergedHostGuestIterator of com.oracle.truffle.polyglot.PolyglotExceptionImpl
abstract VMObject = com.oracle.truffle.polyglot.PolyglotImpl$VMObject of com.oracle.truffle.polyglot.PolyglotImpl
final InstrumentContextLocal = com.oracle.truffle.polyglot.PolyglotLocals$InstrumentContextLocal of com.oracle.truffle.polyglot.PolyglotLocals
final InstrumentContextThreadLocal = com.oracle.truffle.polyglot.PolyglotLocals$InstrumentContextThreadLocal of com.oracle.truffle.polyglot.PolyglotLocals
final LanguageContextLocal = com.oracle.truffle.polyglot.PolyglotLocals$LanguageContextLocal of com.oracle.truffle.polyglot.PolyglotLocals
final LanguageContextThreadLocal = com.oracle.truffle.polyglot.PolyglotLocals$LanguageContextThreadLocal of com.oracle.truffle.polyglot.PolyglotLocals
abstract LoggerCache = com.oracle.truffle.polyglot.PolyglotLoggers$LoggerCache of com.oracle.truffle.polyglot.PolyglotLoggers
abstract AbstractContextReference = com.oracle.truffle.polyglot.PolyglotReferences$AbstractContextReference of com.oracle.truffle.polyglot.PolyglotReferences
final EmbedderFileSystemContext = com.oracle.truffle.polyglot.PolyglotSource$EmbedderFileSystemContext of com.oracle.truffle.polyglot.PolyglotSource
public abstract APIAccess = org.graalvm.polyglot.impl.AbstractPolyglotImpl$APIAccess of org.graalvm.polyglot.impl.AbstractPolyglotImpl
public abstract AbstractContextImpl = org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractContextImpl of org.graalvm.polyglot.impl.AbstractPolyglotImpl
public abstract AbstractValueImpl = org.graalvm.polyglot.impl.AbstractPolyglotImpl$AbstractValueImpl of org.graalvm.polyglot.impl.AbstractPolyglotImpl
public abstract IOAccess = org.graalvm.polyglot.impl.AbstractPolyglotImpl$IOAccess of org.graalvm.polyglot.impl.AbstractPolyglotImpl
public final ProcessCommand = org.graalvm.polyglot.io.ProcessHandler$ProcessCommand of org.graalvm.polyglot.io.ProcessHandler
public final Redirect = org.graalvm.polyglot.io.ProcessHandler$Redirect of org.graalvm.polyglot.io.ProcessHandler