INNER CODE UNIT · Rust

to_markdown

flosse/rust-web-framework-comparison · src/table.rs:8

pub fn to_markdown(data: &[Row]) -> String {
    let lengths = data.iter().fold(vec![1; data[0].len()], |lens, row| {
        row.iter()
            .zip(lens)
            .map(|(s, len)| max(s.len(), len))
            .collect()
    });
    let rows = data
        .iter()
        .map(|row| {
            row.iter()
                .zip(&lengths)
                .map(|(s, len)| s.pad_to_width(*len))
                .collect::<Vec<_>>()
                .join(" | ")
        })
        .collect::<Vec<_>>();
    let separator = lengths

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…