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() {
// Compact JSON-ish form — safe for logging and matches the text
// syntax accepted by [parseVectorText].
final sb = StringBuffer('[');
for (var i = 0; i < values.length; i++) {
if (i != 0) sb.write(',');
final v = values[i];
// Prefer int-form for integral f32 values to keep output tidy.
if (v.isFinite && v == v.truncateToDouble()) {
sb.write(v.toInt().toString());
} else {
sb.write(v.toString());
}
}
sb.write(']');
return sb.toString();
}