Email or username:

Password:

Forgot your password?
Roman

Але, оп!

pub struct Struct;

pub fn test<T>()
where
T: From<Struct>,
{
inner::<T>();
}

pub fn inner<T>() -> T
where
T: From<Struct>,
{
T::from(Struct)
}

fn main() {
test::<Struct>();
test::<Box<Struct>>();
}

Мейджик!

2 comments
Roman

Пришлось узнать, что оно рефлексивно, сначала я это написал, а потом понял с чего вдруг оно работает. Магия компилятора...вуду...буууууууу. Блин.

Roman

Написал я конечно километровое, это просто пример. Который позволил мне по счастливой случайности не ввозить динамическую диспетчеризацию в код.

Go Up