Maybe it is worth clarifying that the Peekable takes ownership of the iterator, otherwise if someone iterates it externally too it might lose data (removed from the iterator and stored in the internal buffer).
Originally posted by @llucax in #1295 (comment)