// A Result alias should not affect the enum_dispatch macro #[allow(dead_code)] #[allow(unused_imports)] use std::io::Result; use enum_dispatch::enum_dispatch; struct Foo; struct Bar; impl TaggedTrait for Foo {} impl TaggedTrait for Bar {} #[enum_dispatch(TaggedTrait)] enum TaggedEnum { Foo, Bar, } #[enum_dispatch] trait TaggedTrait { fn baz(&self) -> u8 { 0 } } #[test] fn main() { let foo = TaggedEnum::from(Foo); let bar = TaggedEnum::from(Bar); assert_eq!(foo.baz(), 0); assert_eq!(bar.baz(), 0); }