An iterator that allows peeking at an element before deciding to accept it.
for more information.
This is implemented by peeking adaptors like peekable and put back,
but also by a few iterators that can be peeked natively, like the slice’s
by reference iterator (
Pass a reference to the next iterator element to the closure
accept returns true, return it as the next element,