class com.oracle.truffle.object.DynamicObjectLibraryImpl$MutateCacheData extends com.oracle.truffle.object.DynamicObjectLibraryImpl$CacheData<com.oracle.truffle.object.DynamicObjectLibraryImpl$MutateCacheData>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.oracle.truffle.object.DynamicObjectLibraryImpl$MutateCacheData
super_class: com.oracle.truffle.object.DynamicObjectLibraryImpl$CacheData
{
static final com.oracle.truffle.object.DynamicObjectLibraryImpl$MutateCacheData GENERIC;
descriptor: Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$MutateCacheData;
flags: (0x0018) ACC_STATIC, ACC_FINAL
final com.oracle.truffle.api.object.Shape newShape;
descriptor: Lcom/oracle/truffle/api/object/Shape;
flags: (0x0010) ACC_FINAL
final com.oracle.truffle.api.Assumption newShapeValidAssumption;
descriptor: Lcom/oracle/truffle/api/Assumption;
flags: (0x0010) ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=0, args_size=0
0: new com.oracle.truffle.object.DynamicObjectLibraryImpl$MutateCacheData
dup
aconst_null
aconst_null
aconst_null
invokespecial com.oracle.truffle.object.DynamicObjectLibraryImpl$MutateCacheData.<init>:(Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$MutateCacheData;Lcom/oracle/truffle/api/object/Shape;Lcom/oracle/truffle/api/Assumption;)V
putstatic com.oracle.truffle.object.DynamicObjectLibraryImpl$MutateCacheData.GENERIC:Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$MutateCacheData;
return
LocalVariableTable:
Start End Slot Name Signature
void <init>(com.oracle.truffle.object.DynamicObjectLibraryImpl$MutateCacheData, com.oracle.truffle.api.object.Shape, com.oracle.truffle.api.Assumption);
descriptor: (Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$MutateCacheData;Lcom/oracle/truffle/api/object/Shape;Lcom/oracle/truffle/api/Assumption;)V
flags: (0x0000)
Code:
stack=2, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
invokespecial com.oracle.truffle.object.DynamicObjectLibraryImpl$CacheData.<init>:(Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$CacheData;)V
1: aload 0
aload 2
putfield com.oracle.truffle.object.DynamicObjectLibraryImpl$MutateCacheData.newShape:Lcom/oracle/truffle/api/object/Shape;
2: aload 0
aload 3
putfield com.oracle.truffle.object.DynamicObjectLibraryImpl$MutateCacheData.newShapeValidAssumption:Lcom/oracle/truffle/api/Assumption;
3: return
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/object/DynamicObjectLibraryImpl$MutateCacheData;
0 4 1 next Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$MutateCacheData;
0 4 2 newShape Lcom/oracle/truffle/api/object/Shape;
0 4 3 newShapeValidAssumption Lcom/oracle/truffle/api/Assumption;
MethodParameters:
Name Flags
next
newShape
newShapeValidAssumption
protected boolean isValid();
descriptor: ()Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.object.DynamicObjectLibraryImpl$MutateCacheData.newShapeValidAssumption:Lcom/oracle/truffle/api/Assumption;
getstatic com.oracle.truffle.api.utilities.NeverValidAssumption.INSTANCE:Lcom/oracle/truffle/api/utilities/NeverValidAssumption;
if_acmpeq 1
aload 0
getfield com.oracle.truffle.object.DynamicObjectLibraryImpl$MutateCacheData.newShapeValidAssumption:Lcom/oracle/truffle/api/Assumption;
invokeinterface com.oracle.truffle.api.Assumption.isValid:()Z
ifne 1
iconst_0
ireturn
StackMap locals:
StackMap stack:
1: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$MutateCacheData;
protected void maybeUpdateShape(com.oracle.truffle.api.object.DynamicObject);
descriptor: (Lcom/oracle/truffle/api/object/DynamicObject;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.object.DynamicObjectLibraryImpl$MutateCacheData.newShapeValidAssumption:Lcom/oracle/truffle/api/Assumption;
getstatic com.oracle.truffle.api.utilities.NeverValidAssumption.INSTANCE:Lcom/oracle/truffle/api/utilities/NeverValidAssumption;
if_acmpne 2
1: aload 1
invokestatic com.oracle.truffle.object.DynamicObjectLibraryImpl.updateShapeImpl:(Lcom/oracle/truffle/api/object/DynamicObject;)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/object/DynamicObjectLibraryImpl$MutateCacheData;
0 3 1 store Lcom/oracle/truffle/api/object/DynamicObject;
MethodParameters:
Name Flags
store
protected com.oracle.truffle.object.DynamicObjectLibraryImpl$MutateCacheData withNext(com.oracle.truffle.object.DynamicObjectLibraryImpl$MutateCacheData);
descriptor: (Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$MutateCacheData;)Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$MutateCacheData;
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: new com.oracle.truffle.object.DynamicObjectLibraryImpl$MutateCacheData
dup
aload 0
getfield com.oracle.truffle.object.DynamicObjectLibraryImpl$MutateCacheData.next:Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$CacheData;
checkcast com.oracle.truffle.object.DynamicObjectLibraryImpl$MutateCacheData
aload 0
getfield com.oracle.truffle.object.DynamicObjectLibraryImpl$MutateCacheData.newShape:Lcom/oracle/truffle/api/object/Shape;
aload 0
getfield com.oracle.truffle.object.DynamicObjectLibraryImpl$MutateCacheData.newShapeValidAssumption:Lcom/oracle/truffle/api/Assumption;
invokespecial com.oracle.truffle.object.DynamicObjectLibraryImpl$MutateCacheData.<init>:(Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$MutateCacheData;Lcom/oracle/truffle/api/object/Shape;Lcom/oracle/truffle/api/Assumption;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$MutateCacheData;
0 1 1 newNext Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$MutateCacheData;
MethodParameters:
Name Flags
newNext
protected com.oracle.truffle.object.DynamicObjectLibraryImpl$CacheData withNext(com.oracle.truffle.object.DynamicObjectLibraryImpl$CacheData);
descriptor: (Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$CacheData;)Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$CacheData;
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast com.oracle.truffle.object.DynamicObjectLibraryImpl$MutateCacheData
invokevirtual com.oracle.truffle.object.DynamicObjectLibraryImpl$MutateCacheData.withNext:(Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$MutateCacheData;)Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$MutateCacheData;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$CacheData<Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$MutateCacheData;>;
SourceFile: "DynamicObjectLibraryImpl.java"
NestHost: com.oracle.truffle.object.DynamicObjectLibraryImpl
InnerClasses:
abstract CacheData = com.oracle.truffle.object.DynamicObjectLibraryImpl$CacheData of com.oracle.truffle.object.DynamicObjectLibraryImpl
MutateCacheData = com.oracle.truffle.object.DynamicObjectLibraryImpl$MutateCacheData of com.oracle.truffle.object.DynamicObjectLibraryImpl