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 6599 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6610 | 6610 |
6611 enum BuiltinFunctionId { | 6611 enum BuiltinFunctionId { |
6612 kArrayCode, | 6612 kArrayCode, |
6613 #define DECLARE_FUNCTION_ID(ignored1, ignore2, name) \ | 6613 #define DECLARE_FUNCTION_ID(ignored1, ignore2, name) \ |
6614 k##name, | 6614 k##name, |
6615 FUNCTIONS_WITH_ID_LIST(DECLARE_FUNCTION_ID) | 6615 FUNCTIONS_WITH_ID_LIST(DECLARE_FUNCTION_ID) |
6616 ATOMIC_FUNCTIONS_WITH_ID_LIST(DECLARE_FUNCTION_ID) | 6616 ATOMIC_FUNCTIONS_WITH_ID_LIST(DECLARE_FUNCTION_ID) |
6617 #undef DECLARE_FUNCTION_ID | 6617 #undef DECLARE_FUNCTION_ID |
6618 // Fake id for a special case of Math.pow. Note, it continues the | 6618 // Fake id for a special case of Math.pow. Note, it continues the |
6619 // list of math functions. | 6619 // list of math functions. |
6620 kMathPowHalf, | 6620 kMathPowHalf |
6621 // These are manually assigned to special getters during bootstrapping. | |
6622 kDataViewBuffer, | |
6623 kDataViewByteLength, | |
6624 kDataViewByteOffset, | |
6625 kTypedArrayByteLength, | |
6626 kTypedArrayByteOffset, | |
6627 kTypedArrayLength, | |
6628 }; | 6621 }; |
6629 | 6622 |
6630 | 6623 |
6631 // Result of searching in an optimized code map of a SharedFunctionInfo. Note | 6624 // Result of searching in an optimized code map of a SharedFunctionInfo. Note |
6632 // that both {code} and {literals} can be NULL to pass search result status. | 6625 // that both {code} and {literals} can be NULL to pass search result status. |
6633 struct CodeAndLiterals { | 6626 struct CodeAndLiterals { |
6634 Code* code; // Cached optimized code. | 6627 Code* code; // Cached optimized code. |
6635 LiteralsArray* literals; // Cached literals array. | 6628 LiteralsArray* literals; // Cached literals array. |
6636 }; | 6629 }; |
6637 | 6630 |
(...skipping 1904 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
8542 inline bool AsArrayIndex(uint32_t* index); | 8535 inline bool AsArrayIndex(uint32_t* index); |
8543 | 8536 |
8544 // If the name is private, it can only name own properties. | 8537 // If the name is private, it can only name own properties. |
8545 inline bool IsPrivate(); | 8538 inline bool IsPrivate(); |
8546 | 8539 |
8547 inline bool IsUniqueName() const; | 8540 inline bool IsUniqueName() const; |
8548 | 8541 |
8549 // Return a string version of this name that is converted according to the | 8542 // Return a string version of this name that is converted according to the |
8550 // rules described in ES6 section 9.2.11. | 8543 // rules described in ES6 section 9.2.11. |
8551 MUST_USE_RESULT static MaybeHandle<String> ToFunctionName(Handle<Name> name); | 8544 MUST_USE_RESULT static MaybeHandle<String> ToFunctionName(Handle<Name> name); |
8552 MUST_USE_RESULT static MaybeHandle<String> ToFunctionName( | |
8553 Handle<Name> name, Handle<String> prefix); | |
8554 | 8545 |
8555 DECLARE_CAST(Name) | 8546 DECLARE_CAST(Name) |
8556 | 8547 |
8557 DECLARE_PRINTER(Name) | 8548 DECLARE_PRINTER(Name) |
8558 #if TRACE_MAPS | 8549 #if TRACE_MAPS |
8559 void NameShortPrint(); | 8550 void NameShortPrint(); |
8560 int NameShortPrint(Vector<char> str); | 8551 int NameShortPrint(Vector<char> str); |
8561 #endif | 8552 #endif |
8562 | 8553 |
8563 // Layout description. | 8554 // Layout description. |
(...skipping 2235 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
10799 } | 10790 } |
10800 return value; | 10791 return value; |
10801 } | 10792 } |
10802 }; | 10793 }; |
10803 | 10794 |
10804 | 10795 |
10805 } // NOLINT, false-positive due to second-order macros. | 10796 } // NOLINT, false-positive due to second-order macros. |
10806 } // NOLINT, false-positive due to second-order macros. | 10797 } // NOLINT, false-positive due to second-order macros. |
10807 | 10798 |
10808 #endif // V8_OBJECTS_H_ | 10799 #endif // V8_OBJECTS_H_ |
OLD | NEW |