OLD | NEW |
1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 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/assert-scope.h" | 10 #include "src/assert-scope.h" |
(...skipping 10368 matching lines...) Loading... |
10379 // assertTrue("foo" in obj); | 10379 // assertTrue("foo" in obj); |
10380 inline bool IsJSAccessor(Object* obj); | 10380 inline bool IsJSAccessor(Object* obj); |
10381 | 10381 |
10382 DISALLOW_IMPLICIT_CONSTRUCTORS(AccessorPair); | 10382 DISALLOW_IMPLICIT_CONSTRUCTORS(AccessorPair); |
10383 }; | 10383 }; |
10384 | 10384 |
10385 | 10385 |
10386 class AccessCheckInfo: public Struct { | 10386 class AccessCheckInfo: public Struct { |
10387 public: | 10387 public: |
10388 DECL_ACCESSORS(callback, Object) | 10388 DECL_ACCESSORS(callback, Object) |
| 10389 DECL_ACCESSORS(named_interceptor, Object) |
| 10390 DECL_ACCESSORS(indexed_interceptor, Object) |
10389 DECL_ACCESSORS(data, Object) | 10391 DECL_ACCESSORS(data, Object) |
10390 | 10392 |
10391 DECLARE_CAST(AccessCheckInfo) | 10393 DECLARE_CAST(AccessCheckInfo) |
10392 | 10394 |
10393 // Dispatched behavior. | 10395 // Dispatched behavior. |
10394 DECLARE_PRINTER(AccessCheckInfo) | 10396 DECLARE_PRINTER(AccessCheckInfo) |
10395 DECLARE_VERIFIER(AccessCheckInfo) | 10397 DECLARE_VERIFIER(AccessCheckInfo) |
10396 | 10398 |
| 10399 static AccessCheckInfo* Get(Isolate* isolate, Handle<JSObject> receiver); |
| 10400 |
10397 static const int kCallbackOffset = HeapObject::kHeaderSize; | 10401 static const int kCallbackOffset = HeapObject::kHeaderSize; |
10398 static const int kDataOffset = kCallbackOffset + kPointerSize; | 10402 static const int kNamedInterceptorOffset = kCallbackOffset + kPointerSize; |
| 10403 static const int kIndexedInterceptorOffset = |
| 10404 kNamedInterceptorOffset + kPointerSize; |
| 10405 static const int kDataOffset = kIndexedInterceptorOffset + kPointerSize; |
10399 static const int kSize = kDataOffset + kPointerSize; | 10406 static const int kSize = kDataOffset + kPointerSize; |
10400 | 10407 |
10401 private: | 10408 private: |
10402 DISALLOW_IMPLICIT_CONSTRUCTORS(AccessCheckInfo); | 10409 DISALLOW_IMPLICIT_CONSTRUCTORS(AccessCheckInfo); |
10403 }; | 10410 }; |
10404 | 10411 |
10405 | 10412 |
10406 class InterceptorInfo: public Struct { | 10413 class InterceptorInfo: public Struct { |
10407 public: | 10414 public: |
10408 DECL_ACCESSORS(getter, Object) | 10415 DECL_ACCESSORS(getter, Object) |
(...skipping 398 matching lines...) Loading... |
10807 } | 10814 } |
10808 return value; | 10815 return value; |
10809 } | 10816 } |
10810 }; | 10817 }; |
10811 | 10818 |
10812 | 10819 |
10813 } // NOLINT, false-positive due to second-order macros. | 10820 } // NOLINT, false-positive due to second-order macros. |
10814 } // NOLINT, false-positive due to second-order macros. | 10821 } // NOLINT, false-positive due to second-order macros. |
10815 | 10822 |
10816 #endif // V8_OBJECTS_H_ | 10823 #endif // V8_OBJECTS_H_ |
OLD | NEW |