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 #include <memory> | 9 #include <memory> |
10 | 10 |
(...skipping 10937 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
10948 | 10948 |
10949 inline bool is_neuterable(); | 10949 inline bool is_neuterable(); |
10950 inline void set_is_neuterable(bool value); | 10950 inline void set_is_neuterable(bool value); |
10951 | 10951 |
10952 inline bool was_neutered(); | 10952 inline bool was_neutered(); |
10953 inline void set_was_neutered(bool value); | 10953 inline void set_was_neutered(bool value); |
10954 | 10954 |
10955 inline bool is_shared(); | 10955 inline bool is_shared(); |
10956 inline void set_is_shared(bool value); | 10956 inline void set_is_shared(bool value); |
10957 | 10957 |
| 10958 inline bool has_guard_region(); |
| 10959 inline void set_has_guard_region(bool value); |
| 10960 |
10958 DECLARE_CAST(JSArrayBuffer) | 10961 DECLARE_CAST(JSArrayBuffer) |
10959 | 10962 |
10960 void Neuter(); | 10963 void Neuter(); |
10961 | 10964 |
10962 V8_EXPORT_PRIVATE static void Setup( | 10965 V8_EXPORT_PRIVATE static void Setup( |
10963 Handle<JSArrayBuffer> array_buffer, Isolate* isolate, bool is_external, | 10966 Handle<JSArrayBuffer> array_buffer, Isolate* isolate, bool is_external, |
10964 void* data, size_t allocated_length, | 10967 void* data, size_t allocated_length, |
10965 SharedFlag shared = SharedFlag::kNotShared); | 10968 SharedFlag shared = SharedFlag::kNotShared); |
10966 | 10969 |
10967 static bool SetupAllocatingData(Handle<JSArrayBuffer> array_buffer, | 10970 static bool SetupAllocatingData(Handle<JSArrayBuffer> array_buffer, |
(...skipping 19 matching lines...) Expand all Loading... |
10987 kSize + v8::ArrayBuffer::kInternalFieldCount * kPointerSize; | 10990 kSize + v8::ArrayBuffer::kInternalFieldCount * kPointerSize; |
10988 | 10991 |
10989 // Iterates all fields in the object including internal ones except | 10992 // Iterates all fields in the object including internal ones except |
10990 // kBackingStoreOffset and kBitFieldSlot. | 10993 // kBackingStoreOffset and kBitFieldSlot. |
10991 class BodyDescriptor; | 10994 class BodyDescriptor; |
10992 | 10995 |
10993 class IsExternal : public BitField<bool, 1, 1> {}; | 10996 class IsExternal : public BitField<bool, 1, 1> {}; |
10994 class IsNeuterable : public BitField<bool, 2, 1> {}; | 10997 class IsNeuterable : public BitField<bool, 2, 1> {}; |
10995 class WasNeutered : public BitField<bool, 3, 1> {}; | 10998 class WasNeutered : public BitField<bool, 3, 1> {}; |
10996 class IsShared : public BitField<bool, 4, 1> {}; | 10999 class IsShared : public BitField<bool, 4, 1> {}; |
| 11000 class HasGuardRegion : public BitField<bool, 5, 1> {}; |
10997 | 11001 |
10998 private: | 11002 private: |
10999 DISALLOW_IMPLICIT_CONSTRUCTORS(JSArrayBuffer); | 11003 DISALLOW_IMPLICIT_CONSTRUCTORS(JSArrayBuffer); |
11000 }; | 11004 }; |
11001 | 11005 |
11002 | 11006 |
11003 class JSArrayBufferView: public JSObject { | 11007 class JSArrayBufferView: public JSObject { |
11004 public: | 11008 public: |
11005 // [buffer]: ArrayBuffer that this typed array views. | 11009 // [buffer]: ArrayBuffer that this typed array views. |
11006 DECL_ACCESSORS(buffer, Object) | 11010 DECL_ACCESSORS(buffer, Object) |
(...skipping 798 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
11805 } | 11809 } |
11806 return value; | 11810 return value; |
11807 } | 11811 } |
11808 }; | 11812 }; |
11809 | 11813 |
11810 | 11814 |
11811 } // NOLINT, false-positive due to second-order macros. | 11815 } // NOLINT, false-positive due to second-order macros. |
11812 } // NOLINT, false-positive due to second-order macros. | 11816 } // NOLINT, false-positive due to second-order macros. |
11813 | 11817 |
11814 #endif // V8_OBJECTS_H_ | 11818 #endif // V8_OBJECTS_H_ |
OLD | NEW |