describe method

String describe()

A table, largest first, for a test that prints it or a CI job that keeps it in the log.

Implementation

String describe() {
  final buffer = StringBuffer('$total characters in total\n');
  for (final entry in byComponent.entries) {
    final String share = (shareOf(entry.key) * 100).toStringAsFixed(1);
    buffer.writeln(
      '  ${entry.value.toString().padLeft(7)}  $share%  ${entry.key}',
    );
  }
  buffer.writeln(
    '  ${shared.toString().padLeft(7)}  '
    '${(total == 0 ? 0 : shared / total * 100).toStringAsFixed(1)}%  '
    '(shared definitions)',
  );
  return buffer.toString();
}