Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(887)

Unified Diff: pkg/dev_compiler/tool/input_sdk/lib/developer/developer.dart

Issue 2534263002: Make the dart:developer library available in DDC so debugger statement works (Closed)
Patch Set: Merged Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: pkg/dev_compiler/tool/input_sdk/lib/developer/developer.dart
diff --git a/pkg/dev_compiler/tool/input_sdk/lib/developer/developer.dart b/pkg/dev_compiler/tool/input_sdk/lib/developer/developer.dart
new file mode 100644
index 0000000000000000000000000000000000000000..47ea5babfcf7bca1b1cc6d03170981abb11f51cd
--- /dev/null
+++ b/pkg/dev_compiler/tool/input_sdk/lib/developer/developer.dart
@@ -0,0 +1,60 @@
+// Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+/// Interact with developer tools such as the debugger and inspector.
+///
+/// The dart:developer library is _unstable_ and its API might change slightly
+/// as a result of developer feedback. This library is platform dependent and
+/// therefore it has implementations for both dart2js and the Dart VM. Both are
+/// under development and may not support all operations yet.
+///
+/// To use this library in your code:
+///
+/// import 'dart:developer';
+///
+library dart.developer;
+
+import 'dart:async';
+import 'dart:convert';
+import 'dart:isolate' show RawReceivePort, SendPort;
+
+part 'extension.dart';
+part 'profiler.dart';
+part 'timeline.dart';
+part 'service.dart';
+
+/// If [when] is true, stop the program as if a breakpoint were hit at the
+/// following statement.
+///
+/// Returns the value of [when]. Some debuggers may display [message].
+///
+/// NOTE: When invoked, the isolate will not return until a debugger
+/// continues execution. When running in the Dart VM the behaviour is the same
+/// regardless of whether or not a debugger is connected. When compiled to
+/// JavaScript, this uses the "debugger" statement, and behaves exactly as
+/// that does.
+external bool debugger({bool when: true, String message});
+
+/// Send a reference to [object] to any attached debuggers.
+///
+/// Debuggers may open an inspector on the object. Returns the argument.
+external Object inspect(Object object);
+
+/// Emit a log event.
+/// [message] is the log message.
+/// [time] (optional) is the timestamp.
+/// [sequenceNumber] (optional) is a monotonically increasing sequence number.
+/// [level] (optional) is the severity level (value between 0 and 2000).
+/// [name] (optional) is the name of the source of the log message.
+/// [zone] (optional) the zone where the log was emitted
+/// [error] (optional) an error object associated with this log event.
+/// [stackTrace] (optional) a stack trace associated with this log event.
+external void log(String message,
+ {DateTime time,
+ int sequenceNumber,
+ int level: 0,
+ String name: '',
+ Zone zone,
+ Object error,
+ StackTrace stackTrace});

Powered by Google App Engine
This is Rietveld 408576698