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_DEBUGGER_API_H_ | 5 #ifndef INCLUDE_DART_DEBUGGER_API_H_ |
6 #define INCLUDE_DART_DEBUGGER_API_H_ | 6 #define INCLUDE_DART_DEBUGGER_API_H_ |
7 | 7 |
8 #include "include/dart_api.h" | 8 #include "include/dart_api.h" |
9 | 9 |
10 typedef struct _Dart_Breakpoint* Dart_Breakpoint; | 10 typedef struct _Dart_Breakpoint* Dart_Breakpoint; |
11 | 11 |
12 typedef struct _Dart_StackTrace* Dart_StackTrace; | 12 typedef struct _Dart_StackTrace* Dart_StackTrace; |
13 | 13 |
14 typedef struct _Dart_ActivationFrame* Dart_ActivationFrame; | 14 typedef struct _Dart_ActivationFrame* Dart_ActivationFrame; |
15 | 15 |
16 /** | 16 /** |
17 * An id used to uniquely represent an Isolate in the debugger wire protocol | 17 * An id used to uniquely represent an Isolate in the debugger wire protocol |
18 * messages. | 18 * messages. |
19 */ | 19 */ |
20 typedef Dart_Port Dart_IsolateId; | 20 typedef Dart_Port Dart_IsolateId; |
21 | 21 |
22 /** | 22 /** |
23 * ILLEGAL_ISOLATE_ID is a number guaranteed never to be associated with a | 23 * ILLEGAL_ISOLATE_ID is a number guaranteed never to be associated with a |
24 * valid isolate. | 24 * valid isolate. |
25 */ | 25 */ |
26 #define ILLEGAL_ISOLATE_ID ILLEGAL_PORT | 26 #define ILLEGAL_ISOLATE_ID ILLEGAL_PORT |
27 | 27 |
| 28 |
| 29 /** |
| 30 * Null value for breakpoint id. Guaranteed never to be associated |
| 31 * with a valid breakpoint. |
| 32 */ |
| 33 #define ILLEGAL_BREAKPOINT_ID 0 |
| 34 |
| 35 |
28 // DEPRECATED -- use Dart_PausedEventHandler | 36 // DEPRECATED -- use Dart_PausedEventHandler |
29 typedef void Dart_BreakpointHandler(Dart_IsolateId isolate_id, | 37 typedef void Dart_BreakpointHandler(Dart_IsolateId isolate_id, |
30 Dart_Breakpoint breakpoint, | 38 Dart_Breakpoint breakpoint, |
31 Dart_StackTrace stack_trace); | 39 Dart_StackTrace stack_trace); |
32 | 40 |
33 typedef void Dart_ExceptionThrownHandler(Dart_IsolateId isolate_id, | 41 typedef void Dart_ExceptionThrownHandler(Dart_IsolateId isolate_id, |
34 Dart_Handle exception_object, | 42 Dart_Handle exception_object, |
35 Dart_StackTrace stack_trace); | 43 Dart_StackTrace stack_trace); |
36 | 44 |
37 typedef enum { | 45 typedef enum { |
(...skipping 10 matching lines...) Expand all Loading... |
48 Dart_Handle script_url; // Url (string) of the script. | 56 Dart_Handle script_url; // Url (string) of the script. |
49 int32_t library_id; // Library in which the script is loaded. | 57 int32_t library_id; // Library in which the script is loaded. |
50 int32_t token_pos; // Code address. | 58 int32_t token_pos; // Code address. |
51 } Dart_CodeLocation; | 59 } Dart_CodeLocation; |
52 | 60 |
53 | 61 |
54 typedef void Dart_IsolateEventHandler(Dart_IsolateId isolate_id, | 62 typedef void Dart_IsolateEventHandler(Dart_IsolateId isolate_id, |
55 Dart_IsolateEvent kind); | 63 Dart_IsolateEvent kind); |
56 | 64 |
57 typedef void Dart_PausedEventHandler(Dart_IsolateId isolate_id, | 65 typedef void Dart_PausedEventHandler(Dart_IsolateId isolate_id, |
| 66 intptr_t bp_id, |
58 const Dart_CodeLocation& location); | 67 const Dart_CodeLocation& location); |
59 | 68 |
60 typedef void Dart_BreakpointResolvedHandler(Dart_IsolateId isolate_id, | 69 typedef void Dart_BreakpointResolvedHandler(Dart_IsolateId isolate_id, |
61 intptr_t bp_id, | 70 intptr_t bp_id, |
62 const Dart_CodeLocation& location); | 71 const Dart_CodeLocation& location); |
63 | 72 |
64 | 73 |
65 /** | 74 /** |
66 * Caches a given \object and returns an object id. The object id is only | 75 * Caches a given \object and returns an object id. The object id is only |
67 * valid while the VM is paused. The cache is invalidated when the VM | 76 * valid while the VM is paused. The cache is invalidated when the VM |
(...skipping 637 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
705 * \param request A REST-like string, which uses '/' to separate | 714 * \param request A REST-like string, which uses '/' to separate |
706 * parameters. The first parameter is always the status type. | 715 * parameters. The first parameter is always the status type. |
707 * | 716 * |
708 * \return The requested status as a JSON formatted string, with the | 717 * \return The requested status as a JSON formatted string, with the |
709 * contents defined by the status plug-in. The caller is responsible | 718 * contents defined by the status plug-in. The caller is responsible |
710 * for freeing this string. | 719 * for freeing this string. |
711 */ | 720 */ |
712 DART_EXPORT char* Dart_GetVmStatus(const char* request); | 721 DART_EXPORT char* Dart_GetVmStatus(const char* request); |
713 | 722 |
714 #endif // INCLUDE_DART_DEBUGGER_API_H_ | 723 #endif // INCLUDE_DART_DEBUGGER_API_H_ |
OLD | NEW |