diff --git a/pkg/analyzer/lib/dart/analysis/analysis_context.dart b/pkg/analyzer/lib/dart/analysis/analysis_context.dart index 3fdecdd6e57..4c4d1205d41 100644 --- a/pkg/analyzer/lib/dart/analysis/analysis_context.dart +++ b/pkg/analyzer/lib/dart/analysis/analysis_context.dart @@ -6,6 +6,7 @@ import 'package:analyzer/dart/analysis/context_root.dart'; import 'package:analyzer/dart/analysis/session.dart'; import 'package:analyzer/file_system/file_system.dart'; import 'package:analyzer/src/generated/engine.dart'; +import 'package:meta/meta.dart'; /// A representation of a body of code and the context in which the code is to /// be analyzed. @@ -61,5 +62,9 @@ abstract class AnalysisContext { void changeFile(String path); /// Get the [AnalysisOptions] instance for the given [file]. + /// + /// NOTE: this API is experimental and subject to change in a future + /// release (see https://github.com/dart-lang/sdk/issues/53876 for context). + @experimental AnalysisOptions getAnalysisOptionsForFile(File file); } diff --git a/pkg/analyzer/lib/src/dart/analysis/driver.dart b/pkg/analyzer/lib/src/dart/analysis/driver.dart index 3088786d31e..c277fa8ff61 100644 --- a/pkg/analyzer/lib/src/dart/analysis/driver.dart +++ b/pkg/analyzer/lib/src/dart/analysis/driver.dart @@ -56,6 +56,7 @@ import 'package:analyzer/src/utilities/extensions/async.dart'; import 'package:analyzer/src/utilities/extensions/collection.dart'; import 'package:analyzer/src/utilities/extensions/string.dart'; import 'package:analyzer/src/utilities/uri_cache.dart'; +import 'package:meta/meta.dart'; /// This class computes analysis results for Dart files. /// @@ -700,6 +701,9 @@ class AnalysisDriver { return completer.future; } + /// NOTE: this API is experimental and subject to change in a future + /// release (see https://github.com/dart-lang/sdk/issues/53876 for context). + @experimental AnalysisOptionsImpl getAnalysisOptionsForFile(File file) => analysisOptionsMap.getOptions(file); diff --git a/pkg/analyzer/lib/src/generated/engine.dart b/pkg/analyzer/lib/src/generated/engine.dart index 5e273d1445a..f29293861f3 100644 --- a/pkg/analyzer/lib/src/generated/engine.dart +++ b/pkg/analyzer/lib/src/generated/engine.dart @@ -20,6 +20,7 @@ import 'package:analyzer/src/dart/analysis/experiments.dart'; import 'package:analyzer/src/generated/source.dart' show SourceFactory; import 'package:analyzer/src/services/lint.dart'; import 'package:analyzer/src/summary/api_signature.dart'; +import 'package:meta/meta.dart'; import 'package:pub_semver/pub_semver.dart'; export 'package:analyzer/dart/analysis/analysis_options.dart'; @@ -82,6 +83,10 @@ abstract class AnalysisContext { SourceFactory get sourceFactory; /// Get the [AnalysisOptions] instance for the given [file]. + /// + /// NOTE: this API is experimental and subject to change in a future + /// release (see https://github.com/dart-lang/sdk/issues/53876 for context). + @experimental AnalysisOptions getAnalysisOptionsForFile(File file); }