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 198 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
209 Object::StoreFromKeyed store_mode); | 209 Object::StoreFromKeyed store_mode); |
210 bool IsCacheableTransition() { | 210 bool IsCacheableTransition() { |
211 if (state_ != TRANSITION) return false; | 211 if (state_ != TRANSITION) return false; |
212 return transition_->IsPropertyCell() || | 212 return transition_->IsPropertyCell() || |
213 (!transition_map()->is_dictionary_map() && | 213 (!transition_map()->is_dictionary_map() && |
214 transition_map()->GetBackPointer()->IsMap()); | 214 transition_map()->GetBackPointer()->IsMap()); |
215 } | 215 } |
216 void ApplyTransitionToDataProperty(); | 216 void ApplyTransitionToDataProperty(); |
217 void ReconfigureDataProperty(Handle<Object> value, | 217 void ReconfigureDataProperty(Handle<Object> value, |
218 PropertyAttributes attributes); | 218 PropertyAttributes attributes); |
| 219 void Delete(); |
219 void TransitionToAccessorProperty(AccessorComponent component, | 220 void TransitionToAccessorProperty(AccessorComponent component, |
220 Handle<Object> accessor, | 221 Handle<Object> accessor, |
221 PropertyAttributes attributes); | 222 PropertyAttributes attributes); |
222 PropertyDetails property_details() const { | 223 PropertyDetails property_details() const { |
223 DCHECK(has_property_); | 224 DCHECK(has_property_); |
224 return property_details_; | 225 return property_details_; |
225 } | 226 } |
226 bool IsConfigurable() const { return property_details().IsConfigurable(); } | 227 bool IsConfigurable() const { return property_details().IsConfigurable(); } |
227 bool IsReadOnly() const { return property_details().IsReadOnly(); } | 228 bool IsReadOnly() const { return property_details().IsReadOnly(); } |
228 Representation representation() const { | 229 Representation representation() const { |
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
306 Handle<JSReceiver> holder_; | 307 Handle<JSReceiver> holder_; |
307 Handle<Map> holder_map_; | 308 Handle<Map> holder_map_; |
308 const Handle<JSReceiver> initial_holder_; | 309 const Handle<JSReceiver> initial_holder_; |
309 uint32_t number_; | 310 uint32_t number_; |
310 }; | 311 }; |
311 | 312 |
312 | 313 |
313 } } // namespace v8::internal | 314 } } // namespace v8::internal |
314 | 315 |
315 #endif // V8_LOOKUP_H_ | 316 #endif // V8_LOOKUP_H_ |
OLD | NEW |