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

Unified Diff: packages/code_transformers/lib/src/dart_sdk.dart

Issue 2989763002: Update charted to 0.4.8 and roll (Closed)
Patch Set: Removed Cutch from list of reviewers Created 3 years, 5 months 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: packages/code_transformers/lib/src/dart_sdk.dart
diff --git a/packages/code_transformers/lib/src/dart_sdk.dart b/packages/code_transformers/lib/src/dart_sdk.dart
index f99e60610ce62db8b3cae971a36f790ab92373c8..4c6ca9972abf7535c42605e8327ef0ea78e690e5 100644
--- a/packages/code_transformers/lib/src/dart_sdk.dart
+++ b/packages/code_transformers/lib/src/dart_sdk.dart
@@ -6,11 +6,13 @@ library code_transformers.src.dart_sdk;
import 'dart:io' show Directory;
+import 'package:analyzer/file_system/file_system.dart';
+import 'package:analyzer/src/context/context.dart';
+import 'package:analyzer/src/dart/sdk/sdk.dart';
import 'package:analyzer/src/generated/engine.dart';
-import 'package:analyzer/src/generated/java_io.dart';
import 'package:analyzer/src/generated/sdk.dart';
-import 'package:analyzer/src/generated/sdk_io.dart' show DirectoryBasedDartSdk;
import 'package:analyzer/src/generated/source.dart';
+import 'package:analyzer/src/summary/idl.dart';
import 'package:cli_util/cli_util.dart' as cli_util;
/// Attempts to provide the current Dart SDK directory.
@@ -31,9 +33,10 @@ abstract class UriAnnotatedSource extends Source {
/// Dart SDK which wraps all Dart sources as [UriAnnotatedSource] to ensure they
/// are tracked with Uris.
-class DirectoryBasedDartSdkProxy extends DirectoryBasedDartSdk {
- DirectoryBasedDartSdkProxy(String sdkDirectory)
- : super(new JavaFile(sdkDirectory));
+class FolderBasedDartSdkProxy extends FolderBasedDartSdk {
+ FolderBasedDartSdkProxy(
+ ResourceProvider resourceProvider, String sdkDirectory)
+ : super(resourceProvider, resourceProvider.getFolder(sdkDirectory));
Source mapDartUri(String dartUri) =>
DartSourceProxy.wrap(super.mapDartUri(dartUri), Uri.parse(dartUri));
@@ -62,7 +65,6 @@ class DartUriResolverProxy implements DartUriResolver {
/// This is primarily to support [Resolver.getImportUri] for Dart SDK (dart:)
/// based libraries.
class DartSourceProxy implements UriAnnotatedSource {
-
/// Absolute URI which this source can be imported from
final Uri uri;
@@ -108,6 +110,8 @@ class DartSourceProxy implements UriAnnotatedSource {
String get fullName => _proxy.fullName;
+ Source get librarySource => _proxy.librarySource;
+
int get modificationStamp => _proxy.modificationStamp;
String get shortName => _proxy.shortName;
@@ -125,11 +129,13 @@ class MockDartSdk implements DartSdk {
final Map<String, SdkLibrary> _libs = {};
final String sdkVersion = '0';
List<String> get uris => _sources.keys.map((uri) => '$uri').toList();
- final AnalysisContext context = new SdkAnalysisContext();
+ final InternalAnalysisContext context;
DartUriResolver _resolver;
DartUriResolver get resolver => _resolver;
- MockDartSdk(Map<String, String> sources, {this.reportMissing}) {
+ MockDartSdk(Map<String, String> sources, AnalysisOptions options,
+ {this.reportMissing})
+ : this.context = new SdkAnalysisContext(options) {
sources.forEach((uriString, contents) {
var uri = Uri.parse(uriString);
_sources[uri] = new _MockSdkSource(uri, contents);
@@ -166,6 +172,9 @@ class MockDartSdk implements DartSdk {
Source fromFileUri(Uri uri) {
throw new UnsupportedError('MockDartSdk.fromFileUri');
}
+
+ @override
+ PackageBundle getLinkedBundle() => null;
}
class _MockSdkSource implements UriAnnotatedSource {
@@ -175,6 +184,8 @@ class _MockSdkSource implements UriAnnotatedSource {
Source get source => this;
+ Source get librarySource => null;
+
_MockSdkSource(this.uri, this._contents);
bool exists() => true;
@@ -201,6 +212,8 @@ class _MockSdkSource implements UriAnnotatedSource {
Uri resolveRelativeUri(Uri relativeUri) =>
throw new UnsupportedError('not expecting relative urls in dart: mocks');
+
+ bool operator ==(Object other) => identical(this, other);
}
/// Sample mock SDK sources.
@@ -249,6 +262,8 @@ final Map<String, String> mockSdkSources = {
'dart:async': '''
class Future<T> {
Future then(callback) {}
+ }
+ class FutureOr<T> {}
class Stream<T> {}
''',
'dart:html': '''
« no previous file with comments | « packages/code_transformers/lib/src/async_benchmark_base.dart ('k') | packages/code_transformers/lib/src/entry_point.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698