use crate::ast::Node;
pub use crate::ast::{tables::TableBuilder, TableAlignment};
pub use crate::ast::tables::{centered_table, simple_table};
pub fn right_aligned_table(headers: Vec<Node>, rows: Vec<Vec<Node>>) -> Node {
TableBuilder::new()
.headers(headers)
.align_all(TableAlignment::Right)
.add_rows(rows)
.build()
}
pub fn alternating_table(headers: Vec<Node>, rows: Vec<Vec<Node>>) -> Node {
let mut alignments = Vec::with_capacity(headers.len());
for i in 0..headers.len() {
let alignment = match i % 3 {
0 => TableAlignment::Left,
1 => TableAlignment::Center,
_ => TableAlignment::Right,
};
alignments.push(alignment);
}
TableBuilder::new()
.headers(headers)
.alignments(alignments)
.add_rows(rows)
.build()
}