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

Unified Diff: packages/analyzer/lib/src/generated/source.dart

Issue 1400473008: Roll Observatory packages and add a roll script (Closed) Base URL: git@github.com:dart-lang/observatory_pub_packages.git@master
Patch Set: Created 5 years, 2 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
« no previous file with comments | « packages/analyzer/lib/src/generated/sdk_io.dart ('k') | packages/analyzer/lib/src/generated/source_io.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: packages/analyzer/lib/src/generated/source.dart
diff --git a/analyzer/lib/src/generated/source.dart b/packages/analyzer/lib/src/generated/source.dart
similarity index 96%
rename from analyzer/lib/src/generated/source.dart
rename to packages/analyzer/lib/src/generated/source.dart
index 5b96dbd83198b1dc52ff1558ed8587a746e93809..1a4751678597008be0e04437eaa118bd5e69fd35 100644
--- a/analyzer/lib/src/generated/source.dart
+++ b/packages/analyzer/lib/src/generated/source.dart
@@ -2,9 +2,6 @@
// 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.
-// This code was auto-generated, is not intended to be edited, and is subject to
-// significant change. Please see the README file for more information.
-
library engine.source;
import 'dart:collection';
@@ -109,7 +106,7 @@ class CustomUriResolver extends UriResolver {
CustomUriResolver(this._urlMappings);
@override
- Source resolveAbsolute(Uri uri) {
+ Source resolveAbsolute(Uri uri, [Uri actualUri]) {
String mapping = _urlMappings[uri.toString()];
if (mapping == null) return null;
@@ -117,7 +114,7 @@ class CustomUriResolver extends UriResolver {
if (!fileUri.isAbsolute) return null;
JavaFile javaFile = new JavaFile.fromUri(fileUri);
- return new FileBasedSource(javaFile);
+ return new FileBasedSource(javaFile, actualUri != null ? actualUri : uri);
}
}
@@ -156,7 +153,7 @@ class DartUriResolver extends UriResolver {
DartSdk get dartSdk => _sdk;
@override
- Source resolveAbsolute(Uri uri) {
+ Source resolveAbsolute(Uri uri, [Uri actualUri]) {
if (!isDartUri(uri)) {
return null;
}
@@ -275,6 +272,9 @@ class LineInfo_Location {
* @param columnNumber the one-based index of the column containing the character
*/
LineInfo_Location(this.lineNumber, this.columnNumber);
+
+ @override
+ String toString() => '$lineNumber:$columnNumber';
}
/**
@@ -605,8 +605,8 @@ class SourceFactory {
SourceFactory(this._resolvers,
[this._packages, ResourceProvider resourceProvider])
: _resourceProvider = resourceProvider != null
- ? resourceProvider
- : PhysicalResourceProvider.INSTANCE;
+ ? resourceProvider
+ : PhysicalResourceProvider.INSTANCE;
/**
* Return the [DartSdk] associated with this [SourceFactory], or `null` if there
@@ -642,16 +642,17 @@ class SourceFactory {
Map<String, List<Folder>> packageMap = <String, List<Folder>>{};
_packages.asMap().forEach((String name, Uri uri) {
if (uri.scheme == 'file' || uri.scheme == '' /* unspecified */) {
- packageMap[name] =
- <Folder>[_resourceProvider.getFolder(uri.toFilePath())];
+ packageMap[name] = <Folder>[
+ _resourceProvider.getFolder(uri.toFilePath())
+ ];
}
});
return packageMap;
}
// Default to the PackageMapUriResolver.
- PackageMapUriResolver resolver = _resolvers.firstWhere(
- (r) => r is PackageMapUriResolver, orElse: () => null);
+ PackageMapUriResolver resolver = _resolvers
+ .firstWhere((r) => r is PackageMapUriResolver, orElse: () => null);
return resolver != null ? resolver.packageMap : null;
}
@@ -814,22 +815,30 @@ class SourceFactory {
}
containedUri = containingSource.resolveRelativeUri(containedUri);
}
- // Now check .packages.
+
+ Uri actualUri = containedUri;
+
+ // Check .packages and update target and actual URIs as appropriate.
if (_packages != null && containedUri.scheme == 'package') {
Uri packageUri =
_packages.resolve(containedUri, notFound: (Uri packageUri) => null);
- // Ensure scheme is set.
- if (packageUri != null && packageUri.scheme == '') {
- packageUri = packageUri.replace(scheme: 'file');
+
+ if (packageUri != null) {
+ // Ensure scheme is set.
+ if (packageUri.scheme == '') {
+ packageUri = packageUri.replace(scheme: 'file');
+ }
+ containedUri = packageUri;
}
- containedUri = packageUri;
}
+
for (UriResolver resolver in _resolvers) {
- Source result = resolver.resolveAbsolute(containedUri);
+ Source result = resolver.resolveAbsolute(containedUri, actualUri);
if (result != null) {
return result;
}
}
+
return null;
}
}
@@ -1062,16 +1071,16 @@ abstract class UriResolver {
* resolved because the URI is invalid.
*
* @param uri the URI to be resolved
+ * @param actualUri the actual uri for this source -- if `null`, the value of [uri] will be used
* @return a [Source] representing the file to which given URI was resolved
*/
- Source resolveAbsolute(Uri uri);
+ Source resolveAbsolute(Uri uri, [Uri actualUri]);
/**
- * Return an absolute URI that represents the given source, or `null` if a valid URI cannot
- * be computed.
+ * Return an absolute URI that represents the given [source], or `null` if a
+ * valid URI cannot be computed.
*
- * @param source the source to get URI for
- * @return the absolute URI representing the given source
+ * The computation should be based solely on [source.fullName].
*/
Uri restoreAbsolute(Source source) => null;
}
« no previous file with comments | « packages/analyzer/lib/src/generated/sdk_io.dart ('k') | packages/analyzer/lib/src/generated/source_io.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698