Skip to content

Commit 876752e

Browse files
pqCommit Queue
authored and
Commit Queue
committed
[CQ] add feature isEnabled utility
Change-Id: I267aee8da50ec073a28bdb22ebe5379d31b1dc91 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/403265 Reviewed-by: Brian Wilkerson <[email protected]> Auto-Submit: Phil Quitslund <[email protected]> Commit-Queue: Brian Wilkerson <[email protected]>
1 parent 1b04589 commit 876752e

10 files changed

+15
-13
lines changed

pkg/analysis_server/lib/src/services/correction/dart/add_key_to_constructors.dart

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ class AddKeyToConstructors extends ResolvedCorrectionProducer {
9595
}
9696
builder.write(className);
9797
builder.write('({');
98-
if (libraryElement2.featureSet.isEnabled(Feature.super_parameters)) {
98+
if (isEnabled(Feature.super_parameters)) {
9999
builder.write('super.key});');
100100
} else {
101101
builder.writeType(keyType);
@@ -115,9 +115,7 @@ class AddKeyToConstructors extends ResolvedCorrectionProducer {
115115
if (keyType == null) {
116116
return;
117117
}
118-
var superParameters = libraryElement2.featureSet.isEnabled(
119-
Feature.super_parameters,
120-
);
118+
var superParameters = isEnabled(Feature.super_parameters);
121119

122120
void writeKey(DartEditBuilder builder) {
123121
if (superParameters) {

pkg/analysis_server/lib/src/services/correction/dart/add_super_parameter.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ class AddSuperParameter extends ResolvedCorrectionProducer {
3333

3434
@override
3535
Future<void> compute(ChangeBuilder builder) async {
36-
if (!libraryElement2.featureSet.isEnabled(Feature.super_parameters)) {
36+
if (!isEnabled(Feature.super_parameters)) {
3737
return;
3838
}
3939

pkg/analysis_server/lib/src/services/correction/dart/convert_class_to_enum.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ class ConvertClassToEnum extends ResolvedCorrectionProducer {
3939

4040
@override
4141
Future<void> compute(ChangeBuilder builder) async {
42-
if (!libraryElement2.featureSet.isEnabled(Feature.enhanced_enums)) {
42+
if (!isEnabled(Feature.enhanced_enums)) {
4343
// If the library doesn't support enhanced_enums then the class can't be
4444
// converted.
4545
return;

pkg/analysis_server/lib/src/services/correction/dart/convert_to_if_case_statement.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ class ConvertToIfCaseStatement extends ResolvedCorrectionProducer {
2727

2828
@override
2929
Future<void> compute(ChangeBuilder builder) async {
30-
if (!libraryElement2.featureSet.isEnabled(Feature.patterns)) {
30+
if (!isEnabled(Feature.patterns)) {
3131
return;
3232
}
3333

pkg/analysis_server/lib/src/services/correction/dart/convert_to_super_parameters.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ class ConvertToSuperParameters extends ResolvedCorrectionProducer {
3636

3737
@override
3838
Future<void> compute(ChangeBuilder builder) async {
39-
if (!libraryElement2.featureSet.isEnabled(Feature.super_parameters)) {
39+
if (!isEnabled(Feature.super_parameters)) {
4040
// If the library doesn't support super_parameters then the change isn't
4141
// appropriate.
4242
return;

pkg/analysis_server/lib/src/services/correction/dart/convert_to_switch_statement.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ class ConvertIfStatementToSwitchStatement extends ResolvedCorrectionProducer {
2929

3030
@override
3131
Future<void> compute(ChangeBuilder builder) async {
32-
if (!libraryElement2.featureSet.isEnabled(Feature.patterns)) {
32+
if (!isEnabled(Feature.patterns)) {
3333
return;
3434
}
3535

pkg/analysis_server/lib/src/services/correction/dart/create_constructor_super.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ class _CreateConstructor extends ResolvedCorrectionProducer {
6767
var buffer = StringBuffer();
6868
buffer.write('super');
6969
var constructorName = _constructor.name3;
70-
if (libraryElement2.featureSet.isEnabled(Feature.super_parameters)) {
70+
if (isEnabled(Feature.super_parameters)) {
7171
if (constructorName != null && constructorName != 'new') {
7272
buffer.write('.');
7373
buffer.write(constructorName);
@@ -90,7 +90,7 @@ class _CreateConstructor extends ResolvedCorrectionProducer {
9090

9191
@override
9292
Future<void> compute(ChangeBuilder builder) async {
93-
if (libraryElement2.featureSet.isEnabled(Feature.super_parameters)) {
93+
if (isEnabled(Feature.super_parameters)) {
9494
await _computeWithSuperParameters(builder);
9595
} else {
9696
await _computeWithoutSuperParameters(builder);

pkg/analysis_server/lib/src/services/correction/dart/move_annotation_to_library_directive.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ class MoveAnnotationToLibraryDirective extends ResolvedCorrectionProducer {
4747
return;
4848
}
4949

50-
if (!libraryElement2.featureSet.isEnabled(Feature.unnamedLibraries)) {
50+
if (!isEnabled(Feature.unnamedLibraries)) {
5151
// If the library doesn't support unnamed libraries, then we cannot add
5252
// a new library directive; we don't know what to name it.
5353
return;

pkg/analysis_server/lib/src/services/correction/dart/move_doc_comment_to_library_directive.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ class MoveDocCommentToLibraryDirective extends ResolvedCorrectionProducer {
3737
var firstDirective = compilationUnit.directives.firstOrNull;
3838
if (firstDirective is LibraryDirective) {
3939
await _moveToExistingLibraryDirective(builder, comment, firstDirective);
40-
} else if (libraryElement2.featureSet.isEnabled(Feature.unnamedLibraries)) {
40+
} else if (isEnabled(Feature.unnamedLibraries)) {
4141
await _moveToNewLibraryDirective(builder, comment, compilationUnit);
4242
}
4343

pkg/analysis_server_plugin/lib/edit/dart/correction_producer.dart

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import 'package:analysis_server_plugin/edit/fix/dart_fix_context.dart';
1010
import 'package:analysis_server_plugin/src/utilities/selection.dart';
1111
import 'package:analyzer/dart/analysis/analysis_options.dart';
1212
import 'package:analyzer/dart/analysis/code_style_options.dart';
13+
import 'package:analyzer/dart/analysis/features.dart';
1314
import 'package:analyzer/dart/analysis/results.dart';
1415
import 'package:analyzer/dart/element/element2.dart';
1516
import 'package:analyzer/dart/element/nullability_suffix.dart';
@@ -613,6 +614,9 @@ abstract class ResolvedCorrectionProducer
613614
// We don't know.
614615
return null;
615616
}
617+
618+
bool isEnabled(Feature feature) =>
619+
libraryElement2.featureSet.isEnabled(feature);
616620
}
617621

618622
final class StubCorrectionProducerContext implements CorrectionProducerContext {

0 commit comments

Comments
 (0)