OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 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_FACTORY_H_ | 5 #ifndef V8_FACTORY_H_ |
6 #define V8_FACTORY_H_ | 6 #define V8_FACTORY_H_ |
7 | 7 |
8 #include "src/feedback-vector.h" | 8 #include "src/feedback-vector.h" |
9 #include "src/globals.h" | 9 #include "src/globals.h" |
10 #include "src/isolate.h" | 10 #include "src/isolate.h" |
11 #include "src/messages.h" | 11 #include "src/messages.h" |
12 #include "src/objects/descriptor-array.h" | 12 #include "src/objects/descriptor-array.h" |
13 #include "src/objects/dictionary.h" | 13 #include "src/objects/dictionary.h" |
14 #include "src/objects/scope-info.h" | 14 #include "src/objects/scope-info.h" |
15 #include "src/string-hasher.h" | 15 #include "src/string-hasher.h" |
16 | 16 |
17 namespace v8 { | 17 namespace v8 { |
18 namespace internal { | 18 namespace internal { |
19 | 19 |
20 class BoilerplateDescription; | 20 class BoilerplateDescription; |
21 class ConstantElementsPair; | 21 class ConstantElementsPair; |
| 22 struct SourceRange; |
22 | 23 |
23 enum FunctionMode { | 24 enum FunctionMode { |
24 // With prototype. | 25 // With prototype. |
25 FUNCTION_WITH_WRITEABLE_PROTOTYPE, | 26 FUNCTION_WITH_WRITEABLE_PROTOTYPE, |
26 FUNCTION_WITH_READONLY_PROTOTYPE, | 27 FUNCTION_WITH_READONLY_PROTOTYPE, |
27 // Without prototype. | 28 // Without prototype. |
28 FUNCTION_WITHOUT_PROTOTYPE | 29 FUNCTION_WITHOUT_PROTOTYPE |
29 }; | 30 }; |
30 | 31 |
31 // Interface for handle based allocation. | 32 // Interface for handle based allocation. |
(...skipping 733 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
765 // Allocates a new JSMessageObject object. | 766 // Allocates a new JSMessageObject object. |
766 Handle<JSMessageObject> NewJSMessageObject(MessageTemplate::Template message, | 767 Handle<JSMessageObject> NewJSMessageObject(MessageTemplate::Template message, |
767 Handle<Object> argument, | 768 Handle<Object> argument, |
768 int start_position, | 769 int start_position, |
769 int end_position, | 770 int end_position, |
770 Handle<Object> script, | 771 Handle<Object> script, |
771 Handle<Object> stack_frames); | 772 Handle<Object> stack_frames); |
772 | 773 |
773 Handle<DebugInfo> NewDebugInfo(Handle<SharedFunctionInfo> shared); | 774 Handle<DebugInfo> NewDebugInfo(Handle<SharedFunctionInfo> shared); |
774 | 775 |
| 776 Handle<CoverageInfo> NewCoverageInfo(const ZoneVector<SourceRange>& slots); |
| 777 |
775 // Return a map for given number of properties using the map cache in the | 778 // Return a map for given number of properties using the map cache in the |
776 // native context. | 779 // native context. |
777 Handle<Map> ObjectLiteralMapFromCache(Handle<Context> native_context, | 780 Handle<Map> ObjectLiteralMapFromCache(Handle<Context> native_context, |
778 int number_of_properties); | 781 int number_of_properties); |
779 | 782 |
780 Handle<RegExpMatchInfo> NewRegExpMatchInfo(); | 783 Handle<RegExpMatchInfo> NewRegExpMatchInfo(); |
781 | 784 |
782 // Creates a new FixedArray that holds the data associated with the | 785 // Creates a new FixedArray that holds the data associated with the |
783 // atom regexp and stores it in the regexp. | 786 // atom regexp and stores it in the regexp. |
784 void SetRegExpAtomData(Handle<JSRegExp> regexp, | 787 void SetRegExpAtomData(Handle<JSRegExp> regexp, |
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
843 void SetStrictFunctionInstanceDescriptor(Handle<Map> map, | 846 void SetStrictFunctionInstanceDescriptor(Handle<Map> map, |
844 FunctionMode function_mode); | 847 FunctionMode function_mode); |
845 | 848 |
846 void SetClassFunctionInstanceDescriptor(Handle<Map> map); | 849 void SetClassFunctionInstanceDescriptor(Handle<Map> map); |
847 }; | 850 }; |
848 | 851 |
849 } // namespace internal | 852 } // namespace internal |
850 } // namespace v8 | 853 } // namespace v8 |
851 | 854 |
852 #endif // V8_FACTORY_H_ | 855 #endif // V8_FACTORY_H_ |
OLD | NEW |