Skip to content

Commit

Permalink
Add a quick fix for convert_to_super_parameters
Browse files Browse the repository at this point in the history
Change-Id: Ied50bcd6af6e0cf4871c8810c5b8466fa268bd86
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/237460
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
  • Loading branch information
bwilkerson authored and Commit Bot committed Mar 15, 2022
1 parent 094c598 commit 37e67cc
Show file tree
Hide file tree
Showing 7 changed files with 524 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -4,19 +4,33 @@

import 'package:analysis_server/src/services/correction/assist.dart';
import 'package:analysis_server/src/services/correction/dart/abstract_producer.dart';
import 'package:analysis_server/src/services/correction/fix.dart';
import 'package:analysis_server/src/utilities/extensions/range_factory.dart';
import 'package:analyzer/dart/analysis/features.dart';
import 'package:analyzer/dart/ast/ast.dart';
import 'package:analyzer/dart/element/element.dart';
import 'package:analyzer/source/source_range.dart';
import 'package:analyzer_plugin/utilities/assist/assist.dart';
import 'package:analyzer_plugin/utilities/change_builder/change_builder_core.dart';
import 'package:analyzer_plugin/utilities/fixes/fixes.dart';
import 'package:analyzer_plugin/utilities/range_factory.dart';

class ConvertToSuperParameters extends CorrectionProducer {
@override
AssistKind get assistKind => DartAssistKind.CONVERT_TO_SUPER_PARAMETERS;

@override
bool get canBeAppliedInBulk => true;

@override
bool get canBeAppliedToFile => true;

@override
FixKind get fixKind => DartFixKind.CONVERT_TO_SUPER_PARAMETERS;

@override
FixKind? get multiFixKind => DartFixKind.CONVERT_TO_SUPER_PARAMETERS_MULTI;

@override
Future<void> compute(ChangeBuilder builder) async {
if (!libraryElement.featureSet.isEnabled(Feature.super_parameters)) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1843,7 +1843,7 @@ LintCode.use_setters_to_change_properties:
LintCode.use_string_buffers:
status: needsEvaluation
LintCode.use_super_parameters:
status: needsFix
status: hasFix
LintCode.use_test_throws_matchers:
status: needsEvaluation
LintCode.use_to_and_as_if_applicable:
Expand Down
10 changes: 10 additions & 0 deletions pkg/analysis_server/lib/src/services/correction/fix.dart
Original file line number Diff line number Diff line change
Expand Up @@ -568,6 +568,16 @@ class DartFixKind {
DartFixKindPriority.IN_FILE,
'Convert to spreads everywhere in file',
);
static const CONVERT_TO_SUPER_PARAMETERS = FixKind(
'dart.fix.convert.toSuperParameters',
30,
'Convert to using super parameters',
);
static const CONVERT_TO_SUPER_PARAMETERS_MULTI = FixKind(
'dart.fix.convert.toSuperParameters.multi',
30,
'Convert to using super parameters everywhere in file',
);
static const CONVERT_TO_WHERE_TYPE = FixKind(
'dart.fix.convert.toWhereType',
DartFixKindPriority.DEFAULT,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,7 @@ import 'package:analysis_server/src/services/correction/dart/convert_to_package_
import 'package:analysis_server/src/services/correction/dart/convert_to_raw_string.dart';
import 'package:analysis_server/src/services/correction/dart/convert_to_relative_import.dart';
import 'package:analysis_server/src/services/correction/dart/convert_to_set_literal.dart';
import 'package:analysis_server/src/services/correction/dart/convert_to_super_parameters.dart';
import 'package:analysis_server/src/services/correction/dart/convert_to_where_type.dart';
import 'package:analysis_server/src/services/correction/dart/create_class.dart';
import 'package:analysis_server/src/services/correction/dart/create_constructor.dart';
Expand Down Expand Up @@ -674,6 +675,9 @@ class FixProcessor extends BaseProcessor {
LintNames.use_rethrow_when_possible: [
UseRethrow.newInstance,
],
LintNames.use_super_parameters: [
ConvertToSuperParameters.newInstance,
],
};

/// A map from error codes to a list of generators used to create multiple
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -158,4 +158,5 @@ class LintNames {
'use_key_in_widget_constructors';
static const String use_raw_strings = 'use_raw_strings';
static const String use_rethrow_when_possible = 'use_rethrow_when_possible';
static const String use_super_parameters = 'use_super_parameters';
}

0 comments on commit 37e67cc

Please sign in to comment.