diff --git a/crates/radicle-term/src/table.rs b/crates/radicle-term/src/table.rs index ddc27013..0b7db0b1 100644 --- a/crates/radicle-term/src/table.rs +++ b/crates/radicle-term/src/table.rs @@ -78,6 +78,19 @@ impl Default for Table { } } +impl FromIterator<[T; W]> for Table { + fn from_iter>(iter: I) -> Self { + let mut table = Self::default(); + table.rows.extend(iter.into_iter().map(|row| { + for (i, cell) in row.iter().enumerate() { + table.widths[i] = table.widths[i].max(cell.width()); + } + Row::Data(row) + })); + table + } +} + impl Element for Table where T::Padded: Into,