mirror of
https://github.com/dart-lang/sdk
synced 2024-09-16 03:07:49 +00:00
Remove DartSdk.analysisOptions getter/setter.
Change-Id: I6bdcd1d8c2e998bf4adbf26ddf533f5d649c73c3 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/162620 Reviewed-by: Samuel Rawlins <srawlins@google.com> Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
This commit is contained in:
parent
0567babb06
commit
c71ce5234d
|
@ -1035,7 +1035,7 @@ class ContextManagerImpl implements ContextManager {
|
|||
/// given [folder].
|
||||
SourceFactory _createSourceFactory(AnalysisOptions options, Folder folder) {
|
||||
var builder = callbacks.createContextBuilder(folder, options);
|
||||
return builder.createSourceFactory(folder.path, options);
|
||||
return builder.createSourceFactory(folder.path);
|
||||
}
|
||||
|
||||
/// Clean up and destroy the context associated with the given folder.
|
||||
|
@ -1398,7 +1398,7 @@ class ContextManagerImpl implements ContextManager {
|
|||
callbacks.createContextBuilder(info.folder, defaultContextOptions);
|
||||
var options = builder.getAnalysisOptions(contextRoot,
|
||||
contextRoot: driver.contextRoot);
|
||||
var factory = builder.createSourceFactory(contextRoot, options);
|
||||
var factory = builder.createSourceFactory(contextRoot);
|
||||
driver.configure(analysisOptions: options, sourceFactory: factory);
|
||||
callbacks.analysisOptionsUpdated(driver);
|
||||
}
|
||||
|
|
|
@ -38,7 +38,6 @@ Uint8List buildSdkSummary({
|
|||
resourceProvider,
|
||||
resourceProvider.getFolder(sdkPath),
|
||||
);
|
||||
sdk.analysisOptions = AnalysisOptionsImpl();
|
||||
|
||||
// Append libraries from the embedder.
|
||||
if (embedderYamlPath != null) {
|
||||
|
|
|
@ -114,7 +114,7 @@ class ContextBuilder {
|
|||
if (builderOptions.librarySummaryPaths != null) {
|
||||
summaryData = SummaryDataStore(builderOptions.librarySummaryPaths);
|
||||
}
|
||||
final sf = createSourceFactory(path, options, summaryData: summaryData);
|
||||
final sf = createSourceFactory(path, summaryData: summaryData);
|
||||
|
||||
AnalysisDriver driver = AnalysisDriver(
|
||||
analysisDriverScheduler,
|
||||
|
@ -198,11 +198,11 @@ class ContextBuilder {
|
|||
}
|
||||
}
|
||||
|
||||
SourceFactory createSourceFactory(String rootPath, AnalysisOptions options,
|
||||
SourceFactory createSourceFactory(String rootPath,
|
||||
{SummaryDataStore summaryData}) {
|
||||
Workspace workspace =
|
||||
ContextBuilder.createWorkspace(resourceProvider, rootPath, this);
|
||||
DartSdk sdk = findSdk(workspace, options);
|
||||
DartSdk sdk = findSdk(workspace);
|
||||
if (summaryData != null && sdk is SummaryBasedDartSdk) {
|
||||
summaryData.addBundle(null, sdk.bundle);
|
||||
}
|
||||
|
@ -220,10 +220,8 @@ class ContextBuilder {
|
|||
}
|
||||
|
||||
/// Return the SDK that should be used to analyze code. Use the given
|
||||
/// [workspace] and [analysisOptions] to locate the SDK.
|
||||
///
|
||||
/// TODO(scheglov) Remove [analysisOptions]?
|
||||
DartSdk findSdk(Workspace workspace, AnalysisOptions analysisOptions) {
|
||||
/// [workspace] to locate the SDK.
|
||||
DartSdk findSdk(Workspace workspace) {
|
||||
String summaryPath = builderOptions.dartSdkSummaryPath;
|
||||
if (summaryPath != null) {
|
||||
return SummaryBasedDartSdk(summaryPath, true,
|
||||
|
@ -235,12 +233,10 @@ class ContextBuilder {
|
|||
String sdkPath = sdkManager.defaultSdkDirectory;
|
||||
SdkDescription description = SdkDescription(sdkPath);
|
||||
folderSdk = sdkManager.getSdk(description, () {
|
||||
var sdk = FolderBasedDartSdk(
|
||||
return FolderBasedDartSdk(
|
||||
resourceProvider,
|
||||
resourceProvider.getFolder(sdkPath),
|
||||
);
|
||||
sdk.analysisOptions = analysisOptions;
|
||||
return sdk;
|
||||
});
|
||||
}
|
||||
|
||||
|
|
|
@ -35,33 +35,18 @@ abstract class AbstractDartSdk implements DartSdk {
|
|||
/// A mapping from Dart library URI's to the library represented by that URI.
|
||||
LibraryMap libraryMap = LibraryMap();
|
||||
|
||||
/// The [AnalysisOptions] to use to create the [context].
|
||||
AnalysisOptions _analysisOptions;
|
||||
|
||||
/// The [AnalysisContext] which is used for all of the sources in this SDK.
|
||||
SdkAnalysisContext _analysisContext;
|
||||
|
||||
/// The mapping from Dart URI's to the corresponding sources.
|
||||
final Map<String, Source> _uriToSourceMap = HashMap<String, Source>();
|
||||
|
||||
/// Return the analysis options for this SDK analysis context.
|
||||
AnalysisOptions get analysisOptions => _analysisOptions;
|
||||
|
||||
/// Set the [options] for this SDK analysis context. Throw [StateError] if
|
||||
/// the context has been already created.
|
||||
set analysisOptions(AnalysisOptions options) {
|
||||
if (_analysisContext != null) {
|
||||
throw StateError(
|
||||
'Analysis options cannot be changed after context creation.');
|
||||
}
|
||||
_analysisOptions = options;
|
||||
}
|
||||
|
||||
@override
|
||||
AnalysisContext get context {
|
||||
if (_analysisContext == null) {
|
||||
var factory = SourceFactory([DartUriResolver(this)]);
|
||||
_analysisContext = SdkAnalysisContext(_analysisOptions, factory);
|
||||
var analysisOptions = AnalysisOptionsImpl();
|
||||
_analysisContext = SdkAnalysisContext(analysisOptions, factory);
|
||||
}
|
||||
return _analysisContext;
|
||||
}
|
||||
|
|
|
@ -309,9 +309,7 @@ bar:${toUriStr('/pkg/bar')}
|
|||
newFolder('/workspace/bazel-genfiles');
|
||||
newFolder(projectPath);
|
||||
|
||||
AnalysisOptionsImpl options = AnalysisOptionsImpl();
|
||||
SourceFactoryImpl factory =
|
||||
builder.createSourceFactory(projectPath, options);
|
||||
SourceFactoryImpl factory = builder.createSourceFactory(projectPath);
|
||||
expect(factory.resolvers,
|
||||
contains(predicate((r) => r is BazelFileUriResolver)));
|
||||
expect(factory.resolvers,
|
||||
|
@ -326,9 +324,7 @@ bar:${toUriStr('/pkg/bar')}
|
|||
newFolder(projectPath);
|
||||
newFile(join(projectPath, '.packages'));
|
||||
|
||||
AnalysisOptionsImpl options = AnalysisOptionsImpl();
|
||||
SourceFactoryImpl factory =
|
||||
builder.createSourceFactory(projectPath, options);
|
||||
SourceFactoryImpl factory = builder.createSourceFactory(projectPath);
|
||||
expect(factory.resolvers,
|
||||
contains(predicate((r) => r is ResourceUriResolver)));
|
||||
expect(factory.resolvers,
|
||||
|
@ -356,9 +352,8 @@ embedded_libs:
|
|||
sky_engine:${resourceProvider.pathContext.toUri(skyEnginePath)}
|
||||
b:${resourceProvider.pathContext.toUri(packageB)}
|
||||
''');
|
||||
AnalysisOptionsImpl options = AnalysisOptionsImpl();
|
||||
|
||||
SourceFactory factory = builder.createSourceFactory(projectPath, options);
|
||||
SourceFactory factory = builder.createSourceFactory(projectPath);
|
||||
|
||||
Source dartSource = factory.forUri('dart:async');
|
||||
expect(dartSource, isNotNull);
|
||||
|
@ -385,9 +380,8 @@ b:${resourceProvider.pathContext.toUri(packageB)}
|
|||
a:${resourceProvider.pathContext.toUri(packageA)}
|
||||
b:${resourceProvider.pathContext.toUri(packageB)}
|
||||
''');
|
||||
AnalysisOptionsImpl options = AnalysisOptionsImpl();
|
||||
|
||||
SourceFactory factory = builder.createSourceFactory(projectPath, options);
|
||||
SourceFactory factory = builder.createSourceFactory(projectPath);
|
||||
|
||||
Source dartSource = factory.forUri('dart:core');
|
||||
expect(dartSource, isNotNull);
|
||||
|
@ -486,12 +480,12 @@ b:${resourceProvider.pathContext.toUri(packageB)}
|
|||
}
|
||||
|
||||
void test_findSdk_noPackageMap() {
|
||||
DartSdk sdk = builder.findSdk(null, AnalysisOptionsImpl());
|
||||
DartSdk sdk = builder.findSdk(null);
|
||||
expect(sdk, isNotNull);
|
||||
}
|
||||
|
||||
void test_findSdk_noPackageMap_html_strong() {
|
||||
DartSdk sdk = builder.findSdk(null, AnalysisOptionsImpl());
|
||||
DartSdk sdk = builder.findSdk(null);
|
||||
expect(sdk, isNotNull);
|
||||
Source htmlSource = sdk.mapDartUri('dart:html');
|
||||
expect(htmlSource.fullName,
|
||||
|
|
|
@ -127,7 +127,7 @@ abstract class ContextResolutionTest
|
|||
with ResourceProviderMixin, ResolutionTest {
|
||||
static bool _lintRulesAreRegistered = false;
|
||||
|
||||
final ByteStore _byteStore = MemoryByteStore();
|
||||
static final ByteStore _byteStore = MemoryByteStore();
|
||||
|
||||
Map<String, String> _declaredVariables = {};
|
||||
AnalysisContextCollection _analysisContextCollection;
|
||||
|
|
|
@ -5,7 +5,6 @@
|
|||
import 'package:analyzer/file_system/file_system.dart';
|
||||
import 'package:analyzer/src/context/builder.dart' show EmbedderYamlLocator;
|
||||
import 'package:analyzer/src/dart/sdk/sdk.dart';
|
||||
import 'package:analyzer/src/generated/engine.dart';
|
||||
import 'package:analyzer/src/generated/java_engine_io.dart';
|
||||
import 'package:analyzer/src/generated/sdk.dart';
|
||||
import 'package:analyzer/src/generated/source.dart';
|
||||
|
@ -135,24 +134,6 @@ class FolderBasedDartSdkTest with ResourceProviderMixin {
|
|||
})));
|
||||
}
|
||||
|
||||
void test_analysisOptions_afterContextCreation() {
|
||||
FolderBasedDartSdk sdk = _createDartSdk();
|
||||
sdk.context;
|
||||
expect(() {
|
||||
sdk.analysisOptions = AnalysisOptionsImpl();
|
||||
}, throwsStateError);
|
||||
}
|
||||
|
||||
void test_analysisOptions_beforeContextCreation() {
|
||||
FolderBasedDartSdk sdk = _createDartSdk();
|
||||
sdk.analysisOptions = AnalysisOptionsImpl();
|
||||
sdk.context;
|
||||
// cannot change "analysisOptions" in the context
|
||||
expect(() {
|
||||
sdk.context.analysisOptions = AnalysisOptionsImpl();
|
||||
}, throwsStateError);
|
||||
}
|
||||
|
||||
void test_creation() {
|
||||
FolderBasedDartSdk sdk = _createDartSdk();
|
||||
expect(sdk, isNotNull);
|
||||
|
|
|
@ -439,7 +439,6 @@ class Driver with HasContextMixin implements CommandLineStarter {
|
|||
} else {
|
||||
// The embedder uri resolver has mappings, use it instead of the default
|
||||
// Dart SDK uri resolver.
|
||||
embedderSdk.analysisOptions = analysisOptions;
|
||||
resolvers.add(DartUriResolver(embedderSdk));
|
||||
}
|
||||
}
|
||||
|
@ -648,10 +647,10 @@ class Driver with HasContextMixin implements CommandLineStarter {
|
|||
sdk = SummaryBasedDartSdk(options.dartSdkSummaryPath, true);
|
||||
} else {
|
||||
var dartSdkPath = options.dartSdkPath;
|
||||
var dartSdk = FolderBasedDartSdk(
|
||||
resourceProvider, resourceProvider.getFolder(dartSdkPath));
|
||||
dartSdk.analysisOptions = analysisOptions;
|
||||
sdk = dartSdk;
|
||||
sdk = FolderBasedDartSdk(
|
||||
resourceProvider,
|
||||
resourceProvider.getFolder(dartSdkPath),
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue