@@ -31,8 +31,8 @@ class AddMissingParameter extends MultiCorrectionProducer {
31
31
return const [];
32
32
}
33
33
34
- var includeOptional = executableParameters.optionalPositional .isEmpty &&
35
- executableParameters.named .isEmpty;
34
+ var includeOptional = executableParameters.optionalPositional2 .isEmpty &&
35
+ executableParameters.named2 .isEmpty;
36
36
return < ResolvedCorrectionProducer > [
37
37
_AddMissingRequiredPositionalParameter (executableParameters,
38
38
context: context),
@@ -56,10 +56,11 @@ class _AddMissingOptionalPositionalParameter extends _AddMissingParameter {
56
56
57
57
@override
58
58
Future <void > compute (ChangeBuilder builder) async {
59
- var prefix = _executableParameters.required .isNotEmpty ? ', [' : '[' ;
60
- if (_executableParameters.required .isNotEmpty) {
59
+ var prefix = _executableParameters.required2.isNotEmpty ? ', [' : '[' ;
60
+ if (_executableParameters.required2.isNotEmpty) {
61
+ var lastElement = _executableParameters.required2.last;
61
62
var prevNode = await _executableParameters
62
- .getParameterNode (_executableParameters. required .last );
63
+ .getParameterNode2 (lastElement.firstFragment ! );
63
64
await _addParameter (builder, prevNode? .end, prefix, ']' );
64
65
} else {
65
66
var parameterList = await _executableParameters.getParameterList ();
@@ -89,7 +90,7 @@ abstract class _AddMissingParameter extends ResolvedCorrectionProducer {
89
90
return ;
90
91
}
91
92
List <Expression > arguments = argumentList.arguments;
92
- var numRequired = _executableParameters.required .length;
93
+ var numRequired = _executableParameters.required2 .length;
93
94
if (numRequired >= arguments.length) {
94
95
return ;
95
96
}
@@ -118,15 +119,17 @@ class _AddMissingRequiredPositionalParameter extends _AddMissingParameter {
118
119
119
120
@override
120
121
Future <void > compute (ChangeBuilder builder) async {
121
- if (_executableParameters.required .isNotEmpty) {
122
+ if (_executableParameters.required2.isNotEmpty) {
123
+ var lastElement = _executableParameters.required2.last;
122
124
var prevNode = await _executableParameters
123
- .getParameterNode (_executableParameters. required .last );
125
+ .getParameterNode2 (lastElement.firstFragment ! );
124
126
await _addParameter (builder, prevNode? .end, ', ' , '' );
125
127
} else {
126
128
var parameterList = await _executableParameters.getParameterList ();
127
129
var offset = parameterList? .leftParenthesis.end;
128
- var suffix =
129
- _executableParameters.executable.parameters.isNotEmpty ? ', ' : '' ;
130
+ var suffix = _executableParameters.executable2.formalParameters.isNotEmpty
131
+ ? ', '
132
+ : '' ;
130
133
await _addParameter (builder, offset, '' , suffix);
131
134
}
132
135
}
0 commit comments