p
Если единственный способ создать
NonEmptyVec — это метод, который мы контролируем, то мы можем на этом уровне проверить, что это действительно non emptySize: a a a
p
NonEmptyVec — это метод, который мы контролируем, то мы можем на этом уровне проверить, что это действительно non emptyEG
p
p
EG
EG
Э
АГ
p
EG
pub fn from_vec(vec: Vec<T>) -> Option<Self> {
if vec.len() == 0 { None } else { Some(Self(vec)) }
}EG
EG
p
p
EG
В
EG
.pop(0) из вектора вообще ХЗ как сделать толком. Явно пример механически перенесён из хаскелля.p
EG
AZ