toYAML function
Implementation
String toYAML(Map<String, dynamic> map) {
var b = StringBuffer();
for (var e in map.entries) {
var key = e.key;
var value = e.value;
var val = '';
if (value is List) {
var items = <String>[];
for (var v in value) {
if (v is YamlList) {
items.add(v.toString());
} else {
items.add(_toYamlString(v.toString()));
}
}
val = '[' + items.join(', ') + ']';
} else if (value is Map) {
if (value is YamlMap) {
value = _convertMap(value);
}
val = _indentString(toYAML(value as Map<String, dynamic>), 2);
b.writeln(key + ':\n' + val);
continue;
} else {
val = _toYamlString(value.toString());
}
b.writeln(key + ': ' + val);
}
return b.toString();
}