convertDiagnosticMessage method
Convert the diagnostic message
from the 'analyzer' package to an
analysis error defined by the plugin API. If a lineInfo
is provided then
the error's location will have a start line and start column.
Implementation
plugin.DiagnosticMessage convertDiagnosticMessage(
analyzer.DiagnosticMessage message,
{analyzer.LineInfo? lineInfo}) {
var file = message.filePath;
var offset = message.offset;
var length = message.length;
var startLine = -1;
var startColumn = -1;
var endLine = -1;
var endColumn = -1;
if (lineInfo != null) {
var lineLocation = lineInfo.getLocation(offset);
startLine = lineLocation.lineNumber;
startColumn = lineLocation.columnNumber;
var endLocation = lineInfo.getLocation(offset + length);
endLine = endLocation.lineNumber;
endColumn = endLocation.columnNumber;
}
return plugin.DiagnosticMessage(
message.messageText(includeUrl: true),
plugin.Location(file, offset, length, startLine, startColumn,
endLine: endLine, endColumn: endColumn));
}