walkableToString static method

String walkableToString(
  1. Walkable<Object?> walkable, {
  2. String start = '{',
  3. String end = '}',
})

Converts a Walkable to a string like toString.

Allows using other delimiters than { and }.

Implementation

static String walkableToString(
  Walkable<Object?> walkable, {
  String start = '{',
  String end = '}',
}) {
  final buffer = StringBuffer(start);
  if (walkable.isEmpty) {
    buffer.write(end);
    return buffer.toString();
  }
  buffer.writeln();
  for (final source in walkable.roots) {
    buffer.write('  $source -> ');
    buffer.writeAll(walkable.successors(source), ', ');
    buffer.writeln();
  }
  buffer.write(end);
  return buffer.toString();
}