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 (keySignature.value == 's' && valueSignature.value == 'v') {
var values = children.entries
.map((entry) =>
"'${entry.key.asString()}': ${entry.value.asVariant().toString()}")
.join(', ');
return 'DBusDict.stringVariant({$values})';
} else {
var childrenText = <String>[];
children.forEach((key, value) {
childrenText.add('${key.toString()}: ${value.toString()}');
});
var values = children.entries
.map((entry) => '${entry.key.toString()}: ${entry.value.toString()}')
.join(', ');
return '$runtimeType($keySignature, $valueSignature, {$values})';
}
}