Package com.oracle.truffle.object.basic

## Class ShapeBasic

- java.lang.Object
- - com.oracle.truffle.api.object.Shape
  - - com.oracle.truffle.object.ShapeImpl
    - - com.oracle.truffle.object.basic.ShapeBasic

    public final class ShapeBasic
    extends ShapeImpl

### Nested Class Summary

### Nested classes/interfaces inherited from class com.oracle.truffle.object.ShapeImpl

`ShapeImpl.BaseAllocator`

### Nested classes/interfaces inherited from class com.oracle.truffle.api.object.Shape

`Shape.Allocator, Shape.Pred<T>`

### Field Summary

### Fields inherited from class com.oracle.truffle.object.ShapeImpl

`ALL, depth, hasPrimitiveArray, layout, leafAssumption, objectArrayCapacity, objectArraySize, objectFieldSize, objectType, parent, primitiveArrayCapacity, primitiveArraySize, primitiveFieldSize, propertyArray, propertyCount, propertyListAllocCount, propertyListShareCount, propertyMap, validAssumption`

### Constructor Summary

Constructors
`ShapeBasic​(Layout layout, java.lang.Object sharedData, ObjectType operations, int id)`
`ShapeBasic​(Layout layout, java.lang.Object sharedData, ShapeImpl parent, ObjectType objectType, PropertyMap propertyMap, Transition transition, Shape.Allocator allocator, int id)`

### Method Summary

All Methods Instance Methods Concrete Methods
`protected ShapeImpl` `createShape​(Layout layout, java.lang.Object sharedData, ShapeImpl parent, ObjectType objectType, PropertyMap propertyMap, Transition transition, Shape.Allocator allocator, int id)`

### Methods inherited from class com.oracle.truffle.object.ShapeImpl

`addDirectTransition, addIndirectTransition, addProperty, allocator, append, applyTransition, changeType, check, cloneOnto, cloneRoot, copyOverPropertiesInternal, createFactory, createSeparateShape, diff, findCommonAncestor, getData, getDepth, getId, getKeyList, getKeyList, getKeys, getLastProperty, getLayout, getLeafAssumption, getMutex, getObjectArrayCapacity, getObjectArraySize, getObjectFieldSize, getObjectType, getParent, getPrimitiveArrayCapacity, getPrimitiveArraySize, getPrimitiveFieldSize, getProperties, getProperty, getPropertyCount, getPropertyList, getPropertyList, getPropertyListInternal, getPropertyMap, getRoot, getShapeFromProperty, getShapeFromProperty, getSharedData, getTransitionFromParent, getTransitionMapForRead, getValidAssumption, hasPrimitiveArray, hasProperty, hasTransitionWithKey, invalidateValidAssumption, isLeaf, isRelated, isValid, newInstance, removeProperty, replaceProperty, reservePrimitiveExtensionArray, toString, toStringLimit, tryMerge`

### Methods inherited from class com.oracle.truffle.api.object.Shape

`accept`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Constructor Detail

#### ShapeBasic

    public ShapeBasic​(Layout layout,
                      java.lang.Object sharedData,
                      ObjectType operations,
                      int id)

#### ShapeBasic

    public ShapeBasic​(Layout layout,
                      java.lang.Object sharedData,
                      ShapeImpl parent,
                      ObjectType objectType,
                      PropertyMap propertyMap,
                      Transition transition,
                      Shape.Allocator allocator,
                      int id)

### Method Detail

#### createShape

    protected ShapeImpl createShape​(Layout layout,
                                    java.lang.Object sharedData,
                                    ShapeImpl parent,
                                    ObjectType objectType,
                                    PropertyMap propertyMap,
                                    Transition transition,
                                    Shape.Allocator allocator,
                                    int id)

Specified by:
  `createShape` in class `ShapeImpl`