summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormo8it <mo8it@proton.me>2024-07-01 11:55:18 +0200
committermo8it <mo8it@proton.me>2024-07-01 11:55:18 +0200
commita0e810b4713bcef60f64f4709ee27c3acec676cd (patch)
treea6659224d66a5950c39dd123e6891dc4905c607b
parent78728d52387730300475cbe8c83497f603a14faf (diff)
clippy2 solution
-rw-r--r--exercises/22_clippy/clippy2.rs4
-rw-r--r--rustlings-macros/info.toml3
-rw-r--r--solutions/22_clippy/clippy2.rs11
3 files changed, 15 insertions, 3 deletions
diff --git a/exercises/22_clippy/clippy2.rs b/exercises/22_clippy/clippy2.rs
index c7d400d..8cfe6f8 100644
--- a/exercises/22_clippy/clippy2.rs
+++ b/exercises/22_clippy/clippy2.rs
@@ -1,8 +1,10 @@
fn main() {
let mut res = 42;
let option = Some(12);
+ // TODO: Fix the Clippy lint.
for x in option {
res += x;
}
- println!("{}", res);
+
+ println!("{res}");
}
diff --git a/rustlings-macros/info.toml b/rustlings-macros/info.toml
index 4d40726..fce5e5a 100644
--- a/rustlings-macros/info.toml
+++ b/rustlings-macros/info.toml
@@ -1151,7 +1151,8 @@ dir = "22_clippy"
test = false
strict_clippy = true
hint = """
-`for` loops over `Option` values are more clearly expressed as an `if let`"""
+`for` loops over `Option` values are more clearly expressed as an `if-let`
+statement."""
[[exercises]]
name = "clippy3"
diff --git a/solutions/22_clippy/clippy2.rs b/solutions/22_clippy/clippy2.rs
index 4e18198..7f63562 100644
--- a/solutions/22_clippy/clippy2.rs
+++ b/solutions/22_clippy/clippy2.rs
@@ -1 +1,10 @@
-// Solutions will be available before the stable release. Thank you for testing the beta version 🥰
+fn main() {
+ let mut res = 42;
+ let option = Some(12);
+ // Use `if-let` instead of iteration.
+ if let Some(x) = option {
+ res += x;
+ }
+
+ println!("{res}");
+}