| 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 |