blob: 930ecd30d1d1bdafa75727b88e9ff7a6c6c624b7 [file] [log] [blame]
error: `Iterator::map` call that discard the iterator's values
--> $DIR/lint_map_unit_fn.rs:9:18
|
LL | fn foo(items: &mut Vec<u8>) {
| --------------------------- this function returns `()`, which is likely not what you wanted
...
LL | x.iter_mut().map(foo);
| ^^^^---^
| | |
| | called `Iterator::map` with callable that returns `()`
| after this call to map, the resulting iterator is `impl Iterator<Item = ()>`, which means the only information carried by the iterator is the number of items
|
= note: `Iterator::map`, like many of the methods on `Iterator`, gets executed lazily, meaning that its effects won't be visible until it is iterated
note: the lint level is defined here
--> $DIR/lint_map_unit_fn.rs:1:9
|
LL | #![deny(map_unit_fn)]
| ^^^^^^^^^^^
help: you might have meant to use `Iterator::for_each`
|
LL - x.iter_mut().map(foo);
LL + x.iter_mut().for_each(foo);
|
error: `Iterator::map` call that discard the iterator's values
--> $DIR/lint_map_unit_fn.rs:11:18
|
LL | x.iter_mut().map(|items| {
| ^ -------
| | |
| ___________________|___this function returns `()`, which is likely not what you wanted
| | __________________|
| ||
LL | ||
LL | || items.sort();
LL | || });
| ||_____-^ after this call to map, the resulting iterator is `impl Iterator<Item = ()>`, which means the only information carried by the iterator is the number of items
| |______|
| called `Iterator::map` with callable that returns `()`
|
= note: `Iterator::map`, like many of the methods on `Iterator`, gets executed lazily, meaning that its effects won't be visible until it is iterated
help: you might have meant to use `Iterator::for_each`
|
LL - x.iter_mut().map(|items| {
LL + x.iter_mut().for_each(|items| {
|
error: `Iterator::map` call that discard the iterator's values
--> $DIR/lint_map_unit_fn.rs:18:18
|
LL | let f = |items: &mut Vec<u8>| {
| --------------------- this function returns `()`, which is likely not what you wanted
...
LL | x.iter_mut().map(f);
| ^^^^-^
| | |
| | called `Iterator::map` with callable that returns `()`
| after this call to map, the resulting iterator is `impl Iterator<Item = ()>`, which means the only information carried by the iterator is the number of items
|
= note: `Iterator::map`, like many of the methods on `Iterator`, gets executed lazily, meaning that its effects won't be visible until it is iterated
help: you might have meant to use `Iterator::for_each`
|
LL - x.iter_mut().map(f);
LL + x.iter_mut().for_each(f);
|
error: aborting due to 3 previous errors