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 | 10 |
(...skipping 431 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
442 | 442 |
443 void NewJSArrayStorage( | 443 void NewJSArrayStorage( |
444 Handle<JSArray> array, | 444 Handle<JSArray> array, |
445 int length, | 445 int length, |
446 int capacity, | 446 int capacity, |
447 ArrayStorageAllocationMode mode = DONT_INITIALIZE_ARRAY_ELEMENTS); | 447 ArrayStorageAllocationMode mode = DONT_INITIALIZE_ARRAY_ELEMENTS); |
448 | 448 |
449 Handle<JSGeneratorObject> NewJSGeneratorObject(Handle<JSFunction> function); | 449 Handle<JSGeneratorObject> NewJSGeneratorObject(Handle<JSFunction> function); |
450 | 450 |
451 Handle<JSArrayBuffer> NewJSArrayBuffer( | 451 Handle<JSArrayBuffer> NewJSArrayBuffer( |
452 SharedFlag shared = SharedFlag::kNotShared); | 452 SharedFlag shared = SharedFlag::kNotShared, |
| 453 PretenureFlag pretenure = NOT_TENURED); |
453 | 454 |
454 Handle<JSTypedArray> NewJSTypedArray(ExternalArrayType type); | 455 Handle<JSTypedArray> NewJSTypedArray(ExternalArrayType type, |
| 456 PretenureFlag pretenure = NOT_TENURED); |
455 | 457 |
456 Handle<JSTypedArray> NewJSTypedArray(ElementsKind elements_kind); | 458 Handle<JSTypedArray> NewJSTypedArray(ElementsKind elements_kind, |
| 459 PretenureFlag pretenure = NOT_TENURED); |
457 | 460 |
458 // Creates a new JSTypedArray with the specified buffer. | 461 // Creates a new JSTypedArray with the specified buffer. |
459 Handle<JSTypedArray> NewJSTypedArray(ExternalArrayType type, | 462 Handle<JSTypedArray> NewJSTypedArray(ExternalArrayType type, |
460 Handle<JSArrayBuffer> buffer, | 463 Handle<JSArrayBuffer> buffer, |
461 size_t byte_offset, size_t length); | 464 size_t byte_offset, size_t length, |
| 465 PretenureFlag pretenure = NOT_TENURED); |
462 | 466 |
463 // Creates a new on-heap JSTypedArray. | 467 // Creates a new on-heap JSTypedArray. |
464 Handle<JSTypedArray> NewJSTypedArray(ElementsKind elements_kind, | 468 Handle<JSTypedArray> NewJSTypedArray(ElementsKind elements_kind, |
465 size_t number_of_elements); | 469 size_t number_of_elements, |
| 470 PretenureFlag pretenure = NOT_TENURED); |
466 | 471 |
467 Handle<JSDataView> NewJSDataView(); | 472 Handle<JSDataView> NewJSDataView(); |
468 Handle<JSDataView> NewJSDataView(Handle<JSArrayBuffer> buffer, | 473 Handle<JSDataView> NewJSDataView(Handle<JSArrayBuffer> buffer, |
469 size_t byte_offset, size_t byte_length); | 474 size_t byte_offset, size_t byte_length); |
470 | 475 |
471 Handle<JSMap> NewJSMap(); | 476 Handle<JSMap> NewJSMap(); |
472 Handle<JSSet> NewJSSet(); | 477 Handle<JSSet> NewJSSet(); |
473 | 478 |
474 // TODO(aandrey): Maybe these should take table, index and kind arguments. | 479 // TODO(aandrey): Maybe these should take table, index and kind arguments. |
475 Handle<JSMapIterator> NewJSMapIterator(); | 480 Handle<JSMapIterator> NewJSMapIterator(); |
(...skipping 246 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
722 // Reinitialize a JSProxy into an (empty) JS object of respective type and | 727 // Reinitialize a JSProxy into an (empty) JS object of respective type and |
723 // size, but keeping the original prototype. The receiver must have at least | 728 // size, but keeping the original prototype. The receiver must have at least |
724 // the size of the new object. The object is reinitialized and behaves as an | 729 // the size of the new object. The object is reinitialized and behaves as an |
725 // object that has been freshly allocated. | 730 // object that has been freshly allocated. |
726 void ReinitializeJSProxy(Handle<JSProxy> proxy, InstanceType type, int size); | 731 void ReinitializeJSProxy(Handle<JSProxy> proxy, InstanceType type, int size); |
727 }; | 732 }; |
728 | 733 |
729 } } // namespace v8::internal | 734 } } // namespace v8::internal |
730 | 735 |
731 #endif // V8_FACTORY_H_ | 736 #endif // V8_FACTORY_H_ |
OLD | NEW |