hustcer/tabular/papergrid does not have a README file
pub struct Borders {
top : Char?
top_left : Char?
top_right : Char?
top_intersection : Char?
bottom : Char?
bottom_left : Char?
bottom_right : Char?
bottom_intersection : Char?
horizontal : Char?
vertical : Char?
left : Char?
right : Char?
intersection : Char?
left_intersection : Char?
right_intersection : Char?
}pub(all) struct CellBorder {
top : Char?
bottom : Char?
left : Char?
right : Char?
left_top_corner : Char?
right_top_corner : Char?
left_bottom_corner : Char?
right_bottom_corner : Char?
}pub enum HAlign {
Left
Right
Center
}pub enum HeightMode {
None
Increase(Int)
Limit(Int)
}pub struct HorizontalLine {
main : Char?
left : Char?
intersection : Char?
right : Char?
}fn HorizontalLine::from_chars(main : Char?, left : Char?, intersection : Char?, right : Char?) -> HorizontalLinefn HorizontalLine::full(main : Char, left : Char, intersection : Char, right : Char) -> HorizontalLinepub enum HorizontalLines {
All
HeaderOnly
None
}fn IterGrid::new(records : IterRecords, config : SpannedConfig, dimension : IterGridDimension) -> IterGridfn IterGridDimension::estimate(self : IterGridDimension, records : IterRecords, cfg : SpannedConfig) -> Unitpub struct SpannedConfig {
borders : Borders
padding_left : Int
padding_right : Int
padding_top : Int
padding_bottom : Int
align : HAlign
valign : VAlign
width_mode : WidthMode
height_mode : HeightMode
horizontal_lines : HorizontalLines
custom_horizontal_lines : Array[(Int, HorizontalLine)]
width_rules : Array[(Scope, WidthMode)]
height_rules : Array[(Scope, HeightMode)]
align_rules : Array[(Scope, HAlign)]
valign_rules : Array[(Scope, VAlign)]
padding_rules : Array[(Scope, Int, Int, Int, Int)]
col_spans : Array[(Int, Int, Int)]
row_spans : Array[(Int, Int, Int)]
span_sources : Array[(Int, Int, Int, Int)]
border_horizontal : Array[(Int, Int, Char)]
border_vertical : Array[(Int, Int, Char)]
border_intersection : Array[(Int, Int, Char)]
margin_top : Int
margin_bottom : Int
margin_left : Int
margin_right : Int
margin_fill_top : Char
margin_fill_bottom : Char
margin_fill_left : Char
margin_fill_right : Char
margin_offset_top : Int
margin_offset_bottom : Int
margin_offset_left : Int
margin_offset_right : Int
}fn SpannedConfig::clear_span_source(self : SpannedConfig, anchor_row : Int, anchor_col : Int) -> Unitfn SpannedConfig::clear_unused_span_source(self : SpannedConfig, anchor_row : Int, anchor_col : Int) -> Unitfn SpannedConfig::get_cell_border(self : SpannedConfig, row : Int, col : Int, count_rows : Int, count_cols : Int) -> CellBorderfn SpannedConfig::has_left_border(self : SpannedConfig, row : Int, col : Int, count_rows : Int, count_cols : Int) -> Boolfn SpannedConfig::has_top_border(self : SpannedConfig, row : Int, col : Int, count_rows : Int, count_cols : Int) -> Boolfn SpannedConfig::horizontal_override_at(self : SpannedConfig, row_boundary : Int, col : Int) -> Char?fn SpannedConfig::intersection_override_at(self : SpannedConfig, row_boundary : Int, col_boundary : Int) -> Char?fn SpannedConfig::set_align_for_cell(self : SpannedConfig, row : Int, col : Int, align : HAlign) -> Unitfn SpannedConfig::set_align_for_cols(self : SpannedConfig, start : Int, end : Int, align : HAlign) -> Unitfn SpannedConfig::set_align_for_rows(self : SpannedConfig, start : Int, end : Int, align : HAlign) -> Unitfn SpannedConfig::set_cell_border(self : SpannedConfig, row : Int, col : Int, border : CellBorder) -> Unitfn SpannedConfig::set_custom_horizontal_lines(self : SpannedConfig, lines : Array[(Int, HorizontalLine)]) -> Unitfn SpannedConfig::set_height_mode_for_cell(self : SpannedConfig, row : Int, col : Int, mode : HeightMode) -> Unitfn SpannedConfig::set_height_mode_for_cols(self : SpannedConfig, start : Int, end : Int, mode : HeightMode) -> Unitfn SpannedConfig::set_height_mode_for_rows(self : SpannedConfig, start : Int, end : Int, mode : HeightMode) -> Unitfn SpannedConfig::set_margin(self : SpannedConfig, top : Int, bottom : Int, left : Int, right : Int, fill_top : Char, fill_bottom : Char, fill_left : Char, fill_right : Char) -> Unitfn SpannedConfig::set_margin_offset(self : SpannedConfig, top : Int, bottom : Int, left : Int, right : Int) -> Unitfn SpannedConfig::set_padding(self : SpannedConfig, left : Int, right : Int, top : Int, bottom : Int) -> Unitfn SpannedConfig::set_padding_for_all(self : SpannedConfig, left : Int, right : Int, top : Int, bottom : Int) -> Unitfn SpannedConfig::set_padding_for_cell(self : SpannedConfig, row : Int, col : Int, left : Int, right : Int, top : Int, bottom : Int) -> Unitfn SpannedConfig::set_padding_for_cols(self : SpannedConfig, start : Int, end : Int, left : Int, right : Int, top : Int, bottom : Int) -> Unitfn SpannedConfig::set_padding_for_rows(self : SpannedConfig, start : Int, end : Int, left : Int, right : Int, top : Int, bottom : Int) -> Unitfn SpannedConfig::set_span_source(self : SpannedConfig, anchor_row : Int, anchor_col : Int, source_row : Int, source_col : Int) -> Unitfn SpannedConfig::set_valign_for_cell(self : SpannedConfig, row : Int, col : Int, align : VAlign) -> Unitfn SpannedConfig::set_valign_for_cols(self : SpannedConfig, start : Int, end : Int, align : VAlign) -> Unitfn SpannedConfig::set_valign_for_rows(self : SpannedConfig, start : Int, end : Int, align : VAlign) -> Unitfn SpannedConfig::set_width_mode_for_cell(self : SpannedConfig, row : Int, col : Int, mode : WidthMode) -> Unitfn SpannedConfig::set_width_mode_for_cols(self : SpannedConfig, start : Int, end : Int, mode : WidthMode) -> Unitfn SpannedConfig::set_width_mode_for_rows(self : SpannedConfig, start : Int, end : Int, mode : WidthMode) -> Unitfn SpannedConfig::span_anchor_for_source(self : SpannedConfig, source_row : Int, source_col : Int) -> (Int, Int)?fn SpannedConfig::span_source_at(self : SpannedConfig, anchor_row : Int, anchor_col : Int) -> (Int, Int)fn SpannedConfig::vertical_override_at(self : SpannedConfig, row : Int, col_boundary : Int) -> Char?pub enum VAlign {
Top
Bottom
Center
}pub enum WidthMode {
None
Wrap(Int, String)
Truncate(Int, String)
}fn processed_lines(content : String, width_mode : WidthMode, height_mode : HeightMode) -> Array[String]A MoonBit library for pretty-printing tables in terminal. Ported from Rust tabled.