diff options
Diffstat (limited to 'src/tools/clippy/src/docs/collapsible_match.txt')
-rw-r--r-- | src/tools/clippy/src/docs/collapsible_match.txt | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/tools/clippy/src/docs/collapsible_match.txt b/src/tools/clippy/src/docs/collapsible_match.txt new file mode 100644 index 000000000..0d59594a0 --- /dev/null +++ b/src/tools/clippy/src/docs/collapsible_match.txt @@ -0,0 +1,31 @@ +### What it does +Finds nested `match` or `if let` expressions where the patterns may be "collapsed" together +without adding any branches. + +Note that this lint is not intended to find _all_ cases where nested match patterns can be merged, but only +cases where merging would most likely make the code more readable. + +### Why is this bad? +It is unnecessarily verbose and complex. + +### Example +``` +fn func(opt: Option<Result<u64, String>>) { + let n = match opt { + Some(n) => match n { + Ok(n) => n, + _ => return, + } + None => return, + }; +} +``` +Use instead: +``` +fn func(opt: Option<Result<u64, String>>) { + let n = match opt { + Some(Ok(n)) => n, + _ => return, + }; +} +```
\ No newline at end of file |