Mention FusedIterator case in Iterator::fuse doc
Using `fuse` on an iterator that incorrectly implements `FusedIterator` does not fuse the iterator. This commit adds a note about this in the documentation of this method to increase awareness about this potential issue (esp. when relying on fuse in unsafe code).
This commit is contained in:
parent
9a35232611
commit
21b3b27fe4
1 changed files with 5 additions and 0 deletions
|
@ -1495,7 +1495,12 @@ pub trait Iterator {
|
|||
/// [`Some(T)`] again. `fuse()` adapts an iterator, ensuring that after a
|
||||
/// [`None`] is given, it will always return [`None`] forever.
|
||||
///
|
||||
/// Note that the [`Fuse`] wrapper is a no-op on iterators that implement
|
||||
/// the [`FusedIterator`] trait. `fuse()` may therefore behave incorrectly
|
||||
/// if the [`FusedIterator`] trait is improperly implemented.
|
||||
///
|
||||
/// [`Some(T)`]: Some
|
||||
/// [`FusedIterator`]: crate::iter::FusedIterator
|
||||
///
|
||||
/// # Examples
|
||||
///
|
||||
|
|
Loading…
Add table
Reference in a new issue