struct MyStruct<T: MyTrait> {
inner: T,
}
impl<T: MyTrait> MyStruct<T> {
const MYCONST: u32 = 42;
pub fn x() {
println!("x!");
}
}
pub trait MyTrait {}
Для доступа к MYCONST
или x()
требуется черта. Если ничего не предоставлено, компилятор жалуется:
error[E0282]: type annotations needed
--> src/main.rs:42:5
|
42 | MyStruct::x();
| ^^^^^^^^^^^ cannot infer type for `T`
или
error[E0282]: type annotations needed
--> src/main.rs:42:20
|
42 | println!("{}", MyStruct::MYCONST);
| ^^^^^^^^^^^^^^^^^ cannot infer type for `T`
Есть ли способ сказать компилятору игнорировать необходимость аннотаций типов здесь?