Package com.oracle.truffle.api.object
Class Layout
- java.lang.Object
-
- com.oracle.truffle.api.object.Layout
-
- Direct Known Subclasses:
LayoutImpl
public abstract class Layout extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
Layout.ImplicitCast
-
Field Summary
Fields Modifier and Type Field Description static java.util.EnumSet<Layout.ImplicitCast>
INT_TO_DOUBLE
static java.util.EnumSet<Layout.ImplicitCast>
INT_TO_LONG
static java.util.EnumSet<Layout.ImplicitCast>
NONE
static java.lang.String
OPTION_PREFIX
-
Constructor Summary
Constructors Constructor Description Layout()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract Shape.Allocator
createAllocator()
Create an allocator for static property creation.static Layout
createLayout()
static Layout
createLayout(java.util.EnumSet<Layout.ImplicitCast> allowedImplicitCasts)
static Layout
createLayout(java.util.EnumSet<Layout.ImplicitCast> allowedImplicitCasts, NodeUtil.FieldOffsetProvider fieldOffsetProvider)
abstract Shape
createShape(ObjectType operations)
abstract Shape
createShape(ObjectType operations, java.lang.Object sharedData)
abstract Shape
createShape(ObjectType operations, java.lang.Object sharedData, int id)
protected static LayoutFactory
getFactory()
abstract java.lang.Class<? extends DynamicObject>
getType()
abstract DynamicObject
newInstance(Shape shape)
-
-
-
Field Detail
-
NONE
public static final java.util.EnumSet<Layout.ImplicitCast> NONE
-
INT_TO_DOUBLE
public static final java.util.EnumSet<Layout.ImplicitCast> INT_TO_DOUBLE
-
INT_TO_LONG
public static final java.util.EnumSet<Layout.ImplicitCast> INT_TO_LONG
-
OPTION_PREFIX
public static final java.lang.String OPTION_PREFIX
- See Also:
- Constant Field Values
-
-
Method Detail
-
createLayout
public static Layout createLayout()
-
createLayout
public static Layout createLayout(java.util.EnumSet<Layout.ImplicitCast> allowedImplicitCasts)
-
createLayout
public static Layout createLayout(java.util.EnumSet<Layout.ImplicitCast> allowedImplicitCasts, NodeUtil.FieldOffsetProvider fieldOffsetProvider)
-
newInstance
public abstract DynamicObject newInstance(Shape shape)
-
getType
public abstract java.lang.Class<? extends DynamicObject> getType()
-
createShape
public abstract Shape createShape(ObjectType operations)
-
createShape
public abstract Shape createShape(ObjectType operations, java.lang.Object sharedData)
-
createShape
public abstract Shape createShape(ObjectType operations, java.lang.Object sharedData, int id)
-
createAllocator
public abstract Shape.Allocator createAllocator()
Create an allocator for static property creation. Reserves all array extension slots.
-
getFactory
protected static LayoutFactory getFactory()
-
-