Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(142)

Side by Side Diff: src/objects.h

Issue 10534090: Rollback of r11719, r11717, r11716, r11714, r11700, r11699, r11697, r11695, r11694 in trunk branch. (Closed) Base URL: https://v8.googlecode.com/svn/trunk
Patch Set: Created 8 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « src/mips/stub-cache-mips.cc ('k') | src/objects.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 1819 matching lines...) Expand 10 before | Expand all | Expand 10 after
1830 inline int GetInternalFieldCount(); 1830 inline int GetInternalFieldCount();
1831 inline int GetInternalFieldOffset(int index); 1831 inline int GetInternalFieldOffset(int index);
1832 inline Object* GetInternalField(int index); 1832 inline Object* GetInternalField(int index);
1833 inline void SetInternalField(int index, Object* value); 1833 inline void SetInternalField(int index, Object* value);
1834 inline void SetInternalField(int index, Smi* value); 1834 inline void SetInternalField(int index, Smi* value);
1835 1835
1836 // The following lookup functions skip interceptors. 1836 // The following lookup functions skip interceptors.
1837 void LocalLookupRealNamedProperty(String* name, LookupResult* result); 1837 void LocalLookupRealNamedProperty(String* name, LookupResult* result);
1838 void LookupRealNamedProperty(String* name, LookupResult* result); 1838 void LookupRealNamedProperty(String* name, LookupResult* result);
1839 void LookupRealNamedPropertyInPrototypes(String* name, LookupResult* result); 1839 void LookupRealNamedPropertyInPrototypes(String* name, LookupResult* result);
1840 void LookupCallbackSetterInPrototypes(String* name, LookupResult* result);
1840 MUST_USE_RESULT MaybeObject* SetElementWithCallbackSetterInPrototypes( 1841 MUST_USE_RESULT MaybeObject* SetElementWithCallbackSetterInPrototypes(
1841 uint32_t index, Object* value, bool* found, StrictModeFlag strict_mode); 1842 uint32_t index, Object* value, bool* found, StrictModeFlag strict_mode);
1842 void LookupCallback(String* name, LookupResult* result); 1843 void LookupCallback(String* name, LookupResult* result);
1843 1844
1844 // Returns the number of properties on this object filtering out properties 1845 // Returns the number of properties on this object filtering out properties
1845 // with the specified attributes (ignoring interceptors). 1846 // with the specified attributes (ignoring interceptors).
1846 int NumberOfLocalProperties(PropertyAttributes filter = NONE); 1847 int NumberOfLocalProperties(PropertyAttributes filter = NONE);
1847 // Fill in details for properties into storage starting at the specified 1848 // Fill in details for properties into storage starting at the specified
1848 // index. 1849 // index.
1849 void GetLocalPropertyNames(FixedArray* storage, int index); 1850 void GetLocalPropertyNames(FixedArray* storage, int index);
(...skipping 264 matching lines...) Expand 10 before | Expand all | Expand 10 after
2114 bool check_prototype, 2115 bool check_prototype,
2115 SetPropertyMode set_mode); 2116 SetPropertyMode set_mode);
2116 MUST_USE_RESULT MaybeObject* SetElementWithoutInterceptor( 2117 MUST_USE_RESULT MaybeObject* SetElementWithoutInterceptor(
2117 uint32_t index, 2118 uint32_t index,
2118 Object* value, 2119 Object* value,
2119 PropertyAttributes attributes, 2120 PropertyAttributes attributes,
2120 StrictModeFlag strict_mode, 2121 StrictModeFlag strict_mode,
2121 bool check_prototype, 2122 bool check_prototype,
2122 SetPropertyMode set_mode); 2123 SetPropertyMode set_mode);
2123 2124
2124 // Searches the prototype chain for property 'name'. If it is found and 2125 // Searches the prototype chain for a callback setter and sets the property
2125 // has a setter, invoke it and set '*done' to true. If it is found and is 2126 // with the setter if it finds one. The '*found' flag indicates whether
2126 // read-only, reject and set '*done' to true. Otherwise, set '*done' to 2127 // a setter was found or not.
2127 // false. Can cause GC and can return a failure result with '*done==true'. 2128 // This function can cause GC and can return a failure result with
2128 MUST_USE_RESULT MaybeObject* SetPropertyViaPrototypes( 2129 // '*found==true'.
2130 MUST_USE_RESULT MaybeObject* SetPropertyWithCallbackSetterInPrototypes(
2129 String* name, 2131 String* name,
2130 Object* value, 2132 Object* value,
2131 PropertyAttributes attributes, 2133 PropertyAttributes attributes,
2132 StrictModeFlag strict_mode, 2134 bool* found,
2133 bool* done); 2135 StrictModeFlag strict_mode);
2134 2136
2135 MUST_USE_RESULT MaybeObject* DeletePropertyPostInterceptor(String* name, 2137 MUST_USE_RESULT MaybeObject* DeletePropertyPostInterceptor(String* name,
2136 DeleteMode mode); 2138 DeleteMode mode);
2137 MUST_USE_RESULT MaybeObject* DeletePropertyWithInterceptor(String* name); 2139 MUST_USE_RESULT MaybeObject* DeletePropertyWithInterceptor(String* name);
2138 2140
2139 MUST_USE_RESULT MaybeObject* DeleteElementWithInterceptor(uint32_t index); 2141 MUST_USE_RESULT MaybeObject* DeleteElementWithInterceptor(uint32_t index);
2140 2142
2141 MUST_USE_RESULT MaybeObject* DeleteFastElement(uint32_t index); 2143 MUST_USE_RESULT MaybeObject* DeleteFastElement(uint32_t index);
2142 MUST_USE_RESULT MaybeObject* DeleteDictionaryElement(uint32_t index, 2144 MUST_USE_RESULT MaybeObject* DeleteDictionaryElement(uint32_t index,
2143 DeleteMode mode); 2145 DeleteMode mode);
(...skipping 5592 matching lines...) Expand 10 before | Expand all | Expand 10 after
7736 String* name, 7738 String* name,
7737 Object* value, 7739 Object* value,
7738 PropertyAttributes attributes, 7740 PropertyAttributes attributes,
7739 StrictModeFlag strict_mode); 7741 StrictModeFlag strict_mode);
7740 MUST_USE_RESULT MaybeObject* SetElementWithHandler( 7742 MUST_USE_RESULT MaybeObject* SetElementWithHandler(
7741 JSReceiver* receiver, 7743 JSReceiver* receiver,
7742 uint32_t index, 7744 uint32_t index,
7743 Object* value, 7745 Object* value,
7744 StrictModeFlag strict_mode); 7746 StrictModeFlag strict_mode);
7745 7747
7746 // If the handler defines an accessor property with a setter, invoke it. 7748 // If the handler defines an accessor property, invoke its setter
7747 // If it defines an accessor property without a setter, or a data property 7749 // (or throw if only a getter exists) and set *found to true. Otherwise false.
7748 // that is read-only, throw. In all these cases set '*done' to true, 7750 MUST_USE_RESULT MaybeObject* SetPropertyWithHandlerIfDefiningSetter(
7749 // otherwise set it to false.
7750 MUST_USE_RESULT MaybeObject* SetPropertyViaPrototypesWithHandler(
7751 JSReceiver* receiver, 7751 JSReceiver* receiver,
7752 String* name, 7752 String* name,
7753 Object* value, 7753 Object* value,
7754 PropertyAttributes attributes, 7754 PropertyAttributes attributes,
7755 StrictModeFlag strict_mode, 7755 StrictModeFlag strict_mode,
7756 bool* done); 7756 bool* found);
7757 7757
7758 MUST_USE_RESULT MaybeObject* DeletePropertyWithHandler( 7758 MUST_USE_RESULT MaybeObject* DeletePropertyWithHandler(
7759 String* name, 7759 String* name,
7760 DeleteMode mode); 7760 DeleteMode mode);
7761 MUST_USE_RESULT MaybeObject* DeleteElementWithHandler( 7761 MUST_USE_RESULT MaybeObject* DeleteElementWithHandler(
7762 uint32_t index, 7762 uint32_t index,
7763 DeleteMode mode); 7763 DeleteMode mode);
7764 7764
7765 MUST_USE_RESULT PropertyAttributes GetPropertyAttributeWithHandler( 7765 MUST_USE_RESULT PropertyAttributes GetPropertyAttributeWithHandler(
7766 JSReceiver* receiver, 7766 JSReceiver* receiver,
(...skipping 911 matching lines...) Expand 10 before | Expand all | Expand 10 after
8678 } else { 8678 } else {
8679 value &= ~(1 << bit_position); 8679 value &= ~(1 << bit_position);
8680 } 8680 }
8681 return value; 8681 return value;
8682 } 8682 }
8683 }; 8683 };
8684 8684
8685 } } // namespace v8::internal 8685 } } // namespace v8::internal
8686 8686
8687 #endif // V8_OBJECTS_H_ 8687 #endif // V8_OBJECTS_H_
OLDNEW
« no previous file with comments | « src/mips/stub-cache-mips.cc ('k') | src/objects.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698