[−][src]Derive Macro is_macro::Is
#[derive(Is)]
A proc macro to generate methods like is_varaiant / expect_variant.
Example
use is_macro::Is; #[derive(Debug, Is)] pub enum Enum<T> { A, B(T), C(Option<T>), } // Rust's type inference cannot handle this. assert!(Enum::<()>::A.is_a()); assert_eq!(Enum::B(String::from("foo")).expect_b(), String::from("foo"));