Terminal Bar (time)Line (WIP)
cargo run --example datetime
```rust use tbl::Renderer;
let data = vec![(0., 2.), (3., 4.)];
let rendered = Renderer::new(data.asslice(), &|&e| e, &|| None::
```rust use tbl::{Block, RenderBlock, Renderer, TBLError, Bound};
struct CustomData { bounds: (usize, usize), label: String // must be Clone + Debug }
fn bounds(cd: &CustomData)-> Bound { let (a, b) = cd.bounds; (a as f64, b as f64) }
fn label(cd: &CustomData)-> Option
fn render(b: &Block
let data = vec![CustomData{bounds: (0, 2), label: "hello".tostring()}, CustomData{bounds: (3, 4), label: "world!".tostring()}]; let rendered = Renderer::new(data.asslice(), &bounds, &label) .withlength(60) .withrenderer(&render) .render().unwrap(); for line in rendered { asserteq!(line, "hello★★★★★★★★★★★★★★★★★★★★★★★★★☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆world!★★★★★★★★★"); } ```
See examples folder for more examples.
Please see the CHANGELOG for a release history.
[(0,2), (1,3)]
build_blocks
into several parts