diff options
| author | Philipp Krones <hello@philkrones.com> | 2022-10-06 09:44:38 +0200 |
|---|---|---|
| committer | Philipp Krones <hello@philkrones.com> | 2022-10-06 09:44:38 +0200 |
| commit | d75b25faabdcf0a22fe37928917c4ab1761fa265 (patch) | |
| tree | e8c46d2dae51a0a61a6d28de138ca9add8276d8d /src/docs/needless_borrowed_reference.txt | |
| parent | da16cc1da9814710e637ff242b71768a4d3724b7 (diff) | |
| download | rust-d75b25faabdcf0a22fe37928917c4ab1761fa265.tar.gz rust-d75b25faabdcf0a22fe37928917c4ab1761fa265.zip | |
Merge commit 'ac0e10aa68325235069a842f47499852b2dee79e' into clippyup
Diffstat (limited to 'src/docs/needless_borrowed_reference.txt')
| -rw-r--r-- | src/docs/needless_borrowed_reference.txt | 18 |
1 files changed, 5 insertions, 13 deletions
diff --git a/src/docs/needless_borrowed_reference.txt b/src/docs/needless_borrowed_reference.txt index 55faa0cf571..152459ba1c9 100644 --- a/src/docs/needless_borrowed_reference.txt +++ b/src/docs/needless_borrowed_reference.txt @@ -1,30 +1,22 @@ ### What it does -Checks for bindings that destructure a reference and borrow the inner +Checks for bindings that needlessly destructure a reference and borrow the inner value with `&ref`. ### Why is this bad? This pattern has no effect in almost all cases. -### Known problems -In some cases, `&ref` is needed to avoid a lifetime mismatch error. -Example: -``` -fn foo(a: &Option<String>, b: &Option<String>) { - match (a, b) { - (None, &ref c) | (&ref c, None) => (), - (&Some(ref c), _) => (), - }; -} -``` - ### Example ``` let mut v = Vec::<String>::new(); v.iter_mut().filter(|&ref a| a.is_empty()); + +if let &[ref first, ref second] = v.as_slice() {} ``` Use instead: ``` let mut v = Vec::<String>::new(); v.iter_mut().filter(|a| a.is_empty()); + +if let [first, second] = v.as_slice() {} ``` \ No newline at end of file |
