map-to-const 0.1.0

Easily convert HashMap<K, V> to constant [(K, V); N] values.
Documentation

map-to-const

Easily convert HashMap<K, V> to constant [(K, V); N] values.


This crate works with Cargo with a Cargo.toml like:

[dependencies]
map-to-const = "0.1.0"

Getting started

Add some usage to your application.

Here's an example of using map-to-const in code:

use map_to_const::*;
use std::collections::HashMap;

fn main() {
    // Create a HashMap in some manner. Ideally, this will be formatted and returned
    // in an API response or similar.
    let my_map = HashMap::from([("hello", "world"), ("testing", "123")]);

    let const_value = map_to_const(&my_map, "my const name");

    println!("{const_value}");
    // prints:
    //   const MY_CONST_NAME: [(&str, &str); 2] = [
    //       ("hello", "world"),
    //       ("testing", "123"),
    //   ];
    
    // later in code, construct the hashmap from the `const` slice:
    // let my_map = HashMap::from(MY_MAP);
}

Examples

You can check out sample usage of this crate in the examples/ folder in the project repo on GitHub.

Contributing

Contributions are welcome! Open a pull request to fix a bug, or open an issue to discuss a new feature or change.

Check out the Contributing section in the docs for more info.

License

This project is proudly licensed under the MIT license (LICENSE or http://opensource.org/licenses/MIT).

map-to-const can be distributed according to the MIT license. Contributions will be accepted under the same license.

Authors