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 269 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
280 inline InterceptorInfo* GetInterceptor(JSObject* holder) const { | 280 inline InterceptorInfo* GetInterceptor(JSObject* holder) const { |
281 if (IsElement()) return holder->GetIndexedInterceptor(); | 281 if (IsElement()) return holder->GetIndexedInterceptor(); |
282 return holder->GetNamedInterceptor(); | 282 return holder->GetNamedInterceptor(); |
283 } | 283 } |
284 | 284 |
285 bool check_hidden() const { return (configuration_ & kHidden) != 0; } | 285 bool check_hidden() const { return (configuration_ & kHidden) != 0; } |
286 bool check_interceptor() const { | 286 bool check_interceptor() const { |
287 return (configuration_ & kInterceptor) != 0; | 287 return (configuration_ & kInterceptor) != 0; |
288 } | 288 } |
289 int descriptor_number() const { | 289 int descriptor_number() const { |
| 290 DCHECK(!IsElement()); |
290 DCHECK(has_property_); | 291 DCHECK(has_property_); |
291 DCHECK(!holder_map_->is_dictionary_map()); | 292 DCHECK(!holder_map_->is_dictionary_map()); |
292 return number_; | 293 return number_; |
293 } | 294 } |
294 int dictionary_entry() const { | 295 int dictionary_entry() const { |
| 296 DCHECK(!IsElement()); |
295 DCHECK(has_property_); | 297 DCHECK(has_property_); |
296 DCHECK(holder_map_->is_dictionary_map()); | 298 DCHECK(holder_map_->is_dictionary_map()); |
297 return number_; | 299 return number_; |
298 } | 300 } |
299 | 301 |
300 static Configuration ComputeConfiguration( | 302 static Configuration ComputeConfiguration( |
301 Configuration configuration, Handle<Name> name) { | 303 Configuration configuration, Handle<Name> name) { |
302 if (name->IsPrivate()) { | 304 if (name->IsPrivate()) { |
303 return static_cast<Configuration>(configuration & | 305 return static_cast<Configuration>(configuration & |
304 HIDDEN_SKIP_INTERCEPTOR); | 306 HIDDEN_SKIP_INTERCEPTOR); |
(...skipping 29 matching lines...) Expand all Loading... |
334 Handle<Map> holder_map_; | 336 Handle<Map> holder_map_; |
335 const Handle<JSReceiver> initial_holder_; | 337 const Handle<JSReceiver> initial_holder_; |
336 uint32_t number_; | 338 uint32_t number_; |
337 }; | 339 }; |
338 | 340 |
339 | 341 |
340 } // namespace internal | 342 } // namespace internal |
341 } // namespace v8 | 343 } // namespace v8 |
342 | 344 |
343 #endif // V8_LOOKUP_H_ | 345 #endif // V8_LOOKUP_H_ |
OLD | NEW |