| Index: src/property.h
|
| diff --git a/src/property.h b/src/property.h
|
| index 5cd3c6696178c69155f8200214cd001fc30b2cbb..ad806776b7dc20152df7bd08107a49585f01c51b 100644
|
| --- a/src/property.h
|
| +++ b/src/property.h
|
| @@ -166,15 +166,6 @@ class CallbacksDescriptor: public Descriptor {
|
|
|
| class LookupResult BASE_EMBEDDED {
|
| public:
|
| - // Where did we find the result;
|
| - enum {
|
| - NOT_FOUND,
|
| - DESCRIPTOR_TYPE,
|
| - DICTIONARY_TYPE,
|
| - INTERCEPTOR_TYPE,
|
| - CONSTANT_TYPE
|
| - } lookup_type_;
|
| -
|
| LookupResult()
|
| : lookup_type_(NOT_FOUND),
|
| cacheable_(true),
|
| @@ -211,6 +202,12 @@ class LookupResult BASE_EMBEDDED {
|
| number_ = entry;
|
| }
|
|
|
| + void HandlerResult() {
|
| + lookup_type_ = HANDLER_TYPE;
|
| + holder_ = NULL;
|
| + details_ = PropertyDetails(NONE, HANDLER);
|
| + }
|
| +
|
| void InterceptorResult(JSObject* holder) {
|
| lookup_type_ = INTERCEPTOR_TYPE;
|
| holder_ = holder;
|
| @@ -245,6 +242,7 @@ class LookupResult BASE_EMBEDDED {
|
| bool IsDontEnum() { return details_.IsDontEnum(); }
|
| bool IsDeleted() { return details_.IsDeleted(); }
|
| bool IsFound() { return lookup_type_ != NOT_FOUND; }
|
| + bool IsHandler() { return lookup_type_ == HANDLER_TYPE; }
|
|
|
| // Is the result is a property excluding transitions and the null
|
| // descriptor?
|
| @@ -345,6 +343,16 @@ class LookupResult BASE_EMBEDDED {
|
| }
|
|
|
| private:
|
| + // Where did we find the result;
|
| + enum {
|
| + NOT_FOUND,
|
| + DESCRIPTOR_TYPE,
|
| + DICTIONARY_TYPE,
|
| + HANDLER_TYPE,
|
| + INTERCEPTOR_TYPE,
|
| + CONSTANT_TYPE
|
| + } lookup_type_;
|
| +
|
| JSObject* holder_;
|
| int number_;
|
| bool cacheable_;
|
|
|