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/isolate.h" | 8 #include "src/isolate.h" |
9 #include "src/messages.h" | 9 #include "src/messages.h" |
10 #include "src/type-feedback-vector.h" | 10 #include "src/type-feedback-vector.h" |
(...skipping 239 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
250 Handle<Context> NewNativeContext(); | 250 Handle<Context> NewNativeContext(); |
251 | 251 |
252 // Create a script context. | 252 // Create a script context. |
253 Handle<Context> NewScriptContext(Handle<JSFunction> function, | 253 Handle<Context> NewScriptContext(Handle<JSFunction> function, |
254 Handle<ScopeInfo> scope_info); | 254 Handle<ScopeInfo> scope_info); |
255 | 255 |
256 // Create an empty script context table. | 256 // Create an empty script context table. |
257 Handle<ScriptContextTable> NewScriptContextTable(); | 257 Handle<ScriptContextTable> NewScriptContextTable(); |
258 | 258 |
259 // Create a module context. | 259 // Create a module context. |
260 Handle<Context> NewModuleContext(Handle<JSModule> module, | 260 Handle<Context> NewModuleContext(Handle<ScopeInfo> scope_info); |
261 Handle<JSFunction> function, | |
262 Handle<ScopeInfo> scope_info); | |
263 | 261 |
264 // Create a function context. | 262 // Create a function context. |
265 Handle<Context> NewFunctionContext(int length, Handle<JSFunction> function); | 263 Handle<Context> NewFunctionContext(int length, Handle<JSFunction> function); |
266 | 264 |
267 // Create a catch context. | 265 // Create a catch context. |
268 Handle<Context> NewCatchContext(Handle<JSFunction> function, | 266 Handle<Context> NewCatchContext(Handle<JSFunction> function, |
269 Handle<Context> previous, | 267 Handle<Context> previous, |
270 Handle<ScopeInfo> scope_info, | 268 Handle<ScopeInfo> scope_info, |
271 Handle<String> name, | 269 Handle<String> name, |
272 Handle<Object> thrown_object); | 270 Handle<Object> thrown_object); |
(...skipping 197 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
470 } | 468 } |
471 | 469 |
472 void NewJSArrayStorage( | 470 void NewJSArrayStorage( |
473 Handle<JSArray> array, | 471 Handle<JSArray> array, |
474 int length, | 472 int length, |
475 int capacity, | 473 int capacity, |
476 ArrayStorageAllocationMode mode = DONT_INITIALIZE_ARRAY_ELEMENTS); | 474 ArrayStorageAllocationMode mode = DONT_INITIALIZE_ARRAY_ELEMENTS); |
477 | 475 |
478 Handle<JSGeneratorObject> NewJSGeneratorObject(Handle<JSFunction> function); | 476 Handle<JSGeneratorObject> NewJSGeneratorObject(Handle<JSFunction> function); |
479 | 477 |
480 Handle<JSModule> NewJSModule(); | |
481 | |
482 Handle<JSArrayBuffer> NewJSArrayBuffer( | 478 Handle<JSArrayBuffer> NewJSArrayBuffer( |
483 SharedFlag shared = SharedFlag::kNotShared, | 479 SharedFlag shared = SharedFlag::kNotShared, |
484 PretenureFlag pretenure = NOT_TENURED); | 480 PretenureFlag pretenure = NOT_TENURED); |
485 | 481 |
486 Handle<JSTypedArray> NewJSTypedArray(ExternalArrayType type, | 482 Handle<JSTypedArray> NewJSTypedArray(ExternalArrayType type, |
487 PretenureFlag pretenure = NOT_TENURED); | 483 PretenureFlag pretenure = NOT_TENURED); |
488 | 484 |
489 Handle<JSTypedArray> NewJSTypedArray(ElementsKind elements_kind, | 485 Handle<JSTypedArray> NewJSTypedArray(ElementsKind elements_kind, |
490 PretenureFlag pretenure = NOT_TENURED); | 486 PretenureFlag pretenure = NOT_TENURED); |
491 | 487 |
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
556 Handle<JSFunction> NewFunction(Handle<String> name, | 552 Handle<JSFunction> NewFunction(Handle<String> name, |
557 Handle<Code> code, | 553 Handle<Code> code, |
558 InstanceType type, | 554 InstanceType type, |
559 int instance_size); | 555 int instance_size); |
560 Handle<JSFunction> NewFunction(Handle<Map> map, Handle<String> name, | 556 Handle<JSFunction> NewFunction(Handle<Map> map, Handle<String> name, |
561 MaybeHandle<Code> maybe_code); | 557 MaybeHandle<Code> maybe_code); |
562 | 558 |
563 // Create a serialized scope info. | 559 // Create a serialized scope info. |
564 Handle<ScopeInfo> NewScopeInfo(int length); | 560 Handle<ScopeInfo> NewScopeInfo(int length); |
565 | 561 |
566 Handle<ModuleInfoEntry> NewModuleInfoEntry(); | |
567 Handle<ModuleInfo> NewModuleInfo(); | 562 Handle<ModuleInfo> NewModuleInfo(); |
568 | 563 |
569 // Create an External object for V8's external API. | 564 // Create an External object for V8's external API. |
570 Handle<JSObject> NewExternal(void* value); | 565 Handle<JSObject> NewExternal(void* value); |
571 | 566 |
572 // The reference to the Code object is stored in self_reference. | 567 // The reference to the Code object is stored in self_reference. |
573 // This allows generated code to reference its own Code object | 568 // This allows generated code to reference its own Code object |
574 // by containing this handle. | 569 // by containing this handle. |
575 Handle<Code> NewCode(const CodeDesc& desc, | 570 Handle<Code> NewCode(const CodeDesc& desc, |
576 Code::Flags flags, | 571 Code::Flags flags, |
(...skipping 185 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
762 FunctionMode function_mode); | 757 FunctionMode function_mode); |
763 | 758 |
764 void SetStrictFunctionInstanceDescriptor(Handle<Map> map, | 759 void SetStrictFunctionInstanceDescriptor(Handle<Map> map, |
765 FunctionMode function_mode); | 760 FunctionMode function_mode); |
766 }; | 761 }; |
767 | 762 |
768 } // namespace internal | 763 } // namespace internal |
769 } // namespace v8 | 764 } // namespace v8 |
770 | 765 |
771 #endif // V8_FACTORY_H_ | 766 #endif // V8_FACTORY_H_ |
OLD | NEW |