| Index: src/objects.h
|
| diff --git a/src/objects.h b/src/objects.h
|
| index 231b69440299dadb7837501a03658534aa764c47..2bd4335a0f8ae836aa554c312b60cf463a60d482 100644
|
| --- a/src/objects.h
|
| +++ b/src/objects.h
|
| @@ -1663,7 +1663,9 @@ class JSReceiver: public HeapObject {
|
| MUST_USE_RESULT MaybeObject* SetPropertyWithDefinedSetter(JSReceiver* setter,
|
| Object* value);
|
|
|
| - MUST_USE_RESULT MaybeObject* DeleteProperty(Name* name, DeleteMode mode);
|
| + static Handle<Object> DeleteProperty(Handle<JSReceiver> object,
|
| + Handle<Name> name,
|
| + DeleteMode mode = NORMAL_DELETION);
|
| MUST_USE_RESULT MaybeObject* DeleteElement(uint32_t index, DeleteMode mode);
|
|
|
| // Set the index'th array element.
|
| @@ -1901,10 +1903,6 @@ class JSObject: public JSReceiver {
|
| Object* value,
|
| PropertyDetails details);
|
|
|
| - // Deletes the named property in a normalized object.
|
| - MUST_USE_RESULT MaybeObject* DeleteNormalizedProperty(Name* name,
|
| - DeleteMode mode);
|
| -
|
| static void OptimizeAsPrototype(Handle<JSObject> object);
|
| MUST_USE_RESULT MaybeObject* OptimizeAsPrototype();
|
|
|
| @@ -1995,11 +1993,6 @@ class JSObject: public JSReceiver {
|
| MUST_USE_RESULT MaybeObject* GetIdentityHash(CreationFlag flag);
|
| MUST_USE_RESULT MaybeObject* SetIdentityHash(Smi* hash, CreationFlag flag);
|
|
|
| - static Handle<Object> DeleteProperty(Handle<JSObject> obj,
|
| - Handle<Name> name);
|
| - // Can cause GC.
|
| - MUST_USE_RESULT MaybeObject* DeleteProperty(Name* name, DeleteMode mode);
|
| -
|
| static Handle<Object> DeleteElement(Handle<JSObject> obj, uint32_t index);
|
| MUST_USE_RESULT MaybeObject* DeleteElement(uint32_t index, DeleteMode mode);
|
|
|
| @@ -2430,6 +2423,7 @@ class JSObject: public JSReceiver {
|
|
|
| private:
|
| friend class DictionaryElementsAccessor;
|
| + friend class JSReceiver;
|
|
|
| MUST_USE_RESULT MaybeObject* GetElementWithCallback(Object* receiver,
|
| Object* structure,
|
| @@ -2475,9 +2469,19 @@ class JSObject: public JSReceiver {
|
| StrictModeFlag strict_mode,
|
| bool* done);
|
|
|
| - MUST_USE_RESULT MaybeObject* DeletePropertyPostInterceptor(Name* name,
|
| - DeleteMode mode);
|
| - MUST_USE_RESULT MaybeObject* DeletePropertyWithInterceptor(Name* name);
|
| + static Handle<Object> DeleteProperty(Handle<JSObject> object,
|
| + Handle<Name> name,
|
| + DeleteMode mode);
|
| + static Handle<Object> DeletePropertyPostInterceptor(Handle<JSObject> object,
|
| + Handle<Name> name,
|
| + DeleteMode mode);
|
| + static Handle<Object> DeletePropertyWithInterceptor(Handle<JSObject> object,
|
| + Handle<Name> name);
|
| +
|
| + // Deletes the named property in a normalized object.
|
| + static Handle<Object> DeleteNormalizedProperty(Handle<JSObject> object,
|
| + Handle<Name> name,
|
| + DeleteMode mode);
|
|
|
| MUST_USE_RESULT MaybeObject* DeleteElementWithInterceptor(uint32_t index);
|
|
|
| @@ -5451,6 +5455,7 @@ class Map: public HeapObject {
|
|
|
| MUST_USE_RESULT MaybeObject* RawCopy(int instance_size);
|
| MUST_USE_RESULT MaybeObject* CopyWithPreallocatedFieldDescriptors();
|
| + static Handle<Map> CopyDropDescriptors(Handle<Map> map);
|
| MUST_USE_RESULT MaybeObject* CopyDropDescriptors();
|
| MUST_USE_RESULT MaybeObject* CopyReplaceDescriptors(
|
| DescriptorArray* descriptors,
|
| @@ -8662,13 +8667,6 @@ class JSProxy: public JSReceiver {
|
| StrictModeFlag strict_mode,
|
| bool* done);
|
|
|
| - MUST_USE_RESULT MaybeObject* DeletePropertyWithHandler(
|
| - Name* name,
|
| - DeleteMode mode);
|
| - MUST_USE_RESULT MaybeObject* DeleteElementWithHandler(
|
| - uint32_t index,
|
| - DeleteMode mode);
|
| -
|
| MUST_USE_RESULT PropertyAttributes GetPropertyAttributeWithHandler(
|
| JSReceiver* receiver,
|
| Name* name);
|
| @@ -8712,6 +8710,14 @@ class JSProxy: public JSReceiver {
|
| kSize> BodyDescriptor;
|
|
|
| private:
|
| + friend class JSReceiver;
|
| +
|
| + static Handle<Object> DeletePropertyWithHandler(Handle<JSProxy> object,
|
| + Handle<Name> name,
|
| + DeleteMode mode);
|
| + MUST_USE_RESULT MaybeObject* DeleteElementWithHandler(uint32_t index,
|
| + DeleteMode mode);
|
| +
|
| DISALLOW_IMPLICIT_CONSTRUCTORS(JSProxy);
|
| };
|
|
|
|
|