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_tools_api.h" | 8 #include "include/dart_tools_api.h" |
9 | 9 |
10 #include "vm/object.h" | 10 #include "vm/object.h" |
(...skipping 608 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
619 | 619 |
620 void SyncBreakpointLocation(BreakpointLocation* loc); | 620 void SyncBreakpointLocation(BreakpointLocation* loc); |
621 | 621 |
622 ActivationFrame* TopDartFrame() const; | 622 ActivationFrame* TopDartFrame() const; |
623 static ActivationFrame* CollectDartFrame(Isolate* isolate, | 623 static ActivationFrame* CollectDartFrame(Isolate* isolate, |
624 uword pc, | 624 uword pc, |
625 StackFrame* frame, | 625 StackFrame* frame, |
626 const Code& code, | 626 const Code& code, |
627 const Array& deopt_frame, | 627 const Array& deopt_frame, |
628 intptr_t deopt_frame_offset); | 628 intptr_t deopt_frame_offset); |
629 static RawArray* DeoptimizeToArray(Isolate* isolate, | 629 static RawArray* DeoptimizeToArray(Thread* thread, |
630 StackFrame* frame, | 630 StackFrame* frame, |
631 const Code& code); | 631 const Code& code); |
632 static DebuggerStackTrace* CollectStackTrace(); | 632 static DebuggerStackTrace* CollectStackTrace(); |
633 void SignalBpResolved(Breakpoint *bpt); | 633 void SignalBpResolved(Breakpoint *bpt); |
634 void SignalPausedEvent(ActivationFrame* top_frame, | 634 void SignalPausedEvent(ActivationFrame* top_frame, |
635 Breakpoint* bpt); | 635 Breakpoint* bpt); |
636 | 636 |
637 intptr_t nextId() { return next_id_++; } | 637 intptr_t nextId() { return next_id_++; } |
638 | 638 |
639 bool ShouldPauseOnException(DebuggerStackTrace* stack_trace, | 639 bool ShouldPauseOnException(DebuggerStackTrace* stack_trace, |
640 const Instance& exc); | 640 const Instance& exc); |
641 | 641 |
642 void CollectLibraryFields(const GrowableObjectArray& field_list, | 642 void CollectLibraryFields(const GrowableObjectArray& field_list, |
643 const Library& lib, | 643 const Library& lib, |
644 const String& prefix, | 644 const String& prefix, |
645 bool include_private_fields); | 645 bool include_private_fields); |
646 | 646 |
647 // Handles any events which pause vm execution. Breakpoints, | 647 // Handles any events which pause vm execution. Breakpoints, |
648 // interrupts, etc. | 648 // interrupts, etc. |
649 void Pause(DebuggerEvent* event); | 649 void Pause(DebuggerEvent* event); |
650 | 650 |
651 void HandleSteppingRequest(DebuggerStackTrace* stack_trace); | 651 void HandleSteppingRequest(DebuggerStackTrace* stack_trace); |
652 | 652 |
| 653 Zone* zone() const { return isolate_->current_zone(); } |
| 654 |
653 Isolate* isolate_; | 655 Isolate* isolate_; |
654 Dart_Port isolate_id_; // A unique ID for the isolate in the debugger. | 656 Dart_Port isolate_id_; // A unique ID for the isolate in the debugger. |
655 bool initialized_; | 657 bool initialized_; |
656 | 658 |
657 // ID number generator. | 659 // ID number generator. |
658 intptr_t next_id_; | 660 intptr_t next_id_; |
659 | 661 |
660 BreakpointLocation* latent_locations_; | 662 BreakpointLocation* latent_locations_; |
661 BreakpointLocation* breakpoint_locations_; | 663 BreakpointLocation* breakpoint_locations_; |
662 CodeBreakpoint* code_breakpoints_; | 664 CodeBreakpoint* code_breakpoints_; |
(...skipping 29 matching lines...) Expand all Loading... |
692 | 694 |
693 friend class Isolate; | 695 friend class Isolate; |
694 friend class BreakpointLocation; | 696 friend class BreakpointLocation; |
695 DISALLOW_COPY_AND_ASSIGN(Debugger); | 697 DISALLOW_COPY_AND_ASSIGN(Debugger); |
696 }; | 698 }; |
697 | 699 |
698 | 700 |
699 } // namespace dart | 701 } // namespace dart |
700 | 702 |
701 #endif // VM_DEBUGGER_H_ | 703 #endif // VM_DEBUGGER_H_ |
OLD | NEW |