Jason Newcomb
2938ffd0d9
Improve heuristics for determining whether eager of lazy evaluation is preferred
2021-11-15 20:54:13 -05:00
Matthias Krüger
3fe11e776c
option_if_let_else: don't expand macros in suggestion
...
Fixes #7973
changelog: don't expand macros in suggestion of clippy::option_if_let_else
2021-11-13 23:17:21 +01:00
Andre Bogus
a4ede72b3d
update most tests to 2021 edition
2021-10-30 14:50:53 +02:00
F3real
6b22bba902
Lint on underscore variable assignment
...
Fix tests after no_effect update
Add a drop testcase
Don't lint _ variables in macro expansion
Address review comments and update tests
Don't shadow unnecessary operation lint if no_effect is allowed
Revert shadowing change and remove no_effect allows
Update clippy_lints/src/no_effect.rs
Co-authored-by: Takayuki Nakata <f.seasons017@gmail.com>
Update clippy_lints/src/no_effect.rs
Co-authored-by: Takayuki Nakata <f.seasons017@gmail.com>
Address review comments
2021-10-20 00:39:28 +02:00
hkalbasi
388a3d0983
Implement equatable if let lint
2021-10-04 22:16:42 +03:30
Jason Newcomb
3e5dcba2ee
Small cleanup of option_if_let_else
and additional tests.
2021-08-26 11:44:36 -04:00
Jason Newcomb
8b3ca9a315
Fix option_if_let_else
...
* `break` and `continue` statments local to the would-be closure are allowed
* don't lint in const contexts
* don't lint when yield expressions are used
* don't lint when the captures made by the would-be closure conflict with the other branch
* don't lint when a field of a local is used when the type could be pontentially moved from
* in some cases, don't lint when scrutinee expression conflicts with the captures of the would-be closure
2021-08-16 16:12:00 -04:00
ThibsG
368e621265
Stop linting else if let
pattern in option_if_let_else
lint
2021-05-13 11:50:25 +02:00
dvermd
bdd76a9d1c
clippy_lint: Allow 'ref_option_ref' for 'option_if_let_else'
2020-10-26 22:34:42 +01:00
Tim Nielens
6ba36bcfd3
option_if_let_else - distinguish pure from impure else expressions
2020-09-16 01:30:50 +02:00
JarredAllen
88c8afdddf
Handle ref, mut, &, and &mut on the option
2020-07-03 16:47:38 -07:00
JarredAllen
b85796fe36
Properly parenthesize to avoid operator precedence errors
2020-07-03 16:47:38 -07:00
JarredAllen
82f8d4d6f1
Stop linting on macros and correctly use braces for constructs
2020-07-03 16:47:38 -07:00
JarredAllen
bf48a2d50d
Lint for if let Some(x) = ... instead of Option::map_or
2020-07-03 16:47:38 -07:00