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()); |
} |