| 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; |
| 13 |
| 14 typedef struct _Dart_ActivationFrame* Dart_ActivationFrame; |
| 15 |
| 16 typedef void Dart_BreakpointHandler( |
| 17 Dart_Breakpoint breakpoint, |
| 18 Dart_StackTrace stack_trace); |
| 12 | 19 |
| 13 /** | 20 /** |
| 14 * Sets a breakpoint at the entry of the given function. If class_name | 21 * Sets a breakpoint at the entry of the given function. If class_name |
| 15 * is the empty string, looks for a library function with the given | 22 * is the empty string, looks for a library function with the given |
| 16 * name. | 23 * name. |
| 17 * | 24 * |
| 18 * Requires there to be a current isolate. | 25 * Requires there to be a current isolate. |
| 19 * | 26 * |
| 20 * \breakpoint If non-null, will point to the breakpoint object | 27 * \breakpoint If non-null, will point to the breakpoint object |
| 21 * if a breakpoint was successfully created. | 28 * if a breakpoint was successfully created. |
| 22 * | 29 * |
| 23 * \return A handle to the True object if no error occurs. | 30 * \return A handle to the True object if no error occurs. |
| 24 */ | 31 */ |
| 25 DART_EXPORT Dart_Handle Dart_SetBreakpointAtEntry( | 32 DART_EXPORT Dart_Handle Dart_SetBreakpointAtEntry( |
| 26 Dart_Handle library, | 33 Dart_Handle library, |
| 27 Dart_Handle class_name, | 34 Dart_Handle class_name, |
| 28 Dart_Handle function_name, | 35 Dart_Handle function_name, |
| 29 Dart_Breakpoint* breakpoint); | 36 Dart_Breakpoint* breakpoint); |
| 30 | 37 |
| 38 /** |
| 39 * Installs a handler callback function that gets called by the VM |
| 40 * when a breakpoint has been reached. |
| 41 * |
| 42 * Requires there to be a current isolate. |
| 43 */ |
| 44 DART_EXPORT void Dart_SetBreakpointHandler( |
| 45 Dart_BreakpointHandler bp_handler); |
| 46 |
| 47 |
| 48 /** |
| 49 * Returns in \length the number of activation frames in the given |
| 50 * stack trace. |
| 51 * |
| 52 * Requires there to be a current isolate. |
| 53 * |
| 54 * \return A handle to the True object if no error occurs. |
| 55 */ |
| 56 DART_EXPORT Dart_Handle Dart_StackTraceLength( |
| 57 Dart_StackTrace trace, |
| 58 intptr_t* length); |
| 59 |
| 60 |
| 61 /** |
| 62 * Returns in \frame the activation frame with index \frame_index. |
| 63 * The activation frame at the top of stack has index 0. |
| 64 * |
| 65 * Requires there to be a current isolate. |
| 66 * |
| 67 * \return A handle to the True object if no error occurs. |
| 68 */ |
| 69 DART_EXPORT Dart_Handle Dart_GetActivationFrame( |
| 70 Dart_StackTrace trace, |
| 71 int frame_index, |
| 72 Dart_ActivationFrame* frame); |
| 73 |
| 74 |
| 75 /** |
| 76 * Returns information about the given activation frame. |
| 77 * \function_name receives a string handle with the qualified |
| 78 * function name. |
| 79 * \script_url receives a string handle with the url of the |
| 80 * source script that contains the frame's function. |
| 81 * \line_number receives the line number in the script. |
| 82 * |
| 83 * Any or all of the out parameters above may be NULL. |
| 84 * |
| 85 * Requires there to be a current isolate. |
| 86 * |
| 87 * \return A handle to the True object if no error occurs. |
| 88 */ |
| 89 DART_EXPORT Dart_Handle Dart_ActivationFrameInfo( |
| 90 Dart_ActivationFrame activation_frame, |
| 91 Dart_Handle* function_name, |
| 92 Dart_Handle* script_url, |
| 93 intptr_t* line_number); |
| 94 |
| 95 |
| 31 #endif // INCLUDE_DART_DEBUGGER_API_H_ | 96 #endif // INCLUDE_DART_DEBUGGER_API_H_ |
| OLD | NEW |