pub fn probe<X, T, E>(
start: X,
most: usize,
next: impl FnMut(&X) -> Result<X, E>,
at: impl FnMut(&X) -> Result<Probe<T>, E>,
) -> Result<Option<T>, E>Expand description
Asks at for start and each value next makes of the one before, at
most most of them, until one is Probe::Found or Probe::Stop.
next is asked only for a value that will be probed. at may keep
state of its own (what the probes so far said), since every value is
asked once, in order.