class com.oracle.truffle.object.DynamicObjectLibraryImpl$Generic extends com.oracle.truffle.object.DynamicObjectLibraryImpl$KeyCacheEntry
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.oracle.truffle.object.DynamicObjectLibraryImpl$Generic
super_class: com.oracle.truffle.object.DynamicObjectLibraryImpl$KeyCacheEntry
{
private static final com.oracle.truffle.object.DynamicObjectLibraryImpl$Generic INSTANCE;
descriptor: Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$Generic;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new com.oracle.truffle.object.DynamicObjectLibraryImpl$Generic
dup
invokespecial com.oracle.truffle.object.DynamicObjectLibraryImpl$Generic.<init>:()V
putstatic com.oracle.truffle.object.DynamicObjectLibraryImpl$Generic.INSTANCE:Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$Generic;
return
LocalVariableTable:
Start End Slot Name Signature
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aconst_null
invokespecial com.oracle.truffle.object.DynamicObjectLibraryImpl$KeyCacheEntry.<init>:(Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$KeyCacheEntry;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$Generic;
static com.oracle.truffle.object.DynamicObjectLibraryImpl$Generic instance();
descriptor: ()Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$Generic;
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic com.oracle.truffle.object.DynamicObjectLibraryImpl$Generic.INSTANCE:Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$Generic;
areturn
LocalVariableTable:
Start End Slot Name Signature
public boolean isAdoptable();
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/truffle/object/DynamicObjectLibraryImpl$Generic;
public java.lang.Object getOrDefault(com.oracle.truffle.api.object.DynamicObject, com.oracle.truffle.api.object.Shape, java.lang.Object, java.lang.Object);
descriptor: (Lcom/oracle/truffle/api/object/DynamicObject;Lcom/oracle/truffle/api/object/Shape;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: getstatic com.oracle.truffle.object.LayoutImpl.ACCESS:Lcom/oracle/truffle/object/LayoutImpl$CoreAccess;
aload 1
invokevirtual com.oracle.truffle.object.LayoutImpl$CoreAccess.getShape:(Lcom/oracle/truffle/api/object/DynamicObject;)Lcom/oracle/truffle/api/object/Shape;
aload 3
invokevirtual com.oracle.truffle.api.object.Shape.getProperty:(Ljava/lang/Object;)Lcom/oracle/truffle/api/object/Property;
astore 5
start local 5 1: aload 5
ifnull 3
2: aload 5
invokestatic com.oracle.truffle.object.DynamicObjectLibraryImpl.getLocation:(Lcom/oracle/truffle/api/object/Property;)Lcom/oracle/truffle/object/LocationImpl;
aload 1
iconst_0
invokevirtual com.oracle.truffle.object.LocationImpl.get:(Lcom/oracle/truffle/api/object/DynamicObject;Z)Ljava/lang/Object;
areturn
3: StackMap locals: com.oracle.truffle.api.object.Property
StackMap stack:
aload 4
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 4 0 this Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$Generic;
0 4 1 object Lcom/oracle/truffle/api/object/DynamicObject;
0 4 2 cachedShape Lcom/oracle/truffle/api/object/Shape;
0 4 3 key Ljava/lang/Object;
0 4 4 defaultValue Ljava/lang/Object;
1 4 5 existing Lcom/oracle/truffle/api/object/Property;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
MethodParameters:
Name Flags
object
cachedShape
key
defaultValue
public int getIntOrDefault(com.oracle.truffle.api.object.DynamicObject, com.oracle.truffle.api.object.Shape, java.lang.Object, java.lang.Object);
descriptor: (Lcom/oracle/truffle/api/object/DynamicObject;Lcom/oracle/truffle/api/object/Shape;Ljava/lang/Object;Ljava/lang/Object;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: getstatic com.oracle.truffle.object.LayoutImpl.ACCESS:Lcom/oracle/truffle/object/LayoutImpl$CoreAccess;
aload 1
invokevirtual com.oracle.truffle.object.LayoutImpl$CoreAccess.getShape:(Lcom/oracle/truffle/api/object/DynamicObject;)Lcom/oracle/truffle/api/object/Shape;
aload 3
invokevirtual com.oracle.truffle.api.object.Shape.getProperty:(Ljava/lang/Object;)Lcom/oracle/truffle/api/object/Property;
astore 5
start local 5 1: aload 5
ifnull 3
2: aload 5
invokestatic com.oracle.truffle.object.DynamicObjectLibraryImpl.getLocation:(Lcom/oracle/truffle/api/object/Property;)Lcom/oracle/truffle/object/LocationImpl;
aload 1
iconst_0
invokevirtual com.oracle.truffle.object.LocationImpl.getInt:(Lcom/oracle/truffle/api/object/DynamicObject;Z)I
ireturn
3: StackMap locals: com.oracle.truffle.api.object.Property
StackMap stack:
aload 4
invokestatic com.oracle.truffle.object.LocationImpl.expectInteger:(Ljava/lang/Object;)I
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 4 0 this Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$Generic;
0 4 1 object Lcom/oracle/truffle/api/object/DynamicObject;
0 4 2 cachedShape Lcom/oracle/truffle/api/object/Shape;
0 4 3 key Ljava/lang/Object;
0 4 4 defaultValue Ljava/lang/Object;
1 4 5 existing Lcom/oracle/truffle/api/object/Property;
Exceptions:
throws com.oracle.truffle.api.nodes.UnexpectedResultException
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
MethodParameters:
Name Flags
object
cachedShape
key
defaultValue
public long getLongOrDefault(com.oracle.truffle.api.object.DynamicObject, com.oracle.truffle.api.object.Shape, java.lang.Object, java.lang.Object);
descriptor: (Lcom/oracle/truffle/api/object/DynamicObject;Lcom/oracle/truffle/api/object/Shape;Ljava/lang/Object;Ljava/lang/Object;)J
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: getstatic com.oracle.truffle.object.LayoutImpl.ACCESS:Lcom/oracle/truffle/object/LayoutImpl$CoreAccess;
aload 1
invokevirtual com.oracle.truffle.object.LayoutImpl$CoreAccess.getShape:(Lcom/oracle/truffle/api/object/DynamicObject;)Lcom/oracle/truffle/api/object/Shape;
aload 3
invokevirtual com.oracle.truffle.api.object.Shape.getProperty:(Ljava/lang/Object;)Lcom/oracle/truffle/api/object/Property;
astore 5
start local 5 1: aload 5
ifnull 3
2: aload 5
invokestatic com.oracle.truffle.object.DynamicObjectLibraryImpl.getLocation:(Lcom/oracle/truffle/api/object/Property;)Lcom/oracle/truffle/object/LocationImpl;
aload 1
iconst_0
invokevirtual com.oracle.truffle.object.LocationImpl.getLong:(Lcom/oracle/truffle/api/object/DynamicObject;Z)J
lreturn
3: StackMap locals: com.oracle.truffle.api.object.Property
StackMap stack:
aload 4
invokestatic com.oracle.truffle.object.LocationImpl.expectLong:(Ljava/lang/Object;)J
lreturn
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 4 0 this Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$Generic;
0 4 1 object Lcom/oracle/truffle/api/object/DynamicObject;
0 4 2 cachedShape Lcom/oracle/truffle/api/object/Shape;
0 4 3 key Ljava/lang/Object;
0 4 4 defaultValue Ljava/lang/Object;
1 4 5 existing Lcom/oracle/truffle/api/object/Property;
Exceptions:
throws com.oracle.truffle.api.nodes.UnexpectedResultException
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
MethodParameters:
Name Flags
object
cachedShape
key
defaultValue
public double getDoubleOrDefault(com.oracle.truffle.api.object.DynamicObject, com.oracle.truffle.api.object.Shape, java.lang.Object, java.lang.Object);
descriptor: (Lcom/oracle/truffle/api/object/DynamicObject;Lcom/oracle/truffle/api/object/Shape;Ljava/lang/Object;Ljava/lang/Object;)D
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: getstatic com.oracle.truffle.object.LayoutImpl.ACCESS:Lcom/oracle/truffle/object/LayoutImpl$CoreAccess;
aload 1
invokevirtual com.oracle.truffle.object.LayoutImpl$CoreAccess.getShape:(Lcom/oracle/truffle/api/object/DynamicObject;)Lcom/oracle/truffle/api/object/Shape;
aload 3
invokevirtual com.oracle.truffle.api.object.Shape.getProperty:(Ljava/lang/Object;)Lcom/oracle/truffle/api/object/Property;
astore 5
start local 5 1: aload 5
ifnull 3
2: aload 5
invokestatic com.oracle.truffle.object.DynamicObjectLibraryImpl.getLocation:(Lcom/oracle/truffle/api/object/Property;)Lcom/oracle/truffle/object/LocationImpl;
aload 1
iconst_0
invokevirtual com.oracle.truffle.object.LocationImpl.getDouble:(Lcom/oracle/truffle/api/object/DynamicObject;Z)D
dreturn
3: StackMap locals: com.oracle.truffle.api.object.Property
StackMap stack:
aload 4
invokestatic com.oracle.truffle.object.LocationImpl.expectDouble:(Ljava/lang/Object;)D
dreturn
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 4 0 this Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$Generic;
0 4 1 object Lcom/oracle/truffle/api/object/DynamicObject;
0 4 2 cachedShape Lcom/oracle/truffle/api/object/Shape;
0 4 3 key Ljava/lang/Object;
0 4 4 defaultValue Ljava/lang/Object;
1 4 5 existing Lcom/oracle/truffle/api/object/Property;
Exceptions:
throws com.oracle.truffle.api.nodes.UnexpectedResultException
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
MethodParameters:
Name Flags
object
cachedShape
key
defaultValue
public boolean put(com.oracle.truffle.api.object.DynamicObject, com.oracle.truffle.api.object.Shape, java.lang.Object, java.lang.Object, long);
descriptor: (Lcom/oracle/truffle/api/object/DynamicObject;Lcom/oracle/truffle/api/object/Shape;Ljava/lang/Object;Ljava/lang/Object;J)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=7, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 1
aload 3
aload 4
lload 5
invokestatic com.oracle.truffle.object.DynamicObjectLibraryImpl.putUncached:(Lcom/oracle/truffle/api/object/DynamicObject;Ljava/lang/Object;Ljava/lang/Object;J)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 1 0 this Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$Generic;
0 1 1 object Lcom/oracle/truffle/api/object/DynamicObject;
0 1 2 cachedShape Lcom/oracle/truffle/api/object/Shape;
0 1 3 key Ljava/lang/Object;
0 1 4 value Ljava/lang/Object;
0 1 5 putFlags J
MethodParameters:
Name Flags
object
cachedShape
key
value
putFlags
public boolean containsKey(com.oracle.truffle.api.object.DynamicObject, com.oracle.truffle.api.object.Shape, java.lang.Object);
descriptor: (Lcom/oracle/truffle/api/object/DynamicObject;Lcom/oracle/truffle/api/object/Shape;Ljava/lang/Object;)Z
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 0
aload 1
aload 2
aload 3
invokevirtual com.oracle.truffle.object.DynamicObjectLibraryImpl$Generic.getProperty:(Lcom/oracle/truffle/api/object/DynamicObject;Lcom/oracle/truffle/api/object/Shape;Ljava/lang/Object;)Lcom/oracle/truffle/api/object/Property;
astore 4
start local 4 1: aload 4
ifnull 2
iconst_1
ireturn
StackMap locals: com.oracle.truffle.api.object.Property
StackMap stack:
2: iconst_0
ireturn
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/object/DynamicObjectLibraryImpl$Generic;
0 3 1 object Lcom/oracle/truffle/api/object/DynamicObject;
0 3 2 cachedShape Lcom/oracle/truffle/api/object/Shape;
0 3 3 key Ljava/lang/Object;
1 3 4 existing Lcom/oracle/truffle/api/object/Property;
MethodParameters:
Name Flags
object
cachedShape
key
public com.oracle.truffle.api.object.Property getProperty(com.oracle.truffle.api.object.DynamicObject, com.oracle.truffle.api.object.Shape, java.lang.Object);
descriptor: (Lcom/oracle/truffle/api/object/DynamicObject;Lcom/oracle/truffle/api/object/Shape;Ljava/lang/Object;)Lcom/oracle/truffle/api/object/Property;
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.object.LayoutImpl.ACCESS:Lcom/oracle/truffle/object/LayoutImpl$CoreAccess;
aload 1
invokevirtual com.oracle.truffle.object.LayoutImpl$CoreAccess.getShape:(Lcom/oracle/truffle/api/object/DynamicObject;)Lcom/oracle/truffle/api/object/Shape;
aload 3
invokevirtual com.oracle.truffle.api.object.Shape.getProperty:(Ljava/lang/Object;)Lcom/oracle/truffle/api/object/Property;
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/object/DynamicObjectLibraryImpl$Generic;
0 1 1 object Lcom/oracle/truffle/api/object/DynamicObject;
0 1 2 cachedShape Lcom/oracle/truffle/api/object/Shape;
0 1 3 key Ljava/lang/Object;
MethodParameters:
Name Flags
object
cachedShape
key
public boolean setPropertyFlags(com.oracle.truffle.api.object.DynamicObject, com.oracle.truffle.api.object.Shape, java.lang.Object, int);
descriptor: (Lcom/oracle/truffle/api/object/DynamicObject;Lcom/oracle/truffle/api/object/Shape;Ljava/lang/Object;I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: getstatic com.oracle.truffle.object.LayoutImpl.ACCESS:Lcom/oracle/truffle/object/LayoutImpl$CoreAccess;
aload 1
invokevirtual com.oracle.truffle.object.LayoutImpl$CoreAccess.getShape:(Lcom/oracle/truffle/api/object/DynamicObject;)Lcom/oracle/truffle/api/object/Shape;
checkcast com.oracle.truffle.object.ShapeImpl
astore 5
start local 5 1: aload 5
aload 3
invokevirtual com.oracle.truffle.object.ShapeImpl.getProperty:(Ljava/lang/Object;)Lcom/oracle/truffle/api/object/Property;
astore 6
start local 6 2: aload 6
ifnonnull 4
3: iconst_0
ireturn
4: StackMap locals: com.oracle.truffle.object.ShapeImpl com.oracle.truffle.api.object.Property
StackMap stack:
aload 6
invokevirtual com.oracle.truffle.api.object.Property.getFlags:()I
iload 4
if_icmpeq 10
5: aload 1
invokestatic com.oracle.truffle.object.DynamicObjectLibraryImpl.updateShapeImpl:(Lcom/oracle/truffle/api/object/DynamicObject;)Z
pop
6: aload 5
aload 6
checkcast com.oracle.truffle.object.PropertyImpl
iload 4
invokestatic com.oracle.truffle.object.DynamicObjectLibraryImpl.changePropertyFlags:(Lcom/oracle/truffle/object/ShapeImpl;Lcom/oracle/truffle/object/PropertyImpl;I)Lcom/oracle/truffle/object/ShapeImpl;
astore 7
start local 7 7: aload 7
aload 5
if_acmpeq 10
8: getstatic com.oracle.truffle.object.LayoutImpl.ACCESS:Lcom/oracle/truffle/object/LayoutImpl$CoreAccess;
aload 1
aload 7
invokevirtual com.oracle.truffle.object.LayoutImpl$CoreAccess.setShape:(Lcom/oracle/truffle/api/object/DynamicObject;Lcom/oracle/truffle/api/object/Shape;)V
9: aload 1
invokestatic com.oracle.truffle.object.DynamicObjectLibraryImpl.updateShapeImpl:(Lcom/oracle/truffle/api/object/DynamicObject;)Z
pop
end local 7 10: StackMap locals:
StackMap stack:
iconst_1
ireturn
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 11 0 this Lcom/oracle/truffle/object/DynamicObjectLibraryImpl$Generic;
0 11 1 object Lcom/oracle/truffle/api/object/DynamicObject;
0 11 2 cachedShape Lcom/oracle/truffle/api/object/Shape;
0 11 3 key Ljava/lang/Object;
0 11 4 propertyFlags I
1 11 5 oldShape Lcom/oracle/truffle/object/ShapeImpl;
2 11 6 existingProperty Lcom/oracle/truffle/api/object/Property;
7 10 7 newShape Lcom/oracle/truffle/api/object/Shape;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
MethodParameters:
Name Flags
object
cachedShape
key
propertyFlags
}
SourceFile: "DynamicObjectLibraryImpl.java"
NestHost: com.oracle.truffle.object.DynamicObjectLibraryImpl
InnerClasses:
public abstract TruffleBoundary = com.oracle.truffle.api.CompilerDirectives$TruffleBoundary of com.oracle.truffle.api.CompilerDirectives
Generic = com.oracle.truffle.object.DynamicObjectLibraryImpl$Generic of com.oracle.truffle.object.DynamicObjectLibraryImpl
abstract KeyCacheEntry = com.oracle.truffle.object.DynamicObjectLibraryImpl$KeyCacheEntry of com.oracle.truffle.object.DynamicObjectLibraryImpl
final CoreAccess = com.oracle.truffle.object.LayoutImpl$CoreAccess of com.oracle.truffle.object.LayoutImpl