public final class com.oracle.truffle.js.nodes.access.PropertyCacheNode$PrimitiveReceiverCheckNode extends com.oracle.truffle.js.nodes.access.PropertyCacheNode$ReceiverCheckNode
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: com.oracle.truffle.js.nodes.access.PropertyCacheNode$PrimitiveReceiverCheckNode
super_class: com.oracle.truffle.js.nodes.access.PropertyCacheNode$ReceiverCheckNode
{
private final java.lang.Class<?> type;
descriptor: Ljava/lang/Class;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/lang/Class<*>;
private com.oracle.truffle.js.nodes.access.PropertyCacheNode$AbstractShapeCheckNode prototypeShapeCheck;
descriptor: Lcom/oracle/truffle/js/nodes/access/PropertyCacheNode$AbstractShapeCheckNode;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.Node$Child()
protected void <init>(java.lang.Class<?>, com.oracle.truffle.js.nodes.access.PropertyCacheNode$AbstractShapeCheckNode);
descriptor: (Ljava/lang/Class;Lcom/oracle/truffle/js/nodes/access/PropertyCacheNode$AbstractShapeCheckNode;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial com.oracle.truffle.js.nodes.access.PropertyCacheNode$ReceiverCheckNode.<init>:()V
1: aload 0
aload 1
putfield com.oracle.truffle.js.nodes.access.PropertyCacheNode$PrimitiveReceiverCheckNode.type:Ljava/lang/Class;
2: aload 0
aload 2
putfield com.oracle.truffle.js.nodes.access.PropertyCacheNode$PrimitiveReceiverCheckNode.prototypeShapeCheck:Lcom/oracle/truffle/js/nodes/access/PropertyCacheNode$AbstractShapeCheckNode;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/js/nodes/access/PropertyCacheNode$PrimitiveReceiverCheckNode;
0 4 1 type Ljava/lang/Class<*>;
0 4 2 prototypeShapeCheck Lcom/oracle/truffle/js/nodes/access/PropertyCacheNode$AbstractShapeCheckNode;
Signature: (Ljava/lang/Class<*>;Lcom/oracle/truffle/js/nodes/access/PropertyCacheNode$AbstractShapeCheckNode;)V
MethodParameters:
Name Flags
type
prototypeShapeCheck
public boolean accept(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.js.nodes.access.PropertyCacheNode$PrimitiveReceiverCheckNode.type:Ljava/lang/Class;
aload 1
invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
ifeq 2
1: aload 0
getfield com.oracle.truffle.js.nodes.access.PropertyCacheNode$PrimitiveReceiverCheckNode.prototypeShapeCheck:Lcom/oracle/truffle/js/nodes/access/PropertyCacheNode$AbstractShapeCheckNode;
aload 1
invokevirtual com.oracle.truffle.js.nodes.access.PropertyCacheNode$AbstractShapeCheckNode.accept:(Ljava/lang/Object;)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/js/nodes/access/PropertyCacheNode$PrimitiveReceiverCheckNode;
0 3 1 thisObj Ljava/lang/Object;
MethodParameters:
Name Flags
thisObj
public com.oracle.truffle.api.object.DynamicObject getStore(java.lang.Object);
descriptor: (Ljava/lang/Object;)Lcom/oracle/truffle/api/object/DynamicObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.js.nodes.access.PropertyCacheNode$PrimitiveReceiverCheckNode.prototypeShapeCheck:Lcom/oracle/truffle/js/nodes/access/PropertyCacheNode$AbstractShapeCheckNode;
aload 1
invokevirtual com.oracle.truffle.js.nodes.access.PropertyCacheNode$AbstractShapeCheckNode.getStore:(Ljava/lang/Object;)Lcom/oracle/truffle/api/object/DynamicObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/js/nodes/access/PropertyCacheNode$PrimitiveReceiverCheckNode;
0 1 1 thisObj Ljava/lang/Object;
MethodParameters:
Name Flags
thisObj
public boolean isValid();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.js.nodes.access.PropertyCacheNode$PrimitiveReceiverCheckNode.prototypeShapeCheck:Lcom/oracle/truffle/js/nodes/access/PropertyCacheNode$AbstractShapeCheckNode;
invokevirtual com.oracle.truffle.js.nodes.access.PropertyCacheNode$AbstractShapeCheckNode.isValid:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/js/nodes/access/PropertyCacheNode$PrimitiveReceiverCheckNode;
}
SourceFile: "PropertyCacheNode.java"
NestHost: com.oracle.truffle.js.nodes.access.PropertyCacheNode
InnerClasses:
public abstract Child = com.oracle.truffle.api.nodes.Node$Child of com.oracle.truffle.api.nodes.Node
protected abstract AbstractShapeCheckNode = com.oracle.truffle.js.nodes.access.PropertyCacheNode$AbstractShapeCheckNode of com.oracle.truffle.js.nodes.access.PropertyCacheNode
protected final PrimitiveReceiverCheckNode = com.oracle.truffle.js.nodes.access.PropertyCacheNode$PrimitiveReceiverCheckNode of com.oracle.truffle.js.nodes.access.PropertyCacheNode
protected abstract ReceiverCheckNode = com.oracle.truffle.js.nodes.access.PropertyCacheNode$ReceiverCheckNode of com.oracle.truffle.js.nodes.access.PropertyCacheNode