#![cfg_attr(not(any(feature = "std", test)), no_std)] #![warn( rust_2018_idioms, rust_2018_compatibility, rust_2021_compatibility, missing_debug_implementations, unreachable_pub, missing_docs )] #![allow(clippy::uninlined_format_args)] #![deny(unused_must_use)] #![doc( html_logo_url = "https://raw.githubusercontent.com/zhiburt/tabled/86ac146e532ce9f7626608d7fd05072123603a2e/assets/tabled-gear.svg" )] //! Papergrid is a library for generating text-based tables. //! //! It has relatively low level API. //! If you're interested in a more friendly one take a look at [`tabled`](https://github.com/zhiburt/tabled). //! //! # Example //! #![cfg_attr(feature = "std", doc = "```")] #![cfg_attr(not(feature = "std"), doc = "```ignore")] //! use papergrid::{ //! records::IterRecords, //! dimension::{Estimate}, //! config::Borders, //! colors::NoColors, //! grid::iterable::Grid, //! config::spanned::SpannedConfig, //! dimension::spanned::SpannedGridDimension, //! }; //! //! // Creating a borders structure of a grid. //! let borders = Borders { //! top: Some('-'), //! top_left: Some('+'), //! top_right: Some('+'), //! top_intersection: Some('+'), //! bottom: Some('-'), //! bottom_left: Some('+'), //! bottom_right: Some('+'), //! bottom_intersection: Some('+'), //! horizontal: Some('-'), //! vertical: Some('|'), //! left: Some('|'), //! right: Some('|'), //! intersection: Some('+'), //! left_intersection: Some('+'), //! right_intersection: Some('+'), //! }; //! //! // Creating a grid config. //! let mut cfg = SpannedConfig::default(); //! cfg.set_borders(borders); //! //! // Creating an actual data for grid. //! let records = vec![vec!["Hello", "World"], vec!["Hi", "World"]]; //! let records = IterRecords::new(records, 2, None); //! //! // Estimate grid dimension. //! let mut dimension = SpannedGridDimension::default(); //! dimension.estimate(&records, &cfg); //! //! // Creating a grid. //! let grid = Grid::new(&records, &dimension, &cfg, NoColors).to_string(); //! //! assert_eq!( //! grid, //! concat!( //! "+-----+-----+\n", //! "|Hello|World|\n", //! "+-----+-----+\n", //! "|Hi |World|\n", //! "+-----+-----+", //! ), //! ); //! ``` pub mod color; pub mod colors; pub mod config; pub mod dimension; pub mod grid; pub mod records; pub mod util;