их фильтровать.
Проблема в том, что фильтр не stateless и требует хранилище в виде хэшмапы.
То есть сейчас не получается сконструировать итератор с фильтром и вернуть его из функции из-за заимствования хэшмапы, которая на стеке функции.
Передавать мутабельный референс на пустую хэшмапу в функцию не хочется, это как-то слишком сишно и вообще фу, я бы первый камнем в автора такого API кинул.
Собстно вопрос: как можно передать хэшмапу в контекст итератора, чтобы она вместе с ним мувнулась из ф-и?
Без написания своего итератора это возможно?
.filter() принимает что угодно, что имплементит FnMut(...)..., причём принимает во владение. Сделай тип, который хранит внутри себя нужную хэшмапу и имплементит FnMut
Обсуждают сегодня