From 061a48321c46c4050afcdadbc57f5869cae37eeb Mon Sep 17 00:00:00 2001 From: Michael Rutter Date: Sun, 28 Oct 2018 08:12:47 +0000 Subject: [PATCH] added downsides to "known problems" for get_unwrap lint --- clippy_lints/src/methods/mod.rs | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/clippy_lints/src/methods/mod.rs b/clippy_lints/src/methods/mod.rs index 01f97264d0b5..8e3a75f2c7b5 100644 --- a/clippy_lints/src/methods/mod.rs +++ b/clippy_lints/src/methods/mod.rs @@ -568,7 +568,14 @@ declare_clippy_lint! { /// **Why is this bad?** Using the Index trait (`[]`) is more clear and more /// concise. /// -/// **Known problems:** None. +/// **Known problems:** Not a replacement for error handling: Using either +/// `.unwrap()` or the Index syntax (`[]`) carries the risk of causing a `panic` +/// if the value being accessed is `None`. If the use of `.get().unwrap()` is a +/// temporary placeholder for dealing with the `Option` type, then this does +/// not mitigate the need for error handling. If there is a chance that `.get()` +/// will be `None` in your program, then it is advisable that the `None` case +/// is eventually handled in a future refactor instead of using `.unwrap()` +/// or the Index syntax. /// /// **Example:** /// ```rust