#derive #macro

macro quick_from

A derive macro for quickly implementing From on on enum variants that wrap other types

2 unstable releases

0.2.0 Nov 3, 2021
0.1.0 Jun 11, 2021

#61 in #derive-macro

Download history 14/week @ 2023-07-08 24/week @ 2023-07-15 35/week @ 2023-07-22 15/week @ 2023-07-29 28/week @ 2023-08-05 27/week @ 2023-08-12 23/week @ 2023-08-19 15/week @ 2023-08-26 21/week @ 2023-09-02 34/week @ 2023-09-09 21/week @ 2023-09-16 3/week @ 2023-09-23 16/week @ 2023-09-30 19/week @ 2023-10-07 28/week @ 2023-10-14 36/week @ 2023-10-21

101 downloads per month

Custom license

6KB
55 lines

quick_from

A derive macro for quickly implementing From on on enum variants that wrap other types.

Example

#[macro_use]
extern crate quick_from;

use std::{io, fs};

#[derive(QuickFrom)]
enum Error {
    InvalidInput,

    #[quick_from]
    Io(io::Error),
}

fn my_read(s : &str) -> Result<Vec<u8>, Error> {
    if s.len() == 0 {
        return Err(Error::InvalidInput)
    }

    Ok(fs::read(s)?)
}

Dependencies

~1.5MB
~32K SLoC