use proc_macro2::Ident; | |
#[derive(Copy, Clone, PartialEq)] | |
pub enum Derive { | |
Clone, | |
Copy, | |
} | |
impl Derive { | |
pub fn from(ident: &Ident) -> Option<Self> { | |
match ident.to_string().as_str() { | |
"Clone" => Some(Derive::Clone), | |
"Copy" => Some(Derive::Copy), | |
_ => None, | |
} | |
} | |
} | |
impl AsRef<str> for Derive { | |
fn as_ref(&self) -> &str { | |
match self { | |
Derive::Clone => "Clone", | |
Derive::Copy => "Copy", | |
} | |
} | |
} |