maparr 0.1.0

A rust macro to build a static `Map` based on const array
Documentation
use maparr::maparr;

maparr!(
    Continents;
    ASIA,
    AFRICA,
    AMERICA_NORTH,
    AMERICA_SOUTH,
    ANTARCTICA,
    EUROPE,
    AUSTRALIA,
);

const CONTINENT_SQUARE_MILES: Continents<usize> = maparr!(
    Continents;
    ASIA                = 17_212_000,
    AFRICA              = 11_608_000,
    AMERICA_NORTH       = 9_365_000,
    AMERICA_SOUTH       = 6_880_000,
    ANTARCTICA          = 5_100_000,
    EUROPE              = 3_837_000,
    AUSTRALIA           = 2_968_000,
);

fn main() {
    let continent_sq_mil_total: usize = CONTINENT_SQUARE_MILES.sum();
    let continent_sq_mil_persent =
        CONTINENT_SQUARE_MILES.map(|mil| (mil * 100) as f32 / continent_sq_mil_total as f32);

    for ((continent, sq_miles), sq_persent) in Continents::names()
        .into_iter()
        .zip(CONTINENT_SQUARE_MILES)
        .zip(continent_sq_mil_persent)
    {
        println!("{continent:15} = {sq_miles:10} (sq mi) {sq_persent:6.2} (%)");
    }
}