public abstract class com.oracle.truffle.api.nodes.Node implements com.oracle.truffle.api.nodes.NodeInterface, java.lang.Cloneable
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: com.oracle.truffle.api.nodes.Node
super_class: java.lang.Object
{
private volatile com.oracle.truffle.api.nodes.Node parent;
descriptor: Lcom/oracle/truffle/api/nodes/Node;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$CompilationFinal()
private static final java.util.Map<java.lang.Class<?>, com.oracle.truffle.api.TruffleLanguage$LanguageReference<?>> UNCACHED_LANGUAGE_REFERENCES;
descriptor: Ljava/util/Map;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/Class<*>;Lcom/oracle/truffle/api/TruffleLanguage$LanguageReference<*>;>;
private static final java.util.Map<java.lang.Class<?>, com.oracle.truffle.api.TruffleLanguage$ContextReference<?>> UNCACHED_CONTEXT_REFERENCES;
descriptor: Ljava/util/Map;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/Class<*>;Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<*>;>;
private static final java.util.concurrent.locks.ReentrantLock GIL_LOCK;
descriptor: Ljava/util/concurrent/locks/ReentrantLock;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
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=3, locals=0, args_size=0
0: ldc Lcom/oracle/truffle/api/nodes/Node;
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.api.nodes.Node.$assertionsDisabled:Z
3: new java.util.concurrent.ConcurrentHashMap
dup
invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
putstatic com.oracle.truffle.api.nodes.Node.UNCACHED_LANGUAGE_REFERENCES:Ljava/util/Map;
4: new java.util.concurrent.ConcurrentHashMap
dup
invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
putstatic com.oracle.truffle.api.nodes.Node.UNCACHED_CONTEXT_REFERENCES:Ljava/util/Map;
5: new java.util.concurrent.locks.ReentrantLock
dup
iconst_0
invokespecial java.util.concurrent.locks.ReentrantLock.<init>:(Z)V
putstatic com.oracle.truffle.api.nodes.Node.GIL_LOCK:Ljava/util/concurrent/locks/ReentrantLock;
return
LocalVariableTable:
Start End Slot Name Signature
protected void <init>();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: ldc "do not create a Node from compiled code"
invokestatic com.oracle.truffle.api.CompilerAsserts.neverPartOfCompilation:(Ljava/lang/String;)V
2: getstatic com.oracle.truffle.api.nodes.Node.$assertionsDisabled:Z
ifne 3
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokestatic com.oracle.truffle.api.nodes.NodeClass.get:(Ljava/lang/Class;)Lcom/oracle/truffle/api/nodes/NodeClass;
ifnonnull 3
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
3: StackMap locals: com.oracle.truffle.api.nodes.Node
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/api/nodes/Node;
com.oracle.truffle.api.nodes.NodeClass getNodeClass();
descriptor: ()Lcom/oracle/truffle/api/nodes/NodeClass;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokestatic com.oracle.truffle.api.nodes.NodeClass.get:(Ljava/lang/Class;)Lcom/oracle/truffle/api/nodes/NodeClass;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/nodes/Node;
void setParent(com.oracle.truffle.api.nodes.Node);
descriptor: (Lcom/oracle/truffle/api/nodes/Node;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield com.oracle.truffle.api.nodes.Node.parent:Lcom/oracle/truffle/api/nodes/Node;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/api/nodes/Node;
0 2 1 parent Lcom/oracle/truffle/api/nodes/Node;
MethodParameters:
Name Flags
parent
public com.oracle.truffle.api.nodes.NodeCost getCost();
descriptor: ()Lcom/oracle/truffle/api/nodes/NodeCost;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
ldc Lcom/oracle/truffle/api/nodes/NodeInfo;
invokevirtual java.lang.Class.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
checkcast com.oracle.truffle.api.nodes.NodeInfo
astore 1
start local 1 1: aload 1
ifnull 3
2: aload 1
invokeinterface com.oracle.truffle.api.nodes.NodeInfo.cost:()Lcom/oracle/truffle/api/nodes/NodeCost;
areturn
3: StackMap locals: com.oracle.truffle.api.nodes.NodeInfo
StackMap stack:
getstatic com.oracle.truffle.api.nodes.NodeCost.MONOMORPHIC:Lcom/oracle/truffle/api/nodes/NodeCost;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/api/nodes/Node;
1 4 1 info Lcom/oracle/truffle/api/nodes/NodeInfo;
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: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/nodes/Node;
public com.oracle.truffle.api.source.SourceSection getEncapsulatingSourceSection();
descriptor: ()Lcom/oracle/truffle/api/source/SourceSection;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=3, args_size=1
start local 0 0: aload 0
astore 1
start local 1 1: goto 6
2: StackMap locals: com.oracle.truffle.api.nodes.Node
StackMap stack:
aload 1
invokevirtual com.oracle.truffle.api.nodes.Node.getSourceSection:()Lcom/oracle/truffle/api/source/SourceSection;
astore 2
start local 2 3: aload 2
ifnull 5
4: aload 2
areturn
5: StackMap locals: com.oracle.truffle.api.source.SourceSection
StackMap stack:
aload 1
invokevirtual com.oracle.truffle.api.nodes.Node.getParent:()Lcom/oracle/truffle/api/nodes/Node;
astore 1
end local 2 6: StackMap locals:
StackMap stack:
aload 1
ifnonnull 2
7: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/oracle/truffle/api/nodes/Node;
1 8 1 current Lcom/oracle/truffle/api/nodes/Node;
3 6 2 currentSection Lcom/oracle/truffle/api/source/SourceSection;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
public boolean isAdoptable();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/nodes/Node;
protected final <T extends com.oracle.truffle.api.nodes.Node> T[] insert();
descriptor: ([Lcom/oracle/truffle/api/nodes/Node;)[Lcom/oracle/truffle/api/nodes/Node;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=2, locals=6, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreterAndInvalidate:()V
1: aload 1
ifnull 7
2: aload 1
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 6
StackMap locals: com.oracle.truffle.api.nodes.Node com.oracle.truffle.api.nodes.Node[] top int int com.oracle.truffle.api.nodes.Node[]
StackMap stack:
3: aload 5
iload 3
aaload
astore 2
start local 2 4: aload 0
aload 2
invokevirtual com.oracle.truffle.api.nodes.Node.adoptHelper:(Lcom/oracle/truffle/api/nodes/Node;)V
end local 2 5: iinc 3 1
StackMap locals:
StackMap stack:
6: iload 3
iload 4
if_icmplt 3
7: StackMap locals: com.oracle.truffle.api.nodes.Node com.oracle.truffle.api.nodes.Node[]
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/oracle/truffle/api/nodes/Node;
0 8 1 newChildren [Lcom/oracle/truffle/api/nodes/Node;
4 5 2 newChild Lcom/oracle/truffle/api/nodes/Node;
Signature: <T:Lcom/oracle/truffle/api/nodes/Node;>([TT;)[TT;
MethodParameters:
Name Flags
newChildren final
protected final <T extends com.oracle.truffle.api.nodes.Node> T insert();
descriptor: (Lcom/oracle/truffle/api/nodes/Node;)Lcom/oracle/truffle/api/nodes/Node;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreterAndInvalidate:()V
1: aload 1
ifnull 3
2: aload 0
aload 1
invokevirtual com.oracle.truffle.api.nodes.Node.adoptHelper:(Lcom/oracle/truffle/api/nodes/Node;)V
3: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/api/nodes/Node;
0 4 1 newChild TT;
Signature: <T:Lcom/oracle/truffle/api/nodes/Node;>(TT;)TT;
MethodParameters:
Name Flags
newChild final
protected final void notifyInserted(com.oracle.truffle.api.nodes.Node);
descriptor: (Lcom/oracle/truffle/api/nodes/Node;)V
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual com.oracle.truffle.api.nodes.Node.getRootNode:()Lcom/oracle/truffle/api/nodes/RootNode;
astore 2
start local 2 1: aload 2
ifnonnull 3
2: new java.lang.IllegalStateException
dup
ldc "Node is not yet adopted and cannot be updated."
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: com.oracle.truffle.api.nodes.RootNode
StackMap stack:
getstatic com.oracle.truffle.api.nodes.NodeAccessor.INSTRUMENT:Lcom/oracle/truffle/api/impl/Accessor$InstrumentSupport;
aload 2
aload 1
invokevirtual com.oracle.truffle.api.impl.Accessor$InstrumentSupport.onNodeInserted:(Lcom/oracle/truffle/api/nodes/RootNode;Lcom/oracle/truffle/api/nodes/Node;)V
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/api/nodes/Node;
0 5 1 node Lcom/oracle/truffle/api/nodes/Node;
1 5 2 rootNode Lcom/oracle/truffle/api/nodes/RootNode;
MethodParameters:
Name Flags
node
public final void adoptChildren();
descriptor: ()V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreterAndInvalidate:()V
1: aload 0
invokestatic com.oracle.truffle.api.nodes.NodeUtil.adoptChildrenHelper:(Lcom/oracle/truffle/api/nodes/Node;)V
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/api/nodes/Node;
final void adoptHelper(com.oracle.truffle.api.nodes.Node);
descriptor: (Lcom/oracle/truffle/api/nodes/Node;)V
flags: (0x0010) ACC_FINAL
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: getstatic com.oracle.truffle.api.nodes.Node.$assertionsDisabled:Z
ifne 1
aload 1
ifnonnull 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 1
aload 0
if_acmpne 3
2: new java.lang.IllegalStateException
dup
ldc "The parent of a node can never be the node itself."
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals:
StackMap stack:
aload 1
invokevirtual com.oracle.truffle.api.nodes.Node.isAdoptable:()Z
ifeq 7
4: getstatic com.oracle.truffle.api.nodes.Node.$assertionsDisabled:Z
ifne 5
aload 0
aload 1
invokevirtual com.oracle.truffle.api.nodes.Node.checkSameLanguages:(Lcom/oracle/truffle/api/nodes/Node;)Z
ifne 5
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
5: StackMap locals:
StackMap stack:
aload 1
aload 0
putfield com.oracle.truffle.api.nodes.Node.parent:Lcom/oracle/truffle/api/nodes/Node;
6: aload 1
invokestatic com.oracle.truffle.api.nodes.NodeUtil.adoptChildrenHelper:(Lcom/oracle/truffle/api/nodes/Node;)V
7: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/oracle/truffle/api/nodes/Node;
0 8 1 newChild Lcom/oracle/truffle/api/nodes/Node;
MethodParameters:
Name Flags
newChild final
int adoptChildrenAndCount();
descriptor: ()I
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: invokestatic com.oracle.truffle.api.CompilerAsserts.neverPartOfCompilation:()V
1: iconst_1
aload 0
invokestatic com.oracle.truffle.api.nodes.NodeUtil.adoptChildrenAndCountHelper:(Lcom/oracle/truffle/api/nodes/Node;)I
iadd
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/api/nodes/Node;
int adoptAndCountHelper(com.oracle.truffle.api.nodes.Node);
descriptor: (Lcom/oracle/truffle/api/nodes/Node;)I
flags: (0x0000)
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: getstatic com.oracle.truffle.api.nodes.Node.$assertionsDisabled:Z
ifne 1
aload 1
ifnonnull 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 1
aload 0
if_acmpne 3
2: new java.lang.IllegalStateException
dup
ldc "The parent of a node can never be the node itself."
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals:
StackMap stack:
iconst_1
istore 2
start local 2 4: aload 1
invokevirtual com.oracle.truffle.api.nodes.Node.isAdoptable:()Z
ifeq 8
5: getstatic com.oracle.truffle.api.nodes.Node.$assertionsDisabled:Z
ifne 6
aload 0
aload 1
invokevirtual com.oracle.truffle.api.nodes.Node.checkSameLanguages:(Lcom/oracle/truffle/api/nodes/Node;)Z
ifne 6
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
6: StackMap locals: int
StackMap stack:
aload 1
aload 0
putfield com.oracle.truffle.api.nodes.Node.parent:Lcom/oracle/truffle/api/nodes/Node;
7: iload 2
aload 1
invokestatic com.oracle.truffle.api.nodes.NodeUtil.adoptChildrenAndCountHelper:(Lcom/oracle/truffle/api/nodes/Node;)I
iadd
istore 2
8: StackMap locals:
StackMap stack:
iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/oracle/truffle/api/nodes/Node;
0 9 1 newChild Lcom/oracle/truffle/api/nodes/Node;
4 9 2 count I
MethodParameters:
Name Flags
newChild
private boolean checkSameLanguages(com.oracle.truffle.api.nodes.Node);
descriptor: (Lcom/oracle/truffle/api/nodes/Node;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 1
instanceof com.oracle.truffle.api.nodes.ExecutableNode
ifeq 10
aload 1
instanceof com.oracle.truffle.api.nodes.RootNode
ifne 10
1: aload 0
invokevirtual com.oracle.truffle.api.nodes.Node.getRootNode:()Lcom/oracle/truffle/api/nodes/RootNode;
astore 2
start local 2 2: aload 2
ifnonnull 4
3: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "Cannot adopt ExecutableNode "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " as a child of node without a root."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals: com.oracle.truffle.api.nodes.RootNode
StackMap stack:
aload 2
invokevirtual com.oracle.truffle.api.nodes.RootNode.getLanguageInfo:()Lcom/oracle/truffle/api/nodes/LanguageInfo;
astore 3
start local 3 5: aload 1
checkcast com.oracle.truffle.api.nodes.ExecutableNode
invokevirtual com.oracle.truffle.api.nodes.ExecutableNode.getLanguageInfo:()Lcom/oracle/truffle/api/nodes/LanguageInfo;
astore 4
start local 4 6: aload 4
aload 3
if_acmpeq 10
7: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Can not adopt ExecutableNode under a different language. Parent "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
8: aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " is of "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
invokestatic com.oracle.truffle.api.nodes.Node.langId:(Lcom/oracle/truffle/api/nodes/LanguageInfo;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ", child "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " is of "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
invokestatic com.oracle.truffle.api.nodes.Node.langId:(Lcom/oracle/truffle/api/nodes/LanguageInfo;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
9: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 4 end local 3 end local 2 10: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/oracle/truffle/api/nodes/Node;
0 11 1 newChild Lcom/oracle/truffle/api/nodes/Node;
2 10 2 root Lcom/oracle/truffle/api/nodes/RootNode;
5 10 3 pl Lcom/oracle/truffle/api/nodes/LanguageInfo;
6 10 4 cl Lcom/oracle/truffle/api/nodes/LanguageInfo;
MethodParameters:
Name Flags
newChild final
private static java.lang.String langId(com.oracle.truffle.api.nodes.LanguageInfo);
descriptor: (Lcom/oracle/truffle/api/nodes/LanguageInfo;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.oracle.truffle.api.nodes.LanguageInfo.getId:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 languageInfo Lcom/oracle/truffle/api/nodes/LanguageInfo;
MethodParameters:
Name Flags
languageInfo
private void adoptUnadoptedHelper(com.oracle.truffle.api.nodes.Node);
descriptor: (Lcom/oracle/truffle/api/nodes/Node;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: getstatic com.oracle.truffle.api.nodes.Node.$assertionsDisabled:Z
ifne 1
aload 0
invokevirtual com.oracle.truffle.api.nodes.Node.isAdoptable:()Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
getstatic com.oracle.truffle.api.nodes.Node.$assertionsDisabled:Z
ifne 2
aload 1
ifnonnull 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 1
aload 0
if_acmpne 4
3: new java.lang.IllegalStateException
dup
ldc "The parent of a node can never be the node itself."
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 1
aload 0
putfield com.oracle.truffle.api.nodes.Node.parent:Lcom/oracle/truffle/api/nodes/Node;
5: aload 1
new com.oracle.truffle.api.nodes.Node$1
dup
aload 0
aload 1
invokespecial com.oracle.truffle.api.nodes.Node$1.<init>:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/nodes/Node;)V
invokestatic com.oracle.truffle.api.nodes.NodeUtil.forEachChild:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/nodes/NodeVisitor;)Z
pop
6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/oracle/truffle/api/nodes/Node;
0 7 1 newChild Lcom/oracle/truffle/api/nodes/Node;
MethodParameters:
Name Flags
newChild final
public java.util.Map<java.lang.String, java.lang.Object> getDebugProperties();
descriptor: ()Ljava/util/Map;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
astore 1
start local 1 1: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/api/nodes/Node;
1 2 1 properties Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
Signature: ()Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
public final com.oracle.truffle.api.nodes.Node getParent();
descriptor: ()Lcom/oracle/truffle/api/nodes/Node;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.api.nodes.Node.parent:Lcom/oracle/truffle/api/nodes/Node;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/nodes/Node;
public final <T extends com.oracle.truffle.api.nodes.Node> T replace(T, java.lang.CharSequence);
descriptor: (Lcom/oracle/truffle/api/nodes/Node;Ljava/lang/CharSequence;)Lcom/oracle/truffle/api/nodes/Node;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreterAndInvalidate:()V
1: aload 0
new com.oracle.truffle.api.nodes.Node$2
dup
aload 0
aload 1
aload 2
invokespecial com.oracle.truffle.api.nodes.Node$2.<init>:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/nodes/Node;Ljava/lang/CharSequence;)V
invokevirtual com.oracle.truffle.api.nodes.Node.atomic:(Ljava/lang/Runnable;)V
2: aload 1
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/api/nodes/Node;
0 3 1 newNode TT;
0 3 2 reason Ljava/lang/CharSequence;
Signature: <T:Lcom/oracle/truffle/api/nodes/Node;>(TT;Ljava/lang/CharSequence;)TT;
MethodParameters:
Name Flags
newNode final
reason final
public final <T extends com.oracle.truffle.api.nodes.Node> T replace();
descriptor: (Lcom/oracle/truffle/api/nodes/Node;)Lcom/oracle/truffle/api/nodes/Node;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ldc ""
invokevirtual com.oracle.truffle.api.nodes.Node.replace:(Lcom/oracle/truffle/api/nodes/Node;Ljava/lang/CharSequence;)Lcom/oracle/truffle/api/nodes/Node;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/nodes/Node;
0 1 1 newNode TT;
Signature: <T:Lcom/oracle/truffle/api/nodes/Node;>(TT;)TT;
MethodParameters:
Name Flags
newNode
final void replaceHelper(com.oracle.truffle.api.nodes.Node, java.lang.CharSequence);
descriptor: (Lcom/oracle/truffle/api/nodes/Node;Ljava/lang/CharSequence;)V
flags: (0x0010) ACC_FINAL
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: ldc "do not call Node.replaceHelper from compiled code"
invokestatic com.oracle.truffle.api.CompilerAsserts.neverPartOfCompilation:(Ljava/lang/String;)V
1: getstatic com.oracle.truffle.api.nodes.Node.$assertionsDisabled:Z
ifne 2
aload 0
invokevirtual com.oracle.truffle.api.nodes.Node.inAtomicBlock:()Z
ifne 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.oracle.truffle.api.nodes.Node.getParent:()Lcom/oracle/truffle/api/nodes/Node;
ifnonnull 4
3: new java.lang.IllegalStateException
dup
ldc "This node cannot be replaced, because it does not yet have a parent."
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 1
invokevirtual com.oracle.truffle.api.nodes.Node.isAdoptable:()Z
ifeq 6
5: aload 1
aload 0
getfield com.oracle.truffle.api.nodes.Node.parent:Lcom/oracle/truffle/api/nodes/Node;
putfield com.oracle.truffle.api.nodes.Node.parent:Lcom/oracle/truffle/api/nodes/Node;
6: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.truffle.api.nodes.Node.parent:Lcom/oracle/truffle/api/nodes/Node;
aload 0
aload 1
iconst_1
invokestatic com.oracle.truffle.api.nodes.NodeUtil.replaceChild:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/nodes/Node;Z)Z
ifne 8
7: aload 0
getfield com.oracle.truffle.api.nodes.Node.parent:Lcom/oracle/truffle/api/nodes/Node;
aload 1
invokevirtual com.oracle.truffle.api.nodes.Node.adoptUnadoptedHelper:(Lcom/oracle/truffle/api/nodes/Node;)V
8: StackMap locals:
StackMap stack:
aload 0
aload 0
aload 1
aload 2
invokevirtual com.oracle.truffle.api.nodes.Node.reportReplace:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/nodes/Node;Ljava/lang/CharSequence;)V
9: aload 0
aload 1
aload 2
invokevirtual com.oracle.truffle.api.nodes.Node.onReplace:(Lcom/oracle/truffle/api/nodes/Node;Ljava/lang/CharSequence;)V
10: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/oracle/truffle/api/nodes/Node;
0 11 1 newNode Lcom/oracle/truffle/api/nodes/Node;
0 11 2 reason Ljava/lang/CharSequence;
MethodParameters:
Name Flags
newNode
reason
public final boolean isSafelyReplaceableBy(com.oracle.truffle.api.nodes.Node);
descriptor: (Lcom/oracle/truffle/api/nodes/Node;)Z
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.oracle.truffle.api.nodes.Node.getParent:()Lcom/oracle/truffle/api/nodes/Node;
aload 0
aload 1
invokestatic com.oracle.truffle.api.nodes.NodeUtil.isReplacementSafe:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/nodes/Node;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/nodes/Node;
0 1 1 newNode Lcom/oracle/truffle/api/nodes/Node;
MethodParameters:
Name Flags
newNode
private void reportReplace(com.oracle.truffle.api.nodes.Node, com.oracle.truffle.api.nodes.Node, java.lang.CharSequence);
descriptor: (Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/nodes/Node;Ljava/lang/CharSequence;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
astore 4
start local 4 1: goto 13
2: StackMap locals: com.oracle.truffle.api.nodes.Node
StackMap stack:
iconst_0
istore 5
start local 5 3: aload 4
instanceof com.oracle.truffle.api.ReplaceObserver
ifeq 6
4: aload 4
checkcast com.oracle.truffle.api.ReplaceObserver
aload 1
aload 2
aload 3
invokeinterface com.oracle.truffle.api.ReplaceObserver.nodeReplaced:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/nodes/Node;Ljava/lang/CharSequence;)Z
istore 5
5: goto 10
StackMap locals: int
StackMap stack:
6: aload 4
instanceof com.oracle.truffle.api.nodes.RootNode
ifeq 10
7: aload 4
checkcast com.oracle.truffle.api.nodes.RootNode
invokevirtual com.oracle.truffle.api.nodes.RootNode.getCallTarget:()Lcom/oracle/truffle/api/RootCallTarget;
astore 6
start local 6 8: aload 6
instanceof com.oracle.truffle.api.ReplaceObserver
ifeq 10
9: aload 6
checkcast com.oracle.truffle.api.ReplaceObserver
aload 1
aload 2
aload 3
invokeinterface com.oracle.truffle.api.ReplaceObserver.nodeReplaced:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/nodes/Node;Ljava/lang/CharSequence;)Z
istore 5
end local 6 10: StackMap locals:
StackMap stack:
iload 5
ifeq 12
11: goto 14
12: StackMap locals:
StackMap stack:
aload 4
invokevirtual com.oracle.truffle.api.nodes.Node.getParent:()Lcom/oracle/truffle/api/nodes/Node;
astore 4
end local 5 13: StackMap locals:
StackMap stack:
aload 4
ifnonnull 2
14: StackMap locals:
StackMap stack:
getstatic com.oracle.truffle.api.TruffleOptions.TraceRewrites:Z
ifeq 16
15: aload 0
aload 2
aload 3
invokestatic com.oracle.truffle.api.nodes.NodeUtil.traceRewrite:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/nodes/Node;Ljava/lang/CharSequence;)V
16: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lcom/oracle/truffle/api/nodes/Node;
0 17 1 oldNode Lcom/oracle/truffle/api/nodes/Node;
0 17 2 newNode Lcom/oracle/truffle/api/nodes/Node;
0 17 3 reason Ljava/lang/CharSequence;
1 17 4 node Lcom/oracle/truffle/api/nodes/Node;
3 13 5 consumed Z
8 10 6 target Lcom/oracle/truffle/api/CallTarget;
MethodParameters:
Name Flags
oldNode
newNode
reason
protected void onReplace(com.oracle.truffle.api.nodes.Node, java.lang.CharSequence);
descriptor: (Lcom/oracle/truffle/api/nodes/Node;Ljava/lang/CharSequence;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=0, locals=3, args_size=3
start local 0 start local 1 start local 2 0: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/nodes/Node;
0 1 1 newNode Lcom/oracle/truffle/api/nodes/Node;
0 1 2 reason Ljava/lang/CharSequence;
MethodParameters:
Name Flags
newNode
reason
public final void accept(com.oracle.truffle.api.nodes.NodeVisitor);
descriptor: (Lcom/oracle/truffle/api/nodes/NodeVisitor;)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
invokeinterface com.oracle.truffle.api.nodes.NodeVisitor.visit:(Lcom/oracle/truffle/api/nodes/Node;)Z
ifeq 2
1: aload 0
aload 1
invokestatic com.oracle.truffle.api.nodes.NodeUtil.forEachChildRecursive:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/nodes/NodeVisitor;)Z
pop
2: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/api/nodes/Node;
0 3 1 nodeVisitor Lcom/oracle/truffle/api/nodes/NodeVisitor;
MethodParameters:
Name Flags
nodeVisitor
public final java.lang.Iterable<com.oracle.truffle.api.nodes.Node> getChildren();
descriptor: ()Ljava/lang/Iterable;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=3, locals=1, args_size=1
start local 0 0: new com.oracle.truffle.api.nodes.Node$3
dup
aload 0
invokespecial com.oracle.truffle.api.nodes.Node$3.<init>:(Lcom/oracle/truffle/api/nodes/Node;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/nodes/Node;
Signature: ()Ljava/lang/Iterable<Lcom/oracle/truffle/api/nodes/Node;>;
public com.oracle.truffle.api.nodes.Node copy();
descriptor: ()Lcom/oracle/truffle/api/nodes/Node;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: ldc "do not call Node.copy from compiled code"
invokestatic com.oracle.truffle.api.CompilerAsserts.neverPartOfCompilation:(Ljava/lang/String;)V
1: aload 0
invokespecial java.lang.Object.clone:()Ljava/lang/Object;
checkcast com.oracle.truffle.api.nodes.Node
2: areturn
3: StackMap locals:
StackMap stack: java.lang.CloneNotSupportedException
astore 1
start local 1 4: new java.lang.AssertionError
dup
aload 1
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/api/nodes/Node;
4 5 1 e Ljava/lang/CloneNotSupportedException;
Exception table:
from to target type
1 2 3 Class java.lang.CloneNotSupportedException
public com.oracle.truffle.api.nodes.Node deepCopy();
descriptor: ()Lcom/oracle/truffle/api/nodes/Node;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokestatic com.oracle.truffle.api.nodes.NodeUtil.deepCopyImpl:(Lcom/oracle/truffle/api/nodes/Node;)Lcom/oracle/truffle/api/nodes/Node;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/nodes/Node;
public final com.oracle.truffle.api.nodes.RootNode getRootNode();
descriptor: ()Lcom/oracle/truffle/api/nodes/RootNode;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokestatic com.oracle.truffle.api.CompilerDirectives.isPartialEvaluationConstant:(Ljava/lang/Object;)Z
ifeq 2
1: aload 0
invokevirtual com.oracle.truffle.api.nodes.Node.getRootNodeImpl:()Lcom/oracle/truffle/api/nodes/RootNode;
areturn
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.oracle.truffle.api.nodes.Node.getRootBoundary:()Lcom/oracle/truffle/api/nodes/RootNode;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/api/nodes/Node;
private com.oracle.truffle.api.nodes.RootNode getRootBoundary();
descriptor: ()Lcom/oracle/truffle/api/nodes/RootNode;
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.oracle.truffle.api.nodes.Node.getRootNodeImpl:()Lcom/oracle/truffle/api/nodes/RootNode;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/nodes/Node;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
private com.oracle.truffle.api.nodes.RootNode getRootNodeImpl();
descriptor: ()Lcom/oracle/truffle/api/nodes/RootNode;
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=3, args_size=1
start local 0 0: aload 0
astore 1
start local 1 1: StackMap locals: com.oracle.truffle.api.nodes.Node
StackMap stack:
aload 1
astore 2
start local 2 2: aload 1
invokevirtual com.oracle.truffle.api.nodes.Node.getParent:()Lcom/oracle/truffle/api/nodes/Node;
astore 1
3: aload 1
ifnonnull 1
4: aload 2
instanceof com.oracle.truffle.api.nodes.RootNode
ifeq 6
5: aload 2
checkcast com.oracle.truffle.api.nodes.RootNode
areturn
6: StackMap locals: com.oracle.truffle.api.nodes.Node
StackMap stack:
aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/oracle/truffle/api/nodes/Node;
1 7 1 node Lcom/oracle/truffle/api/nodes/Node;
2 7 2 prev Lcom/oracle/truffle/api/nodes/Node;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.ExplodeLoop()
protected final void reportPolymorphicSpecialize();
descriptor: ()V
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=2, locals=1, args_size=1
start local 0 0: invokestatic com.oracle.truffle.api.CompilerAsserts.neverPartOfCompilation:()V
1: getstatic com.oracle.truffle.api.nodes.NodeAccessor.RUNTIME:Lcom/oracle/truffle/api/impl/Accessor$RuntimeSupport;
aload 0
invokevirtual com.oracle.truffle.api.impl.Accessor$RuntimeSupport.reportPolymorphicSpecialize:(Lcom/oracle/truffle/api/nodes/Node;)V
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/api/nodes/Node;
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
astore 1
start local 1 1: aload 0
invokevirtual com.oracle.truffle.api.nodes.Node.getDebugProperties:()Ljava/util/Map;
astore 2
start local 2 2: iconst_0
istore 3
start local 3 3: aload 2
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 5
goto 10
StackMap locals: com.oracle.truffle.api.nodes.Node java.lang.StringBuilder java.util.Map int top java.util.Iterator
StackMap stack:
4: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 4
start local 4 5: aload 1
iload 3
ifeq 6
ldc ","
goto 7
StackMap locals: com.oracle.truffle.api.nodes.Node java.lang.StringBuilder java.util.Map int java.util.Map$Entry java.util.Iterator
StackMap stack: java.lang.StringBuilder
6: ldc "<"
StackMap locals: com.oracle.truffle.api.nodes.Node java.lang.StringBuilder java.util.Map int java.util.Map$Entry java.util.Iterator
StackMap stack: java.lang.StringBuilder java.lang.String
7: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
8: iconst_1
istore 3
9: aload 1
aload 4
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast java.lang.String
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
pop
end local 4 10: StackMap locals: com.oracle.truffle.api.nodes.Node java.lang.StringBuilder java.util.Map int top java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
11: iload 3
ifeq 13
12: aload 1
ldc ">"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
13: StackMap locals: com.oracle.truffle.api.nodes.Node java.lang.StringBuilder java.util.Map int
StackMap stack:
aload 1
ldc "@"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual java.lang.Object.hashCode:()I
invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
14: aload 1
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
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/api/nodes/Node;
1 15 1 sb Ljava/lang/StringBuilder;
2 15 2 properties Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
3 15 3 hasProperties Z
5 10 4 entry Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/Object;>;
public final void atomic(java.lang.Runnable);
descriptor: (Ljava/lang/Runnable;)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.oracle.truffle.api.nodes.Node.getLock:()Ljava/util/concurrent/locks/Lock;
astore 2
start local 2 1: aload 2
invokeinterface java.util.concurrent.locks.Lock.lock:()V
2: aload 1
invokeinterface java.lang.Runnable.run:()V
3: goto 7
StackMap locals: com.oracle.truffle.api.nodes.Node java.lang.Runnable java.util.concurrent.locks.Lock
StackMap stack: java.lang.Throwable
4: astore 3
5: aload 2
invokeinterface java.util.concurrent.locks.Lock.unlock:()V
6: aload 3
athrow
7: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.concurrent.locks.Lock.unlock:()V
8: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/oracle/truffle/api/nodes/Node;
0 9 1 closure Ljava/lang/Runnable;
1 9 2 lock Ljava/util/concurrent/locks/Lock;
Exception table:
from to target type
1 4 4 any
MethodParameters:
Name Flags
closure
public final <T> T atomic(java.util.concurrent.Callable<T>);
descriptor: (Ljava/util/concurrent/Callable;)Ljava/lang/Object;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=3, locals=6, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.oracle.truffle.api.nodes.Node.getLock:()Ljava/util/concurrent/locks/Lock;
astore 2
start local 2 1: aload 2
invokeinterface java.util.concurrent.locks.Lock.lock:()V
2: aload 1
invokeinterface java.util.concurrent.Callable.call:()Ljava/lang/Object;
astore 5
3: aload 2
invokeinterface java.util.concurrent.locks.Lock.unlock:()V
4: aload 5
areturn
5: StackMap locals: com.oracle.truffle.api.nodes.Node java.util.concurrent.Callable java.util.concurrent.locks.Lock
StackMap stack: java.lang.Throwable
astore 3
start local 3 6: aload 3
athrow
end local 3 7: StackMap locals:
StackMap stack: java.lang.Exception
astore 3
start local 3 8: new java.lang.RuntimeException
dup
aload 3
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 3 9: StackMap locals:
StackMap stack: java.lang.Throwable
astore 4
10: aload 2
invokeinterface java.util.concurrent.locks.Lock.unlock:()V
11: aload 4
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/oracle/truffle/api/nodes/Node;
0 12 1 closure Ljava/util/concurrent/Callable<TT;>;
1 12 2 lock Ljava/util/concurrent/locks/Lock;
6 7 3 e Ljava/lang/Throwable;
8 9 3 e Ljava/lang/Exception;
Exception table:
from to target type
1 3 5 Class java.lang.RuntimeException
1 3 5 Class java.lang.Error
1 3 7 Class java.lang.Exception
1 3 9 any
5 9 9 any
Signature: <T:Ljava/lang/Object;>(Ljava/util/concurrent/Callable<TT;>;)TT;
MethodParameters:
Name Flags
closure
protected final java.util.concurrent.locks.Lock getLock();
descriptor: ()Ljava/util/concurrent/locks/Lock;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual com.oracle.truffle.api.nodes.Node.getRootNode:()Lcom/oracle/truffle/api/nodes/RootNode;
astore 1
start local 1 1: aload 1
ifnonnull 3
2: getstatic com.oracle.truffle.api.nodes.Node.GIL_LOCK:Ljava/util/concurrent/locks/ReentrantLock;
areturn
3: StackMap locals: com.oracle.truffle.api.nodes.RootNode
StackMap stack:
aload 1
invokevirtual com.oracle.truffle.api.nodes.RootNode.getLazyLock:()Ljava/util/concurrent/locks/ReentrantLock;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/api/nodes/Node;
1 4 1 root Lcom/oracle/truffle/api/nodes/RootNode;
public java.lang.String getDescription();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
ldc Lcom/oracle/truffle/api/nodes/NodeInfo;
invokevirtual java.lang.Class.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
checkcast com.oracle.truffle.api.nodes.NodeInfo
astore 1
start local 1 1: aload 1
ifnull 3
2: aload 1
invokeinterface com.oracle.truffle.api.nodes.NodeInfo.description:()Ljava/lang/String;
areturn
3: StackMap locals: com.oracle.truffle.api.nodes.NodeInfo
StackMap stack:
ldc ""
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/api/nodes/Node;
1 4 1 info Lcom/oracle/truffle/api/nodes/NodeInfo;
protected final <T extends com.oracle.truffle.api.TruffleLanguage> com.oracle.truffle.api.TruffleLanguage$LanguageReference<T> lookupLanguageReference(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Lcom/oracle/truffle/api/TruffleLanguage$LanguageReference;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 3
1: invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreter:()V
2: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
3: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.oracle.truffle.api.nodes.Node.getExecutableNode:()Lcom/oracle/truffle/api/nodes/ExecutableNode;
astore 2
start local 2 4: aload 2
ifnull 18
5: aload 2
invokevirtual com.oracle.truffle.api.nodes.ExecutableNode.getLanguage:()Lcom/oracle/truffle/api/TruffleLanguage;
astore 3
start local 3 6: aload 2
invokevirtual com.oracle.truffle.api.nodes.ExecutableNode.getEngine:()Ljava/lang/Object;
astore 4
start local 4 7: aload 3
ifnull 10
aload 3
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aload 1
if_acmpne 10
8: getstatic com.oracle.truffle.api.nodes.NodeAccessor.ENGINE:Lcom/oracle/truffle/api/impl/Accessor$EngineSupport;
aload 4
aload 3
aload 1
invokevirtual com.oracle.truffle.api.impl.Accessor$EngineSupport.getDirectLanguageReference:(Ljava/lang/Object;Lcom/oracle/truffle/api/TruffleLanguage;Ljava/lang/Class;)Lcom/oracle/truffle/api/TruffleLanguage$LanguageReference;
9: areturn
10: StackMap locals: com.oracle.truffle.api.nodes.ExecutableNode com.oracle.truffle.api.TruffleLanguage java.lang.Object
StackMap stack:
aload 2
aload 1
invokevirtual com.oracle.truffle.api.nodes.ExecutableNode.lookupReferenceCache:(Ljava/lang/Class;)Lcom/oracle/truffle/api/nodes/ExecutableNode$ReferenceCache;
astore 5
start local 5 11: aload 5
ifnull 14
12: aload 5
getfield com.oracle.truffle.api.nodes.ExecutableNode$ReferenceCache.languageReference:Lcom/oracle/truffle/api/TruffleLanguage$LanguageReference;
13: areturn
14: StackMap locals: com.oracle.truffle.api.nodes.ExecutableNode$ReferenceCache
StackMap stack:
getstatic com.oracle.truffle.api.nodes.NodeAccessor.ENGINE:Lcom/oracle/truffle/api/impl/Accessor$EngineSupport;
aload 4
15: aload 3
aload 1
16: invokevirtual com.oracle.truffle.api.impl.Accessor$EngineSupport.lookupLanguageReference:(Ljava/lang/Object;Lcom/oracle/truffle/api/TruffleLanguage;Ljava/lang/Class;)Lcom/oracle/truffle/api/TruffleLanguage$LanguageReference;
17: areturn
end local 5 end local 4 end local 3 18: StackMap locals:
StackMap stack:
aload 1
invokestatic com.oracle.truffle.api.nodes.Node.lookupUncachedLanguageReference:(Ljava/lang/Class;)Lcom/oracle/truffle/api/TruffleLanguage$LanguageReference;
19: areturn
end local 2 20: StackMap locals: com.oracle.truffle.api.nodes.Node java.lang.Class
StackMap stack: java.lang.Throwable
astore 2
start local 2 21: getstatic com.oracle.truffle.api.nodes.NodeAccessor.ENGINE:Lcom/oracle/truffle/api/impl/Accessor$EngineSupport;
aload 2
invokevirtual com.oracle.truffle.api.impl.Accessor$EngineSupport.engineToLanguageException:(Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lcom/oracle/truffle/api/nodes/Node;
0 22 1 languageClass Ljava/lang/Class<TT;>;
4 20 2 executableNode Lcom/oracle/truffle/api/nodes/ExecutableNode;
6 18 3 language Lcom/oracle/truffle/api/TruffleLanguage<*>;
7 18 4 engine Ljava/lang/Object;
11 18 5 cache Lcom/oracle/truffle/api/nodes/ExecutableNode$ReferenceCache;
21 22 2 t Ljava/lang/Throwable;
Exception table:
from to target type
0 9 20 Class java.lang.Throwable
10 13 20 Class java.lang.Throwable
14 17 20 Class java.lang.Throwable
18 19 20 Class java.lang.Throwable
Signature: <T:Lcom/oracle/truffle/api/TruffleLanguage;>(Ljava/lang/Class<TT;>;)Lcom/oracle/truffle/api/TruffleLanguage$LanguageReference<TT;>;
MethodParameters:
Name Flags
languageClass
private static <T extends com.oracle.truffle.api.TruffleLanguage<?>> com.oracle.truffle.api.TruffleLanguage$LanguageReference<T> lookupUncachedLanguageReference(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Lcom/oracle/truffle/api/TruffleLanguage$LanguageReference;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: getstatic com.oracle.truffle.api.nodes.Node.UNCACHED_LANGUAGE_REFERENCES:Ljava/util/Map;
aload 0
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.oracle.truffle.api.TruffleLanguage$LanguageReference
astore 1
start local 1 1: aload 1
ifnonnull 4
2: new com.oracle.truffle.api.nodes.Node$4
dup
aload 0
invokespecial com.oracle.truffle.api.nodes.Node$4.<init>:(Ljava/lang/Class;)V
astore 1
3: getstatic com.oracle.truffle.api.nodes.Node.UNCACHED_LANGUAGE_REFERENCES:Ljava/util/Map;
aload 0
aload 1
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
4: StackMap locals: com.oracle.truffle.api.TruffleLanguage$LanguageReference
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 languageClass Ljava/lang/Class<TT;>;
1 5 1 result Lcom/oracle/truffle/api/TruffleLanguage$LanguageReference<*>;
Signature: <T: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
languageClass
private com.oracle.truffle.api.nodes.ExecutableNode getExecutableNode();
descriptor: ()Lcom/oracle/truffle/api/nodes/ExecutableNode;
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
astore 1
start local 1 1: goto 5
2: StackMap locals: com.oracle.truffle.api.nodes.Node
StackMap stack:
aload 1
instanceof com.oracle.truffle.api.nodes.ExecutableNode
ifeq 4
3: aload 1
checkcast com.oracle.truffle.api.nodes.ExecutableNode
areturn
4: StackMap locals:
StackMap stack:
aload 1
invokevirtual com.oracle.truffle.api.nodes.Node.getParent:()Lcom/oracle/truffle/api/nodes/Node;
astore 1
5: StackMap locals:
StackMap stack:
aload 1
ifnonnull 2
6: aload 1
ifnonnull 8
7: aload 0
invokevirtual com.oracle.truffle.api.nodes.Node.checkAdoptable:()V
8: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/oracle/truffle/api/nodes/Node;
1 9 1 node Lcom/oracle/truffle/api/nodes/Node;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.ExplodeLoop()
private void checkAdoptable();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.oracle.truffle.api.nodes.Node.isAdoptable:()Z
ifeq 2
1: new java.lang.IllegalStateException
dup
ldc "Node must be adopted before a reference can be looked up."
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/api/nodes/Node;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
protected final <C, T extends com.oracle.truffle.api.TruffleLanguage<C>> com.oracle.truffle.api.TruffleLanguage$ContextReference<C> lookupContextReference(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 3
1: invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreter:()V
2: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
3: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.oracle.truffle.api.nodes.Node.getExecutableNode:()Lcom/oracle/truffle/api/nodes/ExecutableNode;
astore 2
start local 2 4: aload 2
ifnull 20
5: aload 2
invokevirtual com.oracle.truffle.api.nodes.ExecutableNode.getLanguage:()Lcom/oracle/truffle/api/TruffleLanguage;
astore 3
start local 3 6: aload 2
invokevirtual com.oracle.truffle.api.nodes.ExecutableNode.getEngine:()Ljava/lang/Object;
astore 4
start local 4 7: aload 3
ifnull 12
aload 3
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aload 1
if_acmpne 12
8: getstatic com.oracle.truffle.api.nodes.NodeAccessor.ENGINE:Lcom/oracle/truffle/api/impl/Accessor$EngineSupport;
aload 4
9: aload 3
aload 1
10: invokevirtual com.oracle.truffle.api.impl.Accessor$EngineSupport.getDirectContextReference:(Ljava/lang/Object;Lcom/oracle/truffle/api/TruffleLanguage;Ljava/lang/Class;)Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;
11: areturn
12: StackMap locals: com.oracle.truffle.api.nodes.ExecutableNode com.oracle.truffle.api.TruffleLanguage java.lang.Object
StackMap stack:
aload 2
aload 1
invokevirtual com.oracle.truffle.api.nodes.ExecutableNode.lookupReferenceCache:(Ljava/lang/Class;)Lcom/oracle/truffle/api/nodes/ExecutableNode$ReferenceCache;
astore 5
start local 5 13: aload 5
ifnull 16
14: aload 5
getfield com.oracle.truffle.api.nodes.ExecutableNode$ReferenceCache.contextReference:Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;
15: areturn
16: StackMap locals: com.oracle.truffle.api.nodes.ExecutableNode$ReferenceCache
StackMap stack:
getstatic com.oracle.truffle.api.nodes.NodeAccessor.ENGINE:Lcom/oracle/truffle/api/impl/Accessor$EngineSupport;
aload 4
17: aload 3
aload 1
18: invokevirtual com.oracle.truffle.api.impl.Accessor$EngineSupport.lookupContextReference:(Ljava/lang/Object;Lcom/oracle/truffle/api/TruffleLanguage;Ljava/lang/Class;)Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;
19: areturn
end local 5 end local 4 end local 3 20: StackMap locals:
StackMap stack:
aload 1
invokestatic com.oracle.truffle.api.nodes.Node.lookupUncachedContextReference:(Ljava/lang/Class;)Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;
21: areturn
end local 2 22: StackMap locals: com.oracle.truffle.api.nodes.Node java.lang.Class
StackMap stack: java.lang.Throwable
astore 2
start local 2 23: getstatic com.oracle.truffle.api.nodes.NodeAccessor.ENGINE:Lcom/oracle/truffle/api/impl/Accessor$EngineSupport;
aload 2
invokevirtual com.oracle.truffle.api.impl.Accessor$EngineSupport.engineToLanguageException:(Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Lcom/oracle/truffle/api/nodes/Node;
0 24 1 languageClass Ljava/lang/Class<TT;>;
4 22 2 executableNode Lcom/oracle/truffle/api/nodes/ExecutableNode;
6 20 3 language Lcom/oracle/truffle/api/TruffleLanguage<*>;
7 20 4 engine Ljava/lang/Object;
13 20 5 cache Lcom/oracle/truffle/api/nodes/ExecutableNode$ReferenceCache;
23 24 2 t Ljava/lang/Throwable;
Exception table:
from to target type
0 11 22 Class java.lang.Throwable
12 15 22 Class java.lang.Throwable
16 19 22 Class java.lang.Throwable
20 21 22 Class java.lang.Throwable
Signature: <C:Ljava/lang/Object;T:Lcom/oracle/truffle/api/TruffleLanguage<TC;>;>(Ljava/lang/Class<TT;>;)Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<TC;>;
MethodParameters:
Name Flags
languageClass
private static void resetNativeImageState();
descriptor: ()V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=0, args_size=0
0: getstatic com.oracle.truffle.api.nodes.Node.$assertionsDisabled:Z
ifne 1
getstatic com.oracle.truffle.api.TruffleOptions.AOT:Z
ifne 1
new java.lang.AssertionError
dup
ldc "Only supported during image generation"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
1: StackMap locals:
StackMap stack:
getstatic com.oracle.truffle.api.nodes.Node.UNCACHED_CONTEXT_REFERENCES:Ljava/util/Map;
invokeinterface java.util.Map.clear:()V
2: getstatic com.oracle.truffle.api.nodes.Node.UNCACHED_LANGUAGE_REFERENCES:Ljava/util/Map;
invokeinterface java.util.Map.clear:()V
3: return
LocalVariableTable:
Start End Slot Name Signature
private static <T extends com.oracle.truffle.api.TruffleLanguage<C>, C> com.oracle.truffle.api.TruffleLanguage$ContextReference<C> lookupUncachedContextReference(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Lcom/oracle/truffle/api/TruffleLanguage$ContextReference;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: getstatic com.oracle.truffle.api.nodes.Node.UNCACHED_CONTEXT_REFERENCES:Ljava/util/Map;
aload 0
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.oracle.truffle.api.TruffleLanguage$ContextReference
astore 1
start local 1 1: aload 1
ifnonnull 4
2: new com.oracle.truffle.api.nodes.Node$5
dup
aload 0
invokespecial com.oracle.truffle.api.nodes.Node$5.<init>:(Ljava/lang/Class;)V
astore 1
3: getstatic com.oracle.truffle.api.nodes.Node.UNCACHED_CONTEXT_REFERENCES:Ljava/util/Map;
aload 0
aload 1
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
4: StackMap locals: com.oracle.truffle.api.TruffleLanguage$ContextReference
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 language Ljava/lang/Class<TT;>;
1 5 1 result Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<*>;
Signature: <T:Lcom/oracle/truffle/api/TruffleLanguage<TC;>;C:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)Lcom/oracle/truffle/api/TruffleLanguage$ContextReference<TC;>;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
MethodParameters:
Name Flags
language
private boolean inAtomicBlock();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.oracle.truffle.api.nodes.Node.getLock:()Ljava/util/concurrent/locks/Lock;
checkcast java.util.concurrent.locks.ReentrantLock
invokevirtual java.util.concurrent.locks.ReentrantLock.isHeldByCurrentThread:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/nodes/Node;
}
SourceFile: "Node.java"
NestMembers:
com.oracle.truffle.api.nodes.Node$1 com.oracle.truffle.api.nodes.Node$2 com.oracle.truffle.api.nodes.Node$3 com.oracle.truffle.api.nodes.Node$4 com.oracle.truffle.api.nodes.Node$5 com.oracle.truffle.api.nodes.Node$Child com.oracle.truffle.api.nodes.Node$Children
InnerClasses:
public abstract CompilationFinal = com.oracle.truffle.api.CompilerDirectives$CompilationFinal of com.oracle.truffle.api.CompilerDirectives
public abstract TruffleBoundary = com.oracle.truffle.api.CompilerDirectives$TruffleBoundary of com.oracle.truffle.api.CompilerDirectives
public abstract ContextReference = com.oracle.truffle.api.TruffleLanguage$ContextReference of com.oracle.truffle.api.TruffleLanguage
public abstract 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 abstract RuntimeSupport = com.oracle.truffle.api.impl.Accessor$RuntimeSupport of com.oracle.truffle.api.impl.Accessor
final ReferenceCache = com.oracle.truffle.api.nodes.ExecutableNode$ReferenceCache of com.oracle.truffle.api.nodes.ExecutableNode
com.oracle.truffle.api.nodes.Node$1
com.oracle.truffle.api.nodes.Node$2
com.oracle.truffle.api.nodes.Node$3
com.oracle.truffle.api.nodes.Node$4
com.oracle.truffle.api.nodes.Node$5
public abstract Child = com.oracle.truffle.api.nodes.Node$Child of com.oracle.truffle.api.nodes.Node
public abstract Children = com.oracle.truffle.api.nodes.Node$Children of com.oracle.truffle.api.nodes.Node
public abstract Entry = java.util.Map$Entry of java.util.Map