Я могу создать потребляющий итератор в куче:
vec![1, 10, 100].into_iter()
Я также могу создать итератор в стеке, который заимствует элементы:
[1, 10, 100].iter()
Но если я напишу это:
[1, 10, 100].into_iter()
Это не потребляющий итератор, поскольку [T; _]::into_iter
не существует: IntoIterator
реализован только для заимствованной версии (он же слайс).Есть ли простой способ (предпочтительно в std
lib) создать потребляющий итератор в стеке?
Я знаю, что [1, 10, 100].iter().cloned()
можно сделать, но для этого необходимо, чтобы элементы были клонируемыми.