mapToString method
String mapToString(Returns a string representing the specified map. The returned string looks like this: '{key0: value0, key1: value1, ... keyN: valueN}'
. The value returned by its toString method is used to represent each key or value.
If the map collection contains a reference to itself, either directly as a key or value, or indirectly through other collections or maps, the contained reference is rendered as '{...}'
. This prevents the infinite regress that would otherwise occur. So, for example, calling this method on a map whose sole entry maps the string key 'me' to a reference to the map would return '{me: {...}}'
.
A typical implementation of a map's toString method will simply return the results of this method applied to the collection.
Source
static String mapToString(Map m) { // Reuse the list in IterableBase for detecting toString cycles. if (_isToStringVisiting(m)) { return '{...}'; } var result = new StringBuffer(); try { _toStringVisiting.add(m); result.write('{'); bool first = true; m.forEach((k, v) { if (!first) { result.write(', '); } first = false; result.write(k); result.write(': '); result.write(v); }); result.write('}'); } finally { assert(identical(_toStringVisiting.last, m)); _toStringVisiting.removeLast(); } return result.toString(); }
© 2012 the Dart project authors
Licensed under the Creative Commons Attribution-ShareAlike License v4.0.
https://api.dartlang.org/stable/1.24.3/dart-collection/Maps/mapToString.html