| Index: src/lookup.h
|
| diff --git a/src/lookup.h b/src/lookup.h
|
| index 0ac9d353adce0f45a35feb6fd5df8b8b66407e17..c96a1e66e7b981aa04fec81797008e0c65ee075a 100644
|
| --- a/src/lookup.h
|
| +++ b/src/lookup.h
|
| @@ -92,11 +92,13 @@ class LookupIterator V8_FINAL BASE_EMBEDDED {
|
| Handle<Object> GetReceiver() const {
|
| return Handle<Object>::cast(maybe_receiver_.ToHandleChecked());
|
| }
|
| + Handle<Map> holder_map() const { return holder_map_; }
|
| Handle<JSObject> GetHolder() const {
|
| ASSERT(IsFound() && state_ != JSPROXY);
|
| return Handle<JSObject>::cast(maybe_holder_.ToHandleChecked());
|
| }
|
| Handle<JSReceiver> GetRoot() const;
|
| + bool HolderIsReceiver() const;
|
|
|
| /* Dynamically reduce the trapped types. */
|
| void skip_interceptor() {
|
| @@ -116,6 +118,10 @@ class LookupIterator V8_FINAL BASE_EMBEDDED {
|
| // below can be used. It ensures that we are able to provide a definite
|
| // answer, and loads extra information about the property.
|
| bool HasProperty();
|
| + void PrepareForDataProperty(Handle<Object> value);
|
| + void TransitionToDataProperty(Handle<Object> value,
|
| + PropertyAttributes attributes,
|
| + Object::StoreFromKeyed store_mode);
|
| PropertyKind property_kind() const {
|
| ASSERT(has_property_);
|
| return property_kind_;
|
| @@ -124,11 +130,18 @@ class LookupIterator V8_FINAL BASE_EMBEDDED {
|
| ASSERT(has_property_);
|
| return property_details_;
|
| }
|
| + int descriptor_number() const {
|
| + ASSERT(has_property_);
|
| + ASSERT_EQ(DESCRIPTOR, property_encoding_);
|
| + return number_;
|
| + }
|
| Handle<Object> GetAccessors() const;
|
| Handle<Object> GetDataValue() const;
|
| + void WriteDataValue(Handle<Object> value);
|
|
|
| - /* JSPROXY */
|
| + void InternalizeName();
|
|
|
| + /* JSPROXY */
|
| Handle<JSProxy> GetJSProxy() const {
|
| return Handle<JSProxy>::cast(maybe_holder_.ToHandleChecked());
|
| }
|
|
|