This commit applies rustfmt with default settings to files in src/libcore *that are not involved in any currently open PR* to minimize merge conflicts. The list of files involved in open PRs was determined by querying GitHub's GraphQL API with this script: https://gist.github.com/dtolnay/aa9c34993dc051a4f344d1b10e4487e8 With the list of files from the script in `outstanding_files`, the relevant commands were: $ find src/libcore -name '*.rs' | xargs rustfmt --edition=2018 $ rg libcore outstanding_files | xargs git checkout -- Repeating this process several months apart should get us coverage of most of the rest of libcore.
21 lines
645 B
Rust
21 lines
645 B
Rust
use crate::iter::FromIterator;
|
|
|
|
/// Collapses all unit items from an iterator into one.
|
|
///
|
|
/// This is more useful when combined with higher-level abstractions, like
|
|
/// collecting to a `Result<(), E>` where you only care about errors:
|
|
///
|
|
/// ```
|
|
/// use std::io::*;
|
|
/// let data = vec![1, 2, 3, 4, 5];
|
|
/// let res: Result<()> = data.iter()
|
|
/// .map(|x| writeln!(stdout(), "{}", x))
|
|
/// .collect();
|
|
/// assert!(res.is_ok());
|
|
/// ```
|
|
#[stable(feature = "unit_from_iter", since = "1.23.0")]
|
|
impl FromIterator<()> for () {
|
|
fn from_iter<I: IntoIterator<Item = ()>>(iter: I) -> Self {
|
|
iter.into_iter().for_each(|()| {})
|
|
}
|
|
}
|