enum_str

Crates.ioenum_str
lib.rsenum_str
version0.1.2
sourcesrc
created_at2018-04-11 05:28:23.517108
updated_at2018-04-12 03:08:21.536954
descriptionCreates a unitary enum and conversions from enum variants to string and vice versa
homepage
repositoryhttps://github.com/lambdasqd/enum_str-rs
max_upload_size
id60052
size17,216
(lambdasqd)

documentation

https://docs.rs/enum_str/

README

This crate provides a macro to create a unitary enum and conversions from enum variants to a string representation and vice versa.

Why another crate?

The string representation does not need to be the same as the enum variant's identifier. See the example below for clarification.

Example

#[macro_use] extern crate enum_str;

use std::str::FromStr;
use enum_str::{Error, AsStr};

fn main() {
    enum_str! {
       Fruit,
       (Apple, "🍎"),
       (Pineapple, "🍍"),
       (Strawberry, "🍓"),
    }
    assert_eq!("🍎", Fruit::Apple.as_str());
    assert_eq!(Fruit::Apple, Fruit::from_str("🍎").unwrap());
}
Commit count: 11

cargo fmt