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 10953 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
10964 | 10964 |
10965 inline bool is_neuterable(); | 10965 inline bool is_neuterable(); |
10966 inline void set_is_neuterable(bool value); | 10966 inline void set_is_neuterable(bool value); |
10967 | 10967 |
10968 inline bool was_neutered(); | 10968 inline bool was_neutered(); |
10969 inline void set_was_neutered(bool value); | 10969 inline void set_was_neutered(bool value); |
10970 | 10970 |
10971 inline bool is_shared(); | 10971 inline bool is_shared(); |
10972 inline void set_is_shared(bool value); | 10972 inline void set_is_shared(bool value); |
10973 | 10973 |
| 10974 inline bool has_guard_region(); |
| 10975 inline void set_has_guard_region(bool value); |
| 10976 |
10974 DECLARE_CAST(JSArrayBuffer) | 10977 DECLARE_CAST(JSArrayBuffer) |
10975 | 10978 |
10976 void Neuter(); | 10979 void Neuter(); |
10977 | 10980 |
10978 V8_EXPORT_PRIVATE static void Setup( | 10981 V8_EXPORT_PRIVATE static void Setup( |
10979 Handle<JSArrayBuffer> array_buffer, Isolate* isolate, bool is_external, | 10982 Handle<JSArrayBuffer> array_buffer, Isolate* isolate, bool is_external, |
10980 void* data, size_t allocated_length, | 10983 void* data, size_t allocated_length, |
10981 SharedFlag shared = SharedFlag::kNotShared); | 10984 SharedFlag shared = SharedFlag::kNotShared); |
10982 | 10985 |
10983 static bool SetupAllocatingData(Handle<JSArrayBuffer> array_buffer, | 10986 static bool SetupAllocatingData(Handle<JSArrayBuffer> array_buffer, |
(...skipping 19 matching lines...) Expand all Loading... |
11003 kSize + v8::ArrayBuffer::kInternalFieldCount * kPointerSize; | 11006 kSize + v8::ArrayBuffer::kInternalFieldCount * kPointerSize; |
11004 | 11007 |
11005 // Iterates all fields in the object including internal ones except | 11008 // Iterates all fields in the object including internal ones except |
11006 // kBackingStoreOffset and kBitFieldSlot. | 11009 // kBackingStoreOffset and kBitFieldSlot. |
11007 class BodyDescriptor; | 11010 class BodyDescriptor; |
11008 | 11011 |
11009 class IsExternal : public BitField<bool, 1, 1> {}; | 11012 class IsExternal : public BitField<bool, 1, 1> {}; |
11010 class IsNeuterable : public BitField<bool, 2, 1> {}; | 11013 class IsNeuterable : public BitField<bool, 2, 1> {}; |
11011 class WasNeutered : public BitField<bool, 3, 1> {}; | 11014 class WasNeutered : public BitField<bool, 3, 1> {}; |
11012 class IsShared : public BitField<bool, 4, 1> {}; | 11015 class IsShared : public BitField<bool, 4, 1> {}; |
| 11016 class HasGuardRegion : public BitField<bool, 5, 1> {}; |
11013 | 11017 |
11014 private: | 11018 private: |
11015 DISALLOW_IMPLICIT_CONSTRUCTORS(JSArrayBuffer); | 11019 DISALLOW_IMPLICIT_CONSTRUCTORS(JSArrayBuffer); |
11016 }; | 11020 }; |
11017 | 11021 |
11018 | 11022 |
11019 class JSArrayBufferView: public JSObject { | 11023 class JSArrayBufferView: public JSObject { |
11020 public: | 11024 public: |
11021 // [buffer]: ArrayBuffer that this typed array views. | 11025 // [buffer]: ArrayBuffer that this typed array views. |
11022 DECL_ACCESSORS(buffer, Object) | 11026 DECL_ACCESSORS(buffer, Object) |
(...skipping 798 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
11821 } | 11825 } |
11822 return value; | 11826 return value; |
11823 } | 11827 } |
11824 }; | 11828 }; |
11825 | 11829 |
11826 | 11830 |
11827 } // NOLINT, false-positive due to second-order macros. | 11831 } // NOLINT, false-positive due to second-order macros. |
11828 } // NOLINT, false-positive due to second-order macros. | 11832 } // NOLINT, false-positive due to second-order macros. |
11829 | 11833 |
11830 #endif // V8_OBJECTS_H_ | 11834 #endif // V8_OBJECTS_H_ |
OLD | NEW |