значению, а take_while - по ссылке?
а почему take_while, а не map? гораздо логичнее сравнивать с map.
предикат однозначно должен принимать элемент по ссылке, иначе он будет поглощен этим предикатом и не может быть возвращен стримом TakeWhile. Можно было бы и по значению, но тогда пришлось бы клонировать или копировать элемент. impl<St, Fut, F> Stream for TakeWhile<St, Fut, F> where F: FnMut(&<St as Stream>::Item) -> Fut, Fut: Future<Output = bool>, St: Stream, type Item = <St as Stream>::Item
Обсуждают сегодня