public final class com.oracle.truffle.api.object.Layout$Builder
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: com.oracle.truffle.api.object.Layout$Builder
super_class: java.lang.Object
{
private java.util.EnumSet<com.oracle.truffle.api.object.Layout$ImplicitCast> allowedImplicitCasts;
descriptor: Ljava/util/EnumSet;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/EnumSet<Lcom/oracle/truffle/api/object/Layout$ImplicitCast;>;
private boolean polymorphicUnboxing;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private java.lang.Class<? extends com.oracle.truffle.api.object.DynamicObject> dynamicObjectClass;
descriptor: Ljava/lang/Class;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/lang/Class<+Lcom/oracle/truffle/api/object/DynamicObject;>;
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
ldc Lcom/oracle/truffle/api/object/Layout$ImplicitCast;
invokestatic java.util.EnumSet.noneOf:(Ljava/lang/Class;)Ljava/util/EnumSet;
putfield com.oracle.truffle.api.object.Layout$Builder.allowedImplicitCasts:Ljava/util/EnumSet;
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/api/object/Layout$Builder;
public com.oracle.truffle.api.object.Layout build();
descriptor: ()Lcom/oracle/truffle/api/object/Layout;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: invokestatic com.oracle.truffle.api.object.Layout.getFactory:()Lcom/oracle/truffle/api/object/LayoutFactory;
aload 0
invokeinterface com.oracle.truffle.api.object.LayoutFactory.createLayout:(Lcom/oracle/truffle/api/object/Layout$Builder;)Lcom/oracle/truffle/api/object/Layout;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/object/Layout$Builder;
public com.oracle.truffle.api.object.Layout$Builder setAllowedImplicitCasts(java.util.EnumSet<com.oracle.truffle.api.object.Layout$ImplicitCast>);
descriptor: (Ljava/util/EnumSet;)Lcom/oracle/truffle/api/object/Layout$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual java.util.EnumSet.clone:()Ljava/util/EnumSet;
putfield com.oracle.truffle.api.object.Layout$Builder.allowedImplicitCasts:Ljava/util/EnumSet;
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/api/object/Layout$Builder;
0 2 1 allowedImplicitCasts Ljava/util/EnumSet<Lcom/oracle/truffle/api/object/Layout$ImplicitCast;>;
Signature: (Ljava/util/EnumSet<Lcom/oracle/truffle/api/object/Layout$ImplicitCast;>;)Lcom/oracle/truffle/api/object/Layout$Builder;
MethodParameters:
Name Flags
allowedImplicitCasts
public com.oracle.truffle.api.object.Layout$Builder addAllowedImplicitCast(com.oracle.truffle.api.object.Layout$ImplicitCast);
descriptor: (Lcom/oracle/truffle/api/object/Layout$ImplicitCast;)Lcom/oracle/truffle/api/object/Layout$Builder;
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.api.object.Layout$Builder.allowedImplicitCasts:Ljava/util/EnumSet;
aload 1
invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
pop
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/api/object/Layout$Builder;
0 2 1 allowedImplicitCast Lcom/oracle/truffle/api/object/Layout$ImplicitCast;
MethodParameters:
Name Flags
allowedImplicitCast
public com.oracle.truffle.api.object.Layout$Builder setPolymorphicUnboxing(boolean);
descriptor: (Z)Lcom/oracle/truffle/api/object/Layout$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield com.oracle.truffle.api.object.Layout$Builder.polymorphicUnboxing:Z
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/api/object/Layout$Builder;
0 2 1 polymorphicUnboxing Z
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
polymorphicUnboxing
public com.oracle.truffle.api.object.Layout$Builder type(java.lang.Class<? extends com.oracle.truffle.api.object.DynamicObject>);
descriptor: (Ljava/lang/Class;)Lcom/oracle/truffle/api/object/Layout$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: ldc Lcom/oracle/truffle/api/object/DynamicObject;
aload 1
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 3
1: aload 0
aload 1
putfield com.oracle.truffle.api.object.Layout$Builder.dynamicObjectClass:Ljava/lang/Class;
2: goto 4
3: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Unsupported DynamicObject layout class: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/api/object/Layout$Builder;
0 5 1 layoutClass Ljava/lang/Class<+Lcom/oracle/truffle/api/object/DynamicObject;>;
Signature: (Ljava/lang/Class<+Lcom/oracle/truffle/api/object/DynamicObject;>;)Lcom/oracle/truffle/api/object/Layout$Builder;
MethodParameters:
Name Flags
layoutClass
}
SourceFile: "Layout.java"
NestHost: com.oracle.truffle.api.object.Layout
InnerClasses:
public final Builder = com.oracle.truffle.api.object.Layout$Builder of com.oracle.truffle.api.object.Layout
public final ImplicitCast = com.oracle.truffle.api.object.Layout$ImplicitCast of com.oracle.truffle.api.object.Layout