OLD | NEW |
1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2015, 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_SERVICE_EVENT_H_ | 5 #ifndef VM_SERVICE_EVENT_H_ |
6 #define VM_SERVICE_EVENT_H_ | 6 #define VM_SERVICE_EVENT_H_ |
7 | 7 |
8 #include "vm/debugger.h" | 8 #include "vm/debugger.h" |
9 | 9 |
10 class DebuggerEvent; | 10 class DebuggerEvent; |
(...skipping 27 matching lines...) Expand all Loading... |
38 }; | 38 }; |
39 | 39 |
40 ServiceEvent(Isolate* isolate, EventKind event_kind) | 40 ServiceEvent(Isolate* isolate, EventKind event_kind) |
41 : isolate_(isolate), | 41 : isolate_(isolate), |
42 kind_(event_kind), | 42 kind_(event_kind), |
43 embedder_kind_(NULL), | 43 embedder_kind_(NULL), |
44 embedder_stream_id_(NULL), | 44 embedder_stream_id_(NULL), |
45 breakpoint_(NULL), | 45 breakpoint_(NULL), |
46 top_frame_(NULL), | 46 top_frame_(NULL), |
47 exception_(NULL), | 47 exception_(NULL), |
| 48 async_continuation_(NULL), |
48 inspectee_(NULL), | 49 inspectee_(NULL), |
49 gc_stats_(NULL), | 50 gc_stats_(NULL), |
50 bytes_(NULL), | 51 bytes_(NULL), |
51 bytes_length_(0) {} | 52 bytes_length_(0) {} |
52 | 53 |
53 explicit ServiceEvent(const DebuggerEvent* debugger_event); | 54 explicit ServiceEvent(const DebuggerEvent* debugger_event); |
54 | 55 |
55 Isolate* isolate() const { return isolate_; } | 56 Isolate* isolate() const { return isolate_; } |
56 | 57 |
57 EventKind kind() const { return kind_; } | 58 EventKind kind() const { return kind_; } |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
93 } | 94 } |
94 | 95 |
95 const Object* exception() const { | 96 const Object* exception() const { |
96 return exception_; | 97 return exception_; |
97 } | 98 } |
98 void set_exception(const Object* exception) { | 99 void set_exception(const Object* exception) { |
99 ASSERT(kind_ == kPauseException); | 100 ASSERT(kind_ == kPauseException); |
100 exception_ = exception; | 101 exception_ = exception; |
101 } | 102 } |
102 | 103 |
| 104 const Object* async_continuation() const { |
| 105 return async_continuation_; |
| 106 } |
| 107 void set_async_continuation(const Object* closure) { |
| 108 ASSERT(kind_ == kPauseBreakpoint); |
| 109 async_continuation_ = closure; |
| 110 } |
| 111 |
103 const Object* inspectee() const { | 112 const Object* inspectee() const { |
104 return inspectee_; | 113 return inspectee_; |
105 } | 114 } |
106 void set_inspectee(const Object* inspectee) { | 115 void set_inspectee(const Object* inspectee) { |
107 ASSERT(kind_ == kInspect); | 116 ASSERT(kind_ == kInspect); |
108 inspectee_ = inspectee; | 117 inspectee_ = inspectee; |
109 } | 118 } |
110 | 119 |
111 const Heap::GCStats* gc_stats() const { | 120 const Heap::GCStats* gc_stats() const { |
112 return gc_stats_; | 121 return gc_stats_; |
(...skipping 19 matching lines...) Expand all Loading... |
132 void PrintJSON(JSONStream* js) const; | 141 void PrintJSON(JSONStream* js) const; |
133 | 142 |
134 private: | 143 private: |
135 Isolate* isolate_; | 144 Isolate* isolate_; |
136 EventKind kind_; | 145 EventKind kind_; |
137 const char* embedder_kind_; | 146 const char* embedder_kind_; |
138 const char* embedder_stream_id_; | 147 const char* embedder_stream_id_; |
139 Breakpoint* breakpoint_; | 148 Breakpoint* breakpoint_; |
140 ActivationFrame* top_frame_; | 149 ActivationFrame* top_frame_; |
141 const Object* exception_; | 150 const Object* exception_; |
| 151 const Object* async_continuation_; |
142 const Object* inspectee_; | 152 const Object* inspectee_; |
143 const Heap::GCStats* gc_stats_; | 153 const Heap::GCStats* gc_stats_; |
144 const uint8_t* bytes_; | 154 const uint8_t* bytes_; |
145 intptr_t bytes_length_; | 155 intptr_t bytes_length_; |
146 }; | 156 }; |
147 | 157 |
148 } // namespace dart | 158 } // namespace dart |
149 | 159 |
150 #endif // VM_SERVICE_EVENT_H_ | 160 #endif // VM_SERVICE_EVENT_H_ |
OLD | NEW |