| OLD | NEW | 
|---|
| 1 // Copyright (c) 2013, the Dart project authors.  Please see the AUTHORS file | 1 // Copyright (c) 2013, 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 #include "vm/isolate.h" | 5 #include "vm/isolate.h" | 
| 6 | 6 | 
| 7 #include "include/dart_api.h" | 7 #include "include/dart_api.h" | 
| 8 #include "include/dart_native_api.h" | 8 #include "include/dart_native_api.h" | 
| 9 #include "platform/assert.h" | 9 #include "platform/assert.h" | 
| 10 #include "platform/json.h" | 10 #include "platform/json.h" | 
| (...skipping 1804 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 1815 } | 1815 } | 
| 1816 | 1816 | 
| 1817 | 1817 | 
| 1818 void Isolate::VisitPrologueWeakPersistentHandles(HandleVisitor* visitor) { | 1818 void Isolate::VisitPrologueWeakPersistentHandles(HandleVisitor* visitor) { | 
| 1819   if (api_state() != NULL) { | 1819   if (api_state() != NULL) { | 
| 1820     api_state()->VisitPrologueWeakHandles(visitor); | 1820     api_state()->VisitPrologueWeakHandles(visitor); | 
| 1821   } | 1821   } | 
| 1822 } | 1822 } | 
| 1823 | 1823 | 
| 1824 | 1824 | 
|  | 1825 static const char* ExceptionPauseInfoToServiceEnum(Dart_ExceptionPauseInfo pi) { | 
|  | 1826   switch (pi) { | 
|  | 1827     case kPauseOnAllExceptions: | 
|  | 1828       return "All"; | 
|  | 1829     case kNoPauseOnExceptions: | 
|  | 1830       return "None"; | 
|  | 1831     case kPauseOnUnhandledExceptions: | 
|  | 1832       return "Unhandled"; | 
|  | 1833     default: | 
|  | 1834       UNIMPLEMENTED(); | 
|  | 1835       return NULL; | 
|  | 1836   } | 
|  | 1837 } | 
|  | 1838 | 
|  | 1839 | 
| 1825 void Isolate::PrintJSON(JSONStream* stream, bool ref) { | 1840 void Isolate::PrintJSON(JSONStream* stream, bool ref) { | 
| 1826   JSONObject jsobj(stream); | 1841   JSONObject jsobj(stream); | 
| 1827   jsobj.AddProperty("type", (ref ? "@Isolate" : "Isolate")); | 1842   jsobj.AddProperty("type", (ref ? "@Isolate" : "Isolate")); | 
| 1828   jsobj.AddFixedServiceId("isolates/%" Pd "", | 1843   jsobj.AddFixedServiceId("isolates/%" Pd "", | 
| 1829                           static_cast<intptr_t>(main_port())); | 1844                           static_cast<intptr_t>(main_port())); | 
| 1830 | 1845 | 
| 1831   jsobj.AddProperty("name", debugger_name()); | 1846   jsobj.AddProperty("name", debugger_name()); | 
| 1832   jsobj.AddPropertyF("number", "%" Pd "", | 1847   jsobj.AddPropertyF("number", "%" Pd "", | 
| 1833                      static_cast<intptr_t>(main_port())); | 1848                      static_cast<intptr_t>(main_port())); | 
| 1834   if (ref) { | 1849   if (ref) { | 
| (...skipping 27 matching lines...) Expand all  Loading... | 
| 1862     ServiceEvent pause_event(this, ServiceEvent::kResume); | 1877     ServiceEvent pause_event(this, ServiceEvent::kResume); | 
| 1863 | 1878 | 
| 1864     // TODO(turnidge): Don't compute a full stack trace. | 1879     // TODO(turnidge): Don't compute a full stack trace. | 
| 1865     DebuggerStackTrace* stack = debugger()->StackTrace(); | 1880     DebuggerStackTrace* stack = debugger()->StackTrace(); | 
| 1866     if (stack->Length() > 0) { | 1881     if (stack->Length() > 0) { | 
| 1867       pause_event.set_top_frame(stack->FrameAt(0)); | 1882       pause_event.set_top_frame(stack->FrameAt(0)); | 
| 1868     } | 1883     } | 
| 1869     jsobj.AddProperty("pauseEvent", &pause_event); | 1884     jsobj.AddProperty("pauseEvent", &pause_event); | 
| 1870   } | 1885   } | 
| 1871 | 1886 | 
|  | 1887   jsobj.AddProperty("exceptionPauseMode", | 
|  | 1888       ExceptionPauseInfoToServiceEnum(debugger()->GetExceptionPauseInfo())); | 
|  | 1889 | 
| 1872   const Library& lib = | 1890   const Library& lib = | 
| 1873       Library::Handle(object_store()->root_library()); | 1891       Library::Handle(object_store()->root_library()); | 
| 1874   if (!lib.IsNull()) { | 1892   if (!lib.IsNull()) { | 
| 1875     jsobj.AddProperty("rootLib", lib); | 1893     jsobj.AddProperty("rootLib", lib); | 
| 1876   } | 1894   } | 
| 1877 | 1895 | 
| 1878   { | 1896   { | 
| 1879     JSONObject tagCounters(&jsobj, "_tagCounters"); | 1897     JSONObject tagCounters(&jsobj, "_tagCounters"); | 
| 1880     vm_tag_counters()->PrintToJSONObject(&tagCounters); | 1898     vm_tag_counters()->PrintToJSONObject(&tagCounters); | 
| 1881   } | 1899   } | 
| (...skipping 717 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 2599                            serialized_message_, serialized_message_len_); | 2617                            serialized_message_, serialized_message_len_); | 
| 2600 } | 2618 } | 
| 2601 | 2619 | 
| 2602 | 2620 | 
| 2603 void IsolateSpawnState::Cleanup() { | 2621 void IsolateSpawnState::Cleanup() { | 
| 2604   SwitchIsolateScope switch_scope(I); | 2622   SwitchIsolateScope switch_scope(I); | 
| 2605   Dart::ShutdownIsolate(); | 2623   Dart::ShutdownIsolate(); | 
| 2606 } | 2624 } | 
| 2607 | 2625 | 
| 2608 }  // namespace dart | 2626 }  // namespace dart | 
| OLD | NEW | 
|---|