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 #ifndef V8_OBJECTS_H_ | 5 #ifndef V8_OBJECTS_H_ |
6 #define V8_OBJECTS_H_ | 6 #define V8_OBJECTS_H_ |
7 | 7 |
8 #include <iosfwd> | 8 #include <iosfwd> |
9 | 9 |
10 #include "src/allocation.h" | 10 #include "src/allocation.h" |
(...skipping 1149 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1160 static inline MaybeHandle<JSReceiver> ToObject(Isolate* isolate, | 1160 static inline MaybeHandle<JSReceiver> ToObject(Isolate* isolate, |
1161 Handle<Object> object); | 1161 Handle<Object> object); |
1162 static MaybeHandle<JSReceiver> ToObject(Isolate* isolate, | 1162 static MaybeHandle<JSReceiver> ToObject(Isolate* isolate, |
1163 Handle<Object> object, | 1163 Handle<Object> object, |
1164 Handle<Context> context); | 1164 Handle<Context> context); |
1165 | 1165 |
1166 // Converts this to a Smi if possible. | 1166 // Converts this to a Smi if possible. |
1167 MUST_USE_RESULT static inline MaybeHandle<Smi> ToSmi(Isolate* isolate, | 1167 MUST_USE_RESULT static inline MaybeHandle<Smi> ToSmi(Isolate* isolate, |
1168 Handle<Object> object); | 1168 Handle<Object> object); |
1169 | 1169 |
1170 MUST_USE_RESULT static MaybeHandle<Object> GetProperty( | 1170 MUST_USE_RESULT static MaybeHandle<Object> GetPropertyInternal( |
| 1171 LookupIterator* it, bool* failedAccessCheck, |
| 1172 LanguageMode language_mode = SLOPPY); |
| 1173 |
| 1174 MUST_USE_RESULT static inline MaybeHandle<Object> GetProperty( |
1171 LookupIterator* it, LanguageMode language_mode = SLOPPY); | 1175 LookupIterator* it, LanguageMode language_mode = SLOPPY); |
1172 | 1176 |
1173 // Implementation of [[Put]], ECMA-262 5th edition, section 8.12.5. | 1177 // Implementation of [[Put]], ECMA-262 5th edition, section 8.12.5. |
1174 MUST_USE_RESULT static MaybeHandle<Object> SetProperty( | 1178 MUST_USE_RESULT static MaybeHandle<Object> SetProperty( |
1175 Handle<Object> object, Handle<Name> name, Handle<Object> value, | 1179 Handle<Object> object, Handle<Name> name, Handle<Object> value, |
1176 LanguageMode language_mode, | 1180 LanguageMode language_mode, |
1177 StoreFromKeyed store_mode = MAY_BE_STORE_FROM_KEYED); | 1181 StoreFromKeyed store_mode = MAY_BE_STORE_FROM_KEYED); |
1178 | 1182 |
1179 MUST_USE_RESULT static MaybeHandle<Object> SetProperty( | 1183 MUST_USE_RESULT static MaybeHandle<Object> SetProperty( |
1180 LookupIterator* it, Handle<Object> value, LanguageMode language_mode, | 1184 LookupIterator* it, Handle<Object> value, LanguageMode language_mode, |
(...skipping 24 matching lines...) Expand all Loading... |
1205 MUST_USE_RESULT static inline MaybeHandle<Object> GetPropertyOrElement( | 1209 MUST_USE_RESULT static inline MaybeHandle<Object> GetPropertyOrElement( |
1206 Handle<Object> object, Handle<Name> name, | 1210 Handle<Object> object, Handle<Name> name, |
1207 LanguageMode language_mode = SLOPPY); | 1211 LanguageMode language_mode = SLOPPY); |
1208 MUST_USE_RESULT static inline MaybeHandle<Object> GetProperty( | 1212 MUST_USE_RESULT static inline MaybeHandle<Object> GetProperty( |
1209 Isolate* isolate, Handle<Object> object, const char* key, | 1213 Isolate* isolate, Handle<Object> object, const char* key, |
1210 LanguageMode language_mode = SLOPPY); | 1214 LanguageMode language_mode = SLOPPY); |
1211 MUST_USE_RESULT static inline MaybeHandle<Object> GetProperty( | 1215 MUST_USE_RESULT static inline MaybeHandle<Object> GetProperty( |
1212 Handle<Object> object, Handle<Name> name, | 1216 Handle<Object> object, Handle<Name> name, |
1213 LanguageMode language_mode = SLOPPY); | 1217 LanguageMode language_mode = SLOPPY); |
1214 | 1218 |
| 1219 MUST_USE_RESULT static inline MaybeHandle<Object> GetPropertyOrFallbackValue( |
| 1220 Handle<Object> object, Handle<Name> name, Handle<Object> fallbackValue, |
| 1221 LanguageMode language_mode = SLOPPY); |
| 1222 |
1215 MUST_USE_RESULT static MaybeHandle<Object> GetPropertyWithAccessor( | 1223 MUST_USE_RESULT static MaybeHandle<Object> GetPropertyWithAccessor( |
1216 LookupIterator* it, LanguageMode language_mode); | 1224 LookupIterator* it, LanguageMode language_mode); |
1217 MUST_USE_RESULT static MaybeHandle<Object> SetPropertyWithAccessor( | 1225 MUST_USE_RESULT static MaybeHandle<Object> SetPropertyWithAccessor( |
1218 LookupIterator* it, Handle<Object> value, LanguageMode language_mode); | 1226 LookupIterator* it, Handle<Object> value, LanguageMode language_mode); |
1219 | 1227 |
1220 MUST_USE_RESULT static MaybeHandle<Object> GetPropertyWithDefinedGetter( | 1228 MUST_USE_RESULT static MaybeHandle<Object> GetPropertyWithDefinedGetter( |
1221 Handle<Object> receiver, | 1229 Handle<Object> receiver, |
1222 Handle<JSReceiver> getter); | 1230 Handle<JSReceiver> getter); |
1223 MUST_USE_RESULT static MaybeHandle<Object> SetPropertyWithDefinedSetter( | 1231 MUST_USE_RESULT static MaybeHandle<Object> SetPropertyWithDefinedSetter( |
1224 Handle<Object> receiver, | 1232 Handle<Object> receiver, |
(...skipping 9606 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
10831 } else { | 10839 } else { |
10832 value &= ~(1 << bit_position); | 10840 value &= ~(1 << bit_position); |
10833 } | 10841 } |
10834 return value; | 10842 return value; |
10835 } | 10843 } |
10836 }; | 10844 }; |
10837 | 10845 |
10838 } } // namespace v8::internal | 10846 } } // namespace v8::internal |
10839 | 10847 |
10840 #endif // V8_OBJECTS_H_ | 10848 #endif // V8_OBJECTS_H_ |
OLD | NEW |