Function async_utils::fold::try_fold_while
source ยท pub fn try_fold_while<S, T, D, F, Fut>(
s: S,
init: T,
f: F,
) -> impl Future<Output = Result<FoldResult<T, D>, S::Error>>
Expand description
Similar to [TryStreamExt::try_fold
], but the closure f
can short-circuit
the operation by returning FoldWhile::Done
.
Returns FoldResult::StreamEnded
with the current folded value when the
stream ends. Returns FoldResult::ShortCircuited
with the value of
FoldWhile::Done
if f
short-circuits the operation.
Returns Err
if either s
or f
returns an error.