From 8e33c753555e9b4740c3cc2deb9efad2accd9e12 Mon Sep 17 00:00:00 2001 From: Benjamin Sago Date: Sun, 25 Jan 2015 19:20:51 +0000 Subject: [PATCH] Simplify columns view code The widths come pre-computed, so there's no reason to keep them around in this table anymore. --- src/output.rs | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/src/output.rs b/src/output.rs index 2a0993b..948451f 100644 --- a/src/output.rs +++ b/src/output.rs @@ -137,15 +137,11 @@ fn details_view(columns: &Vec, files: Vec, header: bool) { table.insert(0, columns.iter().map(|c| Cell::paint(Plain.underline(), c.header())).collect()); } - let lengths: Vec> = table.iter() - .map(|row| row.iter().map(|c| c.length).collect()) - .collect(); - let column_widths: Vec = range(0, columns.len()) - .map(|n| lengths.iter().map(|row| row[n]).max().unwrap_or(0)) + .map(|n| table.iter().map(|row| row[n].length).max().unwrap_or(0)) .collect(); - for (field_widths, row) in lengths.iter().zip(table.iter()) { + for row in table.iter() { for (num, column) in columns.iter().enumerate() { if num != 0 { print!(" "); // Separator @@ -156,7 +152,7 @@ fn details_view(columns: &Vec, files: Vec, header: bool) { print!("{}", row[num].text); } else { - let padding = column_widths[num] - field_widths[num]; + let padding = column_widths[num] - row[num].length; print!("{}", column.alignment().pad_string(&row[num].text, padding)); } }