клонов
?
Знаю, что &Option<T> почти бессмыслено, но нужно
по сути речь идет о передаче оунершипа Option-у и взятии ссылки к нему, две отдельных операции, и в первой клон так или иначе необходим с помощью .cloned() например
Это принципиально невозможно (по крайней мере с соблюдением лайфтайма). Лэйаут Option<T> подразумевает наличиее тэга где-то, а T — нет. Поэтому нельзя перейти от &T к &Option<T>
<зануда> есть типы, для которых гарантируется enum layout optimization, и для них от &T к &Option<T> можно перейти тупо через трансмьют
Обсуждают сегодня