public class com.oracle.graal.python.nodes.ModuleRootNode extends com.oracle.graal.python.nodes.PClosureRootNode
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.oracle.graal.python.nodes.ModuleRootNode
super_class: com.oracle.graal.python.nodes.PClosureRootNode
{
private final java.lang.String name;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String doc;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private com.oracle.graal.python.nodes.expression.ExpressionNode body;
descriptor: Lcom/oracle/graal/python/nodes/expression/ExpressionNode;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.Node$Child()
private com.oracle.graal.python.nodes.frame.WriteGlobalNode writeModuleDoc;
descriptor: Lcom/oracle/graal/python/nodes/frame/WriteGlobalNode;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.Node$Child()
private com.oracle.graal.python.nodes.frame.WriteGlobalNode writeAnnotations;
descriptor: Lcom/oracle/graal/python/nodes/frame/WriteGlobalNode;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.Node$Child()
private com.oracle.graal.python.runtime.ExecutionContext$CalleeContext calleeContext;
descriptor: Lcom/oracle/graal/python/runtime/ExecutionContext$CalleeContext;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.Node$Child()
public void <init>(com.oracle.graal.python.PythonLanguage, java.lang.String, java.lang.String, com.oracle.graal.python.nodes.expression.ExpressionNode, com.oracle.truffle.api.frame.FrameDescriptor, com.oracle.truffle.api.frame.FrameSlot[], boolean);
descriptor: (Lcom/oracle/graal/python/PythonLanguage;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/graal/python/nodes/expression/ExpressionNode;Lcom/oracle/truffle/api/frame/FrameDescriptor;[Lcom/oracle/truffle/api/frame/FrameSlot;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=8, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: aload 0
aload 1
aload 5
aload 6
iload 7
invokespecial com.oracle.graal.python.nodes.PClosureRootNode.<init>:(Lcom/oracle/graal/python/PythonLanguage;Lcom/oracle/truffle/api/frame/FrameDescriptor;[Lcom/oracle/truffle/api/frame/FrameSlot;Z)V
1: aload 0
invokestatic com.oracle.graal.python.runtime.ExecutionContext$CalleeContext.create:()Lcom/oracle/graal/python/runtime/ExecutionContext$CalleeContext;
putfield com.oracle.graal.python.nodes.ModuleRootNode.calleeContext:Lcom/oracle/graal/python/runtime/ExecutionContext$CalleeContext;
2: aload 2
ldc "<"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 5
3: aload 0
ldc "<module>"
putfield com.oracle.graal.python.nodes.ModuleRootNode.name:Ljava/lang/String;
4: goto 6
5: StackMap locals: com.oracle.graal.python.nodes.ModuleRootNode com.oracle.graal.python.PythonLanguage java.lang.String java.lang.String com.oracle.graal.python.nodes.expression.ExpressionNode com.oracle.truffle.api.frame.FrameDescriptor com.oracle.truffle.api.frame.FrameSlot[] int
StackMap stack:
aload 0
new java.lang.StringBuilder
dup
ldc "<module '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "'>"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield com.oracle.graal.python.nodes.ModuleRootNode.name:Ljava/lang/String;
6: StackMap locals:
StackMap stack:
aload 0
aload 3
putfield com.oracle.graal.python.nodes.ModuleRootNode.doc:Ljava/lang/String;
7: aload 0
new com.oracle.graal.python.nodes.function.InnerRootNode
dup
aload 0
aload 4
invokespecial com.oracle.graal.python.nodes.function.InnerRootNode.<init>:(Lcom/oracle/graal/python/nodes/PClosureRootNode;Lcom/oracle/graal/python/nodes/expression/ExpressionNode;)V
putfield com.oracle.graal.python.nodes.ModuleRootNode.body:Lcom/oracle/graal/python/nodes/expression/ExpressionNode;
8: return
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 9 0 this Lcom/oracle/graal/python/nodes/ModuleRootNode;
0 9 1 language Lcom/oracle/graal/python/PythonLanguage;
0 9 2 name Ljava/lang/String;
0 9 3 doc Ljava/lang/String;
0 9 4 file Lcom/oracle/graal/python/nodes/expression/ExpressionNode;
0 9 5 descriptor Lcom/oracle/truffle/api/frame/FrameDescriptor;
0 9 6 freeVarSlots [Lcom/oracle/truffle/api/frame/FrameSlot;
0 9 7 hasAnnotations Z
MethodParameters:
Name Flags
language
name
doc
file
descriptor
freeVarSlots
hasAnnotations
private com.oracle.graal.python.nodes.frame.WriteGlobalNode getWriteModuleDoc();
descriptor: ()Lcom/oracle/graal/python/nodes/frame/WriteGlobalNode;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.graal.python.nodes.ModuleRootNode.writeModuleDoc:Lcom/oracle/graal/python/nodes/frame/WriteGlobalNode;
ifnonnull 3
1: invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreterAndInvalidate:()V
2: aload 0
aload 0
ldc "__doc__"
invokestatic com.oracle.graal.python.nodes.frame.WriteGlobalNode.create:(Ljava/lang/String;)Lcom/oracle/graal/python/nodes/frame/WriteGlobalNode;
invokevirtual com.oracle.graal.python.nodes.ModuleRootNode.insert:(Lcom/oracle/truffle/api/nodes/Node;)Lcom/oracle/truffle/api/nodes/Node;
checkcast com.oracle.graal.python.nodes.frame.WriteGlobalNode
putfield com.oracle.graal.python.nodes.ModuleRootNode.writeModuleDoc:Lcom/oracle/graal/python/nodes/frame/WriteGlobalNode;
3: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.graal.python.nodes.ModuleRootNode.writeModuleDoc:Lcom/oracle/graal/python/nodes/frame/WriteGlobalNode;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/graal/python/nodes/ModuleRootNode;
private com.oracle.graal.python.nodes.frame.WriteGlobalNode getWriteAnnotations();
descriptor: ()Lcom/oracle/graal/python/nodes/frame/WriteGlobalNode;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.graal.python.nodes.ModuleRootNode.writeAnnotations:Lcom/oracle/graal/python/nodes/frame/WriteGlobalNode;
ifnonnull 3
1: invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreterAndInvalidate:()V
2: aload 0
aload 0
ldc "__annotations__"
invokestatic com.oracle.graal.python.nodes.frame.WriteGlobalNode.create:(Ljava/lang/String;)Lcom/oracle/graal/python/nodes/frame/WriteGlobalNode;
invokevirtual com.oracle.graal.python.nodes.ModuleRootNode.insert:(Lcom/oracle/truffle/api/nodes/Node;)Lcom/oracle/truffle/api/nodes/Node;
checkcast com.oracle.graal.python.nodes.frame.WriteGlobalNode
putfield com.oracle.graal.python.nodes.ModuleRootNode.writeAnnotations:Lcom/oracle/graal/python/nodes/frame/WriteGlobalNode;
3: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.graal.python.nodes.ModuleRootNode.writeAnnotations:Lcom/oracle/graal/python/nodes/frame/WriteGlobalNode;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/graal/python/nodes/ModuleRootNode;
public java.lang.String getDoc();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.graal.python.nodes.ModuleRootNode.doc:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/graal/python/nodes/ModuleRootNode;
public java.lang.Object execute(com.oracle.truffle.api.frame.VirtualFrame);
descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.graal.python.nodes.ModuleRootNode.calleeContext:Lcom/oracle/graal/python/runtime/ExecutionContext$CalleeContext;
aload 1
invokevirtual com.oracle.graal.python.runtime.ExecutionContext$CalleeContext.enter:(Lcom/oracle/truffle/api/frame/VirtualFrame;)V
1: aload 0
getfield com.oracle.graal.python.nodes.ModuleRootNode.body:Lcom/oracle/graal/python/nodes/expression/ExpressionNode;
aload 1
invokevirtual com.oracle.graal.python.nodes.expression.ExpressionNode.execute:(Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
astore 3
2: aload 0
getfield com.oracle.graal.python.nodes.ModuleRootNode.calleeContext:Lcom/oracle/graal/python/runtime/ExecutionContext$CalleeContext;
aload 1
aload 0
invokevirtual com.oracle.graal.python.runtime.ExecutionContext$CalleeContext.exit:(Lcom/oracle/truffle/api/frame/VirtualFrame;Lcom/oracle/graal/python/nodes/PRootNode;)V
3: aload 3
areturn
4: StackMap locals:
StackMap stack: java.lang.Throwable
astore 2
5: aload 0
getfield com.oracle.graal.python.nodes.ModuleRootNode.calleeContext:Lcom/oracle/graal/python/runtime/ExecutionContext$CalleeContext;
aload 1
aload 0
invokevirtual com.oracle.graal.python.runtime.ExecutionContext$CalleeContext.exit:(Lcom/oracle/truffle/api/frame/VirtualFrame;Lcom/oracle/graal/python/nodes/PRootNode;)V
6: aload 2
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/oracle/graal/python/nodes/ModuleRootNode;
0 7 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
Exception table:
from to target type
1 2 4 any
MethodParameters:
Name Flags
frame
public void initializeFrame(com.oracle.truffle.api.frame.VirtualFrame);
descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual com.oracle.graal.python.nodes.ModuleRootNode.addClosureCellsToLocals:(Lcom/oracle/truffle/api/frame/Frame;)V
1: aload 0
getfield com.oracle.graal.python.nodes.ModuleRootNode.doc:Ljava/lang/String;
ifnull 3
2: aload 0
invokevirtual com.oracle.graal.python.nodes.ModuleRootNode.getWriteModuleDoc:()Lcom/oracle/graal/python/nodes/frame/WriteGlobalNode;
aload 1
aload 0
getfield com.oracle.graal.python.nodes.ModuleRootNode.doc:Ljava/lang/String;
invokevirtual com.oracle.graal.python.nodes.frame.WriteGlobalNode.doWrite:(Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;)V
3: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.oracle.graal.python.nodes.ModuleRootNode.hasAnnotations:()Z
ifeq 5
4: aload 0
invokevirtual com.oracle.graal.python.nodes.ModuleRootNode.getWriteAnnotations:()Lcom/oracle/graal/python/nodes/frame/WriteGlobalNode;
aload 1
new com.oracle.graal.python.builtins.objects.dict.PDict
dup
aload 0
ldc Lcom/oracle/graal/python/PythonLanguage;
invokevirtual com.oracle.graal.python.nodes.ModuleRootNode.lookupLanguageReference:(Ljava/lang/Class;)Lcom/oracle/truffle/api/TruffleLanguage$LanguageReference;
invokevirtual com.oracle.truffle.api.TruffleLanguage$LanguageReference.get:()Lcom/oracle/truffle/api/TruffleLanguage;
checkcast com.oracle.graal.python.PythonLanguage
invokespecial com.oracle.graal.python.builtins.objects.dict.PDict.<init>:(Lcom/oracle/graal/python/PythonLanguage;)V
invokevirtual com.oracle.graal.python.nodes.frame.WriteGlobalNode.doWrite:(Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;)V
5: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/oracle/graal/python/nodes/ModuleRootNode;
0 6 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
MethodParameters:
Name Flags
frame
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: invokestatic com.oracle.truffle.api.CompilerAsserts.neverPartOfCompilation:()V
1: aload 0
getfield com.oracle.graal.python.nodes.ModuleRootNode.name:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/graal/python/nodes/ModuleRootNode;
public java.lang.String getName();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.graal.python.nodes.ModuleRootNode.name:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/graal/python/nodes/ModuleRootNode;
public com.oracle.truffle.api.source.SourceSection getSourceSection();
descriptor: ()Lcom/oracle/truffle/api/source/SourceSection;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.graal.python.nodes.ModuleRootNode.body:Lcom/oracle/graal/python/nodes/expression/ExpressionNode;
invokevirtual com.oracle.graal.python.nodes.expression.ExpressionNode.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/graal/python/nodes/ModuleRootNode;
public boolean isInternal();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.oracle.graal.python.nodes.ModuleRootNode.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
ifnull 1
aload 0
invokevirtual com.oracle.graal.python.nodes.ModuleRootNode.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
invokevirtual com.oracle.truffle.api.source.SourceSection.getSource:()Lcom/oracle/truffle/api/source/Source;
invokevirtual com.oracle.truffle.api.source.Source.isInternal:()Z
ifeq 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/graal/python/nodes/ModuleRootNode;
public com.oracle.graal.python.builtins.objects.function.Signature getSignature();
descriptor: ()Lcom/oracle/graal/python/builtins/objects/function/Signature;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: getstatic com.oracle.graal.python.builtins.objects.function.Signature.EMPTY:Lcom/oracle/graal/python/builtins/objects/function/Signature;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/graal/python/nodes/ModuleRootNode;
public boolean isPythonInternal();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/graal/python/nodes/ModuleRootNode;
public void assignSourceSection(com.oracle.truffle.api.source.SourceSection);
descriptor: (Lcom/oracle/truffle/api/source/SourceSection;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.graal.python.nodes.ModuleRootNode.body:Lcom/oracle/graal/python/nodes/expression/ExpressionNode;
aload 1
invokevirtual com.oracle.graal.python.nodes.expression.ExpressionNode.assignSourceSection:(Lcom/oracle/truffle/api/source/SourceSection;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/graal/python/nodes/ModuleRootNode;
0 2 1 source Lcom/oracle/truffle/api/source/SourceSection;
MethodParameters:
Name Flags
source
}
SourceFile: "ModuleRootNode.java"
InnerClasses:
public final CalleeContext = com.oracle.graal.python.runtime.ExecutionContext$CalleeContext of com.oracle.graal.python.runtime.ExecutionContext
public abstract LanguageReference = com.oracle.truffle.api.TruffleLanguage$LanguageReference of com.oracle.truffle.api.TruffleLanguage
public abstract Child = com.oracle.truffle.api.nodes.Node$Child of com.oracle.truffle.api.nodes.Node