printfTable function
void
printfTable(})
Prints key/value rows in a aligned block.
Implementation
void printfTable(
Map<String, Object?> rows, {
String? title,
PrintfLevel level = PrintfLevel.debug,
String? tag,
}) {
if (rows.isEmpty) {
printf('(empty table)', tag: tag, level: level);
return;
}
final width = rows.keys.map((k) => k.length).reduce((a, b) => a > b ? a : b);
final buffer = StringBuffer();
if (title != null && title.isNotEmpty) {
buffer.writeln(printfSeparator(object: title, length: 10));
}
rows.forEach((key, value) {
buffer.writeln('${key.padRight(width)} : $value');
});
printf(buffer.toString().trimRight(),
tag: tag, level: level, timestamp: true);
}