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 1923 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1934 Handle<Name> name, | 1934 Handle<Name> name, |
1935 Handle<Object> getter, | 1935 Handle<Object> getter, |
1936 Handle<Object> setter, | 1936 Handle<Object> setter, |
1937 PropertyAttributes attributes); | 1937 PropertyAttributes attributes); |
1938 | 1938 |
1939 // Defines an AccessorInfo property on the given object. | 1939 // Defines an AccessorInfo property on the given object. |
1940 MUST_USE_RESULT static MaybeHandle<Object> SetAccessor( | 1940 MUST_USE_RESULT static MaybeHandle<Object> SetAccessor( |
1941 Handle<JSObject> object, | 1941 Handle<JSObject> object, |
1942 Handle<AccessorInfo> info); | 1942 Handle<AccessorInfo> info); |
1943 | 1943 |
| 1944 // The result must be checked first for exceptions. If there's no exception, |
| 1945 // the output parameter |done| indicates whether the interceptor has a result |
| 1946 // or not. |
1944 MUST_USE_RESULT static MaybeHandle<Object> GetPropertyWithInterceptor( | 1947 MUST_USE_RESULT static MaybeHandle<Object> GetPropertyWithInterceptor( |
1945 LookupIterator* it); | 1948 LookupIterator* it, bool* done); |
1946 | 1949 |
1947 // Accessors for hidden properties object. | 1950 // Accessors for hidden properties object. |
1948 // | 1951 // |
1949 // Hidden properties are not own properties of the object itself. | 1952 // Hidden properties are not own properties of the object itself. |
1950 // Instead they are stored in an auxiliary structure kept as an own | 1953 // Instead they are stored in an auxiliary structure kept as an own |
1951 // property with a special name Heap::hidden_string(). But if the | 1954 // property with a special name Heap::hidden_string(). But if the |
1952 // receiver is a JSGlobalProxy then the auxiliary object is a property | 1955 // receiver is a JSGlobalProxy then the auxiliary object is a property |
1953 // of its prototype, and if it's a detached proxy, then you can't have | 1956 // of its prototype, and if it's a detached proxy, then you can't have |
1954 // hidden properties. | 1957 // hidden properties. |
1955 | 1958 |
(...skipping 8903 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
10859 } else { | 10862 } else { |
10860 value &= ~(1 << bit_position); | 10863 value &= ~(1 << bit_position); |
10861 } | 10864 } |
10862 return value; | 10865 return value; |
10863 } | 10866 } |
10864 }; | 10867 }; |
10865 | 10868 |
10866 } } // namespace v8::internal | 10869 } } // namespace v8::internal |
10867 | 10870 |
10868 #endif // V8_OBJECTS_H_ | 10871 #endif // V8_OBJECTS_H_ |
OLD | NEW |