OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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 // Review notes: | 5 // Review notes: |
6 // | 6 // |
7 // - The use of macros in these inline functions may seem superfluous | 7 // - The use of macros in these inline functions may seem superfluous |
8 // but it is absolutely needed to make sure gcc generates optimal | 8 // but it is absolutely needed to make sure gcc generates optimal |
9 // code. gcc is not happy when attempting to inline too deep. | 9 // code. gcc is not happy when attempting to inline too deep. |
10 // | 10 // |
(...skipping 7016 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7027 return Nothing<bool>(); | 7027 return Nothing<bool>(); |
7028 } | 7028 } |
7029 | 7029 |
7030 MaybeHandle<Object> Object::GetPropertyOrElement(Handle<Object> object, | 7030 MaybeHandle<Object> Object::GetPropertyOrElement(Handle<Object> object, |
7031 Handle<Name> name) { | 7031 Handle<Name> name) { |
7032 LookupIterator it = | 7032 LookupIterator it = |
7033 LookupIterator::PropertyOrElement(name->GetIsolate(), object, name); | 7033 LookupIterator::PropertyOrElement(name->GetIsolate(), object, name); |
7034 return GetProperty(&it); | 7034 return GetProperty(&it); |
7035 } | 7035 } |
7036 | 7036 |
| 7037 MaybeHandle<Object> Object::SetPropertyOrElement(Handle<Object> object, |
| 7038 Handle<Name> name, |
| 7039 Handle<Object> value, |
| 7040 LanguageMode language_mode, |
| 7041 StoreFromKeyed store_mode) { |
| 7042 LookupIterator it = |
| 7043 LookupIterator::PropertyOrElement(name->GetIsolate(), object, name); |
| 7044 MAYBE_RETURN_NULL(SetProperty(&it, value, language_mode, store_mode)); |
| 7045 return value; |
| 7046 } |
| 7047 |
7037 MaybeHandle<Object> Object::GetPropertyOrElement(Handle<Object> receiver, | 7048 MaybeHandle<Object> Object::GetPropertyOrElement(Handle<Object> receiver, |
7038 Handle<Name> name, | 7049 Handle<Name> name, |
7039 Handle<JSReceiver> holder) { | 7050 Handle<JSReceiver> holder) { |
7040 LookupIterator it = LookupIterator::PropertyOrElement( | 7051 LookupIterator it = LookupIterator::PropertyOrElement( |
7041 name->GetIsolate(), receiver, name, holder); | 7052 name->GetIsolate(), receiver, name, holder); |
7042 return GetProperty(&it); | 7053 return GetProperty(&it); |
7043 } | 7054 } |
7044 | 7055 |
7045 | 7056 |
7046 void JSReceiver::initialize_properties() { | 7057 void JSReceiver::initialize_properties() { |
(...skipping 760 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7807 #undef WRITE_INT64_FIELD | 7818 #undef WRITE_INT64_FIELD |
7808 #undef READ_BYTE_FIELD | 7819 #undef READ_BYTE_FIELD |
7809 #undef WRITE_BYTE_FIELD | 7820 #undef WRITE_BYTE_FIELD |
7810 #undef NOBARRIER_READ_BYTE_FIELD | 7821 #undef NOBARRIER_READ_BYTE_FIELD |
7811 #undef NOBARRIER_WRITE_BYTE_FIELD | 7822 #undef NOBARRIER_WRITE_BYTE_FIELD |
7812 | 7823 |
7813 } // namespace internal | 7824 } // namespace internal |
7814 } // namespace v8 | 7825 } // namespace v8 |
7815 | 7826 |
7816 #endif // V8_OBJECTS_INL_H_ | 7827 #endif // V8_OBJECTS_INL_H_ |
OLD | NEW |