| OLD | NEW |
| 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef INCLUDE_DART_API_H_ | 5 #ifndef INCLUDE_DART_API_H_ |
| 6 #define INCLUDE_DART_API_H_ | 6 #define INCLUDE_DART_API_H_ |
| 7 | 7 |
| 8 /** \mainpage Dart Embedding API Reference | 8 /** \mainpage Dart Embedding API Reference |
| 9 * | 9 * |
| 10 * Dart is a class-based programming language for creating structured | 10 * Dart is a class-based programming language for creating structured |
| (...skipping 1491 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1502 // TODO(turnidge): Rename to Dart_LibrarySetNativeResolver? | 1502 // TODO(turnidge): Rename to Dart_LibrarySetNativeResolver? |
| 1503 | 1503 |
| 1504 // --- Profiling support ---- | 1504 // --- Profiling support ---- |
| 1505 | 1505 |
| 1506 // External pprof support for gathering and dumping symbolic | 1506 // External pprof support for gathering and dumping symbolic |
| 1507 // information that can be used for better profile reports for | 1507 // information that can be used for better profile reports for |
| 1508 // dynamically generated code. | 1508 // dynamically generated code. |
| 1509 DART_EXPORT void Dart_InitPprofSupport(); | 1509 DART_EXPORT void Dart_InitPprofSupport(); |
| 1510 DART_EXPORT void Dart_GetPprofSymbolInfo(void** buffer, int* buffer_size); | 1510 DART_EXPORT void Dart_GetPprofSymbolInfo(void** buffer, int* buffer_size); |
| 1511 | 1511 |
| 1512 // --- Misc ---- |
| 1513 |
| 1514 /** |
| 1515 * The Dart VM uses zone allocation for temporary structures. Zones |
| 1516 * support very fast allocation of small chunks of memory. The chunks |
| 1517 * cannot be deallocated individually, but instead zones support |
| 1518 * deallocating all chunks in one fast operation. |
| 1519 * |
| 1520 * This function makes it possible for the embedder to allocate |
| 1521 * temporary data in the VMs zone allocator. |
| 1522 * |
| 1523 * Zone allocation is possible: |
| 1524 * 1. when inside a scope where local handles can be allocated |
| 1525 * 2. when processing a message from a native port. |
| 1526 * |
| 1527 * \param size Size of the memory to allocate. |
| 1528 * |
| 1529 * \return A pointer to the allocated memory. NULL if allocation |
| 1530 * failed. Failure might due to is no current VM zone. |
| 1531 */ |
| 1532 DART_EXPORT uint8_t* Dart_ZoneAllocate(intptr_t size); |
| 1533 |
| 1512 #endif // INCLUDE_DART_API_H_ | 1534 #endif // INCLUDE_DART_API_H_ |
| OLD | NEW |