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 VM_DEBUGGER_H_ | 5 #ifndef VM_DEBUGGER_H_ |
6 #define VM_DEBUGGER_H_ | 6 #define VM_DEBUGGER_H_ |
7 | 7 |
8 #include "include/dart_debugger_api.h" | 8 #include "include/dart_debugger_api.h" |
9 | 9 |
10 #include "vm/object.h" | 10 #include "vm/object.h" |
(...skipping 304 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
315 | 315 |
316 void VisitObjectPointers(ObjectPointerVisitor* visitor); | 316 void VisitObjectPointers(ObjectPointerVisitor* visitor); |
317 | 317 |
318 // Called from Runtime when a breakpoint in Dart code is reached. | 318 // Called from Runtime when a breakpoint in Dart code is reached. |
319 void BreakpointCallback(); | 319 void BreakpointCallback(); |
320 | 320 |
321 // Returns true if there is at least one breakpoint set in func. | 321 // Returns true if there is at least one breakpoint set in func. |
322 // Checks for both user-defined and internal temporary breakpoints. | 322 // Checks for both user-defined and internal temporary breakpoints. |
323 bool HasBreakpoint(const Function& func); | 323 bool HasBreakpoint(const Function& func); |
324 | 324 |
| 325 // Returns true if the call at address pc is patched to point to |
| 326 // a debugger stub. |
| 327 bool HasActiveBreakpoint(uword pc); |
| 328 |
325 // Returns a stack trace with frames corresponding to invisible functions | 329 // Returns a stack trace with frames corresponding to invisible functions |
326 // omitted. CurrentStackTrace always returns a new trace on the current stack. | 330 // omitted. CurrentStackTrace always returns a new trace on the current stack. |
327 // The trace returned by StackTrace may have been cached; it is suitable for | 331 // The trace returned by StackTrace may have been cached; it is suitable for |
328 // use when stepping, but otherwise may be out of sync with the current stack. | 332 // use when stepping, but otherwise may be out of sync with the current stack. |
329 DebuggerStackTrace* StackTrace(); | 333 DebuggerStackTrace* StackTrace(); |
330 DebuggerStackTrace* CurrentStackTrace(); | 334 DebuggerStackTrace* CurrentStackTrace(); |
331 | 335 |
332 // Returns a debugger stack trace corresponding to a dart.core.Stacktrace. | 336 // Returns a debugger stack trace corresponding to a dart.core.Stacktrace. |
333 // Frames corresponding to invisible functions are omitted. It is not valid | 337 // Frames corresponding to invisible functions are omitted. It is not valid |
334 // to query local variables in the returned stack. | 338 // to query local variables in the returned stack. |
(...skipping 137 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
472 | 476 |
473 friend class Isolate; | 477 friend class Isolate; |
474 friend class SourceBreakpoint; | 478 friend class SourceBreakpoint; |
475 DISALLOW_COPY_AND_ASSIGN(Debugger); | 479 DISALLOW_COPY_AND_ASSIGN(Debugger); |
476 }; | 480 }; |
477 | 481 |
478 | 482 |
479 } // namespace dart | 483 } // namespace dart |
480 | 484 |
481 #endif // VM_DEBUGGER_H_ | 485 #endif // VM_DEBUGGER_H_ |
OLD | NEW |