хочу условно
trait Tr {
type Result<T>;
fn possibly_fallible(&self) -> Self::Result<u8>;
}
impl Tr for Simple {
type Result<T> = T;
fn possibly_fallible(&self) -> u8 { 0 }
}
impl Tr for Complex {
type Result<T> = io::Result<T>;
fn possibly_fallible(&self) -> io::Result<u8> { read_from_stdin() }
}
вопрос в том, как подружить имплементацию для Simple и для Complex здесь
Звучит как "специализация"
Поведение для T и Result<T, E> разное хочешь
бля, да походу никак
Обсуждают сегодня