2个版本

使用旧Rust 2015

0.1.1 2017年3月12日
0.1.0 2017年3月12日

#20 in #error-derive

MIT 许可证

4KB
76

enum-error-derive

Build Status

为Enum Error结构派生Error特质

示例

#[macro_use]
extern crate enum_error_derive;

use std::{io, fmt};

#[derive(Debug, EnumError)] // EnumError derives From<*>, fmt::Display and error::Error
pub enum Error {
    IO(io::Error),
    Fmt(fmt::Error),
}

fn io_error() -> Result<(), io::Error> {
    Ok(())
}

fn fmt_error() -> Result<(), fmt::Error> {
    Ok(())
}

fn merged_error() -> Result<(), Error> {
    io_error()?;
    fmt_error()?;
    Ok(())
}

依赖项

~1.5MB
~41K SLoC