OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 1421 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1432 Object* value, | 1432 Object* value, |
1433 PropertyAttributes attributes, | 1433 PropertyAttributes attributes, |
1434 StrictModeFlag strict_mode, | 1434 StrictModeFlag strict_mode, |
1435 StoreFromKeyed store_from_keyed = MAY_BE_STORE_FROM_KEYED); | 1435 StoreFromKeyed store_from_keyed = MAY_BE_STORE_FROM_KEYED); |
1436 MUST_USE_RESULT MaybeObject* SetPropertyWithDefinedSetter(JSReceiver* setter, | 1436 MUST_USE_RESULT MaybeObject* SetPropertyWithDefinedSetter(JSReceiver* setter, |
1437 Object* value); | 1437 Object* value); |
1438 | 1438 |
1439 MUST_USE_RESULT MaybeObject* DeleteProperty(String* name, DeleteMode mode); | 1439 MUST_USE_RESULT MaybeObject* DeleteProperty(String* name, DeleteMode mode); |
1440 MUST_USE_RESULT MaybeObject* DeleteElement(uint32_t index, DeleteMode mode); | 1440 MUST_USE_RESULT MaybeObject* DeleteElement(uint32_t index, DeleteMode mode); |
1441 | 1441 |
1442 // Set the index'th array element. | |
1443 // Can cause GC, or return failure if GC is required. | |
1444 MUST_USE_RESULT MaybeObject* SetElement(uint32_t index, | |
1445 Object* value, | |
1446 PropertyAttributes attributes, | |
1447 StrictModeFlag strict_mode, | |
1448 bool check_prototype); | |
1449 | |
1450 // Tests for the fast common case for property enumeration. | 1442 // Tests for the fast common case for property enumeration. |
1451 bool IsSimpleEnum(); | 1443 bool IsSimpleEnum(); |
1452 | 1444 |
1453 // Returns the class name ([[Class]] property in the specification). | 1445 // Returns the class name ([[Class]] property in the specification). |
1454 String* class_name(); | 1446 String* class_name(); |
1455 | 1447 |
1456 // Returns the constructor name (the name (possibly, inferred name) of the | 1448 // Returns the constructor name (the name (possibly, inferred name) of the |
1457 // function that was used to instantiate the object). | 1449 // function that was used to instantiate the object). |
1458 String* constructor_name(); | 1450 String* constructor_name(); |
1459 | 1451 |
(...skipping 6581 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
8041 MUST_USE_RESULT MaybeObject* GetElementWithHandler( | 8033 MUST_USE_RESULT MaybeObject* GetElementWithHandler( |
8042 Object* receiver, | 8034 Object* receiver, |
8043 uint32_t index); | 8035 uint32_t index); |
8044 | 8036 |
8045 MUST_USE_RESULT MaybeObject* SetPropertyWithHandler( | 8037 MUST_USE_RESULT MaybeObject* SetPropertyWithHandler( |
8046 JSReceiver* receiver, | 8038 JSReceiver* receiver, |
8047 String* name, | 8039 String* name, |
8048 Object* value, | 8040 Object* value, |
8049 PropertyAttributes attributes, | 8041 PropertyAttributes attributes, |
8050 StrictModeFlag strict_mode); | 8042 StrictModeFlag strict_mode); |
8051 MUST_USE_RESULT MaybeObject* SetElementWithHandler( | |
8052 JSReceiver* receiver, | |
8053 uint32_t index, | |
8054 Object* value, | |
8055 StrictModeFlag strict_mode); | |
8056 | 8043 |
8057 // If the handler defines an accessor property with a setter, invoke it. | 8044 // If the handler defines an accessor property with a setter, invoke it. |
8058 // If it defines an accessor property without a setter, or a data property | 8045 // If it defines an accessor property without a setter, or a data property |
8059 // that is read-only, throw. In all these cases set '*done' to true, | 8046 // that is read-only, throw. In all these cases set '*done' to true, |
8060 // otherwise set it to false. | 8047 // otherwise set it to false. |
8061 MUST_USE_RESULT MaybeObject* SetPropertyViaPrototypesWithHandler( | 8048 MUST_USE_RESULT MaybeObject* SetPropertyViaPrototypesWithHandler( |
8062 JSReceiver* receiver, | 8049 JSReceiver* receiver, |
8063 String* name, | 8050 String* name, |
8064 Object* value, | 8051 Object* value, |
8065 PropertyAttributes attributes, | 8052 PropertyAttributes attributes, |
(...skipping 889 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
8955 } else { | 8942 } else { |
8956 value &= ~(1 << bit_position); | 8943 value &= ~(1 << bit_position); |
8957 } | 8944 } |
8958 return value; | 8945 return value; |
8959 } | 8946 } |
8960 }; | 8947 }; |
8961 | 8948 |
8962 } } // namespace v8::internal | 8949 } } // namespace v8::internal |
8963 | 8950 |
8964 #endif // V8_OBJECTS_H_ | 8951 #endif // V8_OBJECTS_H_ |
OLD | NEW |