summaryrefslogtreecommitdiffstats
path: root/vendor/tabled/examples/matrix.rs
blob: 59e22ae9ccbd313b09a2d70077d96253ff773a88 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
//! This example demonstrates how [`tabled`] is an excellent tool for creating
//! dataset visualizations.
//!
//! * 🚀 When native display solutions, such as the [`Debug`] trait and [pretty printing](https://doc.rust-lang.org/std/fmt/#sign0)
//! options, aren't enough, [`tabled`] is a great choice for improving the quality of your displays.

use tabled::{settings::Style, Table};

fn matrix<const N: usize>() -> [[usize; N]; N] {
    let mut matrix = [[0; N]; N];

    #[allow(clippy::needless_range_loop)]
    for i in 0..N {
        for j in 0..N {
            matrix[i][j] = (i + 1) * (j + 1);
        }
    }

    matrix
}

fn main() {
    let data = matrix::<10>();
    let table = Table::new(data).with(Style::modern()).to_string();

    println!("{table}");
}