Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(143)

Side by Side Diff: runtime/include/dart_debugger_api.h

Issue 51793002: Add an API function to get a debugger stack trace from an error handle. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | runtime/vm/dart_api_impl.cc » ('j') | runtime/vm/dart_api_impl_test.cc » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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;
(...skipping 334 matching lines...) Expand 10 before | Expand all | Expand 10 after
345 345
346 346
347 /** 347 /**
348 * Returns on which exceptions the debugger pauses. 348 * Returns on which exceptions the debugger pauses.
349 * 349 *
350 * Requires there to be a current isolate. 350 * Requires there to be a current isolate.
351 */ 351 */
352 DART_EXPORT Dart_ExceptionPauseInfo Dart_GetExceptionPauseInfo(); 352 DART_EXPORT Dart_ExceptionPauseInfo Dart_GetExceptionPauseInfo();
353 353
354 /** 354 /**
355 * Returns in \trace the the current stack trace, or NULL if the 355 * Returns in \trace the current stack trace, or NULL if the
356 * VM is not paused. 356 * VM is not paused.
357 * 357 *
358 * Requires there to be a current isolate. 358 * Requires there to be a current isolate.
359 * 359 *
360 * \return A handle to the True object if no error occurs. 360 * \return A handle to the True object if no error occurs.
361 */ 361 */
362 DART_EXPORT Dart_Handle Dart_GetStackTrace(Dart_StackTrace* trace); 362 DART_EXPORT Dart_Handle Dart_GetStackTrace(Dart_StackTrace* trace);
363 363
364 364
365 /** 365 /**
366 * Returns in \trace the stack trace associated with the error given in \handle.
367 *
368 * Requires there to be a current isolate.
369 *
370 * \return A handle to the True object if no error occurs.
siva 2013/11/12 16:00:43 why a handle to the True object and not Success li
rmacnak 2013/11/12 22:32:40 It does return Success. Copied from doc for Dart_G
371 */
372 DART_EXPORT Dart_Handle Dart_GetStackTraceFromError(Dart_Handle handle,
373 Dart_StackTrace* trace);
374
375
376 /**
366 * Returns in \length the number of activation frames in the given 377 * Returns in \length the number of activation frames in the given
367 * stack trace. 378 * stack trace.
368 * 379 *
369 * Requires there to be a current isolate. 380 * Requires there to be a current isolate.
370 * 381 *
371 * \return A handle to the True object if no error occurs. 382 * \return A handle to the True object if no error occurs.
372 */ 383 */
373 DART_EXPORT Dart_Handle Dart_StackTraceLength( 384 DART_EXPORT Dart_Handle Dart_StackTraceLength(
374 Dart_StackTrace trace, 385 Dart_StackTrace trace,
375 intptr_t* length); 386 intptr_t* length);
(...skipping 29 matching lines...) Expand all
405 * 416 *
406 * Requires there to be a current isolate. 417 * Requires there to be a current isolate.
407 * 418 *
408 * \return A handle to the True object if no error occurs. 419 * \return A handle to the True object if no error occurs.
409 */ 420 */
410 DART_EXPORT Dart_Handle Dart_ActivationFrameInfo( 421 DART_EXPORT Dart_Handle Dart_ActivationFrameInfo(
411 Dart_ActivationFrame activation_frame, 422 Dart_ActivationFrame activation_frame,
412 Dart_Handle* function_name, 423 Dart_Handle* function_name,
413 Dart_Handle* script_url, 424 Dart_Handle* script_url,
414 intptr_t* line_number, 425 intptr_t* line_number,
415 intptr_t* library_id); 426 intptr_t* library_id);
siva 2013/11/12 16:00:43 I don't find any use cases of this API function an
rmacnak 2013/11/12 22:32:40 Indeed, even the debugger tests ignore the positio
416 427
417 428
418 /** 429 /**
430 * Returns information about the given activation frame.
431 * \function_name receives a string handle with the qualified
432 * function name.
433 * \script_url receives a string handle with the url of the
434 * source script that contains the frame's function.
435 * \line_number receives the line number in the script.
436 * \col_number receives the line number in the script, or -1 if column
437 * information is not available
438 *
439 * Any or all of the out parameters above may be NULL.
440 *
441 * Requires there to be a current isolate.
442 *
443 * \return A handle to the True object if no error occurs.
siva 2013/11/12 16:00:43 Ditto comment regarding returning Success.
444 */
445 DART_EXPORT Dart_Handle Dart_ActivationFrameInfoWithColumn(
446 Dart_ActivationFrame activation_frame,
447 Dart_Handle* function_name,
448 Dart_Handle* script_url,
449 intptr_t* line_number,
450 intptr_t* column_number);
siva 2013/11/12 16:00:43 If we decide to get rid of the other version of Ac
rmacnak 2013/11/12 22:32:40 Done.
451
452
453 /**
419 * Returns code location of the given activation frame. 454 * Returns code location of the given activation frame.
420 * 455 *
421 * \function_name receives a string handle with the qualified 456 * \function_name receives a string handle with the qualified
422 * function name. 457 * function name.
423 * \function receives a handle to the function. 458 * \function receives a handle to the function.
424 * \location.script_url receives a string handle with the url of 459 * \location.script_url receives a string handle with the url of
425 * the source script that contains the frame's function. 460 * the source script that contains the frame's function.
426 * Receives a null handle if there is no textual location 461 * Receives a null handle if there is no textual location
427 * that corresponds to the frame, e.g. for implicitly 462 * that corresponds to the frame, e.g. for implicitly
428 * generated constructors. 463 * generated constructors.
(...skipping 246 matching lines...) Expand 10 before | Expand all | Expand 10 after
675 * \param request A REST-like string, which uses '/' to separate 710 * \param request A REST-like string, which uses '/' to separate
676 * parameters. The first parameter is always the status type. 711 * parameters. The first parameter is always the status type.
677 * 712 *
678 * \return The requested status as a JSON formatted string, with the 713 * \return The requested status as a JSON formatted string, with the
679 * contents defined by the status plug-in. The caller is responsible 714 * contents defined by the status plug-in. The caller is responsible
680 * for freeing this string. 715 * for freeing this string.
681 */ 716 */
682 DART_EXPORT char* Dart_GetVmStatus(const char* request); 717 DART_EXPORT char* Dart_GetVmStatus(const char* request);
683 718
684 #endif // INCLUDE_DART_DEBUGGER_API_H_ 719 #endif // INCLUDE_DART_DEBUGGER_API_H_
OLDNEW
« no previous file with comments | « no previous file | runtime/vm/dart_api_impl.cc » ('j') | runtime/vm/dart_api_impl_test.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698