pub fn refine<X, T, E>(
start: X,
most: usize,
step: impl FnMut(X) -> Result<Refine<X, T>, E>,
) -> Result<Refined<X, T>, E>Expand description
Takes step from start, then from each resolution it asks for, at
most most times, until one is Refine::Done. step may keep state
of its own (a measure of the step before, to tell whether refining
still helps), since every step is taken once, in order.