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() {
final buffer = StringBuffer();
buffer.writeln('Capability Validation Report:');
buffer.writeln(' Valid: $isValid');
buffer.writeln(' Supported: ${supported.length} capabilities');
buffer.writeln(' Required: ${required.length} capabilities');
if (missing.isNotEmpty) {
buffer.writeln(' Missing: ${missing.map((c) => c.name).join(', ')}');
}
if (extra.isNotEmpty) {
buffer.writeln(' Extra: ${extra.map((c) => c.name).join(', ')}');
}
return buffer.toString();
}