fn drain_front_while<'a, T>( queue: &'a mut VecDeque<T>, pred_fn: impl FnMut(&T) -> bool, ) -> impl Iterator<Item = T>
Similar to .drain(..), but stops just before it would remove an item not satisfying the predicate.
.drain(..)