pub struct GridBuf { /* private fields */ }
Expand description
A builder used to create plain-text table.
Examples
use text_grid::*;
let mut g = GridBuf::new();
{
let mut row = g.push_row();
row.push(cell("name").right());
row.push("type");
row.push("value");
}
g.push_separator();
{
let mut row = g.push_row();
row.push(cell(String::from("X")).right());
row.push("A");
row.push(10);
}
{
let mut row = g.push_row();
row.push(cell("Y").right());
row.push_with_colspan(cell("BBB").center(), 2);
}
print!("{}", g);
Output
name | type | value |
------|------|-------|
X | A | 10 |
Y | BBB |
Implementations§
source§impl GridBuf
impl GridBuf
sourcepub fn set_column_separators(&mut self, separators: Vec<bool>)
pub fn set_column_separators(&mut self, separators: Vec<bool>)
Set column separator’s visibility.
separators[0]
indicate visibility of the right side of the leftmost column.
Examples
use text_grid::*;
let mut g = GridBuf::new();
{
let mut row = g.push_row();
row.push("A");
row.push("B");
row.push("C");
}
{
let mut row = g.push_row();
row.push("AAA");
row.push("BBB");
row.push("CCC");
}
g.set_column_separators(vec![true, true]);
println!("{:?}", vec![true, true]);
println!("{}", g);
g.set_column_separators(vec![false, true]);
println!("{:?}", vec![false, true]);
println!("{}", g);
Output
[true, true]
A | B | C |
AAA | BBB | CCC |
[false, true]
A B | C |
AAABBB | CCC |
sourcepub fn push_separator(&mut self)
pub fn push_separator(&mut self)
Append a row separator to the bottom of grid.