toString method
A string representation of this object.
Some classes have a default textual representation,
often paired with a static parse function (like int.parse).
These classes will provide the textual representation as
their string representation.
Other classes have no meaningful textual representation
that a program will care about.
Such classes will typically override toString to provide
useful information when inspecting the object,
mainly for debugging or logging.
Implementation
@override
String toString() {
if (hoverInfo != null) return hoverInfo!;
if (diagnostics != null && diagnostics!.isNotEmpty) {
return diagnostics!
.map(
(d) =>
'${d['severity']}: ${d['message']} (${d['line']}:${d['column']})',
)
.join('\n');
}
if (results != null && results!.isNotEmpty) {
return const JsonEncoder.withIndent(' ').convert(results);
}
return 'No results';
}