1ef4399df0
This uses optional new/const and `=` in named argument defaults. All changes are automated, except for: - utils/dartdevc/BUILD.gn: run DDC build scripts with --preview-dart-2 - pkg/dev_compiler/tool/patch_sdk.dart: add a TODO that Analyzer doesn't supporting implicit const in libraries.dart - pkg/dev_compiler/tool/input_sdk/libraries.dart: was not formatted due to the aforementioned Analyzer bug - tools/bots/test_matrix.json: run DDC sourcemap suite in Dart 2 mode - pkg/pkg.status: skip pkg/dev_compiler if running in Dart 1 mode Change-Id: I9b80ccba0c2cc7b66efc662a0b16562e3660aee3 Reviewed-on: https://dart-review.googlesource.com/60402 Commit-Queue: Jenny Messerly <jmesserly@google.com> Reviewed-by: Bob Nystrom <rnystrom@google.com>
173 lines
3.3 KiB
Dart
173 lines
3.3 KiB
Dart
// 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.
|
|
|
|
// Patch file for dart:developer library.
|
|
|
|
import 'dart:_js_helper' show patch, ForceInline;
|
|
import 'dart:_foreign_helper' show JS;
|
|
import 'dart:async';
|
|
import 'dart:isolate';
|
|
|
|
@patch
|
|
@ForceInline()
|
|
bool debugger({bool when = true, String message}) {
|
|
if (when) {
|
|
JS('', 'debugger');
|
|
}
|
|
return when;
|
|
}
|
|
|
|
@patch
|
|
Object inspect(Object object) {
|
|
return object;
|
|
}
|
|
|
|
@patch
|
|
void log(String message,
|
|
{DateTime time,
|
|
int sequenceNumber,
|
|
int level = 0,
|
|
String name = '',
|
|
Zone zone,
|
|
Object error,
|
|
StackTrace stackTrace}) {
|
|
// TODO.
|
|
}
|
|
|
|
final _extensions = Map<String, ServiceExtensionHandler>();
|
|
|
|
@patch
|
|
ServiceExtensionHandler _lookupExtension(String method) {
|
|
return _extensions[method];
|
|
}
|
|
|
|
@patch
|
|
_registerExtension(String method, ServiceExtensionHandler handler) {
|
|
_extensions[method] = handler;
|
|
}
|
|
|
|
@patch
|
|
void _postEvent(String eventKind, String eventData) {
|
|
// TODO.
|
|
}
|
|
|
|
@patch
|
|
bool _isDartStreamEnabled() {
|
|
return false;
|
|
}
|
|
|
|
@patch
|
|
int _getTraceClock() {
|
|
// TODO.
|
|
return _clockValue++;
|
|
}
|
|
|
|
int _clockValue = 0;
|
|
|
|
@patch
|
|
int _getThreadCpuClock() {
|
|
return -1;
|
|
}
|
|
|
|
@patch
|
|
void _reportCompleteEvent(int start, int startCpu, String category, String name,
|
|
String argumentsAsJson) {
|
|
// TODO.
|
|
}
|
|
|
|
@patch
|
|
void _reportFlowEvent(int start, int startCpu, String category, String name,
|
|
int type, int id, String argumentsAsJson) {
|
|
// TODO.
|
|
}
|
|
|
|
@patch
|
|
void _reportInstantEvent(
|
|
int start, String category, String name, String argumentsAsJson) {
|
|
// TODO.
|
|
}
|
|
|
|
@patch
|
|
int _getNextAsyncId() {
|
|
return 0;
|
|
}
|
|
|
|
@patch
|
|
void _reportTaskEvent(int start, int taskId, String phase, String category,
|
|
String name, String argumentsAsJson) {
|
|
// TODO.
|
|
}
|
|
|
|
@patch
|
|
int _getServiceMajorVersion() {
|
|
return 0;
|
|
}
|
|
|
|
@patch
|
|
int _getServiceMinorVersion() {
|
|
return 0;
|
|
}
|
|
|
|
@patch
|
|
void _getServerInfo(SendPort sendPort) {
|
|
sendPort.send(null);
|
|
}
|
|
|
|
@patch
|
|
void _webServerControl(SendPort sendPort, bool enable) {
|
|
sendPort.send(null);
|
|
}
|
|
|
|
@patch
|
|
String _getIsolateIDFromSendPort(SendPort sendPort) {
|
|
return null;
|
|
}
|
|
|
|
@patch
|
|
class UserTag {
|
|
@patch
|
|
factory UserTag(String label) = _FakeUserTag;
|
|
|
|
@patch
|
|
static UserTag get defaultTag => _FakeUserTag._defaultTag;
|
|
}
|
|
|
|
class _FakeUserTag implements UserTag {
|
|
static Map _instances = {};
|
|
|
|
_FakeUserTag.real(this.label);
|
|
|
|
factory _FakeUserTag(String label) {
|
|
// Canonicalize by name.
|
|
var existingTag = _instances[label];
|
|
if (existingTag != null) {
|
|
return existingTag;
|
|
}
|
|
// Throw an exception if we've reached the maximum number of user tags.
|
|
if (_instances.length == UserTag.MAX_USER_TAGS) {
|
|
throw UnsupportedError(
|
|
'UserTag instance limit (${UserTag.MAX_USER_TAGS}) reached.');
|
|
}
|
|
// Create a new instance and add it to the instance map.
|
|
var instance = _FakeUserTag.real(label);
|
|
_instances[label] = instance;
|
|
return instance;
|
|
}
|
|
|
|
final String label;
|
|
|
|
UserTag makeCurrent() {
|
|
var old = _currentTag;
|
|
_currentTag = this;
|
|
return old;
|
|
}
|
|
|
|
static final UserTag _defaultTag = _FakeUserTag('Default');
|
|
}
|
|
|
|
var _currentTag = _FakeUserTag._defaultTag;
|
|
|
|
@patch
|
|
UserTag getCurrentTag() => _currentTag;
|