From dca67f12e97d642fcdc85f3ee3660e38422df5f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Wa=C5=9B?= Date: Fri, 25 Aug 2023 16:08:28 +0200 Subject: [PATCH] Use more descriptive variable names in CLI table printers --- .../io/trino/cli/AlignedTablePrinter.java | 66 +++++++++---------- .../io/trino/cli/MarkdownTablePrinter.java | 24 +++---- .../io/trino/cli/TestAlignedTablePrinter.java | 4 +- .../trino/cli/TestMarkdownTablePrinter.java | 4 +- 4 files changed, 49 insertions(+), 49 deletions(-) diff --git a/client/trino-cli/src/main/java/io/trino/cli/AlignedTablePrinter.java b/client/trino-cli/src/main/java/io/trino/cli/AlignedTablePrinter.java index 4b34d96f166e..0d97b3cf5649 100644 --- a/client/trino-cli/src/main/java/io/trino/cli/AlignedTablePrinter.java +++ b/client/trino-cli/src/main/java/io/trino/cli/AlignedTablePrinter.java @@ -52,7 +52,7 @@ public class AlignedTablePrinter private final List numericFields; private final Writer writer; - private boolean headerOutput; + private boolean headerRendered; private long rowCount; public AlignedTablePrinter(List columns, Writer writer) @@ -84,26 +84,26 @@ public void printRows(List> rows, boolean complete) rowCount += rows.size(); int columns = fieldNames.size(); - int[] maxWidth = new int[columns]; + int[] columnWidth = new int[columns]; for (int i = 0; i < columns; i++) { - maxWidth[i] = max(1, consoleWidth(fieldNames.get(i))); + columnWidth[i] = max(1, consoleWidth(fieldNames.get(i))); } + for (List row : rows) { for (int i = 0; i < row.size(); i++) { - String s = formatValue(row.get(i)); - maxWidth[i] = max(maxWidth[i], maxLineLength(s)); + String value = formatValue(row.get(i)); + columnWidth[i] = max(columnWidth[i], maxLineLength(value)); } } - if (!headerOutput) { - headerOutput = true; + if (!headerRendered) { + headerRendered = true; for (int i = 0; i < columns; i++) { if (i > 0) { writer.append('|'); } - String name = fieldNames.get(i); - writer.append(center(name, maxWidth[i], 1)); + writer.append(center(fieldNames.get(i), columnWidth[i], 1)); } writer.append('\n'); @@ -111,7 +111,7 @@ public void printRows(List> rows, boolean complete) if (i > 0) { writer.append('+'); } - writer.append(repeat("-", maxWidth[i] + 2)); + writer.append(repeat("-", columnWidth[i] + 2)); } writer.append('\n'); } @@ -120,8 +120,8 @@ public void printRows(List> rows, boolean complete) List> columnLines = new ArrayList<>(columns); int maxLines = 1; for (int i = 0; i < columns; i++) { - String s = formatValue(row.get(i)); - ImmutableList lines = ImmutableList.copyOf(LINE_SPLITTER.split(s)); + String value = formatValue(row.get(i)); + ImmutableList lines = ImmutableList.copyOf(LINE_SPLITTER.split(value)); columnLines.add(lines); maxLines = max(maxLines, lines.size()); } @@ -132,9 +132,9 @@ public void printRows(List> rows, boolean complete) writer.append('|'); } List lines = columnLines.get(column); - String s = (line < lines.size()) ? lines.get(line) : ""; + String value = (line < lines.size()) ? lines.get(line) : ""; boolean numeric = numericFields.get(column); - String out = align(s, maxWidth[column], 1, numeric); + String out = align(value, columnWidth[column], 1, numeric); if ((!complete || (rowCount > 1)) && ((line + 1) < lines.size())) { out = out.substring(0, out.length() - 1) + "+"; } @@ -147,40 +147,40 @@ public void printRows(List> rows, boolean complete) writer.flush(); } - private static String center(String s, int maxWidth, int padding) + private static String center(String value, int maxWidth, int padding) { - int width = consoleWidth(s); - checkState(width <= maxWidth, "string width is greater than max width"); + int width = consoleWidth(value); + checkState(width <= maxWidth, format("Variable width %d is greater than column width %d", width, maxWidth)); int left = (maxWidth - width) / 2; int right = maxWidth - (left + width); - return repeat(" ", left + padding) + s + repeat(" ", right + padding); + return repeat(" ", left + padding) + value + repeat(" ", right + padding); } - private static String align(String s, int maxWidth, int padding, boolean right) + private static String align(String value, int maxWidth, int padding, boolean right) { - int width = consoleWidth(s); - checkState(width <= maxWidth, "string width is greater than max width"); - String large = repeat(" ", (maxWidth - width) + padding); + int width = consoleWidth(value); + checkState(width <= maxWidth, format("Variable width %d is greater than column width %d", width, maxWidth)); + String large = repeat(" ", maxWidth - width + padding); String small = repeat(" ", padding); - return right ? (large + s + small) : (small + s + large); + return right ? (large + value + small) : (small + value + large); } - static int maxLineLength(String s) + static int maxLineLength(String value) { - int n = 0; - for (String line : LINE_SPLITTER.split(s)) { - n = max(n, consoleWidth(line)); + int result = 0; + for (String line : LINE_SPLITTER.split(value)) { + result = max(result, consoleWidth(line)); } - return n; + return result; } - static int consoleWidth(String s) + static int consoleWidth(String value) { - CharSequence plain = stripAnsi(s); - int n = 0; + CharSequence plain = stripAnsi(value); + int result = 0; for (int i = 0; i < plain.length(); i++) { - n += max(wcwidth(plain.charAt(i)), 0); + result += max(wcwidth(plain.charAt(i)), 0); } - return n; + return result; } } diff --git a/client/trino-cli/src/main/java/io/trino/cli/MarkdownTablePrinter.java b/client/trino-cli/src/main/java/io/trino/cli/MarkdownTablePrinter.java index e1768a8c1f77..43b5cff47c60 100644 --- a/client/trino-cli/src/main/java/io/trino/cli/MarkdownTablePrinter.java +++ b/client/trino-cli/src/main/java/io/trino/cli/MarkdownTablePrinter.java @@ -44,7 +44,7 @@ public class MarkdownTablePrinter private final List alignments; private final Writer writer; - private boolean headerOutput; + private boolean headerRendered; public MarkdownTablePrinter(List columns, Writer writer) { @@ -71,29 +71,30 @@ public void printRows(List> rows, boolean complete) { int columns = fieldNames.size(); - int[] maxWidth = new int[columns]; + int[] columnWidth = new int[columns]; for (int i = 0; i < columns; i++) { - maxWidth[i] = max(1, consoleWidth(fieldNames.get(i))); + columnWidth[i] = max(1, consoleWidth(fieldNames.get(i))); } + for (List row : rows) { for (int i = 0; i < row.size(); i++) { String s = formatValue(row.get(i)); - maxWidth[i] = max(maxWidth[i], consoleWidth(s)); + columnWidth[i] = max(columnWidth[i], consoleWidth(s)); } } - if (!headerOutput) { - headerOutput = true; + if (!headerRendered) { + headerRendered = true; for (int i = 0; i < columns; i++) { writer.append('|'); - writer.append(align(fieldNames.get(i), maxWidth[i], alignments.get(i))); + writer.append(align(fieldNames.get(i), columnWidth[i], alignments.get(i))); } writer.append("|\n"); for (int i = 0; i < columns; i++) { writer.append("| "); - writer.append(repeat("-", maxWidth[i])); + writer.append(repeat("-", columnWidth[i])); writer.write(alignments.get(i) == Align.RIGHT ? ':' : ' '); } writer.append("|\n"); @@ -102,7 +103,7 @@ public void printRows(List> rows, boolean complete) for (List row : rows) { for (int column = 0; column < columns; column++) { writer.append('|'); - writer.append(align(formatValue(row.get(column)), maxWidth[column], alignments.get(column))); + writer.append(align(formatValue(row.get(column)), columnWidth[column], alignments.get(column))); } writer.append("|\n"); } @@ -127,9 +128,8 @@ private static String align(String value, int maxWidth, Align align) { int width = consoleWidth(value); checkState(width <= maxWidth, "Variable width %s is greater than column width %s", width, maxWidth); - String large = repeat(" ", (maxWidth - width) + 1); - String small = repeat(" ", 1); - return align == Align.RIGHT ? (large + value + small) : (small + value + large); + String padding = repeat(" ", (maxWidth - width) + 1); + return align == Align.RIGHT ? (padding + value + " ") : (" " + value + padding); } static int consoleWidth(String value) diff --git a/client/trino-cli/src/test/java/io/trino/cli/TestAlignedTablePrinter.java b/client/trino-cli/src/test/java/io/trino/cli/TestAlignedTablePrinter.java index b2a3bc2a4e13..12c4b2dd03f0 100644 --- a/client/trino-cli/src/test/java/io/trino/cli/TestAlignedTablePrinter.java +++ b/client/trino-cli/src/test/java/io/trino/cli/TestAlignedTablePrinter.java @@ -300,9 +300,9 @@ static List> rows(List... rows) return asList(rows); } - static byte[] bytes(String s) + static byte[] bytes(String value) { - return s.getBytes(UTF_8); + return value.getBytes(UTF_8); } static class KeyValue diff --git a/client/trino-cli/src/test/java/io/trino/cli/TestMarkdownTablePrinter.java b/client/trino-cli/src/test/java/io/trino/cli/TestMarkdownTablePrinter.java index 476f6bdea711..9e993f52085d 100644 --- a/client/trino-cli/src/test/java/io/trino/cli/TestMarkdownTablePrinter.java +++ b/client/trino-cli/src/test/java/io/trino/cli/TestMarkdownTablePrinter.java @@ -176,8 +176,8 @@ static List> rows(List... rows) return asList(rows); } - static byte[] bytes(String s) + static byte[] bytes(String value) { - return s.getBytes(UTF_8); + return value.getBytes(UTF_8); } }