Package com.oracle.truffle.object.basic
Class BasicLayout
- java.lang.Object
-
- com.oracle.truffle.api.object.Layout
-
- com.oracle.truffle.object.LayoutImpl
-
- com.oracle.truffle.object.basic.BasicLayout
-
public class BasicLayout extends LayoutImpl
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.oracle.truffle.api.object.Layout
Layout.ImplicitCast
-
-
Field Summary
-
Fields inherited from class com.oracle.truffle.api.object.Layout
INT_TO_DOUBLE, INT_TO_LONG, NONE, OPTION_PREFIX
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Shape.AllocatorcreateAllocator()Create an allocator for static property creation.ShapecreateShape(ObjectType operations, java.lang.Object sharedData, int id)protected LocationgetObjectArrayLocation()protected intgetObjectFieldCount()protected ObjectLocationgetObjectFieldLocation(int index)protected LocationgetPrimitiveArrayLocation()protected intgetPrimitiveFieldCount()protected LocationImpl.InternalLongLocationgetPrimitiveFieldLocation(int index)protected booleanhasObjectExtensionArray()protected booleanhasPrimitiveExtensionArray()DynamicObjectnewInstance(Shape shape)protected intobjectFieldIndex(Location location)-
Methods inherited from class com.oracle.truffle.object.LayoutImpl
createShape, createShape, existingLocationForValue, getStrategy, getType, isAllowedIntToDouble, isAllowedIntToLong, isLocationAssignableFrom, isPropertyUpcastOf
-
Methods inherited from class com.oracle.truffle.api.object.Layout
createLayout, createLayout, createLayout, getFactory
-
-
-
-
Method Detail
-
newInstance
public DynamicObject newInstance(Shape shape)
- Specified by:
newInstancein classLayoutImpl
-
createShape
public Shape createShape(ObjectType operations, java.lang.Object sharedData, int id)
- Specified by:
createShapein classLayout
-
hasObjectExtensionArray
protected boolean hasObjectExtensionArray()
- Specified by:
hasObjectExtensionArrayin classLayoutImpl
-
hasPrimitiveExtensionArray
protected boolean hasPrimitiveExtensionArray()
- Specified by:
hasPrimitiveExtensionArrayin classLayoutImpl
-
getObjectFieldCount
protected int getObjectFieldCount()
- Specified by:
getObjectFieldCountin classLayoutImpl
-
getPrimitiveFieldCount
protected int getPrimitiveFieldCount()
- Specified by:
getPrimitiveFieldCountin classLayoutImpl
-
getObjectArrayLocation
protected Location getObjectArrayLocation()
- Specified by:
getObjectArrayLocationin classLayoutImpl
-
getPrimitiveArrayLocation
protected Location getPrimitiveArrayLocation()
- Specified by:
getPrimitiveArrayLocationin classLayoutImpl
-
getObjectFieldLocation
protected ObjectLocation getObjectFieldLocation(int index)
-
getPrimitiveFieldLocation
protected LocationImpl.InternalLongLocation getPrimitiveFieldLocation(int index)
-
createAllocator
public Shape.Allocator createAllocator()
Description copied from class:LayoutCreate an allocator for static property creation. Reserves all array extension slots.- Specified by:
createAllocatorin classLayoutImpl
-
objectFieldIndex
protected int objectFieldIndex(Location location)
- Specified by:
objectFieldIndexin classLayoutImpl
-
-