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