about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--library/core/src/iter/traits/iterator.rs12
1 files changed, 8 insertions, 4 deletions
diff --git a/library/core/src/iter/traits/iterator.rs b/library/core/src/iter/traits/iterator.rs
index 6e9b48cb794..53d353802b9 100644
--- a/library/core/src/iter/traits/iterator.rs
+++ b/library/core/src/iter/traits/iterator.rs
@@ -1495,12 +1495,16 @@ pub trait Iterator {
     /// assert_eq!(merged, "alphabetagamma");
     /// ```
     ///
-    /// Flattening also works on other types like Option and Result:
+    /// Flattening works on any `IntoIterator` type, including `Option` and `Result`:
     ///
     /// ```
-    /// let values = vec![Some(123), Some(321), None, Some(231)];
-    /// let flattened_values: Vec<_> = values.into_iter().flatten().collect();
-    /// assert_eq!(flattened_values, vec![123, 321, 231]);
+    /// let options = vec![Some(123), Some(321), None, Some(231)];
+    /// let flattened_options: Vec<_> = options.into_iter().flatten().collect();
+    /// assert_eq!(flattened_options, vec![123, 321, 231]);
+    ///
+    /// let results = vec![Ok(123), Ok(321), Err(456), Ok(231)];
+    /// let flattened_results: Vec<_> = results.into_iter().flatten().collect();
+    /// assert_eq!(flattened_results, vec![123, 321, 231]);
     /// ```
     ///
     /// You can also rewrite this in terms of [`flat_map()`], which is preferable