| 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 1897 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1908 // 'level' must be SEALED or FROZEN. | 1908 // 'level' must be SEALED or FROZEN. |
| 1909 MUST_USE_RESULT static Maybe<bool> TestIntegrityLevel( | 1909 MUST_USE_RESULT static Maybe<bool> TestIntegrityLevel( |
| 1910 Handle<JSReceiver> object, IntegrityLevel lvl); | 1910 Handle<JSReceiver> object, IntegrityLevel lvl); |
| 1911 | 1911 |
| 1912 // ES6 [[PreventExtensions]] (when passed DONT_THROW) | 1912 // ES6 [[PreventExtensions]] (when passed DONT_THROW) |
| 1913 MUST_USE_RESULT static Maybe<bool> PreventExtensions( | 1913 MUST_USE_RESULT static Maybe<bool> PreventExtensions( |
| 1914 Handle<JSReceiver> object, ShouldThrow should_throw); | 1914 Handle<JSReceiver> object, ShouldThrow should_throw); |
| 1915 | 1915 |
| 1916 MUST_USE_RESULT static Maybe<bool> IsExtensible(Handle<JSReceiver> object); | 1916 MUST_USE_RESULT static Maybe<bool> IsExtensible(Handle<JSReceiver> object); |
| 1917 | 1917 |
| 1918 // Tests for the fast common case for property enumeration. | |
| 1919 bool IsSimpleEnum(); | |
| 1920 | |
| 1921 // Returns the class name ([[Class]] property in the specification). | 1918 // Returns the class name ([[Class]] property in the specification). |
| 1922 String* class_name(); | 1919 String* class_name(); |
| 1923 | 1920 |
| 1924 // Returns the builtin string tag used in Object.prototype.toString. | 1921 // Returns the builtin string tag used in Object.prototype.toString. |
| 1925 MUST_USE_RESULT static MaybeHandle<String> BuiltinStringTag( | 1922 MUST_USE_RESULT static MaybeHandle<String> BuiltinStringTag( |
| 1926 Handle<JSReceiver> object); | 1923 Handle<JSReceiver> object); |
| 1927 | 1924 |
| 1928 // Returns the constructor name (the name (possibly, inferred name) of the | 1925 // Returns the constructor name (the name (possibly, inferred name) of the |
| 1929 // function that was used to instantiate the object). | 1926 // function that was used to instantiate the object). |
| 1930 static Handle<String> GetConstructorName(Handle<JSReceiver> receiver); | 1927 static Handle<String> GetConstructorName(Handle<JSReceiver> receiver); |
| (...skipping 5967 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7898 kSticky = 1 << 3, | 7895 kSticky = 1 << 3, |
| 7899 kUnicode = 1 << 4, | 7896 kUnicode = 1 << 4, |
| 7900 }; | 7897 }; |
| 7901 typedef base::Flags<Flag> Flags; | 7898 typedef base::Flags<Flag> Flags; |
| 7902 | 7899 |
| 7903 DECL_ACCESSORS(data, Object) | 7900 DECL_ACCESSORS(data, Object) |
| 7904 DECL_ACCESSORS(flags, Object) | 7901 DECL_ACCESSORS(flags, Object) |
| 7905 DECL_ACCESSORS(source, Object) | 7902 DECL_ACCESSORS(source, Object) |
| 7906 | 7903 |
| 7907 static MaybeHandle<JSRegExp> New(Handle<String> source, Flags flags); | 7904 static MaybeHandle<JSRegExp> New(Handle<String> source, Flags flags); |
| 7908 static MaybeHandle<JSRegExp> New(Handle<String> source, Handle<String> flags); | |
| 7909 static Handle<JSRegExp> Copy(Handle<JSRegExp> regexp); | 7905 static Handle<JSRegExp> Copy(Handle<JSRegExp> regexp); |
| 7910 | 7906 |
| 7911 static MaybeHandle<JSRegExp> Initialize(Handle<JSRegExp> regexp, | 7907 static MaybeHandle<JSRegExp> Initialize(Handle<JSRegExp> regexp, |
| 7912 Handle<String> source, Flags flags); | 7908 Handle<String> source, Flags flags); |
| 7913 static MaybeHandle<JSRegExp> Initialize(Handle<JSRegExp> regexp, | 7909 static MaybeHandle<JSRegExp> Initialize(Handle<JSRegExp> regexp, |
| 7914 Handle<String> source, | 7910 Handle<String> source, |
| 7915 Handle<String> flags_string); | 7911 Handle<String> flags_string); |
| 7916 | 7912 |
| 7917 inline Type TypeTag(); | 7913 inline Type TypeTag(); |
| 7918 inline int CaptureCount(); | 7914 inline int CaptureCount(); |
| (...skipping 923 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 8842 // do any heap allocations. This is useful when printing stack traces. | 8838 // do any heap allocations. This is useful when printing stack traces. |
| 8843 base::SmartArrayPointer<char> ToCString(AllowNullsFlag allow_nulls, | 8839 base::SmartArrayPointer<char> ToCString(AllowNullsFlag allow_nulls, |
| 8844 RobustnessFlag robustness_flag, | 8840 RobustnessFlag robustness_flag, |
| 8845 int offset, int length, | 8841 int offset, int length, |
| 8846 int* length_output = 0); | 8842 int* length_output = 0); |
| 8847 base::SmartArrayPointer<char> ToCString( | 8843 base::SmartArrayPointer<char> ToCString( |
| 8848 AllowNullsFlag allow_nulls = DISALLOW_NULLS, | 8844 AllowNullsFlag allow_nulls = DISALLOW_NULLS, |
| 8849 RobustnessFlag robustness_flag = FAST_STRING_TRAVERSAL, | 8845 RobustnessFlag robustness_flag = FAST_STRING_TRAVERSAL, |
| 8850 int* length_output = 0); | 8846 int* length_output = 0); |
| 8851 | 8847 |
| 8852 // Return a 16 bit Unicode representation of the string. | |
| 8853 // The string should be nearly flat, otherwise the performance of | |
| 8854 // of this method may be very bad. Setting robustness_flag to | |
| 8855 // ROBUST_STRING_TRAVERSAL invokes behaviour that is robust This means it | |
| 8856 // handles unexpected data without causing assert failures and it does not | |
| 8857 // do any heap allocations. This is useful when printing stack traces. | |
| 8858 base::SmartArrayPointer<uc16> ToWideCString( | |
| 8859 RobustnessFlag robustness_flag = FAST_STRING_TRAVERSAL); | |
| 8860 | |
| 8861 bool ComputeArrayIndex(uint32_t* index); | 8848 bool ComputeArrayIndex(uint32_t* index); |
| 8862 | 8849 |
| 8863 // Externalization. | 8850 // Externalization. |
| 8864 bool MakeExternal(v8::String::ExternalStringResource* resource); | 8851 bool MakeExternal(v8::String::ExternalStringResource* resource); |
| 8865 bool MakeExternal(v8::String::ExternalOneByteStringResource* resource); | 8852 bool MakeExternal(v8::String::ExternalOneByteStringResource* resource); |
| 8866 | 8853 |
| 8867 // Conversion. | 8854 // Conversion. |
| 8868 inline bool AsArrayIndex(uint32_t* index); | 8855 inline bool AsArrayIndex(uint32_t* index); |
| 8869 | 8856 |
| 8870 DECLARE_CAST(String) | 8857 DECLARE_CAST(String) |
| (...skipping 1911 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 10782 } | 10769 } |
| 10783 return value; | 10770 return value; |
| 10784 } | 10771 } |
| 10785 }; | 10772 }; |
| 10786 | 10773 |
| 10787 | 10774 |
| 10788 } // NOLINT, false-positive due to second-order macros. | 10775 } // NOLINT, false-positive due to second-order macros. |
| 10789 } // NOLINT, false-positive due to second-order macros. | 10776 } // NOLINT, false-positive due to second-order macros. |
| 10790 | 10777 |
| 10791 #endif // V8_OBJECTS_H_ | 10778 #endif // V8_OBJECTS_H_ |
| OLD | NEW |