CQ. ErrorReporter, use atOffset() instead of reportErrorForOffset()
Change-Id: I506f71d1e7aa95f1c62fca1746e4a86c78720336
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/353782
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Keerti Parthasarathy <keertip@google.com>
diff --git a/pkg/analysis_server/lib/src/services/correction/fix/data_driven/code_fragment_parser.dart b/pkg/analysis_server/lib/src/services/correction/fix/data_driven/code_fragment_parser.dart
index 9a8b876..2a238d4 100644
--- a/pkg/analysis_server/lib/src/services/correction/fix/data_driven/code_fragment_parser.dart
+++ b/pkg/analysis_server/lib/src/services/correction/fix/data_driven/code_fragment_parser.dart
@@ -80,8 +80,14 @@
}
accessors.add(accessor);
} else {
- errorReporter.reportErrorForOffset(TransformSetErrorCode.wrongToken,
- token.offset + delta, token.length, ['.', token.kind.displayName]);
+ errorReporter.atOffset(
+ offset: token.offset + delta,
+ length: token.length,
+ errorCode: TransformSetErrorCode.wrongToken,
+ arguments: ['.', token.kind.displayName],
+ contextMessages: null,
+ data: null,
+ );
return null;
}
}
@@ -106,8 +112,14 @@
var expression = _parseLogicalAndExpression();
if (currentIndex < _tokens.length) {
var token = _tokens[currentIndex];
- errorReporter.reportErrorForOffset(TransformSetErrorCode.unexpectedToken,
- token.offset + delta, token.length, [token.kind.displayName]);
+ errorReporter.atOffset(
+ offset: token.offset + delta,
+ length: token.length,
+ errorCode: TransformSetErrorCode.unexpectedToken,
+ arguments: [token.kind.displayName],
+ contextMessages: null,
+ data: null,
+ );
return null;
}
return expression;
@@ -140,16 +152,25 @@
offset = last.offset;
length = last.length;
}
- errorReporter.reportErrorForOffset(TransformSetErrorCode.missingToken,
- offset + delta, length, [validKindsDisplayString()]);
+ errorReporter.atOffset(
+ offset: offset + delta,
+ length: length,
+ errorCode: TransformSetErrorCode.missingToken,
+ arguments: [validKindsDisplayString()],
+ contextMessages: null,
+ data: null,
+ );
return null;
}
if (!validKinds.contains(token.kind)) {
- errorReporter.reportErrorForOffset(
- TransformSetErrorCode.wrongToken,
- token.offset + delta,
- token.length,
- [validKindsDisplayString(), token.kind.displayName]);
+ errorReporter.atOffset(
+ offset: token.offset + delta,
+ length: token.length,
+ errorCode: TransformSetErrorCode.wrongToken,
+ arguments: [validKindsDisplayString(), token.kind.displayName],
+ contextMessages: null,
+ data: null,
+ );
return null;
}
return token;
@@ -217,8 +238,14 @@
advance();
return TypeArgumentAccessor(argumentIndex);
} else {
- errorReporter.reportErrorForOffset(TransformSetErrorCode.unknownAccessor,
- token.offset + delta, token.length, [identifier]);
+ errorReporter.atOffset(
+ offset: token.offset + delta,
+ length: token.length,
+ errorCode: TransformSetErrorCode.unknownAccessor,
+ arguments: [identifier],
+ contextMessages: null,
+ data: null,
+ );
return null;
}
}
@@ -293,11 +320,14 @@
var variableName = token.lexeme;
var generator = variableScope.lookup(variableName);
if (generator == null) {
- errorReporter.reportErrorForOffset(
- TransformSetErrorCode.undefinedVariable,
- token.offset + delta,
- token.length,
- [variableName]);
+ errorReporter.atOffset(
+ offset: token.offset + delta,
+ length: token.length,
+ errorCode: TransformSetErrorCode.undefinedVariable,
+ arguments: [variableName],
+ contextMessages: null,
+ data: null,
+ );
return null;
}
return VariableReference(generator);
@@ -323,8 +353,14 @@
offset = token.offset + delta;
length = token.length;
}
- errorReporter.reportErrorForOffset(
- TransformSetErrorCode.expectedPrimary, offset, length);
+ errorReporter.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: TransformSetErrorCode.expectedPrimary,
+ arguments: null,
+ contextMessages: null,
+ data: null,
+ );
return null;
}
}
@@ -454,8 +490,14 @@
/// Report the presence of an invalid character at the given [offset].
Null _reportInvalidCharacter(int offset) {
- errorReporter.reportErrorForOffset(TransformSetErrorCode.invalidCharacter,
- offset + delta, 1, [content.substring(offset, offset + 1)]);
+ errorReporter.atOffset(
+ offset: offset + delta,
+ length: 1,
+ errorCode: TransformSetErrorCode.invalidCharacter,
+ arguments: [content.substring(offset, offset + 1)],
+ contextMessages: null,
+ data: null,
+ );
return null;
}
diff --git a/pkg/analysis_server/lib/src/services/correction/fix/data_driven/transform_set_parser.dart b/pkg/analysis_server/lib/src/services/correction/fix/data_driven/transform_set_parser.dart
index 04ec134..d60b2f0 100644
--- a/pkg/analysis_server/lib/src/services/correction/fix/data_driven/transform_set_parser.dart
+++ b/pkg/analysis_server/lib/src/services/correction/fix/data_driven/transform_set_parser.dart
@@ -190,10 +190,14 @@
}
var endIndex = template.indexOf(_closeComponent, variableStart + 2);
if (endIndex < 0) {
- errorReporter.reportErrorForOffset(
- TransformSetErrorCode.missingTemplateEnd,
- templateOffset + variableStart,
- 2);
+ errorReporter.atOffset(
+ offset: templateOffset + variableStart,
+ length: 2,
+ errorCode: TransformSetErrorCode.missingTemplateEnd,
+ arguments: null,
+ contextMessages: null,
+ data: null,
+ );
// Ignore the invalid component, treating it as if it extended to the
// end of the template.
return components;
@@ -201,11 +205,14 @@
var name = template.substring(variableStart + 2, endIndex).trim();
var generator = variableScope.lookup(name);
if (generator == null) {
- errorReporter.reportErrorForOffset(
- TransformSetErrorCode.undefinedVariable,
- templateOffset + template.indexOf(name, variableStart),
- name.length,
- [name]);
+ errorReporter.atOffset(
+ offset: templateOffset + template.indexOf(name, variableStart),
+ length: name.length,
+ errorCode: TransformSetErrorCode.undefinedVariable,
+ arguments: [name],
+ contextMessages: null,
+ data: null,
+ );
// Ignore the invalid component.
} else {
components.add(TemplateVariable(generator));
@@ -254,8 +261,14 @@
var span = e.span;
var offset = span?.start.offset ?? 0;
var length = span?.length ?? 0;
- errorReporter.reportErrorForOffset(
- TransformSetErrorCode.yamlSyntaxError, offset, length, [e.message]);
+ errorReporter.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: TransformSetErrorCode.yamlSyntaxError,
+ arguments: [e.message],
+ contextMessages: null,
+ data: null,
+ );
}
return null;
}
@@ -266,8 +279,14 @@
void _reportError(TransformSetErrorCode code, YamlNode node,
[List<String> arguments = const []]) {
var span = node.span;
- errorReporter.reportErrorForOffset(
- code, span.start.offset, span.length, arguments);
+ errorReporter.atOffset(
+ offset: span.start.offset,
+ length: span.length,
+ errorCode: code,
+ arguments: arguments,
+ contextMessages: null,
+ data: null,
+ );
}
/// Report that the value represented by the [node] does not have the
diff --git a/pkg/analyzer/lib/error/listener.dart b/pkg/analyzer/lib/error/listener.dart
index 68caab2..6613bca 100644
--- a/pkg/analyzer/lib/error/listener.dart
+++ b/pkg/analyzer/lib/error/listener.dart
@@ -180,8 +180,14 @@
// declaration. This might make it easier to be consistent.
if (constructor.name != null) {
var offset = constructor.returnType.offset;
- reportErrorForOffset(
- code, offset, constructor.name!.end - offset, arguments);
+ atOffset(
+ offset: offset,
+ length: constructor.name!.end - offset,
+ errorCode: code,
+ arguments: arguments,
+ contextMessages: null,
+ data: null,
+ );
} else {
atNode(
constructor.returnType,
@@ -212,6 +218,7 @@
/// Report an error with the given [errorCode] and [arguments]. The location
/// of the error is specified by the given [offset] and [length].
+ @Deprecated('Use atOffset() instead')
void reportErrorForOffset(
ErrorCode errorCode,
int offset,
@@ -234,7 +241,14 @@
/// of the error is specified by the given [span].
void reportErrorForSpan(ErrorCode errorCode, SourceSpan span,
[List<Object>? arguments]) {
- reportErrorForOffset(errorCode, span.start.offset, span.length, arguments);
+ atOffset(
+ offset: span.start.offset,
+ length: span.length,
+ errorCode: errorCode,
+ arguments: arguments,
+ contextMessages: null,
+ data: null,
+ );
}
/// Report an error with the given [errorCode] and [arguments]. The [token] is
@@ -268,7 +282,14 @@
@Deprecated('Use reportErrorForNode(), it will convert types as well')
void reportTypeErrorForNode(
ErrorCode errorCode, AstNode node, List<Object> arguments) {
- reportErrorForOffset(errorCode, node.offset, node.length, arguments);
+ atOffset(
+ offset: node.offset,
+ length: node.length,
+ errorCode: errorCode,
+ arguments: arguments,
+ contextMessages: null,
+ data: null,
+ );
}
/// Convert all [Element]s in the [arguments] into their display strings.
diff --git a/pkg/analyzer/lib/src/dart/constant/constant_verifier.dart b/pkg/analyzer/lib/src/dart/constant/constant_verifier.dart
index e5521bd..cb8da4d 100644
--- a/pkg/analyzer/lib/src/dart/constant/constant_verifier.dart
+++ b/pkg/analyzer/lib/src/dart/constant/constant_verifier.dart
@@ -276,12 +276,13 @@
switch (result) {
case InvalidConstant():
if (!result.avoidReporting) {
- _errorReporter.reportErrorForOffset(
- result.errorCode,
- result.offset,
- result.length,
- result.arguments,
- result.contextMessages,
+ _errorReporter.atOffset(
+ offset: result.offset,
+ length: result.length,
+ errorCode: result.errorCode,
+ arguments: result.arguments,
+ contextMessages: result.contextMessages,
+ data: null,
);
}
case DartObjectImpl():
diff --git a/pkg/analyzer/lib/src/dart/constant/evaluation.dart b/pkg/analyzer/lib/src/dart/constant/evaluation.dart
index 61cb894..2958f19 100644
--- a/pkg/analyzer/lib/src/dart/constant/evaluation.dart
+++ b/pkg/analyzer/lib/src/dart/constant/evaluation.dart
@@ -581,12 +581,13 @@
Constant evaluateAndReportInvalidConstant(AstNode node) {
var result = evaluateConstant(node);
if (result case InvalidConstant(avoidReporting: false)) {
- _errorReporter.reportErrorForOffset(
- result.errorCode,
- result.offset,
- result.length,
- result.arguments,
- result.contextMessages,
+ _errorReporter.atOffset(
+ offset: result.offset,
+ length: result.length,
+ errorCode: result.errorCode,
+ arguments: result.arguments,
+ contextMessages: result.contextMessages,
+ data: null,
);
}
return result;
@@ -1946,12 +1947,13 @@
// interaction with g3 more elegantly.
case InvalidConstant(isUnresolved: true):
if (!expressionValue.avoidReporting) {
- _errorReporter.reportErrorForOffset(
- expressionValue.errorCode,
- expressionValue.offset,
- expressionValue.length,
- expressionValue.arguments,
- expressionValue.contextMessages,
+ _errorReporter.atOffset(
+ offset: expressionValue.offset,
+ length: expressionValue.length,
+ errorCode: expressionValue.errorCode,
+ arguments: expressionValue.arguments,
+ contextMessages: expressionValue.contextMessages,
+ data: null,
);
}
return ConstantEvaluationEngine._unresolvedObject(
diff --git a/pkg/analyzer/lib/src/dart/resolver/binary_expression_resolver.dart b/pkg/analyzer/lib/src/dart/resolver/binary_expression_resolver.dart
index 44dfc0f..9133efa 100644
--- a/pkg/analyzer/lib/src/dart/resolver/binary_expression_resolver.dart
+++ b/pkg/analyzer/lib/src/dart/resolver/binary_expression_resolver.dart
@@ -125,7 +125,14 @@
? WarningCode.UNNECESSARY_NULL_COMPARISON_FALSE
: WarningCode.UNNECESSARY_NULL_COMPARISON_TRUE;
var offset = start.offset;
- _errorReporter.reportErrorForOffset(errorCode, offset, end.end - offset);
+ _errorReporter.atOffset(
+ offset: offset,
+ length: end.end - offset,
+ errorCode: errorCode,
+ arguments: null,
+ contextMessages: null,
+ data: null,
+ );
}
if (left is SimpleIdentifierImpl && right is NullLiteralImpl) {
diff --git a/pkg/analyzer/lib/src/dart/resolver/extension_member_resolver.dart b/pkg/analyzer/lib/src/dart/resolver/extension_member_resolver.dart
index ea00ba7..9bf1ac3 100644
--- a/pkg/analyzer/lib/src/dart/resolver/extension_member_resolver.dart
+++ b/pkg/analyzer/lib/src/dart/resolver/extension_member_resolver.dart
@@ -106,11 +106,11 @@
return extension.asResolutionResult;
},
(noneMoreSpecific) {
- _errorReporter.reportErrorForOffset(
- CompileTimeErrorCode.AMBIGUOUS_EXTENSION_MEMBER_ACCESS,
- nameEntity.offset,
- nameEntity.length,
- [
+ _errorReporter.atOffset(
+ offset: nameEntity.offset,
+ length: nameEntity.length,
+ errorCode: CompileTimeErrorCode.AMBIGUOUS_EXTENSION_MEMBER_ACCESS,
+ arguments: [
name,
noneMoreSpecific.map((e) {
var name = e.extension.name;
@@ -121,6 +121,8 @@
return "unnamed extension on '$type'";
}).commaSeparatedWithAnd,
],
+ contextMessages: null,
+ data: null,
);
return ResolutionResult.ambiguous;
},
diff --git a/pkg/analyzer/lib/src/dart/resolver/named_type_resolver.dart b/pkg/analyzer/lib/src/dart/resolver/named_type_resolver.dart
index 90fe457..2feb377 100644
--- a/pkg/analyzer/lib/src/dart/resolver/named_type_resolver.dart
+++ b/pkg/analyzer/lib/src/dart/resolver/named_type_resolver.dart
@@ -356,11 +356,13 @@
_ErrorHelper(errorReporter).reportNewWithNonType(node);
} else {
node.type = InvalidTypeImpl.instance;
- errorReporter.reportErrorForOffset(
- CompileTimeErrorCode.NOT_A_TYPE,
- importPrefix.offset,
- nameToken.end - importPrefix.offset,
- ['${importPrefix.name.lexeme}.${nameToken.lexeme}'],
+ errorReporter.atOffset(
+ offset: importPrefix.offset,
+ length: nameToken.end - importPrefix.offset,
+ errorCode: CompileTimeErrorCode.NOT_A_TYPE,
+ arguments: ['${importPrefix.name.lexeme}.${nameToken.lexeme}'],
+ contextMessages: null,
+ data: null,
);
}
}
@@ -413,19 +415,25 @@
var errorRange = _ErrorHelper._getErrorRange(node);
var constructorUsage = parent.parent;
if (constructorUsage is InstanceCreationExpression) {
- errorReporter.reportErrorForOffset(
- CompileTimeErrorCode
+ errorReporter.atOffset(
+ offset: errorRange.offset,
+ length: errorRange.length,
+ errorCode: CompileTimeErrorCode
.INSTANTIATE_TYPE_ALIAS_EXPANDS_TO_TYPE_PARAMETER,
- errorRange.offset,
- errorRange.length,
+ arguments: null,
+ contextMessages: null,
+ data: null,
);
} else if (constructorUsage is ConstructorDeclaration &&
constructorUsage.redirectedConstructor == parent) {
- errorReporter.reportErrorForOffset(
- CompileTimeErrorCode
+ errorReporter.atOffset(
+ offset: errorRange.offset,
+ length: errorRange.length,
+ errorCode: CompileTimeErrorCode
.REDIRECT_TO_TYPE_ALIAS_EXPANDS_TO_TYPE_PARAMETER,
- errorRange.offset,
- errorRange.length,
+ arguments: null,
+ contextMessages: null,
+ data: null,
);
} else {
throw UnimplementedError('${constructorUsage.runtimeType}');
@@ -450,10 +458,13 @@
}
if (errorCode != null) {
var errorRange = _ErrorHelper._getErrorRange(node);
- errorReporter.reportErrorForOffset(
- errorCode,
- errorRange.offset,
- errorRange.length,
+ errorReporter.atOffset(
+ offset: errorRange.offset,
+ length: errorRange.length,
+ errorCode: errorCode,
+ arguments: null,
+ contextMessages: null,
+ data: null,
);
hasErrorReported = true;
return InvalidTypeImpl.instance;
@@ -485,13 +496,15 @@
var instanceCreation = constructorName.parent;
if (instanceCreation is InstanceCreationExpression) {
final errorRange = _getErrorRange(node, skipImportPrefix: true);
- errorReporter.reportErrorForOffset(
- instanceCreation.isConst
+ errorReporter.atOffset(
+ offset: errorRange.offset,
+ length: errorRange.length,
+ errorCode: instanceCreation.isConst
? CompileTimeErrorCode.CONST_WITH_NON_TYPE
: CompileTimeErrorCode.NEW_WITH_NON_TYPE,
- errorRange.offset,
- errorRange.length,
- [node.name2.lexeme],
+ arguments: [node.name2.lexeme],
+ contextMessages: null,
+ data: null,
);
return true;
}
@@ -506,33 +519,39 @@
if (node.name2.lexeme == 'boolean') {
final errorRange = _getErrorRange(node, skipImportPrefix: true);
- errorReporter.reportErrorForOffset(
- CompileTimeErrorCode.UNDEFINED_CLASS_BOOLEAN,
- errorRange.offset,
- errorRange.length,
- [node.name2.lexeme],
+ errorReporter.atOffset(
+ offset: errorRange.offset,
+ length: errorRange.length,
+ errorCode: CompileTimeErrorCode.UNDEFINED_CLASS_BOOLEAN,
+ arguments: [node.name2.lexeme],
+ contextMessages: null,
+ data: null,
);
return;
}
if (_isTypeInCatchClause(node)) {
final errorRange = _getErrorRange(node);
- errorReporter.reportErrorForOffset(
- CompileTimeErrorCode.NON_TYPE_IN_CATCH_CLAUSE,
- errorRange.offset,
- errorRange.length,
- [node.name2.lexeme],
+ errorReporter.atOffset(
+ offset: errorRange.offset,
+ length: errorRange.length,
+ errorCode: CompileTimeErrorCode.NON_TYPE_IN_CATCH_CLAUSE,
+ arguments: [node.name2.lexeme],
+ contextMessages: null,
+ data: null,
);
return;
}
if (_isTypeInAsExpression(node)) {
final errorRange = _getErrorRange(node);
- errorReporter.reportErrorForOffset(
- CompileTimeErrorCode.CAST_TO_NON_TYPE,
- errorRange.offset,
- errorRange.length,
- [node.name2.lexeme],
+ errorReporter.atOffset(
+ offset: errorRange.offset,
+ length: errorRange.length,
+ errorCode: CompileTimeErrorCode.CAST_TO_NON_TYPE,
+ arguments: [node.name2.lexeme],
+ contextMessages: null,
+ data: null,
);
return;
}
@@ -540,18 +559,22 @@
if (_isTypeInIsExpression(node)) {
final errorRange = _getErrorRange(node);
if (element != null) {
- errorReporter.reportErrorForOffset(
- CompileTimeErrorCode.TYPE_TEST_WITH_NON_TYPE,
- errorRange.offset,
- errorRange.length,
- [node.name2.lexeme],
+ errorReporter.atOffset(
+ offset: errorRange.offset,
+ length: errorRange.length,
+ errorCode: CompileTimeErrorCode.TYPE_TEST_WITH_NON_TYPE,
+ arguments: [node.name2.lexeme],
+ contextMessages: null,
+ data: null,
);
} else {
- errorReporter.reportErrorForOffset(
- CompileTimeErrorCode.TYPE_TEST_WITH_UNDEFINED_NAME,
- errorRange.offset,
- errorRange.length,
- [node.name2.lexeme],
+ errorReporter.atOffset(
+ offset: errorRange.offset,
+ length: errorRange.length,
+ errorCode: CompileTimeErrorCode.TYPE_TEST_WITH_UNDEFINED_NAME,
+ arguments: [node.name2.lexeme],
+ contextMessages: null,
+ data: null,
);
}
return;
@@ -559,22 +582,26 @@
if (_isRedirectingConstructor(node)) {
final errorRange = _getErrorRange(node);
- errorReporter.reportErrorForOffset(
- CompileTimeErrorCode.REDIRECT_TO_NON_CLASS,
- errorRange.offset,
- errorRange.length,
- [node.name2.lexeme],
+ errorReporter.atOffset(
+ offset: errorRange.offset,
+ length: errorRange.length,
+ errorCode: CompileTimeErrorCode.REDIRECT_TO_NON_CLASS,
+ arguments: [node.name2.lexeme],
+ contextMessages: null,
+ data: null,
);
return;
}
if (_isTypeInTypeArgumentList(node)) {
final errorRange = _getErrorRange(node);
- errorReporter.reportErrorForOffset(
- CompileTimeErrorCode.NON_TYPE_AS_TYPE_ARGUMENT,
- errorRange.offset,
- errorRange.length,
- [node.name2.lexeme],
+ errorReporter.atOffset(
+ offset: errorRange.offset,
+ length: errorRange.length,
+ errorCode: CompileTimeErrorCode.NON_TYPE_AS_TYPE_ARGUMENT,
+ arguments: [node.name2.lexeme],
+ contextMessages: null,
+ data: null,
);
return;
}
@@ -607,11 +634,13 @@
if (element != null) {
final errorRange = _getErrorRange(node);
- errorReporter.reportErrorForOffset(
- CompileTimeErrorCode.NOT_A_TYPE,
- errorRange.offset,
- errorRange.length,
- [node.name2.lexeme],
+ errorReporter.atOffset(
+ offset: errorRange.offset,
+ length: errorRange.length,
+ errorCode: CompileTimeErrorCode.NOT_A_TYPE,
+ arguments: [node.name2.lexeme],
+ contextMessages: null,
+ data: null,
);
return;
}
@@ -625,11 +654,13 @@
}
final errorRange = _getErrorRange(node);
- errorReporter.reportErrorForOffset(
- CompileTimeErrorCode.UNDEFINED_CLASS,
- errorRange.offset,
- errorRange.length,
- [node.name2.lexeme],
+ errorReporter.atOffset(
+ offset: errorRange.offset,
+ length: errorRange.length,
+ errorCode: CompileTimeErrorCode.UNDEFINED_CLASS,
+ arguments: [node.name2.lexeme],
+ contextMessages: null,
+ data: null,
);
}
diff --git a/pkg/analyzer/lib/src/dart/resolver/property_element_resolver.dart b/pkg/analyzer/lib/src/dart/resolver/property_element_resolver.dart
index a9ed833..2c39d6c 100644
--- a/pkg/analyzer/lib/src/dart/resolver/property_element_resolver.dart
+++ b/pkg/analyzer/lib/src/dart/resolver/property_element_resolver.dart
@@ -372,7 +372,14 @@
var offset = leftBracket.offset;
var length = rightBracket.end - offset;
- errorReporter.reportErrorForOffset(errorCode, offset, length, arguments);
+ errorReporter.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: errorCode,
+ arguments: arguments,
+ contextMessages: null,
+ data: null,
+ );
}
PropertyElementResolverResult _resolve({
diff --git a/pkg/analyzer/lib/src/dart/resolver/resolution_visitor.dart b/pkg/analyzer/lib/src/dart/resolver/resolution_visitor.dart
index e1de80e..91f306d 100644
--- a/pkg/analyzer/lib/src/dart/resolver/resolution_visitor.dart
+++ b/pkg/analyzer/lib/src/dart/resolver/resolution_visitor.dart
@@ -1708,7 +1708,14 @@
final firstToken = namedType.importPrefix?.name ?? namedType.name2;
final offset = firstToken.offset;
final length = namedType.name2.end - offset;
- _errorReporter.reportErrorForOffset(errorCode, offset, length);
+ _errorReporter.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: errorCode,
+ arguments: null,
+ contextMessages: null,
+ data: null,
+ );
}
/// Resolve the types in the given list of type names.
diff --git a/pkg/analyzer/lib/src/error/best_practices_verifier.dart b/pkg/analyzer/lib/src/error/best_practices_verifier.dart
index de97fea..0e107ef 100644
--- a/pkg/analyzer/lib/src/error/best_practices_verifier.dart
+++ b/pkg/analyzer/lib/src/error/best_practices_verifier.dart
@@ -1083,10 +1083,13 @@
SyntacticEntity endEntity,
) {
var offset = startEntity.offset;
- _errorReporter.reportErrorForOffset(
- errorCode,
- offset,
- endEntity.end - offset,
+ _errorReporter.atOffset(
+ offset: offset,
+ length: endEntity.end - offset,
+ errorCode: errorCode,
+ arguments: null,
+ contextMessages: null,
+ data: null,
);
}
@@ -1112,10 +1115,13 @@
SyntacticEntity endEntity,
) {
var offset = startEntity.offset;
- _errorReporter.reportErrorForOffset(
- errorCode,
- offset,
- endEntity.end - offset,
+ _errorReporter.atOffset(
+ offset: offset,
+ length: endEntity.end - offset,
+ errorCode: errorCode,
+ arguments: null,
+ contextMessages: null,
+ data: null,
);
}
@@ -1747,11 +1753,14 @@
}
var errorEntity = node.errorEntity;
- _errorReporter.reportErrorForOffset(
- WarningCode.INVALID_USE_OF_INTERNAL_MEMBER,
- errorEntity.offset,
- errorEntity.length,
- [element.displayName]);
+ _errorReporter.atOffset(
+ offset: errorEntity.offset,
+ length: errorEntity.length,
+ errorCode: WarningCode.INVALID_USE_OF_INTERNAL_MEMBER,
+ arguments: [element.displayName],
+ contextMessages: null,
+ data: null,
+ );
}
_checkForOtherInvalidAccess(node, element);
@@ -1793,11 +1802,13 @@
node = nameToken;
}
- _errorReporter.reportErrorForOffset(
- WarningCode.INVALID_USE_OF_INTERNAL_MEMBER,
- node.offset,
- node.length,
- [name],
+ _errorReporter.atOffset(
+ offset: node.offset,
+ length: node.length,
+ errorCode: WarningCode.INVALID_USE_OF_INTERNAL_MEMBER,
+ arguments: [name],
+ contextMessages: null,
+ data: null,
);
}
}
@@ -1863,26 +1874,35 @@
return;
}
if (hasProtected) {
- _errorReporter.reportErrorForOffset(
- WarningCode.INVALID_USE_OF_PROTECTED_MEMBER,
- errorEntity.offset,
- errorEntity.length,
- [name, definingClass.source!.uri]);
+ _errorReporter.atOffset(
+ offset: errorEntity.offset,
+ length: errorEntity.length,
+ errorCode: WarningCode.INVALID_USE_OF_PROTECTED_MEMBER,
+ arguments: [name, definingClass.source!.uri],
+ contextMessages: null,
+ data: null,
+ );
}
if (isVisibleForTemplateApplied) {
- _errorReporter.reportErrorForOffset(
- WarningCode.INVALID_USE_OF_VISIBLE_FOR_TEMPLATE_MEMBER,
- errorEntity.offset,
- errorEntity.length,
- [name, definingClass.source!.uri]);
+ _errorReporter.atOffset(
+ offset: errorEntity.offset,
+ length: errorEntity.length,
+ errorCode: WarningCode.INVALID_USE_OF_VISIBLE_FOR_TEMPLATE_MEMBER,
+ arguments: [name, definingClass.source!.uri],
+ contextMessages: null,
+ data: null,
+ );
}
if (hasVisibleForTesting) {
- _errorReporter.reportErrorForOffset(
- WarningCode.INVALID_USE_OF_VISIBLE_FOR_TESTING_MEMBER,
- errorEntity.offset,
- errorEntity.length,
- [name, definingClass.source!.uri]);
+ _errorReporter.atOffset(
+ offset: errorEntity.offset,
+ length: errorEntity.length,
+ errorCode: WarningCode.INVALID_USE_OF_VISIBLE_FOR_TESTING_MEMBER,
+ arguments: [name, definingClass.source!.uri],
+ contextMessages: null,
+ data: null,
+ );
}
if (hasVisibleForOverriding) {
@@ -1897,11 +1917,14 @@
}
}
if (!validOverride) {
- _errorReporter.reportErrorForOffset(
- WarningCode.INVALID_USE_OF_VISIBLE_FOR_OVERRIDING_MEMBER,
- errorEntity.offset,
- errorEntity.length,
- [name]);
+ _errorReporter.atOffset(
+ offset: errorEntity.offset,
+ length: errorEntity.length,
+ errorCode: WarningCode.INVALID_USE_OF_VISIBLE_FOR_OVERRIDING_MEMBER,
+ arguments: [name],
+ contextMessages: null,
+ data: null,
+ );
}
}
}
diff --git a/pkg/analyzer/lib/src/error/correct_override.dart b/pkg/analyzer/lib/src/error/correct_override.dart
index 6bedb5a..5f385fb 100644
--- a/pkg/analyzer/lib/src/error/correct_override.dart
+++ b/pkg/analyzer/lib/src/error/correct_override.dart
@@ -125,17 +125,19 @@
// always named, so we can safely assume
// `_thisMember.enclosingElement3.name` and
// `superMember.enclosingElement3.name` are non-`null`.
- errorReporter.reportErrorForOffset(
- CompileTimeErrorCode.INVALID_OVERRIDE,
- errorNode.offset,
- errorNode.length,
- [
+ errorReporter.atOffset(
+ offset: errorNode.offset,
+ length: errorNode.length,
+ errorCode: CompileTimeErrorCode.INVALID_OVERRIDE,
+ arguments: [
_thisMember.name,
_thisMember.enclosingElement.name!,
_thisMember.type,
superMember.enclosingElement.name!,
superMember.type,
],
+ contextMessages: null,
+ data: null,
);
}
}
diff --git a/pkg/analyzer/lib/src/error/dead_code_verifier.dart b/pkg/analyzer/lib/src/error/dead_code_verifier.dart
index b9ae8164..b5c805d 100644
--- a/pkg/analyzer/lib/src/error/dead_code_verifier.dart
+++ b/pkg/analyzer/lib/src/error/dead_code_verifier.dart
@@ -234,10 +234,22 @@
doEnd = body.leftBracket.end;
whileOffset = body.rightBracket.offset;
}
- _errorReporter.reportErrorForOffset(
- WarningCode.DEAD_CODE, doOffset, doEnd - doOffset);
- _errorReporter.reportErrorForOffset(
- WarningCode.DEAD_CODE, whileOffset, whileEnd - whileOffset);
+ _errorReporter.atOffset(
+ offset: doOffset,
+ length: doEnd - doOffset,
+ errorCode: WarningCode.DEAD_CODE,
+ arguments: null,
+ contextMessages: null,
+ data: null,
+ );
+ _errorReporter.atOffset(
+ offset: whileOffset,
+ length: whileEnd - whileOffset,
+ errorCode: WarningCode.DEAD_CODE,
+ arguments: null,
+ contextMessages: null,
+ data: null,
+ );
offset = parent.semicolon.next!.offset;
if (parent.hasBreakStatement) {
offset = node.end;
@@ -257,8 +269,14 @@
var length = node.end - offset;
if (length > 0) {
- _errorReporter.reportErrorForOffset(
- WarningCode.DEAD_CODE, offset, length);
+ _errorReporter.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: WarningCode.DEAD_CODE,
+ arguments: null,
+ contextMessages: null,
+ data: null,
+ );
}
}
@@ -272,11 +290,13 @@
(first, last, errorCode, arguments) {
var offset = first.offset;
var length = last.end - offset;
- _errorReporter.reportErrorForOffset(
- errorCode,
- offset,
- length,
- arguments,
+ _errorReporter.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: errorCode,
+ arguments: arguments,
+ contextMessages: null,
+ data: null,
);
_deadCatchClauseRanges.add(SourceRange(offset, length));
},
@@ -362,8 +382,14 @@
var beginToken = updaters.beginToken;
var endToken = updaters.endToken;
if (beginToken != null && endToken != null) {
- _errorReporter.reportErrorForOffset(WarningCode.DEAD_CODE,
- beginToken.offset, endToken.end - beginToken.offset);
+ _errorReporter.atOffset(
+ offset: beginToken.offset,
+ length: endToken.end - beginToken.offset,
+ errorCode: WarningCode.DEAD_CODE,
+ arguments: null,
+ contextMessages: null,
+ data: null,
+ );
}
}
}
diff --git a/pkg/analyzer/lib/src/error/deprecated_member_use_verifier.dart b/pkg/analyzer/lib/src/error/deprecated_member_use_verifier.dart
index 2fead05..df58dba 100644
--- a/pkg/analyzer/lib/src/error/deprecated_member_use_verifier.dart
+++ b/pkg/analyzer/lib/src/error/deprecated_member_use_verifier.dart
@@ -345,13 +345,15 @@
message = message?.trim();
if (message == null || message.isEmpty || message == '.') {
- _errorReporter.reportErrorForOffset(
- _isLibraryInWorkspacePackage(library)
+ _errorReporter.atOffset(
+ offset: errorEntity.offset,
+ length: errorEntity.length,
+ errorCode: _isLibraryInWorkspacePackage(library)
? HintCode.DEPRECATED_MEMBER_USE_FROM_SAME_PACKAGE
: HintCode.DEPRECATED_MEMBER_USE,
- errorEntity.offset,
- errorEntity.length,
- [displayName],
+ arguments: [displayName],
+ contextMessages: null,
+ data: null,
);
} else {
if (!message.endsWith('.') &&
@@ -359,13 +361,15 @@
!message.endsWith('!')) {
message = '$message.';
}
- _errorReporter.reportErrorForOffset(
- _isLibraryInWorkspacePackage(library)
+ _errorReporter.atOffset(
+ offset: errorEntity.offset,
+ length: errorEntity.length,
+ errorCode: _isLibraryInWorkspacePackage(library)
? HintCode.DEPRECATED_MEMBER_USE_FROM_SAME_PACKAGE_WITH_MESSAGE
: HintCode.DEPRECATED_MEMBER_USE_WITH_MESSAGE,
- errorEntity.offset,
- errorEntity.length,
- [displayName, message],
+ arguments: [displayName, message],
+ contextMessages: null,
+ data: null,
);
}
}
diff --git a/pkg/analyzer/lib/src/error/doc_comment_verifier.dart b/pkg/analyzer/lib/src/error/doc_comment_verifier.dart
index e000af3..a9fb851 100644
--- a/pkg/analyzer/lib/src/error/doc_comment_verifier.dart
+++ b/pkg/analyzer/lib/src/error/doc_comment_verifier.dart
@@ -42,10 +42,13 @@
}
var configurations = docImport.import.configurations;
if (configurations.isNotEmpty) {
- _errorReporter.reportErrorForOffset(
- WarningCode.DOC_IMPORT_CANNOT_HAVE_CONFIGURATIONS,
- configurations.first.offset,
- configurations.last.end - configurations.first.offset,
+ _errorReporter.atOffset(
+ offset: configurations.first.offset,
+ length: configurations.last.end - configurations.first.offset,
+ errorCode: WarningCode.DOC_IMPORT_CANNOT_HAVE_CONFIGURATIONS,
+ arguments: null,
+ contextMessages: null,
+ data: null,
);
}
}
@@ -58,22 +61,26 @@
if (positionalArgumentCount < requiredCount) {
var gap = requiredCount - positionalArgumentCount;
if (gap == 1) {
- _errorReporter.reportErrorForOffset(
- WarningCode.DOC_DIRECTIVE_MISSING_ONE_ARGUMENT,
- tag.offset,
- tag.end - tag.offset,
- [tag.type.name, required.last.name],
+ _errorReporter.atOffset(
+ offset: tag.offset,
+ length: tag.end - tag.offset,
+ errorCode: WarningCode.DOC_DIRECTIVE_MISSING_ONE_ARGUMENT,
+ arguments: [tag.type.name, required.last.name],
+ contextMessages: null,
+ data: null,
);
} else if (gap == 2) {
var missingArguments = [
required[required.length - 2].name,
required.last.name,
];
- _errorReporter.reportErrorForOffset(
- WarningCode.DOC_DIRECTIVE_MISSING_TWO_ARGUMENTS,
- tag.offset,
- tag.end - tag.offset,
- [tag.type.name, ...missingArguments],
+ _errorReporter.atOffset(
+ offset: tag.offset,
+ length: tag.end - tag.offset,
+ errorCode: WarningCode.DOC_DIRECTIVE_MISSING_TWO_ARGUMENTS,
+ arguments: [tag.type.name, ...missingArguments],
+ contextMessages: null,
+ data: null,
);
} else if (gap == 3) {
var missingArguments = [
@@ -81,11 +88,13 @@
required[required.length - 2].name,
required.last.name,
];
- _errorReporter.reportErrorForOffset(
- WarningCode.DOC_DIRECTIVE_MISSING_THREE_ARGUMENTS,
- tag.offset,
- tag.end - tag.offset,
- [tag.type.name, ...missingArguments],
+ _errorReporter.atOffset(
+ offset: tag.offset,
+ length: tag.end - tag.offset,
+ errorCode: WarningCode.DOC_DIRECTIVE_MISSING_THREE_ARGUMENTS,
+ arguments: [tag.type.name, ...missingArguments],
+ contextMessages: null,
+ data: null,
);
}
}
@@ -99,21 +108,25 @@
if (positionalArgumentCount > requiredCount) {
var errorOffset = tag.positionalArguments[requiredCount].offset;
var errorLength = tag.positionalArguments.last.end - errorOffset;
- _errorReporter.reportErrorForOffset(
- WarningCode.DOC_DIRECTIVE_HAS_EXTRA_ARGUMENTS,
- errorOffset,
- errorLength,
- [tag.type.name, positionalArgumentCount, requiredCount],
+ _errorReporter.atOffset(
+ offset: errorOffset,
+ length: errorLength,
+ errorCode: WarningCode.DOC_DIRECTIVE_HAS_EXTRA_ARGUMENTS,
+ arguments: [tag.type.name, positionalArgumentCount, requiredCount],
+ contextMessages: null,
+ data: null,
);
}
for (var namedArgument in tag.namedArguments) {
if (!tag.type.namedParameters.containsNamed(namedArgument.name)) {
- _errorReporter.reportErrorForOffset(
- WarningCode.DOC_DIRECTIVE_HAS_UNEXPECTED_NAMED_ARGUMENT,
- namedArgument.offset,
- namedArgument.end - namedArgument.offset,
- [tag.type.name, namedArgument.name],
+ _errorReporter.atOffset(
+ offset: namedArgument.offset,
+ length: namedArgument.end - namedArgument.offset,
+ errorCode: WarningCode.DOC_DIRECTIVE_HAS_UNEXPECTED_NAMED_ARGUMENT,
+ arguments: [tag.type.name, namedArgument.name],
+ contextMessages: null,
+ data: null,
);
}
}
@@ -128,11 +141,13 @@
var argument = tag.positionalArguments[i];
void reportWrongFormat() {
- _errorReporter.reportErrorForOffset(
- WarningCode.DOC_DIRECTIVE_ARGUMENT_WRONG_FORMAT,
- argument.offset,
- argument.end - argument.offset,
- [parameter.name, parameter.expectedFormat.displayString],
+ _errorReporter.atOffset(
+ offset: argument.offset,
+ length: argument.end - argument.offset,
+ errorCode: WarningCode.DOC_DIRECTIVE_ARGUMENT_WRONG_FORMAT,
+ arguments: [parameter.name, parameter.expectedFormat.displayString],
+ contextMessages: null,
+ data: null,
);
}
diff --git a/pkg/analyzer/lib/src/error/ignore_validator.dart b/pkg/analyzer/lib/src/error/ignore_validator.dart
index ec1500a..1fc844e 100644
--- a/pkg/analyzer/lib/src/error/ignore_validator.dart
+++ b/pkg/analyzer/lib/src/error/ignore_validator.dart
@@ -126,15 +126,23 @@
for (var ignoredElement in duplicated) {
if (ignoredElement is DiagnosticName) {
var name = ignoredElement.name;
- _errorReporter.reportErrorForOffset(WarningCode.DUPLICATE_IGNORE,
- ignoredElement.offset, name.length, [name]);
+ _errorReporter.atOffset(
+ offset: ignoredElement.offset,
+ length: name.length,
+ errorCode: WarningCode.DUPLICATE_IGNORE,
+ arguments: [name],
+ contextMessages: null,
+ data: null,
+ );
list.remove(ignoredElement);
} else if (ignoredElement is DiagnosticType) {
- _errorReporter.reportErrorForOffset(
- WarningCode.DUPLICATE_IGNORE,
- ignoredElement.offset,
- ignoredElement.length,
- [ignoredElement.type],
+ _errorReporter.atOffset(
+ offset: ignoredElement.offset,
+ length: ignoredElement.length,
+ errorCode: WarningCode.DUPLICATE_IGNORE,
+ arguments: [ignoredElement.type],
+ contextMessages: null,
+ data: null,
);
list.remove(ignoredElement);
}
diff --git a/pkg/analyzer/lib/src/error/language_version_override_verifier.dart b/pkg/analyzer/lib/src/error/language_version_override_verifier.dart
index 86fd85f..aee08be 100644
--- a/pkg/analyzer/lib/src/error/language_version_override_verifier.dart
+++ b/pkg/analyzer/lib/src/error/language_version_override_verifier.dart
@@ -186,27 +186,39 @@
// language version override comment.
if (slashCount > 2) {
- _errorReporter.reportErrorForOffset(
- WarningCode.INVALID_LANGUAGE_VERSION_OVERRIDE_TWO_SLASHES,
- offset,
- length);
+ _errorReporter.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: WarningCode.INVALID_LANGUAGE_VERSION_OVERRIDE_TWO_SLASHES,
+ arguments: null,
+ contextMessages: null,
+ data: null,
+ );
return false;
}
if (!atSignPresent) {
- _errorReporter.reportErrorForOffset(
- WarningCode.INVALID_LANGUAGE_VERSION_OVERRIDE_AT_SIGN,
- offset,
- length);
+ _errorReporter.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: WarningCode.INVALID_LANGUAGE_VERSION_OVERRIDE_AT_SIGN,
+ arguments: null,
+ contextMessages: null,
+ data: null,
+ );
return false;
}
if (possibleDart != 'dart') {
// The 4 characters after `@` are "dart", but in the wrong case.
- _errorReporter.reportErrorForOffset(
- WarningCode.INVALID_LANGUAGE_VERSION_OVERRIDE_LOWER_CASE,
- offset,
- length);
+ _errorReporter.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: WarningCode.INVALID_LANGUAGE_VERSION_OVERRIDE_LOWER_CASE,
+ arguments: null,
+ contextMessages: null,
+ data: null,
+ );
return false;
}
@@ -214,20 +226,38 @@
comment.codeUnitAt(dartVersionSeparatorStartIndex) != 0x3D) {
// The separator between "@dart" and the version number is either not
// present, or is not a single "=" character.
- _errorReporter.reportErrorForOffset(
- WarningCode.INVALID_LANGUAGE_VERSION_OVERRIDE_EQUALS, offset, length);
+ _errorReporter.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: WarningCode.INVALID_LANGUAGE_VERSION_OVERRIDE_EQUALS,
+ arguments: null,
+ contextMessages: null,
+ data: null,
+ );
return false;
}
if (containsInvalidVersionNumberPrefix) {
- _errorReporter.reportErrorForOffset(
- WarningCode.INVALID_LANGUAGE_VERSION_OVERRIDE_PREFIX, offset, length);
+ _errorReporter.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: WarningCode.INVALID_LANGUAGE_VERSION_OVERRIDE_PREFIX,
+ arguments: null,
+ contextMessages: null,
+ data: null,
+ );
return false;
}
void reportInvalidNumber() {
- _errorReporter.reportErrorForOffset(
- WarningCode.INVALID_LANGUAGE_VERSION_OVERRIDE_NUMBER, offset, length);
+ _errorReporter.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: WarningCode.INVALID_LANGUAGE_VERSION_OVERRIDE_NUMBER,
+ arguments: null,
+ contextMessages: null,
+ data: null,
+ );
}
// Nothing preceding the version number makes this comment invalid. Check
@@ -259,10 +289,15 @@
// This comment is a valid language version override, except for trailing
// characters.
- _errorReporter.reportErrorForOffset(
- WarningCode.INVALID_LANGUAGE_VERSION_OVERRIDE_TRAILING_CHARACTERS,
- offset,
- length);
+ _errorReporter.atOffset(
+ offset: offset,
+ length: length,
+ errorCode:
+ WarningCode.INVALID_LANGUAGE_VERSION_OVERRIDE_TRAILING_CHARACTERS,
+ arguments: null,
+ contextMessages: null,
+ data: null,
+ );
return false;
}
@@ -287,10 +322,13 @@
var match = _overrideCommentLine.firstMatch(lexeme);
if (match != null) {
var atDartStart = lexeme.indexOf('@dart');
- _errorReporter.reportErrorForOffset(
- WarningCode.INVALID_LANGUAGE_VERSION_OVERRIDE_LOCATION,
- commentToken.offset + atDartStart,
- match.end - atDartStart,
+ _errorReporter.atOffset(
+ offset: commentToken.offset + atDartStart,
+ length: match.end - atDartStart,
+ errorCode: WarningCode.INVALID_LANGUAGE_VERSION_OVERRIDE_LOCATION,
+ arguments: null,
+ contextMessages: null,
+ data: null,
);
}
}
diff --git a/pkg/analyzer/lib/src/error/required_parameters_verifier.dart b/pkg/analyzer/lib/src/error/required_parameters_verifier.dart
index d1c393f..984f19a 100644
--- a/pkg/analyzer/lib/src/error/required_parameters_verifier.dart
+++ b/pkg/analyzer/lib/src/error/required_parameters_verifier.dart
@@ -123,11 +123,13 @@
String parameterName = parameter.name;
if (!_containsNamedExpression(
enclosingConstructor, arguments, parameterName)) {
- _errorReporter.reportErrorForOffset(
- CompileTimeErrorCode.MISSING_REQUIRED_ARGUMENT,
- errorNode.offset,
- errorNode.length,
- [parameterName],
+ _errorReporter.atOffset(
+ offset: errorNode.offset,
+ length: errorNode.length,
+ errorCode: CompileTimeErrorCode.MISSING_REQUIRED_ARGUMENT,
+ arguments: [parameterName],
+ contextMessages: null,
+ data: null,
);
}
}
@@ -139,18 +141,22 @@
enclosingConstructor, arguments, parameterName)) {
var reason = annotation.getReason(strictCasts: true);
if (reason != null) {
- _errorReporter.reportErrorForOffset(
- WarningCode.MISSING_REQUIRED_PARAM_WITH_DETAILS,
- errorNode.offset,
- errorNode.length,
- [parameterName, reason],
+ _errorReporter.atOffset(
+ offset: errorNode.offset,
+ length: errorNode.length,
+ errorCode: WarningCode.MISSING_REQUIRED_PARAM_WITH_DETAILS,
+ arguments: [parameterName, reason],
+ contextMessages: null,
+ data: null,
);
} else {
- _errorReporter.reportErrorForOffset(
- WarningCode.MISSING_REQUIRED_PARAM,
- errorNode.offset,
- errorNode.length,
- [parameterName],
+ _errorReporter.atOffset(
+ offset: errorNode.offset,
+ length: errorNode.length,
+ errorCode: WarningCode.MISSING_REQUIRED_PARAM,
+ arguments: [parameterName],
+ contextMessages: null,
+ data: null,
);
}
}
diff --git a/pkg/analyzer/lib/src/error/todo_finder.dart b/pkg/analyzer/lib/src/error/todo_finder.dart
index a7b8bed..9f90ab5 100644
--- a/pkg/analyzer/lib/src/error/todo_finder.dart
+++ b/pkg/analyzer/lib/src/error/todo_finder.dart
@@ -128,8 +128,14 @@
}
}
- _errorReporter.reportErrorForOffset(
- Todo.forKind(todoKind), offset, end - offset, [todoText]);
+ _errorReporter.atOffset(
+ offset: offset,
+ length: end - offset,
+ errorCode: Todo.forKind(todoKind),
+ arguments: [todoText],
+ contextMessages: null,
+ data: null,
+ );
}
return nextComment;
diff --git a/pkg/analyzer/lib/src/error/type_arguments_verifier.dart b/pkg/analyzer/lib/src/error/type_arguments_verifier.dart
index 2f4b3ce..67ca586 100644
--- a/pkg/analyzer/lib/src/error/type_arguments_verifier.dart
+++ b/pkg/analyzer/lib/src/error/type_arguments_verifier.dart
@@ -131,11 +131,13 @@
if (!_typeSystem.isSubtypeOf(typeArgument, bound)) {
final errorTarget = typeArgumentNodes?[i] ?? node.name;
- _errorReporter.reportErrorForOffset(
- CompileTimeErrorCode.TYPE_ARGUMENT_NOT_MATCHING_BOUNDS,
- errorTarget.offset,
- errorTarget.length,
- [typeArgument, typeParameter.name, bound],
+ _errorReporter.atOffset(
+ offset: errorTarget.offset,
+ length: errorTarget.length,
+ errorCode: CompileTimeErrorCode.TYPE_ARGUMENT_NOT_MATCHING_BOUNDS,
+ arguments: [typeArgument, typeParameter.name, bound],
+ contextMessages: null,
+ data: null,
);
}
}
diff --git a/pkg/analyzer/lib/src/error/unicode_text_verifier.dart b/pkg/analyzer/lib/src/error/unicode_text_verifier.dart
index 046e8b4..16b5454 100644
--- a/pkg/analyzer/lib/src/error/unicode_text_verifier.dart
+++ b/pkg/analyzer/lib/src/error/unicode_text_verifier.dart
@@ -30,7 +30,14 @@
? WarningCode.TEXT_DIRECTION_CODE_POINT_IN_LITERAL
: WarningCode.TEXT_DIRECTION_CODE_POINT_IN_COMMENT;
var code = codeUnit.toRadixString(16).toUpperCase();
- errorReporter.reportErrorForOffset(errorCode, offset, 1, [code]);
+ errorReporter.atOffset(
+ offset: offset,
+ length: 1,
+ errorCode: errorCode,
+ arguments: [code],
+ contextMessages: null,
+ data: null,
+ );
}
}
}
diff --git a/pkg/analyzer/lib/src/fasta/doc_comment_builder.dart b/pkg/analyzer/lib/src/fasta/doc_comment_builder.dart
index 999dc1b..1a3d74e 100644
--- a/pkg/analyzer/lib/src/fasta/doc_comment_builder.dart
+++ b/pkg/analyzer/lib/src/fasta/doc_comment_builder.dart
@@ -185,11 +185,13 @@
// `null`.
var openingTag = builder.openingTag;
if (openingTag != null) {
- _errorReporter?.reportErrorForOffset(
- WarningCode.DOC_DIRECTIVE_MISSING_CLOSING_TAG,
- openingTag.offset,
- openingTag.end - openingTag.offset,
- [openingTag.type.opposingName!],
+ _errorReporter?.atOffset(
+ offset: openingTag.offset,
+ length: openingTag.end - openingTag.offset,
+ errorCode: WarningCode.DOC_DIRECTIVE_MISSING_CLOSING_TAG,
+ arguments: [openingTag.type.opposingName!],
+ contextMessages: null,
+ data: null,
);
}
higherDirective.push(builder.build());
@@ -202,11 +204,13 @@
}
// No matching opening tag was found.
- _errorReporter?.reportErrorForOffset(
- WarningCode.DOC_DIRECTIVE_MISSING_OPENING_TAG,
- closingTag.offset,
- closingTag.end - closingTag.offset,
- [closingTag.type.name],
+ _errorReporter?.atOffset(
+ offset: closingTag.offset,
+ length: closingTag.end - closingTag.offset,
+ errorCode: WarningCode.DOC_DIRECTIVE_MISSING_OPENING_TAG,
+ arguments: [closingTag.type.name],
+ contextMessages: null,
+ data: null,
);
_pushDocDirective(SimpleDocDirective(closingTag));
}
@@ -282,11 +286,13 @@
// `null`.
var openingTag = builder.openingTag;
if (openingTag != null) {
- _errorReporter?.reportErrorForOffset(
- WarningCode.DOC_DIRECTIVE_MISSING_CLOSING_TAG,
- openingTag.offset,
- openingTag.end - openingTag.offset,
- [openingTag.type.opposingName!],
+ _errorReporter?.atOffset(
+ offset: openingTag.offset,
+ length: openingTag.end - openingTag.offset,
+ errorCode: WarningCode.DOC_DIRECTIVE_MISSING_CLOSING_TAG,
+ arguments: [openingTag.type.opposingName!],
+ contextMessages: null,
+ data: null,
);
}
_pushBlockDocDirectiveAndInnerDirectives(builder);
@@ -428,11 +434,13 @@
_pushDocDirective(parser.simpleDirective(DocDirectiveType.youtube));
return true;
}
- _errorReporter?.reportErrorForOffset(
- WarningCode.DOC_DIRECTIVE_UNKNOWN,
- _characterSequence._offset + nameIndex,
- nameEnd - nameIndex,
- [name],
+ _errorReporter?.atOffset(
+ offset: _characterSequence._offset + nameIndex,
+ length: nameEnd - nameIndex,
+ errorCode: WarningCode.DOC_DIRECTIVE_UNKNOWN,
+ arguments: [name],
+ contextMessages: null,
+ data: null,
);
return false;
}
@@ -1162,10 +1170,13 @@
// We've hit EOL without closing brace.
_end = _offset + index;
- _errorReporter?.reportErrorForOffset(
- WarningCode.DOC_DIRECTIVE_MISSING_CLOSING_BRACE,
- _offset + index - 1,
- 1,
+ _errorReporter?.atOffset(
+ offset: _offset + index - 1,
+ length: 1,
+ errorCode: WarningCode.DOC_DIRECTIVE_MISSING_CLOSING_BRACE,
+ arguments: null,
+ contextMessages: null,
+ data: null,
);
return (positionalArguments, namedArguments);
}
@@ -1197,20 +1208,26 @@
index++;
if (index == _length) {
// Found extra arguments and no closing brace.
- _errorReporter?.reportErrorForOffset(
- WarningCode.DOC_DIRECTIVE_MISSING_CLOSING_BRACE,
- _offset + index - 1,
- 1,
+ _errorReporter?.atOffset(
+ offset: _offset + index - 1,
+ length: 1,
+ errorCode: WarningCode.DOC_DIRECTIVE_MISSING_CLOSING_BRACE,
+ arguments: null,
+ contextMessages: null,
+ data: null,
);
break;
}
}
var errorLength = _offset + index - extraArgumentsOffset;
- _errorReporter?.reportErrorForOffset(
- WarningCode.DOC_DIRECTIVE_HAS_EXTRA_ARGUMENTS,
- extraArgumentsOffset,
- errorLength,
+ _errorReporter?.atOffset(
+ offset: extraArgumentsOffset,
+ length: errorLength,
+ errorCode: WarningCode.DOC_DIRECTIVE_HAS_EXTRA_ARGUMENTS,
+ arguments: null,
+ contextMessages: null,
+ data: null,
);
_end = _offset + index;
}
diff --git a/pkg/analyzer/lib/src/fasta/error_converter.dart b/pkg/analyzer/lib/src/fasta/error_converter.dart
index f4ca305..36b98aa 100644
--- a/pkg/analyzer/lib/src/fasta/error_converter.dart
+++ b/pkg/analyzer/lib/src/fasta/error_converter.dart
@@ -32,297 +32,483 @@
switch (analyzerCode) {
case "ASYNC_FOR_IN_WRONG_CONTEXT":
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.ASYNC_FOR_IN_WRONG_CONTEXT, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.ASYNC_FOR_IN_WRONG_CONTEXT,
+ );
return;
case "ASYNC_KEYWORD_USED_AS_IDENTIFIER":
- errorReporter?.reportErrorForOffset(
- ParserErrorCode.ASYNC_KEYWORD_USED_AS_IDENTIFIER, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ParserErrorCode.ASYNC_KEYWORD_USED_AS_IDENTIFIER,
+ );
return;
case "AWAIT_IN_WRONG_CONTEXT":
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.AWAIT_IN_WRONG_CONTEXT, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.AWAIT_IN_WRONG_CONTEXT,
+ );
return;
case "BUILT_IN_IDENTIFIER_AS_TYPE":
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.BUILT_IN_IDENTIFIER_AS_TYPE,
- offset,
- length,
- [lexeme()]);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.BUILT_IN_IDENTIFIER_AS_TYPE,
+ arguments: [lexeme()],
+ );
return;
case "CONCRETE_CLASS_WITH_ABSTRACT_MEMBER":
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.CONCRETE_CLASS_WITH_ABSTRACT_MEMBER,
- offset,
- length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.CONCRETE_CLASS_WITH_ABSTRACT_MEMBER,
+ );
return;
case "CONST_CONSTRUCTOR_WITH_BODY":
- errorReporter?.reportErrorForOffset(
- ParserErrorCode.CONST_CONSTRUCTOR_WITH_BODY, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ParserErrorCode.CONST_CONSTRUCTOR_WITH_BODY,
+ );
return;
case "CONST_NOT_INITIALIZED":
var name = arguments['name'] as String;
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.CONST_NOT_INITIALIZED, offset, length, [name]);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.CONST_NOT_INITIALIZED,
+ arguments: [name],
+ );
return;
case "DEFAULT_VALUE_IN_FUNCTION_TYPE":
- errorReporter?.reportErrorForOffset(
- ParserErrorCode.DEFAULT_VALUE_IN_FUNCTION_TYPE, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ParserErrorCode.DEFAULT_VALUE_IN_FUNCTION_TYPE,
+ );
return;
case "LABEL_UNDEFINED":
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.LABEL_UNDEFINED,
- offset,
- length,
- [arguments['name'] as Object]);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.LABEL_UNDEFINED,
+ arguments: [arguments['name'] as Object],
+ );
return;
case "EMPTY_ENUM_BODY":
- errorReporter?.reportErrorForOffset(
- ParserErrorCode.EMPTY_ENUM_BODY, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ParserErrorCode.EMPTY_ENUM_BODY,
+ );
return;
case "EXPECTED_CLASS_MEMBER":
- errorReporter?.reportErrorForOffset(
- ParserErrorCode.EXPECTED_CLASS_MEMBER, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ParserErrorCode.EXPECTED_CLASS_MEMBER,
+ );
return;
case "EXPECTED_EXECUTABLE":
- errorReporter?.reportErrorForOffset(
- ParserErrorCode.EXPECTED_EXECUTABLE, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ParserErrorCode.EXPECTED_EXECUTABLE,
+ );
return;
case "EXPECTED_STRING_LITERAL":
- errorReporter?.reportErrorForOffset(
- ParserErrorCode.EXPECTED_STRING_LITERAL, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ParserErrorCode.EXPECTED_STRING_LITERAL,
+ );
return;
case "EXPECTED_TOKEN":
- errorReporter?.reportErrorForOffset(ParserErrorCode.EXPECTED_TOKEN,
- offset, length, [arguments['string'] as Object]);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ParserErrorCode.EXPECTED_TOKEN,
+ arguments: [arguments['string'] as Object],
+ );
return;
case "EXPECTED_TYPE_NAME":
- errorReporter?.reportErrorForOffset(
- ParserErrorCode.EXPECTED_TYPE_NAME, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ParserErrorCode.EXPECTED_TYPE_NAME,
+ );
return;
case "FIELD_INITIALIZER_REDIRECTING_CONSTRUCTOR":
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.FIELD_INITIALIZER_REDIRECTING_CONSTRUCTOR,
- offset,
- length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode:
+ CompileTimeErrorCode.FIELD_INITIALIZER_REDIRECTING_CONSTRUCTOR,
+ );
return;
case "FINAL_NOT_INITIALIZED":
var name = arguments['name'] as String;
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.FINAL_NOT_INITIALIZED, offset, length, [name]);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.FINAL_NOT_INITIALIZED,
+ arguments: [name],
+ );
return;
case "FINAL_NOT_INITIALIZED_CONSTRUCTOR_1":
var name = arguments['name'] as String;
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.FINAL_NOT_INITIALIZED_CONSTRUCTOR_1,
- offset,
- length,
- [name]);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.FINAL_NOT_INITIALIZED_CONSTRUCTOR_1,
+ arguments: [name],
+ );
return;
case "GETTER_WITH_PARAMETERS":
- errorReporter?.reportErrorForOffset(
- ParserErrorCode.GETTER_WITH_PARAMETERS, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ParserErrorCode.GETTER_WITH_PARAMETERS,
+ );
return;
case "ILLEGAL_CHARACTER":
- errorReporter?.reportErrorForOffset(
- ScannerErrorCode.ILLEGAL_CHARACTER, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ScannerErrorCode.ILLEGAL_CHARACTER,
+ );
return;
case "INVALID_ASSIGNMENT":
var type1 = arguments['type'] as Object;
var type2 = arguments['type2'] as Object;
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.INVALID_ASSIGNMENT,
- offset,
- length,
- [type1, type2]);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.INVALID_ASSIGNMENT,
+ arguments: [type1, type2],
+ );
return;
case "INVALID_INLINE_FUNCTION_TYPE":
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.INVALID_INLINE_FUNCTION_TYPE, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.INVALID_INLINE_FUNCTION_TYPE,
+ );
return;
case "INVALID_LITERAL_IN_CONFIGURATION":
- errorReporter?.reportErrorForOffset(
- ParserErrorCode.INVALID_LITERAL_IN_CONFIGURATION, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ParserErrorCode.INVALID_LITERAL_IN_CONFIGURATION,
+ );
return;
case "IMPORT_OF_NON_LIBRARY":
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.IMPORT_OF_NON_LIBRARY, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.IMPORT_OF_NON_LIBRARY,
+ );
return;
case "INVALID_CAST_FUNCTION":
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.INVALID_CAST_FUNCTION, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.INVALID_CAST_FUNCTION,
+ );
return;
case "INVALID_CAST_FUNCTION_EXPR":
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.INVALID_CAST_FUNCTION_EXPR, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.INVALID_CAST_FUNCTION_EXPR,
+ );
return;
case "INVALID_CAST_LITERAL_LIST":
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.INVALID_CAST_LITERAL_LIST, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.INVALID_CAST_LITERAL_LIST,
+ );
return;
case "INVALID_CAST_LITERAL_MAP":
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.INVALID_CAST_LITERAL_MAP, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.INVALID_CAST_LITERAL_MAP,
+ );
return;
case "INVALID_CAST_LITERAL_SET":
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.INVALID_CAST_LITERAL_SET, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.INVALID_CAST_LITERAL_SET,
+ );
return;
case "INVALID_CAST_METHOD":
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.INVALID_CAST_METHOD, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.INVALID_CAST_METHOD,
+ );
return;
case "INVALID_CAST_NEW_EXPR":
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.INVALID_CAST_NEW_EXPR, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.INVALID_CAST_NEW_EXPR,
+ );
return;
case "INVALID_CODE_POINT":
- errorReporter?.reportErrorForOffset(
- ParserErrorCode.INVALID_CODE_POINT, offset, length, ['\\u{...}']);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ParserErrorCode.INVALID_CODE_POINT,
+ arguments: ['\\u{...}'],
+ );
return;
case "INVALID_GENERIC_FUNCTION_TYPE":
- errorReporter?.reportErrorForOffset(
- ParserErrorCode.INVALID_GENERIC_FUNCTION_TYPE, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ParserErrorCode.INVALID_GENERIC_FUNCTION_TYPE,
+ );
return;
case "INVALID_METHOD_OVERRIDE":
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.INVALID_OVERRIDE, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.INVALID_OVERRIDE,
+ );
return;
case "INVALID_MODIFIER_ON_SETTER":
- _reportByCode(CompileTimeErrorCode.INVALID_MODIFIER_ON_SETTER, message,
- offset, length);
+ _reportByCode(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.INVALID_MODIFIER_ON_SETTER,
+ message: message,
+ );
return;
case "INVALID_OPERATOR_FOR_SUPER":
- _reportByCode(ParserErrorCode.INVALID_OPERATOR_FOR_SUPER, message,
- offset, length);
+ _reportByCode(
+ offset: offset,
+ length: length,
+ errorCode: ParserErrorCode.INVALID_OPERATOR_FOR_SUPER,
+ message: message,
+ );
return;
case "MISSING_DIGIT":
- errorReporter?.reportErrorForOffset(
- ScannerErrorCode.MISSING_DIGIT, offset, length);
+ errorReporter?.atOffset(
+ errorCode: ScannerErrorCode.MISSING_DIGIT,
+ offset: offset,
+ length: length,
+ );
return;
case "MISSING_ENUM_BODY":
- errorReporter?.reportErrorForOffset(
- ParserErrorCode.MISSING_ENUM_BODY, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ParserErrorCode.MISSING_ENUM_BODY,
+ );
return;
case "MISSING_FUNCTION_BODY":
- errorReporter?.reportErrorForOffset(
- ParserErrorCode.MISSING_FUNCTION_BODY, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ParserErrorCode.MISSING_FUNCTION_BODY,
+ );
return;
case "MISSING_FUNCTION_PARAMETERS":
- errorReporter?.reportErrorForOffset(
- ParserErrorCode.MISSING_FUNCTION_PARAMETERS, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ParserErrorCode.MISSING_FUNCTION_PARAMETERS,
+ );
return;
case "MISSING_HEX_DIGIT":
- errorReporter?.reportErrorForOffset(
- ScannerErrorCode.MISSING_HEX_DIGIT, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ScannerErrorCode.MISSING_HEX_DIGIT,
+ );
return;
case "MISSING_IDENTIFIER":
- errorReporter?.reportErrorForOffset(
- ParserErrorCode.MISSING_IDENTIFIER, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ParserErrorCode.MISSING_IDENTIFIER,
+ );
return;
case "MISSING_METHOD_PARAMETERS":
- errorReporter?.reportErrorForOffset(
- ParserErrorCode.MISSING_METHOD_PARAMETERS, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ParserErrorCode.MISSING_METHOD_PARAMETERS,
+ );
return;
case "MISSING_STAR_AFTER_SYNC":
- errorReporter?.reportErrorForOffset(
- ParserErrorCode.MISSING_STAR_AFTER_SYNC, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ParserErrorCode.MISSING_STAR_AFTER_SYNC,
+ );
return;
case "MISSING_TYPEDEF_PARAMETERS":
- errorReporter?.reportErrorForOffset(
- ParserErrorCode.MISSING_TYPEDEF_PARAMETERS, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ParserErrorCode.MISSING_TYPEDEF_PARAMETERS,
+ );
return;
case "MULTIPLE_IMPLEMENTS_CLAUSES":
- errorReporter?.reportErrorForOffset(
- ParserErrorCode.MULTIPLE_IMPLEMENTS_CLAUSES, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ParserErrorCode.MULTIPLE_IMPLEMENTS_CLAUSES,
+ );
return;
case "NAMED_FUNCTION_EXPRESSION":
- errorReporter?.reportErrorForOffset(
- ParserErrorCode.NAMED_FUNCTION_EXPRESSION, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ParserErrorCode.NAMED_FUNCTION_EXPRESSION,
+ );
return;
case "NAMED_PARAMETER_OUTSIDE_GROUP":
- errorReporter?.reportErrorForOffset(
- ParserErrorCode.NAMED_PARAMETER_OUTSIDE_GROUP, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ParserErrorCode.NAMED_PARAMETER_OUTSIDE_GROUP,
+ );
return;
case "NON_PART_OF_DIRECTIVE_IN_PART":
- errorReporter?.reportErrorForOffset(
- ParserErrorCode.NON_PART_OF_DIRECTIVE_IN_PART, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ParserErrorCode.NON_PART_OF_DIRECTIVE_IN_PART,
+ );
return;
case "NON_SYNC_FACTORY":
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.NON_SYNC_FACTORY, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.NON_SYNC_FACTORY,
+ );
return;
case "POSITIONAL_AFTER_NAMED_ARGUMENT":
- errorReporter?.reportErrorForOffset(
- ParserErrorCode.POSITIONAL_AFTER_NAMED_ARGUMENT, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ParserErrorCode.POSITIONAL_AFTER_NAMED_ARGUMENT,
+ );
return;
case "RECURSIVE_CONSTRUCTOR_REDIRECT":
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.RECURSIVE_CONSTRUCTOR_REDIRECT,
- offset,
- length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.RECURSIVE_CONSTRUCTOR_REDIRECT,
+ );
return;
case "RETURN_IN_GENERATOR":
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.RETURN_IN_GENERATOR, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.RETURN_IN_GENERATOR,
+ );
return;
case "SUPER_INVOCATION_NOT_LAST":
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.SUPER_INVOCATION_NOT_LAST, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.SUPER_INVOCATION_NOT_LAST,
+ );
return;
case "SUPER_IN_REDIRECTING_CONSTRUCTOR":
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.SUPER_IN_REDIRECTING_CONSTRUCTOR,
- offset,
- length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.SUPER_IN_REDIRECTING_CONSTRUCTOR,
+ );
return;
case "UNDEFINED_CLASS":
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.UNDEFINED_CLASS, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.UNDEFINED_CLASS,
+ );
return;
case "UNDEFINED_GETTER":
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.UNDEFINED_GETTER, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.UNDEFINED_GETTER,
+ );
return;
case "UNDEFINED_METHOD":
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.UNDEFINED_METHOD, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.UNDEFINED_METHOD,
+ );
return;
case "UNDEFINED_SETTER":
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.UNDEFINED_SETTER, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.UNDEFINED_SETTER,
+ );
return;
case "UNEXPECTED_DOLLAR_IN_STRING":
- errorReporter?.reportErrorForOffset(
- ScannerErrorCode.UNEXPECTED_DOLLAR_IN_STRING, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ScannerErrorCode.UNEXPECTED_DOLLAR_IN_STRING,
+ );
return;
case "UNEXPECTED_TOKEN":
- errorReporter?.reportErrorForOffset(
- ParserErrorCode.UNEXPECTED_TOKEN, offset, length, [lexeme()]);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ParserErrorCode.UNEXPECTED_TOKEN,
+ arguments: [lexeme()],
+ );
return;
case "UNTERMINATED_MULTI_LINE_COMMENT":
- errorReporter?.reportErrorForOffset(
- ScannerErrorCode.UNTERMINATED_MULTI_LINE_COMMENT, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ScannerErrorCode.UNTERMINATED_MULTI_LINE_COMMENT,
+ );
return;
case "UNTERMINATED_STRING_LITERAL":
- errorReporter?.reportErrorForOffset(
- ScannerErrorCode.UNTERMINATED_STRING_LITERAL, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ScannerErrorCode.UNTERMINATED_STRING_LITERAL,
+ );
return;
case "WRONG_NUMBER_OF_PARAMETERS_FOR_SETTER":
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.WRONG_NUMBER_OF_PARAMETERS_FOR_SETTER,
- offset,
- length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.WRONG_NUMBER_OF_PARAMETERS_FOR_SETTER,
+ );
return;
case "WRONG_SEPARATOR_FOR_POSITIONAL_PARAMETER":
- errorReporter?.reportErrorForOffset(
- ParserErrorCode.WRONG_SEPARATOR_FOR_POSITIONAL_PARAMETER,
- offset,
- length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: ParserErrorCode.WRONG_SEPARATOR_FOR_POSITIONAL_PARAMETER,
+ );
return;
case "YIELD_IN_NON_GENERATOR":
- errorReporter?.reportErrorForOffset(
- CompileTimeErrorCode.YIELD_IN_NON_GENERATOR, offset, length);
+ errorReporter?.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: CompileTimeErrorCode.YIELD_IN_NON_GENERATOR,
+ );
return;
case "BUILT_IN_IDENTIFIER_IN_DECLARATION":
// Reported by [ErrorVerifier._checkForBuiltInIdentifierAsName].
@@ -393,12 +579,20 @@
ScannerErrorCode errorCode, int offset, List<Object>? arguments) {
// TODO(danrubel): update client to pass length in addition to offset.
int length = 1;
- errorReporter?.reportErrorForOffset(
- errorCode, offset, length, arguments ?? const []);
+ errorReporter?.atOffset(
+ errorCode: errorCode,
+ offset: offset,
+ length: length,
+ arguments: arguments ?? const [],
+ );
}
- void _reportByCode(
- ErrorCode errorCode, Message message, int offset, int length) {
+ void _reportByCode({
+ required int offset,
+ required int length,
+ required ErrorCode errorCode,
+ required Message message,
+ }) {
if (errorReporter != null) {
errorReporter!.reportError(
AnalysisError.tmp(
diff --git a/pkg/analyzer/lib/src/generated/error_verifier.dart b/pkg/analyzer/lib/src/generated/error_verifier.dart
index 854589e..297a6d3 100644
--- a/pkg/analyzer/lib/src/generated/error_verifier.dart
+++ b/pkg/analyzer/lib/src/generated/error_verifier.dart
@@ -3890,22 +3890,26 @@
for (var constantName in constantNames) {
int offset = statement.offset;
int end = statement.rightParenthesis.end;
- errorReporter.reportErrorForOffset(
- StaticWarningCode.MISSING_ENUM_CONSTANT_IN_SWITCH,
- offset,
- end - offset,
- [constantName],
+ errorReporter.atOffset(
+ offset: offset,
+ length: end - offset,
+ errorCode: StaticWarningCode.MISSING_ENUM_CONSTANT_IN_SWITCH,
+ arguments: [constantName],
+ contextMessages: null,
+ data: null,
);
}
if (typeSystem.isNullable(expressionType) && !hasCaseNull) {
int offset = statement.offset;
int end = statement.rightParenthesis.end;
- errorReporter.reportErrorForOffset(
- StaticWarningCode.MISSING_ENUM_CONSTANT_IN_SWITCH,
- offset,
- end - offset,
- ['null'],
+ errorReporter.atOffset(
+ offset: offset,
+ length: end - offset,
+ errorCode: StaticWarningCode.MISSING_ENUM_CONSTANT_IN_SWITCH,
+ arguments: ['null'],
+ contextMessages: null,
+ data: null,
);
}
}
@@ -4760,10 +4764,13 @@
if (redirectedElement != null &&
element.isConst &&
!redirectedElement.isConst) {
- errorReporter.reportErrorForOffset(
- CompileTimeErrorCode.REDIRECT_TO_NON_CONST_CONSTRUCTOR,
- errorEntity.offset,
- errorEntity.end - errorEntity.offset,
+ errorReporter.atOffset(
+ offset: errorEntity.offset,
+ length: errorEntity.end - errorEntity.offset,
+ errorCode: CompileTimeErrorCode.REDIRECT_TO_NON_CONST_CONSTRUCTOR,
+ arguments: null,
+ contextMessages: null,
+ data: null,
);
}
}
@@ -5134,7 +5141,14 @@
var name = constructor.name;
int offset = returnType.offset;
int length = (name != null ? name.end : returnType.end) - offset;
- errorReporter.reportErrorForOffset(errorCode, offset, length, arguments);
+ errorReporter.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: errorCode,
+ arguments: arguments,
+ contextMessages: null,
+ data: null,
+ );
}
if (!_currentLibrary.featureSet.isEnabled(Feature.super_parameters)) {
@@ -5233,11 +5247,13 @@
if (targetElement is InterfaceElement ||
targetElement is ExtensionElement ||
targetElement is TypeAliasElement) {
- errorReporter.reportErrorForOffset(
- errorCode,
- operator.offset,
- endToken.end - operator.offset,
- arguments,
+ errorReporter.atOffset(
+ offset: operator.offset,
+ length: endToken.end - operator.offset,
+ errorCode: errorCode,
+ arguments: arguments,
+ contextMessages: null,
+ data: null,
);
}
}
@@ -5258,11 +5274,13 @@
return;
}
}
- errorReporter.reportErrorForOffset(
- errorCode,
- operator.offset,
- endToken.end - operator.offset,
- arguments,
+ errorReporter.atOffset(
+ offset: operator.offset,
+ length: endToken.end - operator.offset,
+ errorCode: errorCode,
+ arguments: arguments,
+ contextMessages: null,
+ data: null,
);
}
}
@@ -5605,15 +5623,17 @@
TypeParameterElementImpl typeParameterImpl =
typeParameter as TypeParameterElementImpl;
if (!variance.greaterThanOrEqual(typeParameterImpl.variance)) {
- errorReporter.reportErrorForOffset(
- CompileTimeErrorCode.WRONG_TYPE_PARAMETER_VARIANCE_POSITION,
- errorTarget.offset,
- errorTarget.length,
- [
+ errorReporter.atOffset(
+ offset: errorTarget.offset,
+ length: errorTarget.length,
+ errorCode: CompileTimeErrorCode.WRONG_TYPE_PARAMETER_VARIANCE_POSITION,
+ arguments: [
typeParameterImpl.variance.toKeywordString(),
typeParameterImpl.name,
variance.toKeywordString()
],
+ contextMessages: null,
+ data: null,
);
}
}
@@ -5770,10 +5790,14 @@
if (parameter.isRequiredNamed) {
if (parameter.defaultValue != null) {
final errorTarget = _parameterName(parameter) ?? parameter;
- errorReporter.reportErrorForOffset(
- CompileTimeErrorCode.DEFAULT_VALUE_ON_REQUIRED_PARAMETER,
- errorTarget.offset,
- errorTarget.length,
+ errorReporter.atOffset(
+ offset: errorTarget.offset,
+ length: errorTarget.length,
+ errorCode:
+ CompileTimeErrorCode.DEFAULT_VALUE_ON_REQUIRED_PARAMETER,
+ arguments: null,
+ contextMessages: null,
+ data: null,
);
}
} else if (defaultValuesAreExpected) {
@@ -5796,8 +5820,14 @@
: CompileTimeErrorCode.MISSING_DEFAULT_VALUE_FOR_PARAMETER;
arguments = [parameterName?.lexeme ?? '?'];
}
- errorReporter.reportErrorForOffset(
- errorCode, errorTarget.offset, errorTarget.length, arguments);
+ errorReporter.atOffset(
+ offset: errorTarget.offset,
+ length: errorTarget.length,
+ errorCode: errorCode,
+ arguments: arguments,
+ contextMessages: null,
+ data: null,
+ );
}
}
}
diff --git a/pkg/analyzer/lib/src/generated/resolver.dart b/pkg/analyzer/lib/src/generated/resolver.dart
index 5215470..73ea22e 100644
--- a/pkg/analyzer/lib/src/generated/resolver.dart
+++ b/pkg/analyzer/lib/src/generated/resolver.dart
@@ -2239,10 +2239,14 @@
if (constructorElement.isFactory) {
final constructorName = node.arguments?.constructorSelector?.name;
final errorTarget = constructorName ?? node.name;
- errorReporter.reportErrorForOffset(
- CompileTimeErrorCode.ENUM_CONSTANT_INVOKES_FACTORY_CONSTRUCTOR,
- errorTarget.offset,
- errorTarget.length,
+ errorReporter.atOffset(
+ offset: errorTarget.offset,
+ length: errorTarget.length,
+ errorCode:
+ CompileTimeErrorCode.ENUM_CONSTANT_INVOKES_FACTORY_CONSTRUCTOR,
+ arguments: null,
+ contextMessages: null,
+ data: null,
);
}
} else {
diff --git a/pkg/analyzer/lib/src/hint/sdk_constraint_verifier.dart b/pkg/analyzer/lib/src/hint/sdk_constraint_verifier.dart
index b2cbecf4..a8257d1 100644
--- a/pkg/analyzer/lib/src/hint/sdk_constraint_verifier.dart
+++ b/pkg/analyzer/lib/src/hint/sdk_constraint_verifier.dart
@@ -203,14 +203,16 @@
throw UnimplementedError('(${target.runtimeType}) $target');
}
}
- _errorReporter.reportErrorForOffset(
- WarningCode.SDK_VERSION_SINCE,
- errorEntity.offset,
- errorEntity.length,
- [
+ _errorReporter.atOffset(
+ offset: errorEntity.offset,
+ length: errorEntity.length,
+ errorCode: WarningCode.SDK_VERSION_SINCE,
+ arguments: [
sinceSdkVersion.toString(),
_versionConstraint.toString(),
],
+ contextMessages: null,
+ data: null,
);
}
}
diff --git a/pkg/analyzer/lib/src/lint/linter.dart b/pkg/analyzer/lib/src/lint/linter.dart
index 64a13bd..acfde04 100644
--- a/pkg/analyzer/lib/src/lint/linter.dart
+++ b/pkg/analyzer/lib/src/lint/linter.dart
@@ -751,8 +751,14 @@
{List<Object> arguments = const [],
List<DiagnosticMessage>? contextMessages,
ErrorCode? errorCode}) {
- reporter.reportErrorForOffset(
- errorCode ?? lintCode, offset, length, arguments, contextMessages);
+ reporter.atOffset(
+ offset: offset,
+ length: length,
+ errorCode: errorCode ?? lintCode,
+ arguments: arguments,
+ contextMessages: contextMessages,
+ data: null,
+ );
}
void reportLintForToken(Token? token,
diff --git a/pkg/analyzer/lib/src/manifest/manifest_validator.dart b/pkg/analyzer/lib/src/manifest/manifest_validator.dart
index 9a84dbe..ce066d9 100644
--- a/pkg/analyzer/lib/src/manifest/manifest_validator.dart
+++ b/pkg/analyzer/lib/src/manifest/manifest_validator.dart
@@ -460,8 +460,14 @@
[List<Object>? arguments]) {
var span =
key == null ? node.sourceSpan! : node.attributes[key]!.sourceSpan;
- reporter.reportErrorForOffset(
- errorCode, span.start.offset, span.length, arguments);
+ reporter.atOffset(
+ offset: span.start.offset,
+ length: span.length,
+ errorCode: errorCode,
+ arguments: arguments,
+ contextMessages: null,
+ data: null,
+ );
}
/// Validate the 'activity' tags.
diff --git a/pkg/analyzer/lib/src/pubspec/pubspec_validator.dart b/pkg/analyzer/lib/src/pubspec/pubspec_validator.dart
index e605ac6..1b330cf 100644
--- a/pkg/analyzer/lib/src/pubspec/pubspec_validator.dart
+++ b/pkg/analyzer/lib/src/pubspec/pubspec_validator.dart
@@ -162,13 +162,13 @@
Object? data,
]) {
final span = node.span;
- reporter.reportErrorForOffset(
- errorCode,
- span.start.offset,
- span.length,
- arguments,
- messages,
- data,
+ reporter.atOffset(
+ offset: span.start.offset,
+ length: span.length,
+ errorCode: errorCode,
+ arguments: arguments,
+ contextMessages: messages,
+ data: data,
);
}
}
diff --git a/pkg/analyzer/lib/src/pubspec/validators/missing_dependency_validator.dart b/pkg/analyzer/lib/src/pubspec/validators/missing_dependency_validator.dart
index 96f2539..8b30299 100644
--- a/pkg/analyzer/lib/src/pubspec/validators/missing_dependency_validator.dart
+++ b/pkg/analyzer/lib/src/pubspec/validators/missing_dependency_validator.dart
@@ -133,13 +133,13 @@
Object? data,
]) {
final span = node.span;
- reporter.reportErrorForOffset(
- errorCode,
- span.start.offset,
- span.length,
- arguments,
- messages,
- data,
+ reporter.atOffset(
+ offset: span.start.offset,
+ length: span.length,
+ errorCode: errorCode,
+ arguments: arguments,
+ contextMessages: messages,
+ data: data,
);
}
}
diff --git a/pkg/analyzer/lib/src/pubspec/validators/name_validator.dart b/pkg/analyzer/lib/src/pubspec/validators/name_validator.dart
index aff8ed9..9f06e18 100644
--- a/pkg/analyzer/lib/src/pubspec/validators/name_validator.dart
+++ b/pkg/analyzer/lib/src/pubspec/validators/name_validator.dart
@@ -10,12 +10,26 @@
void nameValidator(PubspecValidationContext ctx) {
final contents = ctx.contents;
if (contents is! YamlMap) {
- ctx.reporter.reportErrorForOffset(PubspecWarningCode.MISSING_NAME, 0, 0);
+ ctx.reporter.atOffset(
+ offset: 0,
+ length: 0,
+ errorCode: PubspecWarningCode.MISSING_NAME,
+ arguments: null,
+ contextMessages: null,
+ data: null,
+ );
return;
}
var nameField = contents.nodes[PubspecField.NAME_FIELD];
if (nameField == null) {
- ctx.reporter.reportErrorForOffset(PubspecWarningCode.MISSING_NAME, 0, 0);
+ ctx.reporter.atOffset(
+ offset: 0,
+ length: 0,
+ errorCode: PubspecWarningCode.MISSING_NAME,
+ arguments: null,
+ contextMessages: null,
+ data: null,
+ );
} else if (nameField is! YamlScalar || nameField.value is! String) {
ctx.reportErrorForNode(nameField, PubspecWarningCode.NAME_NOT_STRING);
}
diff --git a/pkg/linter/lib/src/rules/comment_references.dart b/pkg/linter/lib/src/rules/comment_references.dart
index 13051cd..d48a3ca 100644
--- a/pkg/linter/lib/src/rules/comment_references.dart
+++ b/pkg/linter/lib/src/rules/comment_references.dart
@@ -108,8 +108,11 @@
var reference = comment.substring(leftIndex + 1, rightIndex);
if (_isParserSpecialCase(reference)) {
var nameOffset = token.offset + leftIndex + 1;
- rule.reporter.reportErrorForOffset(
- rule.lintCode, nameOffset, reference.length);
+ rule.reporter.atOffset(
+ offset: nameOffset,
+ length: reference.length,
+ errorCode: rule.lintCode,
+ );
}
if (rightIndex + 1 < comment.length &&
comment[rightIndex + 1] == ':') {
diff --git a/pkg/linter/lib/src/rules/lines_longer_than_80_chars.dart b/pkg/linter/lib/src/rules/lines_longer_than_80_chars.dart
index 33b5ae5..a5063f9 100644
--- a/pkg/linter/lib/src/rules/lines_longer_than_80_chars.dart
+++ b/pkg/linter/lib/src/rules/lines_longer_than_80_chars.dart
@@ -225,8 +225,11 @@
for (var line in longLines) {
if (allowedLines.contains(line.index + 1)) continue;
- rule.reporter
- .reportErrorForOffset(rule.lintCode, line.offset, line.length);
+ rule.reporter.atOffset(
+ offset: line.offset,
+ length: line.length,
+ errorCode: rule.lintCode,
+ );
}
}
}
diff --git a/pkg/linter/lib/src/rules/unnecessary_string_escapes.dart b/pkg/linter/lib/src/rules/unnecessary_string_escapes.dart
index d1ef00c..e1ab63f 100644
--- a/pkg/linter/lib/src/rules/unnecessary_string_escapes.dart
+++ b/pkg/linter/lib/src/rules/unnecessary_string_escapes.dart
@@ -93,7 +93,11 @@
for (var index in escapeIndexes) {
// case for '''___\'''' : without last backslash it leads a parsing error
if (contentsEnd != token.end && index + 2 == contentsEnd) continue;
- rule.reporter.reportErrorForOffset(rule.lintCode, index, 1);
+ rule.reporter.atOffset(
+ offset: index,
+ length: 1,
+ errorCode: rule.lintCode,
+ );
}
}
}
@@ -110,8 +114,11 @@
if (isSingleQuoted && current == '"' ||
!isSingleQuoted && current == "'" ||
!allowedEscapedChars.contains(current)) {
- rule.reporter
- .reportErrorForOffset(rule.lintCode, contentsOffset + i - 1, 1);
+ rule.reporter.atOffset(
+ offset: contentsOffset + i - 1,
+ length: 1,
+ errorCode: rule.lintCode,
+ );
}
}
if (isSingleQuoted ? current == "'" : current == '"') {