data: Vec<usize>, хочу сделать функцию, возвращающую итератор, выраженный в цепочках адаптеров, выглядит как:
self.data.iter().enumerate().filter(|(_, v)| *v).map(|(i, _)| i)
Какой тип возвращает такая функция? Портянку из Map<Filter<Enumerate<...>?
1. Да 2. Фильтр же T -> bool принимает?
Можно возвращать Box<dyn Iterator<Item = usize>>, но это такое себе: обходить ограничения языка по автоматическому выводу типа результата функции через хип
Обсуждают сегодня