| Index: runtime/vm/json_stream.cc
|
| diff --git a/runtime/vm/json_stream.cc b/runtime/vm/json_stream.cc
|
| index 4d2f27bea542c4c3ee6ef2dfabb4c5e83be3ce95..6a2694a94e4d824d4fbaa975b2c7c5767e68af91 100644
|
| --- a/runtime/vm/json_stream.cc
|
| +++ b/runtime/vm/json_stream.cc
|
| @@ -444,6 +444,12 @@ void JSONStream::PrintValue(Breakpoint* bpt) {
|
| }
|
|
|
|
|
| +void JSONStream::PrintValue(TokenPosition tp) {
|
| + PrintCommaIfNeeded();
|
| + PrintValue(tp.value());
|
| +}
|
| +
|
| +
|
| void JSONStream::PrintValue(const ServiceEvent* event) {
|
| PrintCommaIfNeeded();
|
| event->PrintJSON(this);
|
| @@ -561,6 +567,12 @@ void JSONStream::PrintProperty(const char* name, Breakpoint* bpt) {
|
| }
|
|
|
|
|
| +void JSONStream::PrintProperty(const char* name, TokenPosition tp) {
|
| + PrintPropertyName(name);
|
| + PrintValue(tp);
|
| +}
|
| +
|
| +
|
| void JSONStream::PrintProperty(const char* name, Metric* metric) {
|
| PrintPropertyName(name);
|
| PrintValue(metric);
|
| @@ -753,13 +765,13 @@ void JSONObject::AddFixedServiceId(const char* format, ...) const {
|
|
|
|
|
| void JSONObject::AddLocation(const Script& script,
|
| - intptr_t token_pos,
|
| - intptr_t end_token_pos) const {
|
| + TokenPosition token_pos,
|
| + TokenPosition end_token_pos) const {
|
| JSONObject location(this, "location");
|
| location.AddProperty("type", "SourceLocation");
|
| location.AddProperty("script", script);
|
| location.AddProperty("tokenPos", token_pos);
|
| - if (end_token_pos >= 0) {
|
| + if (end_token_pos.IsReal()) {
|
| location.AddProperty("endTokenPos", end_token_pos);
|
| }
|
| }
|
| @@ -771,7 +783,7 @@ void JSONObject::AddLocation(const BreakpointLocation* bpt_loc) const {
|
| Zone* zone = Thread::Current()->zone();
|
| Library& library = Library::Handle(zone);
|
| Script& script = Script::Handle(zone);
|
| - intptr_t token_pos;
|
| + TokenPosition token_pos = TokenPosition::kNoSource;
|
| bpt_loc->GetCodeLocation(&library, &script, &token_pos);
|
| AddLocation(script, token_pos);
|
| }
|
| @@ -784,7 +796,7 @@ void JSONObject::AddUnresolvedLocation(
|
| Zone* zone = Thread::Current()->zone();
|
| Library& library = Library::Handle(zone);
|
| Script& script = Script::Handle(zone);
|
| - intptr_t token_pos;
|
| + TokenPosition token_pos = TokenPosition::kNoSource;
|
| bpt_loc->GetCodeLocation(&library, &script, &token_pos);
|
|
|
| JSONObject location(this, "location");
|
|
|