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 /// Interact with developer tools such as the debugger and inspector. | 5 /// Interact with developer tools such as the debugger and inspector. |
6 /// | 6 /// |
7 /// The dart:developer library is _unstable_ and its API might change slightly | 7 /// The dart:developer library is _unstable_ and its API might change slightly |
8 /// as a result of developer feedback. This library is platform dependent and | 8 /// as a result of developer feedback. This library is platform dependent and |
9 /// therefore it has implementations for both dart2js and the Dart VM. Both are | 9 /// therefore it has implementations for both dart2js and the Dart VM. Both are |
10 /// under development and may not support all operations yet. | 10 /// under development and may not support all operations yet. |
11 /// | 11 /// |
12 library dart.developer; | 12 library dart.developer; |
13 | 13 |
| 14 import 'dart:async'; |
14 import 'dart:convert'; | 15 import 'dart:convert'; |
15 | 16 |
16 part 'profiler.dart'; | 17 part 'profiler.dart'; |
17 | 18 |
18 /// If [when] is true, stop the program as if a breakpoint were hit at the | 19 /// If [when] is true, stop the program as if a breakpoint were hit at the |
19 /// following statement. | 20 /// following statement. |
20 /// | 21 /// |
21 /// Returns the value of [when]. Some debuggers may | 22 /// Returns the value of [when]. Some debuggers may |
22 /// display [msg]. | 23 /// display [msg]. |
23 /// | 24 /// |
24 /// NOTE: When invoked, the isolate will not return until a debugger | 25 /// NOTE: When invoked, the isolate will not return until a debugger |
25 /// continues execution. When running in the Dart VM the behaviour is the same | 26 /// continues execution. When running in the Dart VM the behaviour is the same |
26 /// regardless of whether or not a debugger is connected. When compiled to | 27 /// regardless of whether or not a debugger is connected. When compiled to |
27 /// JavaScript, this uses the "debugger" statement, and behaves exactly as | 28 /// JavaScript, this uses the "debugger" statement, and behaves exactly as |
28 /// that does. | 29 /// that does. |
29 external bool debugger({bool when: true, String msg}); | 30 external bool debugger({bool when: true, String msg}); |
30 | 31 |
31 /// Send a reference to [object] to any attached debuggers. | 32 /// Send a reference to [object] to any attached debuggers. |
32 /// | 33 /// |
33 /// Debuggers may open an inspector on the object. Returns the argument. | 34 /// Debuggers may open an inspector on the object. Returns the argument. |
34 external inspect(object); | 35 external inspect(object); |
| 36 |
| 37 /// Emit a log event. |
| 38 /// [sequenceNumber] is a monotonically increasing sequence number. |
| 39 /// [millisececondsSinceEpoch] is a timestamp. |
| 40 /// [level] is the severity level (value between 0 and 2000 inclusive). |
| 41 /// [name] is the name of the source of the log message. |
| 42 /// [message] is the log message. |
| 43 /// [zone] (optional) the zone where the log was emitted |
| 44 /// [error] (optional) an error object associated with this log event. |
| 45 /// [stackTrace] (optional) a stack trace associated with this log event. |
| 46 external log(int sequenceNumber, |
| 47 int millisecondsSinceEpoch, |
| 48 int level, |
| 49 String name, |
| 50 String message, |
| 51 [Zone zone, |
| 52 Object error, |
| 53 StackTrace stackTrace]); |
| 54 |
| 55 /// Emit a log event for a a [LogRecord] from the [logging] package. |
| 56 void logOnRecord(dynamic logRecord) { |
| 57 log(logRecord.sequenceNumber, |
| 58 logRecord.time.millisecondsSinceEpoch, |
| 59 logRecord.level.value, |
| 60 logRecord.loggerName, |
| 61 logRecord.message, |
| 62 null, |
| 63 logRecord.error, |
| 64 logRecord.stackTrace); |
| 65 } |
OLD | NEW |