| Index: src/property-details.h
|
| diff --git a/src/property-details.h b/src/property-details.h
|
| index 674fc8869ad58b59e17e0a85df999a0c74563974..46ca4f25f37293e33d1cb5cdb9b73c8bf7e17048 100644
|
| --- a/src/property-details.h
|
| +++ b/src/property-details.h
|
| @@ -39,7 +39,7 @@ enum PropertyAttributes {
|
| DONT_ENUM = v8::DontEnum,
|
| DONT_DELETE = v8::DontDelete,
|
|
|
| - SEALED = DONT_ENUM | DONT_DELETE,
|
| + SEALED = DONT_DELETE,
|
| FROZEN = SEALED | READ_ONLY,
|
|
|
| SYMBOLIC = 8, // Used to filter symbol names
|
| @@ -180,6 +180,11 @@ class PropertyDetails BASE_EMBEDDED {
|
| PropertyDetails CopyWithRepresentation(Representation representation) {
|
| return PropertyDetails(value_, representation);
|
| }
|
| + PropertyDetails CopyAddAttributes(PropertyAttributes new_attributes) {
|
| + new_attributes =
|
| + static_cast<PropertyAttributes>(attributes() | new_attributes);
|
| + return PropertyDetails(value_, new_attributes);
|
| + }
|
|
|
| // Conversion for storing details as Object*.
|
| explicit inline PropertyDetails(Smi* smi);
|
| @@ -237,6 +242,9 @@ class PropertyDetails BASE_EMBEDDED {
|
| value_ = RepresentationField::update(
|
| value, EncodeRepresentation(representation));
|
| }
|
| + PropertyDetails(int value, PropertyAttributes attributes) {
|
| + value_ = AttributesField::update(value, attributes);
|
| + }
|
|
|
| uint32_t value_;
|
| };
|
|
|