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 10904 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
10915 | 10915 |
10916 inline bool is_neuterable(); | 10916 inline bool is_neuterable(); |
10917 inline void set_is_neuterable(bool value); | 10917 inline void set_is_neuterable(bool value); |
10918 | 10918 |
10919 inline bool was_neutered(); | 10919 inline bool was_neutered(); |
10920 inline void set_was_neutered(bool value); | 10920 inline void set_was_neutered(bool value); |
10921 | 10921 |
10922 inline bool is_shared(); | 10922 inline bool is_shared(); |
10923 inline void set_is_shared(bool value); | 10923 inline void set_is_shared(bool value); |
10924 | 10924 |
| 10925 inline bool has_guard_region(); |
| 10926 inline void set_has_guard_region(bool value); |
| 10927 |
10925 DECLARE_CAST(JSArrayBuffer) | 10928 DECLARE_CAST(JSArrayBuffer) |
10926 | 10929 |
10927 void Neuter(); | 10930 void Neuter(); |
10928 | 10931 |
10929 V8_EXPORT_PRIVATE static void Setup( | 10932 V8_EXPORT_PRIVATE static void Setup( |
10930 Handle<JSArrayBuffer> array_buffer, Isolate* isolate, bool is_external, | 10933 Handle<JSArrayBuffer> array_buffer, Isolate* isolate, bool is_external, |
10931 void* data, size_t allocated_length, | 10934 void* data, size_t allocated_length, |
10932 SharedFlag shared = SharedFlag::kNotShared); | 10935 SharedFlag shared = SharedFlag::kNotShared); |
10933 | 10936 |
10934 static bool SetupAllocatingData(Handle<JSArrayBuffer> array_buffer, | 10937 static bool SetupAllocatingData(Handle<JSArrayBuffer> array_buffer, |
(...skipping 19 matching lines...) Expand all Loading... |
10954 kSize + v8::ArrayBuffer::kInternalFieldCount * kPointerSize; | 10957 kSize + v8::ArrayBuffer::kInternalFieldCount * kPointerSize; |
10955 | 10958 |
10956 // Iterates all fields in the object including internal ones except | 10959 // Iterates all fields in the object including internal ones except |
10957 // kBackingStoreOffset and kBitFieldSlot. | 10960 // kBackingStoreOffset and kBitFieldSlot. |
10958 class BodyDescriptor; | 10961 class BodyDescriptor; |
10959 | 10962 |
10960 class IsExternal : public BitField<bool, 1, 1> {}; | 10963 class IsExternal : public BitField<bool, 1, 1> {}; |
10961 class IsNeuterable : public BitField<bool, 2, 1> {}; | 10964 class IsNeuterable : public BitField<bool, 2, 1> {}; |
10962 class WasNeutered : public BitField<bool, 3, 1> {}; | 10965 class WasNeutered : public BitField<bool, 3, 1> {}; |
10963 class IsShared : public BitField<bool, 4, 1> {}; | 10966 class IsShared : public BitField<bool, 4, 1> {}; |
| 10967 class HasGuardRegion : public BitField<bool, 5, 1> {}; |
10964 | 10968 |
10965 private: | 10969 private: |
10966 DISALLOW_IMPLICIT_CONSTRUCTORS(JSArrayBuffer); | 10970 DISALLOW_IMPLICIT_CONSTRUCTORS(JSArrayBuffer); |
10967 }; | 10971 }; |
10968 | 10972 |
10969 | 10973 |
10970 class JSArrayBufferView: public JSObject { | 10974 class JSArrayBufferView: public JSObject { |
10971 public: | 10975 public: |
10972 // [buffer]: ArrayBuffer that this typed array views. | 10976 // [buffer]: ArrayBuffer that this typed array views. |
10973 DECL_ACCESSORS(buffer, Object) | 10977 DECL_ACCESSORS(buffer, Object) |
(...skipping 787 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
11761 } | 11765 } |
11762 return value; | 11766 return value; |
11763 } | 11767 } |
11764 }; | 11768 }; |
11765 | 11769 |
11766 | 11770 |
11767 } // NOLINT, false-positive due to second-order macros. | 11771 } // NOLINT, false-positive due to second-order macros. |
11768 } // NOLINT, false-positive due to second-order macros. | 11772 } // NOLINT, false-positive due to second-order macros. |
11769 | 11773 |
11770 #endif // V8_OBJECTS_H_ | 11774 #endif // V8_OBJECTS_H_ |
OLD | NEW |