Rollup merge of #87614 - notriddle:notriddle-count2len, r=Mark-Simulacrum

Recommend fix `count()` -> `len()` on slices

Fixes #87302
This commit is contained in:
Matthias Krüger 2021-12-07 11:04:56 +01:00 committed by GitHub
commit f84a734a8e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 68 additions and 3 deletions

View file

@ -0,0 +1,8 @@
fn main() {
let slice = [1,2,3,4];
let vec = vec![1,2,3,4];
slice.count(); //~ERROR: E0599
vec.count(); //~ERROR: E0599
vec.as_slice().count(); //~ERROR: E0599
}

View file

@ -0,0 +1,36 @@
error[E0599]: no method named `count` found for array `[{integer}; 4]` in the current scope
--> $DIR/count2len.rs:5:11
|
LL | slice.count();
| ^^^^^
| |
| method cannot be called on `[{integer}; 4]` due to unsatisfied trait bounds
| help: consider using `len` instead
|
= note: `count` is defined on `Iterator`, which `[{integer}; 4]` does not implement
error[E0599]: no method named `count` found for struct `Vec<{integer}>` in the current scope
--> $DIR/count2len.rs:6:9
|
LL | vec.count();
| ^^^^^
| |
| method cannot be called on `Vec<{integer}>` due to unsatisfied trait bounds
| help: consider using `len` instead
|
= note: `count` is defined on `Iterator`, which `Vec<{integer}>` does not implement
error[E0599]: no method named `count` found for reference `&[{integer}]` in the current scope
--> $DIR/count2len.rs:7:20
|
LL | vec.as_slice().count();
| ^^^^^
| |
| method cannot be called on `&[{integer}]` due to unsatisfied trait bounds
| help: consider using `len` instead
|
= note: `count` is defined on `Iterator`, which `&[{integer}]` does not implement
error: aborting due to 3 previous errors
For more information about this error, try `rustc --explain E0599`.