| Index: src/objects.h
|
| diff --git a/src/objects.h b/src/objects.h
|
| index 1f2a24813bae99b8d2bfcaa130783aeeb41aae47..b72d4475b3394dd32f253aec93658be8db93d950 100644
|
| --- a/src/objects.h
|
| +++ b/src/objects.h
|
| @@ -1051,6 +1051,7 @@ template <class C> inline bool Is(Object* obj);
|
| V(DependentCode) \
|
| V(HandlerTable) \
|
| V(FixedArray) \
|
| + V(BoilerplateDescription) \
|
| V(FixedDoubleArray) \
|
| V(WeakFixedArray) \
|
| V(ArrayList) \
|
| @@ -2908,6 +2909,29 @@ class FixedArray: public FixedArrayBase {
|
| DISALLOW_IMPLICIT_CONSTRUCTORS(FixedArray);
|
| };
|
|
|
| +// BoilerplateDescription is a list of properties consisting of name value
|
| +// pairs. In addition to the properties, it provides the projected number
|
| +// of properties in the backing store. This number includes properties with
|
| +// computed names that are not
|
| +// in the list.
|
| +class BoilerplateDescription : public FixedArray {
|
| + public:
|
| + Object* name(int index) const;
|
| + Object* value(int index) const;
|
| +
|
| + // The number of boilerplate properties.
|
| + int size() const;
|
| +
|
| + // Number of boilerplate properties and properties with computed names.
|
| + int backing_store_size() const;
|
| +
|
| + void set_backing_store_size(Isolate* isolate, int backing_store_size);
|
| +
|
| + DECLARE_CAST(BoilerplateDescription)
|
| +
|
| + private:
|
| + bool has_number_of_properties() const;
|
| +};
|
|
|
| // FixedDoubleArray describes fixed-sized arrays with element type double.
|
| class FixedDoubleArray: public FixedArrayBase {
|
| @@ -6392,7 +6416,6 @@ class Map: public HeapObject {
|
| static const int kInstanceTypeAndBitFieldOffset =
|
| kInstanceAttributesOffset + 0;
|
| static const int kBitField2Offset = kInstanceAttributesOffset + 2;
|
| - static const int kUnusedPropertyFieldsByte = 3;
|
| static const int kUnusedPropertyFieldsOffset = kInstanceAttributesOffset + 3;
|
|
|
| STATIC_ASSERT(kInstanceTypeAndBitFieldOffset ==
|
|
|