/** @since 0.17 or earlier */ @TruffleBoundary @Override public ShapeImpl defineProperty(Object key, Object value, int flags) { return defineProperty(key, value, flags, layout.getStrategy().getDefaultLocationFactory()); }
/** @since 0.17 or earlier */ @TruffleBoundary @Override public ShapeImpl defineProperty(Object key, Object value, int flags) { return defineProperty(key, value, flags, layout.getStrategy().getDefaultLocationFactory()); }
/** @since 0.17 or earlier */ @Override @TruffleBoundary public void define(Object key, Object value, int flags) { define(key, value, flags, getShape().getLayout().getStrategy().getDefaultLocationFactory()); }
/** @since 0.17 or earlier */ @Override @TruffleBoundary public void define(Object key, Object value, int flags) { define(key, value, flags, getShapeImpl().getLayout().getStrategy().getDefaultLocationFactory()); }
/** @since 0.17 or earlier */ protected void propertySetFallback(Property property, DynamicObject store, Object value, ShapeImpl currentShape) { ShapeImpl oldShape = currentShape; ShapeImpl newShape = defineProperty(oldShape, property.getKey(), value, property.getFlags(), getDefaultLocationFactory()); Property newProperty = newShape.getProperty(property.getKey()); newProperty.setSafe(store, value, oldShape, newShape); }
/** @since 0.17 or earlier */ protected void propertySetFallback(Property property, DynamicObject store, Object value, ShapeImpl currentShape) { ShapeImpl oldShape = currentShape; ShapeImpl newShape = defineProperty(oldShape, property.getKey(), value, property.getFlags(), getDefaultLocationFactory()); Property newProperty = newShape.getProperty(property.getKey()); newProperty.setSafe(store, value, oldShape, newShape); }