Skip to content

Commit 992cfb1

Browse files
srawlinsCommit Queue
authored andcommitted
analyzer: Deprecate AnalysisError.correction; simplify other final fields
Work towards #60635 * `AnalysisError._contextMessages` unnecessarily backed the public `contextMessages` getter; the field is final so it can be public itself. * `AnalysisError._correctionMessage` unnecessarily backed the public `correctionMessage` getter; the field is final so it can be public itself. Change-Id: If269d4ed590ef7df81d9b9e3be03766601526d7f Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/425620 Commit-Queue: Samuel Rawlins <[email protected]> Reviewed-by: Paul Berry <[email protected]>
1 parent fa35265 commit 992cfb1

File tree

11 files changed

+28
-35
lines changed

11 files changed

+28
-35
lines changed

pkg/analysis_server/lib/src/protocol_server.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -186,7 +186,7 @@ AnalysisError newAnalysisError_fromEngine(
186186
.map((message) => newDiagnosticMessage(result, message))
187187
.toList();
188188
}
189-
var correction = error.correction;
189+
var correction = error.correctionMessage;
190190
var url = errorCode.url;
191191
return AnalysisError(
192192
severity,

pkg/analysis_server/test/protocol_server_test.dart

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ class AnalysisErrorTest {
112112
offset: 10,
113113
length: 20,
114114
message: 'my message',
115-
correction: 'my correction',
115+
correctionMessage: 'my correction',
116116
);
117117
var error = newAnalysisError_fromEngine(result, engineError);
118118
expect(error.toJson(), {
@@ -331,7 +331,7 @@ class MockAnalysisError implements engine.AnalysisError {
331331
final int? _offset;
332332
final int? _length;
333333
final String? _message;
334-
final String? _correction;
334+
335335
final DiagnosticMessage? _problemMessage;
336336
final String? _correctionMessage;
337337

@@ -344,20 +344,18 @@ class MockAnalysisError implements engine.AnalysisError {
344344
int? offset,
345345
int? length,
346346
String? message,
347-
String? correction,
348347
DiagnosticMessage? problemMessage,
349348
String? correctionMessage,
350349
}) : _source = source,
351350
_diagnosticCode = errorCode,
352351
_offset = offset,
353352
_length = length,
354353
_message = message,
355-
_correction = correction,
356354
_problemMessage = problemMessage,
357355
_correctionMessage = correctionMessage;
358356

359357
@override
360-
String? get correction => _correction;
358+
String? get correction => null;
361359

362360
@override
363361
String? get correctionMessage => _correctionMessage;

pkg/analysis_server_plugin/lib/src/plugin_server.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -401,7 +401,7 @@ class PluginServer {
401401
_locationFor(currentUnit.unit, path, e),
402402
e.message,
403403
e.errorCode.name,
404-
correction: e.correction,
404+
correction: e.correctionMessage,
405405
// TODO(srawlins): Use a valid value here.
406406
hasFix: true,
407407
)

pkg/analyzer/CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
* Remove `ElementLocation` class, its values are not returned anymore.
77
* Deprecated `element2.dart` library, import `element.dart`.
88
* Deprecated `XyzElement2` classes, use `XyzElement` instead.
9+
* Deprecate `AnalysisError.correction` field; use
10+
`AnalysisError.correctionMessage` instead.
911

1012
## 7.4.1
1113
* Restore `InstanceElement.augmented` getter.

pkg/analyzer/api.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4351,7 +4351,7 @@ package:analyzer/error/error.dart:
43514351
forValues (constructor: AnalysisError Function({List<DiagnosticMessage> contextMessages, String? correctionMessage, Object? data, required ErrorCode errorCode, required int length, required String message, required int offset, required Source source}))
43524352
tmp (constructor: AnalysisError Function({List<Object?> arguments, List<DiagnosticMessage> contextMessages, Object? data, required ErrorCode errorCode, required int length, required int offset, required Source source}))
43534353
contextMessages (getter: List<DiagnosticMessage>)
4354-
correction (getter: String?)
4354+
correction (getter: String?, deprecated)
43554355
correctionMessage (getter: String?)
43564356
data (getter: Object?)
43574357
errorCode (getter: ErrorCode)

pkg/analyzer/lib/error/error.dart

Lines changed: 11 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -60,16 +60,14 @@ class AnalysisError implements Diagnostic {
6060
@override
6161
final DiagnosticMessage problemMessage;
6262

63-
/// The context messages associated with the problem. This list will be empty
64-
/// if there are no context messages.
65-
final List<DiagnosticMessage> _contextMessages;
63+
@override
64+
final List<DiagnosticMessage> contextMessages;
6665

6766
/// Data associated with this error, specific for [errorCode].
6867
final Object? data;
6968

70-
/// The correction to be displayed for this error, or `null` if there is no
71-
/// correction information for this error.
72-
String? _correctionMessage;
69+
@override
70+
final String? correctionMessage;
7371

7472
/// The source in which the error occurred, or `null` if unknown.
7573
final Source source;
@@ -81,12 +79,10 @@ class AnalysisError implements Diagnostic {
8179
required int length,
8280
required this.errorCode,
8381
required String message,
84-
String? correctionMessage,
85-
List<DiagnosticMessage> contextMessages = const [],
82+
this.correctionMessage,
83+
this.contextMessages = const [],
8684
this.data,
87-
}) : _correctionMessage = correctionMessage,
88-
_contextMessages = contextMessages,
89-
problemMessage = DiagnosticMessageImpl(
85+
}) : problemMessage = DiagnosticMessageImpl(
9086
filePath: source.fullName,
9187
length: length,
9288
message: message,
@@ -135,16 +131,11 @@ class AnalysisError implements Diagnostic {
135131
);
136132
}
137133

138-
@override
139-
List<DiagnosticMessage> get contextMessages => _contextMessages;
140-
141-
/// Return the template used to create the correction to be displayed for this
142-
/// error, or `null` if there is no correction information for this error. The
134+
/// The template used to create the correction to be displayed for this error,
135+
/// or `null` if there is no correction information for this error. The
143136
/// correction should indicate how the user can fix the error.
144-
String? get correction => _correctionMessage;
145-
146-
@override
147-
String? get correctionMessage => _correctionMessage;
137+
@Deprecated("Use 'correctionMessage' instead.")
138+
String? get correction => correctionMessage;
148139

149140
@override
150141
int get hashCode {

pkg/analyzer/lib/src/dart/analysis/driver.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2719,7 +2719,7 @@ class ErrorEncoding {
27192719
length: error.length,
27202720
uniqueName: error.errorCode.uniqueName,
27212721
message: error.message,
2722-
correction: error.correction ?? '',
2722+
correction: error.correctionMessage ?? '',
27232723
contextMessages: contextMessages,
27242724
);
27252725
}

pkg/analyzer/tool/api/generate.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ Future<String> computeApiTxtContents(String pkgPath) async {
4646
includedPaths: [packagePath],
4747
resourceProvider: provider,
4848
);
49-
var context = collection.contexts.single;
49+
var context = collection.contexts.first;
5050
var publicApi = ApiDescription();
5151
var stringBuffer = StringBuffer();
5252
printNodes(stringBuffer, await publicApi.build(context));

pkg/analyzer_cli/lib/src/error_formatter.dart

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -350,7 +350,7 @@ class HumanErrorFormatter extends ErrorFormatter {
350350
message: error.message,
351351
contextMessages: contextMessages,
352352
errorCode: error.errorCode.name.toLowerCase(),
353-
correction: error.correction,
353+
correction: error.correctionMessage,
354354
url: error.errorCode.url,
355355
),
356356
);
@@ -445,7 +445,8 @@ class JsonErrorFormatter extends ErrorFormatter {
445445
lineInfo,
446446
),
447447
'problemMessage': problemMessage.messageText(includeUrl: true),
448-
if (error.correction != null) 'correctionMessage': error.correction,
448+
if (error.correctionMessage != null)
449+
'correctionMessage': error.correctionMessage,
449450
if (contextMessages.isNotEmpty) 'contextMessages': contextMessages,
450451
if (url != null) 'documentation': url,
451452
});

pkg/analyzer_plugin/lib/utilities/analyzer_converter.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ class AnalyzerConverter {
6161
error.message,
6262
errorCode.name.toLowerCase(),
6363
contextMessages: contextMessages,
64-
correction: error.correction,
64+
correction: error.correctionMessage,
6565
hasFix: true);
6666
}
6767

0 commit comments

Comments
 (0)