Chromium Code Reviews| Index: pkg/analyzer/lib/src/task/options.dart |
| diff --git a/pkg/analyzer/lib/src/task/options.dart b/pkg/analyzer/lib/src/task/options.dart |
| index ebc5a4c2344cbc35fa9d6734d5ac16f120b6bcbf..6775408ba659b07e5ccbc77818d29682727c5271 100644 |
| --- a/pkg/analyzer/lib/src/task/options.dart |
| +++ b/pkg/analyzer/lib/src/task/options.dart |
| @@ -39,6 +39,7 @@ void configureContextOptions( |
| /// `analyzer` analysis options constants. |
| class AnalyzerOptions { |
| static const String analyzer = 'analyzer'; |
| + static const String enableAsync = 'enableAsync'; |
| static const String enableGenericMethods = 'enableGenericMethods'; |
| static const String enableSuperMixins = 'enableSuperMixins'; |
| static const String errors = 'errors'; |
| @@ -71,6 +72,7 @@ class AnalyzerOptions { |
| /// Supported `analyzer` language configuration options. |
| static const List<String> languageOptions = const [ |
| + enableAsync, |
| enableGenericMethods, |
| enableSuperMixins |
| ]; |
| @@ -425,6 +427,14 @@ class _OptionsProcessor { |
| void setLanguageOption( |
| AnalysisContext context, Object feature, Object value) { |
| + if (feature == AnalyzerOptions.enableAsync) { |
| + if (isFalse(value)) { |
| + AnalysisOptionsImpl options = |
| + new AnalysisOptionsImpl.from(context.analysisOptions); |
|
Brian Wilkerson
2016/01/08 18:43:47
Seems kind of wasteful to create a new options obj
danrubel
2016/01/08 20:45:51
I don't think this is a performance bottleneck, so
|
| + options.enableAsync = false; |
| + context.analysisOptions = options; |
| + } |
| + } |
| if (feature == AnalyzerOptions.enableSuperMixins) { |
| if (isTrue(value)) { |
| AnalysisOptionsImpl options = |