| OLD | NEW |
| 1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 the V8 project authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef V8_LOOKUP_H_ | 5 #ifndef V8_LOOKUP_H_ |
| 6 #define V8_LOOKUP_H_ | 6 #define V8_LOOKUP_H_ |
| 7 | 7 |
| 8 #include "src/factory.h" | 8 #include "src/factory.h" |
| 9 #include "src/isolate.h" | 9 #include "src/isolate.h" |
| 10 #include "src/objects.h" | 10 #include "src/objects.h" |
| (...skipping 241 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 252 inline State LookupInHolder(Map* map, JSReceiver* holder); | 252 inline State LookupInHolder(Map* map, JSReceiver* holder); |
| 253 void RestartLookupForNonMaskingInterceptors(); | 253 void RestartLookupForNonMaskingInterceptors(); |
| 254 State LookupNonMaskingInterceptorInHolder(Map* map, JSReceiver* holder); | 254 State LookupNonMaskingInterceptorInHolder(Map* map, JSReceiver* holder); |
| 255 Handle<Object> FetchValue() const; | 255 Handle<Object> FetchValue() const; |
| 256 void ReloadPropertyInformation(); | 256 void ReloadPropertyInformation(); |
| 257 bool SkipInterceptor(JSObject* holder); | 257 bool SkipInterceptor(JSObject* holder); |
| 258 bool HasInterceptor(Map* map) const; | 258 bool HasInterceptor(Map* map) const; |
| 259 bool InternalHolderIsReceiverOrHiddenPrototype() const; | 259 bool InternalHolderIsReceiverOrHiddenPrototype() const; |
| 260 InterceptorInfo* GetInterceptor(JSObject* holder) const; | 260 InterceptorInfo* GetInterceptor(JSObject* holder) const; |
| 261 | 261 |
| 262 bool IsBootstrapping() const; | |
| 263 | |
| 264 bool check_hidden() const { return (configuration_ & kHidden) != 0; } | 262 bool check_hidden() const { return (configuration_ & kHidden) != 0; } |
| 265 bool check_interceptor() const { | 263 bool check_interceptor() const { |
| 266 return !IsBootstrapping() && (configuration_ & kInterceptor) != 0; | 264 return (configuration_ & kInterceptor) != 0; |
| 267 } | 265 } |
| 268 bool check_prototype_chain() const { | 266 bool check_prototype_chain() const { |
| 269 return (configuration_ & kPrototypeChain) != 0; | 267 return (configuration_ & kPrototypeChain) != 0; |
| 270 } | 268 } |
| 271 int descriptor_number() const { | 269 int descriptor_number() const { |
| 272 DCHECK(has_property_); | 270 DCHECK(has_property_); |
| 273 DCHECK(!holder_map_->is_dictionary_map()); | 271 DCHECK(!holder_map_->is_dictionary_map()); |
| 274 return number_; | 272 return number_; |
| 275 } | 273 } |
| 276 int dictionary_entry() const { | 274 int dictionary_entry() const { |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 308 Handle<JSReceiver> holder_; | 306 Handle<JSReceiver> holder_; |
| 309 Handle<Map> holder_map_; | 307 Handle<Map> holder_map_; |
| 310 const Handle<JSReceiver> initial_holder_; | 308 const Handle<JSReceiver> initial_holder_; |
| 311 uint32_t number_; | 309 uint32_t number_; |
| 312 }; | 310 }; |
| 313 | 311 |
| 314 | 312 |
| 315 } } // namespace v8::internal | 313 } } // namespace v8::internal |
| 316 | 314 |
| 317 #endif // V8_LOOKUP_H_ | 315 #endif // V8_LOOKUP_H_ |
| OLD | NEW |