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

Side by Side Diff: runtime/vm/debugger.h

Issue 10540121: Add API to configure debugger pause on exception (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 8 years, 6 months 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 | « runtime/include/dart_debugger_api.h ('k') | runtime/vm/debugger.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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"
9
8 #include "vm/object.h" 10 #include "vm/object.h"
9 11
10 namespace dart { 12 namespace dart {
11 13
12 class SourceBreakpoint; 14 class SourceBreakpoint;
13 class CodeBreakpoint; 15 class CodeBreakpoint;
14 class Isolate; 16 class Isolate;
15 class ObjectPointerVisitor; 17 class ObjectPointerVisitor;
16 class ActiveVariables; 18 class ActiveVariables;
17 class RemoteObjectCache; 19 class RemoteObjectCache;
(...skipping 207 matching lines...) Expand 10 before | Expand all | Expand 10 after
225 SourceBreakpoint* SetBreakpointAtLine(const String& script_url, 227 SourceBreakpoint* SetBreakpointAtLine(const String& script_url,
226 intptr_t line_number); 228 intptr_t line_number);
227 229
228 void RemoveBreakpoint(intptr_t bp_id); 230 void RemoveBreakpoint(intptr_t bp_id);
229 SourceBreakpoint* GetBreakpointById(intptr_t id); 231 SourceBreakpoint* GetBreakpointById(intptr_t id);
230 232
231 void SetStepOver() { resume_action_ = kStepOver; } 233 void SetStepOver() { resume_action_ = kStepOver; }
232 void SetStepInto() { resume_action_ = kStepInto; } 234 void SetStepInto() { resume_action_ = kStepInto; }
233 void SetStepOut() { resume_action_ = kStepOut; } 235 void SetStepOut() { resume_action_ = kStepOut; }
234 236
237 void SetExceptionPauseInfo(Dart_ExceptionPauseInfo pause_info);
238
235 void VisitObjectPointers(ObjectPointerVisitor* visitor); 239 void VisitObjectPointers(ObjectPointerVisitor* visitor);
236 240
237 // Called from Runtime when a breakpoint in Dart code is reached. 241 // Called from Runtime when a breakpoint in Dart code is reached.
238 void BreakpointCallback(); 242 void BreakpointCallback();
239 243
240 DebuggerStackTrace* StackTrace() const { return stack_trace_; } 244 DebuggerStackTrace* StackTrace() const { return stack_trace_; }
241 245
242 RawArray* GetInstanceFields(const Instance& obj); 246 RawArray* GetInstanceFields(const Instance& obj);
243 RawArray* GetStaticFields(const Class& cls); 247 RawArray* GetStaticFields(const Class& cls);
244 RawArray* GetLibraryFields(const Library& lib); 248 RawArray* GetLibraryFields(const Library& lib);
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
316 320
317 // If >= 0, last_bpt_line contains the line number of the last breakpoint 321 // If >= 0, last_bpt_line contains the line number of the last breakpoint
318 // location for which the breakpoint callback function was called. 322 // location for which the breakpoint callback function was called.
319 intptr_t last_bpt_line_; 323 intptr_t last_bpt_line_;
320 324
321 // Do not call back to breakpoint handler if this flag is set. 325 // Do not call back to breakpoint handler if this flag is set.
322 // Effectively this means ignoring breakpoints. Set when Dart code may 326 // Effectively this means ignoring breakpoints. Set when Dart code may
323 // be run as a side effect of getting values of fields. 327 // be run as a side effect of getting values of fields.
324 bool ignore_breakpoints_; 328 bool ignore_breakpoints_;
325 329
326 // If true, notify debug client when (unhandled) exception is thrown. 330 intptr_t exc_pause_info_;
327 bool pause_on_exception_;
328 bool pause_on_unhandled_exception_;
329 331
330 friend class SourceBreakpoint; 332 friend class SourceBreakpoint;
331 DISALLOW_COPY_AND_ASSIGN(Debugger); 333 DISALLOW_COPY_AND_ASSIGN(Debugger);
332 }; 334 };
333 335
334 336
335 } // namespace dart 337 } // namespace dart
336 338
337 #endif // VM_DEBUGGER_H_ 339 #endif // VM_DEBUGGER_H_
OLDNEW
« no previous file with comments | « runtime/include/dart_debugger_api.h ('k') | runtime/vm/debugger.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698