Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2011, 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 427 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 438 * | 438 * |
| 439 * This function waits for incoming messages for the current | 439 * This function waits for incoming messages for the current |
| 440 * isolate. As new messages arrive, they are handled using | 440 * isolate. As new messages arrive, they are handled using |
| 441 * Dart_HandleMessage. The routine exits when all ports to the | 441 * Dart_HandleMessage. The routine exits when all ports to the |
| 442 * current isolate are closed. | 442 * current isolate are closed. |
| 443 */ | 443 */ |
| 444 DART_EXPORT Dart_Handle Dart_RunLoop(); | 444 DART_EXPORT Dart_Handle Dart_RunLoop(); |
| 445 // TODO(turnidge): Should this be removed from the public api? | 445 // TODO(turnidge): Should this be removed from the public api? |
| 446 | 446 |
| 447 /** | 447 /** |
| 448 * Gets the main Dart_Port for the current isolate. | |
|
Anton Muhin
2011/11/23 19:28:14
nit: 'main' sounds too generic to me at least.
turnidge
2011/11/23 21:45:37
What do you think it should be called? Open to su
| |
| 449 */ | |
| 450 DART_EXPORT Dart_Port Dart_GetMainPort(); | |
| 451 | |
| 452 /** | |
| 453 * Does the current isolate have active ports? | |
| 454 */ | |
| 455 DART_EXPORT bool Dart_IsolateHasActivePorts(); | |
| 456 | |
| 457 /** | |
| 448 * Posts a message for some isolate. The message is built from a raw | 458 * Posts a message for some isolate. The message is built from a raw |
| 449 * array. | 459 * array. |
| 450 * | 460 * |
| 451 * \param port The destination port. | 461 * \param port The destination port. |
| 452 * \param length The length of the data array. | 462 * \param length The length of the data array. |
| 453 * \param data A data array to be sent in the message. | 463 * \param data A data array to be sent in the message. |
| 454 * | 464 * |
| 455 * \return True if the message was posted. | 465 * \return True if the message was posted. |
| 456 */ | 466 */ |
| 457 DART_EXPORT bool Dart_PostIntArray(Dart_Port port, | 467 DART_EXPORT bool Dart_PostIntArray(Dart_Port port, |
| 458 intptr_t length, | 468 intptr_t length, |
| 459 intptr_t* data); | 469 intptr_t* data); |
| 460 // TODO(turnidge): Should this be intptr_t or some fixed length type? | 470 // TODO(turnidge): Should this be intptr_t or some fixed length type? |
| 461 // TODO(turnidge): Reverse length/data for consistency. | 471 // TODO(turnidge): Reverse length/data for consistency. |
| 462 | 472 |
| 463 /** | 473 /** |
| 464 * Posts a message for some isolate. The message is a serialized | 474 * Posts a message for some isolate. The message is a serialized |
| 465 * object. | 475 * object. |
| 466 * | 476 * |
| 467 * Requires there to be a current isolate. | 477 * Requires there to be a current isolate. |
| 468 * | 478 * |
| 469 * \param port The destination port. | 479 * \param port The destination port. |
| 470 * \param object An object from the current isolate. | 480 * \param object An object from the current isolate. |
| 471 * | 481 * |
| 472 * \return True if the message was posted. | 482 * \return True if the message was posted. |
| 473 */ | 483 */ |
| 474 DART_EXPORT bool Dart_Post(Dart_Port port, Dart_Handle object); | 484 DART_EXPORT bool Dart_Post(Dart_Port port, Dart_Handle object); |
| 475 | 485 |
| 486 /** | |
| 487 * Returns a new SendPort with the provided id. | |
| 488 */ | |
| 489 DART_EXPORT Dart_Handle Dart_NewSendPort(Dart_Port port); | |
| 490 | |
| 491 /** | |
| 492 * Returns a new ReceivePort with the provided id. | |
| 493 */ | |
| 494 DART_EXPORT Dart_Handle Dart_NewReceivePort(Dart_Port port); | |
| 495 | |
| 476 // --- Scopes ---- | 496 // --- Scopes ---- |
| 477 | 497 |
| 478 /** | 498 /** |
| 479 * Enters a new scope. | 499 * Enters a new scope. |
| 480 * | 500 * |
| 481 * All new local handles will be created in this scope. Additionally, | 501 * All new local handles will be created in this scope. Additionally, |
| 482 * some functions may return "scope allocated" memory which is only | 502 * some functions may return "scope allocated" memory which is only |
| 483 * valid within this scope. | 503 * valid within this scope. |
| 484 * | 504 * |
| 485 * Requires there to be a current isolate. | 505 * Requires there to be a current isolate. |
| (...skipping 718 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1204 | 1224 |
| 1205 // --- Profiling support ---- | 1225 // --- Profiling support ---- |
| 1206 | 1226 |
| 1207 // External pprof support for gathering and dumping symbolic | 1227 // External pprof support for gathering and dumping symbolic |
| 1208 // information that can be used for better profile reports for | 1228 // information that can be used for better profile reports for |
| 1209 // dynamically generated code. | 1229 // dynamically generated code. |
| 1210 DART_EXPORT void Dart_InitPprofSupport(); | 1230 DART_EXPORT void Dart_InitPprofSupport(); |
| 1211 DART_EXPORT void Dart_GetPprofSymbolInfo(void** buffer, int* buffer_size); | 1231 DART_EXPORT void Dart_GetPprofSymbolInfo(void** buffer, int* buffer_size); |
| 1212 | 1232 |
| 1213 #endif // INCLUDE_DART_API_H_ | 1233 #endif // INCLUDE_DART_API_H_ |
| OLD | NEW |