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

Unified Diff: pkg/analyzer/lib/src/dart/sdk/sdk.dart

Issue 2242963002: Add DartSdk.getLinkedBundle() and use it in PubSummaryManager. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 4 years, 4 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 | « pkg/analyzer/lib/source/embedder.dart ('k') | pkg/analyzer/lib/src/generated/sdk.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/analyzer/lib/src/dart/sdk/sdk.dart
diff --git a/pkg/analyzer/lib/src/dart/sdk/sdk.dart b/pkg/analyzer/lib/src/dart/sdk/sdk.dart
index 82d5842afc60ec2c1f03b9b564e64962a564584c..453e6d113e3529eaaff9ce180563480064e0b3be 100644
--- a/pkg/analyzer/lib/src/dart/sdk/sdk.dart
+++ b/pkg/analyzer/lib/src/dart/sdk/sdk.dart
@@ -62,6 +62,8 @@ abstract class AbstractDartSdk implements DartSdk {
*/
Map<String, Source> _uriToSourceMap = new HashMap<String, Source>();
+ PackageBundle _sdkBundle;
+
/**
* Set the [options] for this SDK analysis context. Throw [StateError] if the
* context has been already created.
@@ -82,7 +84,7 @@ abstract class AbstractDartSdk implements DartSdk {
_analysisContext.sourceFactory = factory;
if (_useSummary) {
bool strongMode = _analysisOptions?.strongMode ?? false;
- PackageBundle sdkBundle = getSummarySdkBundle(strongMode);
+ PackageBundle sdkBundle = getLinkedBundle();
if (sdkBundle != null) {
_analysisContext.resultProvider = new SdkSummaryResultProvider(
_analysisContext, sdkBundle, strongMode);
@@ -151,6 +153,13 @@ abstract class AbstractDartSdk implements DartSdk {
return null;
}
+ @override
+ PackageBundle getLinkedBundle() {
+ bool strongMode = _analysisOptions?.strongMode ?? false;
+ _sdkBundle ??= getSummarySdkBundle(strongMode);
+ return _sdkBundle;
+ }
+
String getRelativePathFromFile(File file);
@override
@@ -272,6 +281,9 @@ class EmbedderSdk extends AbstractDartSdk {
Map<String, String> get urlMappings => _urlMappings;
@override
+ PackageBundle getLinkedBundle() => null;
+
+ @override
String getRelativePathFromFile(File file) => file.path;
@override
« no previous file with comments | « pkg/analyzer/lib/source/embedder.dart ('k') | pkg/analyzer/lib/src/generated/sdk.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698