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

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

Issue 175533003: Handle stepping requests after isolate interrupt event (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 6 years, 10 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/vm/code_generator.cc ('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" 8 #include "include/dart_debugger_api.h"
9 9
10 #include "vm/object.h" 10 #include "vm/object.h"
(...skipping 349 matching lines...) Expand 10 before | Expand all | Expand 10 after
360 RawObject* GetInstanceField(const Class& cls, 360 RawObject* GetInstanceField(const Class& cls,
361 const String& field_name, 361 const String& field_name,
362 const Instance& object); 362 const Instance& object);
363 RawObject* GetStaticField(const Class& cls, 363 RawObject* GetStaticField(const Class& cls,
364 const String& field_name); 364 const String& field_name);
365 365
366 void SignalBpReached(); 366 void SignalBpReached();
367 void DebuggerStepCallback(); 367 void DebuggerStepCallback();
368 368
369 void SignalExceptionThrown(const Instance& exc); 369 void SignalExceptionThrown(const Instance& exc);
370 static void SignalIsolateEvent(EventType type); 370 void SignalIsolateEvent(EventType type);
371 static void SignalIsolateInterrupted();
371 372
372 uword GetPatchedStubAddress(uword breakpoint_address); 373 uword GetPatchedStubAddress(uword breakpoint_address);
373 374
374 void PrintBreakpointsToJSONArray(JSONArray* jsarr) const; 375 void PrintBreakpointsToJSONArray(JSONArray* jsarr) const;
375 376
376 static bool IsDebuggable(const Function& func); 377 static bool IsDebuggable(const Function& func);
377 378
378 private: 379 private:
379 enum ResumeAction { 380 enum ResumeAction {
380 kContinue, 381 kContinue,
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
435 436
436 void CollectLibraryFields(const GrowableObjectArray& field_list, 437 void CollectLibraryFields(const GrowableObjectArray& field_list,
437 const Library& lib, 438 const Library& lib,
438 const String& prefix, 439 const String& prefix,
439 bool include_private_fields); 440 bool include_private_fields);
440 441
441 // Handles any events which pause vm execution. Breakpoints, 442 // Handles any events which pause vm execution. Breakpoints,
442 // interrupts, etc. 443 // interrupts, etc.
443 void Pause(DebuggerEvent* event); 444 void Pause(DebuggerEvent* event);
444 445
446 void HandleSteppingRequest(DebuggerStackTrace* stack_trace);
447
445 Isolate* isolate_; 448 Isolate* isolate_;
446 Dart_Port isolate_id_; // A unique ID for the isolate in the debugger. 449 Dart_Port isolate_id_; // A unique ID for the isolate in the debugger.
447 bool initialized_; 450 bool initialized_;
448 451
449 // ID number generator. 452 // ID number generator.
450 intptr_t next_id_; 453 intptr_t next_id_;
451 454
452 455
453 SourceBreakpoint* src_breakpoints_; 456 SourceBreakpoint* src_breakpoints_;
454 CodeBreakpoint* code_breakpoints_; 457 CodeBreakpoint* code_breakpoints_;
(...skipping 29 matching lines...) Expand all
484 487
485 friend class Isolate; 488 friend class Isolate;
486 friend class SourceBreakpoint; 489 friend class SourceBreakpoint;
487 DISALLOW_COPY_AND_ASSIGN(Debugger); 490 DISALLOW_COPY_AND_ASSIGN(Debugger);
488 }; 491 };
489 492
490 493
491 } // namespace dart 494 } // namespace dart
492 495
493 #endif // VM_DEBUGGER_H_ 496 #endif // VM_DEBUGGER_H_
OLDNEW
« no previous file with comments | « runtime/vm/code_generator.cc ('k') | runtime/vm/debugger.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698