我有一个宏实现了一个特征,impl_Trait!()
.现在,它适用于没有泛型参数的类型,但我不确定如何将类型参数添加到impl
关键字.
macro_rules! impl_FooTrait {
($name:ty) => {
impl $crate::FooTrait for $name { ... }
};
}
struct Bar(i32);
impl_FooTrait!(Bar);
// All OK
struct Baz<'a>(&'a i32);
impl_FooTrait!(Baz<'a>);
// use of undeclared lifetime name `'a`