convertDartToYamlImpl function

String convertDartToYamlImpl(
  1. Map map, {
  2. int indentLevel = 0,
})

Implementation

String convertDartToYamlImpl(Map<dynamic, dynamic> map, {int indentLevel = 0}) {
  final StringBuffer buffer = StringBuffer();
  final String indent = '  ' * indentLevel;

  map.forEach((key, value) {
    buffer.write(indent);
    buffer.write('$key: ');

    if (value is Map) {
      buffer.writeln();
      buffer.write(convertDartToYamlImpl(value, indentLevel: indentLevel + 1));
    } else if (value is List) {
      buffer.writeln();
      buffer.write(_convertListToYaml(value, indentLevel: indentLevel + 1));
    } else {
      buffer.writeln(_formatYamlScalar(value));
    }
  });

  return buffer.toString();
}