1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
use std::str::FromStr; #[derive(Clone, Debug, Eq, PartialEq)] pub enum MailResult { Ok, PermFail, TempFail, } impl ToString for MailResult { fn to_string(&self) -> String { match self { MailResult::Ok => String::from("ok"), MailResult::PermFail => String::from("permfail"), MailResult::TempFail => String::from("tempfail"), } } } impl FromStr for MailResult { type Err = (); fn from_str(s: &str) -> Result<Self, Self::Err> { match s { "ok" => Ok(MailResult::Ok), "permfail" => Ok(MailResult::PermFail), "tempfail" => Ok(MailResult::TempFail), _ => Err(()), } } }