[INFO] cloning repository https://github.com/j1ng3r/advent-of-code-2016 [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/j1ng3r/advent-of-code-2016" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fj1ng3r%2Fadvent-of-code-2016", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fj1ng3r%2Fadvent-of-code-2016'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] d067b50c67077d82676c43c8fd74a869d66c0f0a [INFO] linting j1ng3r/advent-of-code-2016 against nightly for clippy-nonminimal_bool-denied [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fj1ng3r%2Fadvent-of-code-2016" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/j1ng3r/advent-of-code-2016 [INFO] finished tweaking git repo https://github.com/j1ng3r/advent-of-code-2016 [INFO] tweaked toml for git repo https://github.com/j1ng3r/advent-of-code-2016 written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/j1ng3r/advent-of-code-2016 on toolchain nightly [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/j1ng3r/advent-of-code-2016 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 29d5a8f163a56530cd833384fafe2a9c2d2709f5fa7f96c05217e30895d30fec [INFO] running `Command { std: "docker" "start" "-a" "29d5a8f163a56530cd833384fafe2a9c2d2709f5fa7f96c05217e30895d30fec", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "29d5a8f163a56530cd833384fafe2a9c2d2709f5fa7f96c05217e30895d30fec", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "29d5a8f163a56530cd833384fafe2a9c2d2709f5fa7f96c05217e30895d30fec", kill_on_drop: false }` [INFO] [stdout] 29d5a8f163a56530cd833384fafe2a9c2d2709f5fa7f96c05217e30895d30fec [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "clippy" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 9be7b3e0a9b032c6ba4cc8a4066414a96f69201cc0313559e0b7d07e692d7113 [INFO] running `Command { std: "docker" "start" "-a" "9be7b3e0a9b032c6ba4cc8a4066414a96f69201cc0313559e0b7d07e692d7113", kill_on_drop: false }` [INFO] [stderr] Checking regex v1.6.0 [INFO] [stderr] Checking advent-of-code-2016 v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day03/util.rs:5:4 [INFO] [stdout] | [INFO] [stdout] 5 | / return match maybe_x { [INFO] [stdout] 6 | | Ok(x) => Some(x), [INFO] [stdout] 7 | | Err(_) => None [INFO] [stdout] 8 | | } [INFO] [stdout] | |____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 5 ~ match maybe_x { [INFO] [stdout] 6 + Ok(x) => Some(x), [INFO] [stdout] 7 + Err(_) => None [INFO] [stdout] 8 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of `ok` [INFO] [stdout] --> day03/util.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | return match maybe_x { [INFO] [stdout] | ___________^ [INFO] [stdout] 6 | | Ok(x) => Some(x), [INFO] [stdout] 7 | | Err(_) => None [INFO] [stdout] 8 | | } [INFO] [stdout] | |____^ help: replace with: `maybe_x.ok()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_ok_err [INFO] [stdout] = note: `#[warn(clippy::manual_ok_err)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day03/util.rs:12:4 [INFO] [stdout] | [INFO] [stdout] 12 | return option_from_result::(s.parse::()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 12 - return option_from_result::(s.parse::()); [INFO] [stdout] 12 + option_from_result::(s.parse::()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day03/util.rs:16:4 [INFO] [stdout] | [INFO] [stdout] 16 | return i.filter(|x| x.is_some()).map(|x| x.unwrap()).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 16 - return i.filter(|x| x.is_some()).map(|x| x.unwrap()).collect(); [INFO] [stdout] 16 + i.filter(|x| x.is_some()).map(|x| x.unwrap()).collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `filter` for `Some` followed by `unwrap` [INFO] [stdout] --> day03/util.rs:16:13 [INFO] [stdout] | [INFO] [stdout] 16 | return i.filter(|x| x.is_some()).map(|x| x.unwrap()).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `flatten` instead: `flatten()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#option_filter_map [INFO] [stdout] = note: `#[warn(clippy::option_filter_map)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day03/util.rs:27:7 [INFO] [stdout] | [INFO] [stdout] 27 | / return Some(Trpl { [INFO] [stdout] 28 | | a: to_u32(abc.get(0)?)?, [INFO] [stdout] 29 | | b: to_u32(abc.get(1)?)?, [INFO] [stdout] 30 | | c: to_u32(abc.get(2)?)? [INFO] [stdout] 31 | | }); [INFO] [stdout] | |________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 27 ~ Some(Trpl { [INFO] [stdout] 28 + a: to_u32(abc.get(0)?)?, [INFO] [stdout] 29 + b: to_u32(abc.get(1)?)?, [INFO] [stdout] 30 + c: to_u32(abc.get(2)?)? [INFO] [stdout] 31 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `abc.get(0)` [INFO] [stdout] --> day03/util.rs:28:20 [INFO] [stdout] | [INFO] [stdout] 28 | a: to_u32(abc.get(0)?)?, [INFO] [stdout] | ^^^^^^^^^^ help: try: `abc.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] = note: `#[warn(clippy::get_first)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> day03/util.rs:34:14 [INFO] [stdout] | [INFO] [stdout] 34 | return true [INFO] [stdout] | ______________^ [INFO] [stdout] 35 | | && t.a + t.b > t.c [INFO] [stdout] 36 | | && t.b + t.c > t.a [INFO] [stdout] 37 | | && t.c + t.a > t.b [INFO] [stdout] | |________________________^ help: try: `t.a + t.b > t.c && t.b + t.c > t.a && t.c + t.a > t.b` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> day03/util.rs:34:14 [INFO] [stdout] | [INFO] [stdout] 34 | return true [INFO] [stdout] | ______________^ [INFO] [stdout] 35 | | && t.a + t.b > t.c [INFO] [stdout] 36 | | && t.b + t.c > t.a [INFO] [stdout] | |________________________^ help: try: `t.a + t.b > t.c && t.b + t.c > t.a` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> day03/util.rs:34:14 [INFO] [stdout] | [INFO] [stdout] 34 | return true [INFO] [stdout] | ______________^ [INFO] [stdout] 35 | | && t.a + t.b > t.c [INFO] [stdout] | |________________________^ help: try: `t.a + t.b > t.c` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day03/util.rs:34:7 [INFO] [stdout] | [INFO] [stdout] 34 | / return true [INFO] [stdout] 35 | | && t.a + t.b > t.c [INFO] [stdout] 36 | | && t.b + t.c > t.a [INFO] [stdout] 37 | | && t.c + t.a > t.b [INFO] [stdout] | |________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 34 ~ true [INFO] [stdout] 35 + && t.a + t.b > t.c [INFO] [stdout] 36 + && t.b + t.c > t.a [INFO] [stdout] 37 + && t.c + t.a > t.b [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day03/util.rs:44:4 [INFO] [stdout] | [INFO] [stdout] 44 | return input; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 44 - return input; [INFO] [stdout] 44 + input [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day03/puzzle1.rs:10:4 [INFO] [stdout] | [INFO] [stdout] 10 | return collect_options(input.trim().split("\n").map(Trpl::from_str)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 10 - return collect_options(input.trim().split("\n").map(Trpl::from_str)); [INFO] [stdout] 10 + collect_options(input.trim().split("\n").map(Trpl::from_str)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day03/puzzle2.rs:7:7 [INFO] [stdout] | [INFO] [stdout] 7 | / return Trpl { [INFO] [stdout] 8 | | a: 0, [INFO] [stdout] 9 | | b: 0, [INFO] [stdout] 10 | | c: 0, [INFO] [stdout] 11 | | }; [INFO] [stdout] | |_______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 7 ~ Trpl { [INFO] [stdout] 8 + a: 0, [INFO] [stdout] 9 + b: 0, [INFO] [stdout] 10 + c: 0, [INFO] [stdout] 11 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day03/puzzle2.rs:59:4 [INFO] [stdout] | [INFO] [stdout] 59 | return v; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 59 - return v; [INFO] [stdout] 59 + v [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/util.rs:9:7 [INFO] [stdout] | [INFO] [stdout] 9 | / return match c { [INFO] [stdout] 10 | | 'L' => Some(Dir::L), [INFO] [stdout] 11 | | 'R' => Some(Dir::R), [INFO] [stdout] 12 | | 'U' => Some(Dir::U), [INFO] [stdout] 13 | | 'D' => Some(Dir::D), [INFO] [stdout] 14 | | _ => None, [INFO] [stdout] 15 | | } [INFO] [stdout] | |_______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 9 ~ match c { [INFO] [stdout] 10 + 'L' => Some(Dir::L), [INFO] [stdout] 11 + 'R' => Some(Dir::R), [INFO] [stdout] 12 + 'U' => Some(Dir::U), [INFO] [stdout] 13 + 'D' => Some(Dir::D), [INFO] [stdout] 14 + _ => None, [INFO] [stdout] 15 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/util.rs:25:7 [INFO] [stdout] | [INFO] [stdout] 25 | return v; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 25 - return v; [INFO] [stdout] 25 + v [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> day03/puzzle2.rs:29:7 [INFO] [stdout] | [INFO] [stdout] 29 | / match maybe_t { [INFO] [stdout] 30 | | Some(t) => match tp { [INFO] [stdout] 31 | | TrplPos::A => { [INFO] [stdout] 32 | | ta.a = t.a; [INFO] [stdout] ... | [INFO] [stdout] 56 | | None => {} [INFO] [stdout] 57 | | } [INFO] [stdout] | |_______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] = note: `#[warn(clippy::single_match)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 29 ~ if let Some(t) = maybe_t { match tp { [INFO] [stdout] 30 + TrplPos::A => { [INFO] [stdout] 31 + ta.a = t.a; [INFO] [stdout] 32 + tb.a = t.b; [INFO] [stdout] 33 + tc.a = t.c; [INFO] [stdout] 34 + tp = TrplPos::B; [INFO] [stdout] 35 + }, [INFO] [stdout] 36 + TrplPos::B => { [INFO] [stdout] 37 + ta.b = t.a; [INFO] [stdout] 38 + tb.b = t.b; [INFO] [stdout] 39 + tc.b = t.c; [INFO] [stdout] 40 + tp = TrplPos::C; [INFO] [stdout] 41 + }, [INFO] [stdout] 42 + TrplPos::C => { [INFO] [stdout] 43 + ta.c = t.a; [INFO] [stdout] 44 + tb.c = t.b; [INFO] [stdout] 45 + tc.c = t.c; [INFO] [stdout] 46 + v.push(ta); [INFO] [stdout] 47 + v.push(tb); [INFO] [stdout] 48 + v.push(tc); [INFO] [stdout] 49 + ta = Trpl::new(); [INFO] [stdout] 50 + tb = Trpl::new(); [INFO] [stdout] 51 + tc = Trpl::new(); [INFO] [stdout] 52 + tp = TrplPos::A; [INFO] [stdout] 53 + }, [INFO] [stdout] 54 + } } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> day02/util.rs:20:10 [INFO] [stdout] | [INFO] [stdout] 20 | / match Dir::from_char(c) { [INFO] [stdout] 21 | | Some(dir) => v.push(dir), [INFO] [stdout] 22 | | None => {} [INFO] [stdout] 23 | | } [INFO] [stdout] | |__________^ help: try: `if let Some(dir) = Dir::from_char(c) { v.push(dir) }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] = note: `#[warn(clippy::single_match)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/util.rs:32:4 [INFO] [stdout] | [INFO] [stdout] 32 | return input.trim().split("\n").map(Dir::from_str).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 32 - return input.trim().split("\n").map(Dir::from_str).collect(); [INFO] [stdout] 32 + input.trim().split("\n").map(Dir::from_str).collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods with the following characteristics: (`to_*` and `self` type is `Copy`) usually take `self` by value [INFO] [stdout] --> day02/puzzle1.rs:10:14 [INFO] [stdout] | [INFO] [stdout] 10 | fn to_int(&self) -> i8 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider choosing a less ambiguous name [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stdout] = note: `#[warn(clippy::wrong_self_convention)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/puzzle1.rs:11:7 [INFO] [stdout] | [INFO] [stdout] 11 | return 1 + self.x + 3*self.y; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 11 - return 1 + self.x + 3*self.y; [INFO] [stdout] 11 + 1 + self.x + 3*self.y [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods with the following characteristics: (`to_*` and `self` type is `Copy`) usually take `self` by value [INFO] [stdout] --> day02/puzzle1.rs:13:17 [INFO] [stdout] | [INFO] [stdout] 13 | fn to_string(&self) -> String { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider choosing a less ambiguous name [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implementation of inherent method `to_string(&self) -> String` for type `puzzle1::State` [INFO] [stdout] --> day02/puzzle1.rs:13:4 [INFO] [stdout] | [INFO] [stdout] 13 | / fn to_string(&self) -> String { [INFO] [stdout] 14 | | return self.to_int().to_string(); [INFO] [stdout] 15 | | } [INFO] [stdout] | |____^ [INFO] [stdout] | [INFO] [stdout] = help: implement trait `Display` for type `puzzle1::State` instead [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inherent_to_string [INFO] [stdout] = note: `#[warn(clippy::inherent_to_string)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/puzzle1.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | return self.to_int().to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 14 - return self.to_int().to_string(); [INFO] [stdout] 14 + self.to_int().to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/puzzle1.rs:18:10 [INFO] [stdout] | [INFO] [stdout] 18 | return 0 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 18 - return 0 [INFO] [stdout] 18 + 0 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/puzzle1.rs:20:10 [INFO] [stdout] | [INFO] [stdout] 20 | return 2 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 20 - return 2 [INFO] [stdout] 20 + 2 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/puzzle1.rs:22:10 [INFO] [stdout] | [INFO] [stdout] 22 | return v [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 22 - return v [INFO] [stdout] 22 + v [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/puzzle1.rs:26:7 [INFO] [stdout] | [INFO] [stdout] 26 | / return match d { [INFO] [stdout] 27 | | Dir::L => State { [INFO] [stdout] 28 | | x: State::clamp(self.x - 1), [INFO] [stdout] 29 | | y: self.y, [INFO] [stdout] ... | [INFO] [stdout] 42 | | }, [INFO] [stdout] 43 | | } [INFO] [stdout] | |_______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 26 ~ match d { [INFO] [stdout] 27 + Dir::L => State { [INFO] [stdout] 28 + x: State::clamp(self.x - 1), [INFO] [stdout] 29 + y: self.y, [INFO] [stdout] 30 + }, [INFO] [stdout] 31 + Dir::R => State { [INFO] [stdout] 32 + x: State::clamp(self.x + 1), [INFO] [stdout] 33 + y: self.y, [INFO] [stdout] 34 + }, [INFO] [stdout] 35 + Dir::U => State { [INFO] [stdout] 36 + x: self.x, [INFO] [stdout] 37 + y: State::clamp(self.y - 1), [INFO] [stdout] 38 + }, [INFO] [stdout] 39 + Dir::D => State { [INFO] [stdout] 40 + x: self.x, [INFO] [stdout] 41 + y: State::clamp(self.y + 1), [INFO] [stdout] 42 + }, [INFO] [stdout] 43 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/puzzle1.rs:50:7 [INFO] [stdout] | [INFO] [stdout] 50 | return state; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 50 - return state; [INFO] [stdout] 50 + state [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods with the following characteristics: (`to_*` and `self` type is `Copy`) usually take `self` by value [INFO] [stdout] --> day02/puzzle2.rs:13:17 [INFO] [stdout] | [INFO] [stdout] 13 | fn to_string(&self) -> String { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider choosing a less ambiguous name [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implementation of inherent method `to_string(&self) -> String` for type `puzzle2::State` [INFO] [stdout] --> day02/puzzle2.rs:13:4 [INFO] [stdout] | [INFO] [stdout] 13 | / fn to_string(&self) -> String { [INFO] [stdout] 14 | | return match self.y { [INFO] [stdout] 15 | | 0 => (self.x - 1).to_string(), [INFO] [stdout] 16 | | 1 => (self.x + 1).to_string(), [INFO] [stdout] ... | [INFO] [stdout] 27 | | } [INFO] [stdout] | |____^ [INFO] [stdout] | [INFO] [stdout] = help: implement trait `Display` for type `puzzle2::State` instead [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inherent_to_string [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/puzzle2.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | / return match self.y { [INFO] [stdout] 15 | | 0 => (self.x - 1).to_string(), [INFO] [stdout] 16 | | 1 => (self.x + 1).to_string(), [INFO] [stdout] 17 | | 2 => (self.x + 5).to_string(), [INFO] [stdout] ... | [INFO] [stdout] 25 | | _ => String::from(""), [INFO] [stdout] 26 | | } [INFO] [stdout] | |_______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 14 ~ match self.y { [INFO] [stdout] 15 + 0 => (self.x - 1).to_string(), [INFO] [stdout] 16 + 1 => (self.x + 1).to_string(), [INFO] [stdout] 17 + 2 => (self.x + 5).to_string(), [INFO] [stdout] 18 + 3 => match self.x { [INFO] [stdout] 19 + 1 => String::from("A"), [INFO] [stdout] 20 + 2 => String::from("B"), [INFO] [stdout] 21 + 3 => String::from("C"), [INFO] [stdout] 22 + _ => String::from(""), [INFO] [stdout] 23 + }, [INFO] [stdout] 24 + 4 => String::from("D"), [INFO] [stdout] 25 + _ => String::from(""), [INFO] [stdout] 26 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> day02/puzzle2.rs:29:14 [INFO] [stdout] | [INFO] [stdout] 29 | return true [INFO] [stdout] | ______________^ [INFO] [stdout] 30 | | && self.x + self.y >= 2 [INFO] [stdout] 31 | | && self.x + self.y <= 6 [INFO] [stdout] 32 | | && self.x - self.y >= -2 [INFO] [stdout] 33 | | && self.x - self.y <= 2 [INFO] [stdout] | |_____________________________^ help: try: `self.x + self.y >= 2 && self.x + self.y <= 6 && self.x - self.y >= -2 && self.x - self.y <= 2` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> day02/puzzle2.rs:29:14 [INFO] [stdout] | [INFO] [stdout] 29 | return true [INFO] [stdout] | ______________^ [INFO] [stdout] 30 | | && self.x + self.y >= 2 [INFO] [stdout] 31 | | && self.x + self.y <= 6 [INFO] [stdout] 32 | | && self.x - self.y >= -2 [INFO] [stdout] | |______________________________^ help: try: `self.x + self.y >= 2 && self.x + self.y <= 6 && self.x - self.y >= -2` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> day02/puzzle2.rs:29:14 [INFO] [stdout] | [INFO] [stdout] 29 | return true [INFO] [stdout] | ______________^ [INFO] [stdout] 30 | | && self.x + self.y >= 2 [INFO] [stdout] 31 | | && self.x + self.y <= 6 [INFO] [stdout] | |_____________________________^ help: try: `self.x + self.y >= 2 && self.x + self.y <= 6` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> day02/puzzle2.rs:29:14 [INFO] [stdout] | [INFO] [stdout] 29 | return true [INFO] [stdout] | ______________^ [INFO] [stdout] 30 | | && self.x + self.y >= 2 [INFO] [stdout] | |_____________________________^ help: try: `self.x + self.y >= 2` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/puzzle2.rs:29:7 [INFO] [stdout] | [INFO] [stdout] 29 | / return true [INFO] [stdout] 30 | | && self.x + self.y >= 2 [INFO] [stdout] 31 | | && self.x + self.y <= 6 [INFO] [stdout] 32 | | && self.x - self.y >= -2 [INFO] [stdout] 33 | | && self.x - self.y <= 2 [INFO] [stdout] | |_____________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 29 ~ true [INFO] [stdout] 30 + && self.x + self.y >= 2 [INFO] [stdout] 31 + && self.x + self.y <= 6 [INFO] [stdout] 32 + && self.x - self.y >= -2 [INFO] [stdout] 33 + && self.x - self.y <= 2 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/puzzle2.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | return new; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 37 - return new; [INFO] [stdout] 37 + new [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/puzzle2.rs:39:10 [INFO] [stdout] | [INFO] [stdout] 39 | return *self; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 39 - return *self; [INFO] [stdout] 39 + *self [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day03/util.rs:5:4 [INFO] [stdout] | [INFO] [stdout] 5 | / return match maybe_x { [INFO] [stdout] 6 | | Ok(x) => Some(x), [INFO] [stdout] 7 | | Err(_) => None [INFO] [stdout] 8 | | } [INFO] [stdout] | |____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 5 ~ match maybe_x { [INFO] [stdout] 6 + Ok(x) => Some(x), [INFO] [stdout] 7 + Err(_) => None [INFO] [stdout] 8 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/puzzle2.rs:43:7 [INFO] [stdout] | [INFO] [stdout] 43 | / return self.maybe_update(match d { [INFO] [stdout] 44 | | Dir::L => State { [INFO] [stdout] 45 | | x: self.x - 1, [INFO] [stdout] 46 | | y: self.y, [INFO] [stdout] ... | [INFO] [stdout] 59 | | }, [INFO] [stdout] 60 | | }); [INFO] [stdout] | |________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 43 ~ self.maybe_update(match d { [INFO] [stdout] 44 + Dir::L => State { [INFO] [stdout] 45 + x: self.x - 1, [INFO] [stdout] 46 + y: self.y, [INFO] [stdout] 47 + }, [INFO] [stdout] 48 + Dir::R => State { [INFO] [stdout] 49 + x: self.x + 1, [INFO] [stdout] 50 + y: self.y, [INFO] [stdout] 51 + }, [INFO] [stdout] 52 + Dir::U => State { [INFO] [stdout] 53 + x: self.x, [INFO] [stdout] 54 + y: self.y - 1, [INFO] [stdout] 55 + }, [INFO] [stdout] 56 + Dir::D => State { [INFO] [stdout] 57 + x: self.x, [INFO] [stdout] 58 + y: self.y + 1, [INFO] [stdout] 59 + }, [INFO] [stdout] 60 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of `ok` [INFO] [stdout] --> day03/util.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | return match maybe_x { [INFO] [stdout] | ___________^ [INFO] [stdout] 6 | | Ok(x) => Some(x), [INFO] [stdout] 7 | | Err(_) => None [INFO] [stdout] 8 | | } [INFO] [stdout] | |____^ help: replace with: `maybe_x.ok()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_ok_err [INFO] [stdout] = note: `#[warn(clippy::manual_ok_err)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day03/util.rs:12:4 [INFO] [stdout] | [INFO] [stdout] 12 | return option_from_result::(s.parse::()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 12 - return option_from_result::(s.parse::()); [INFO] [stdout] 12 + option_from_result::(s.parse::()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/puzzle2.rs:67:7 [INFO] [stdout] | [INFO] [stdout] 67 | return state; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 67 - return state; [INFO] [stdout] 67 + state [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day03/util.rs:16:4 [INFO] [stdout] | [INFO] [stdout] 16 | return i.filter(|x| x.is_some()).map(|x| x.unwrap()).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 16 - return i.filter(|x| x.is_some()).map(|x| x.unwrap()).collect(); [INFO] [stdout] 16 + i.filter(|x| x.is_some()).map(|x| x.unwrap()).collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `filter` for `Some` followed by `unwrap` [INFO] [stdout] --> day03/util.rs:16:13 [INFO] [stdout] | [INFO] [stdout] 16 | return i.filter(|x| x.is_some()).map(|x| x.unwrap()).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `flatten` instead: `flatten()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#option_filter_map [INFO] [stdout] = note: `#[warn(clippy::option_filter_map)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day03/util.rs:27:7 [INFO] [stdout] | [INFO] [stdout] 27 | / return Some(Trpl { [INFO] [stdout] 28 | | a: to_u32(abc.get(0)?)?, [INFO] [stdout] 29 | | b: to_u32(abc.get(1)?)?, [INFO] [stdout] 30 | | c: to_u32(abc.get(2)?)? [INFO] [stdout] 31 | | }); [INFO] [stdout] | |________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 27 ~ Some(Trpl { [INFO] [stdout] 28 + a: to_u32(abc.get(0)?)?, [INFO] [stdout] 29 + b: to_u32(abc.get(1)?)?, [INFO] [stdout] 30 + c: to_u32(abc.get(2)?)? [INFO] [stdout] 31 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `abc.get(0)` [INFO] [stdout] --> day03/util.rs:28:20 [INFO] [stdout] | [INFO] [stdout] 28 | a: to_u32(abc.get(0)?)?, [INFO] [stdout] | ^^^^^^^^^^ help: try: `abc.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] = note: `#[warn(clippy::get_first)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> day03/util.rs:34:14 [INFO] [stdout] | [INFO] [stdout] 34 | return true [INFO] [stdout] | ______________^ [INFO] [stdout] 35 | | && t.a + t.b > t.c [INFO] [stdout] 36 | | && t.b + t.c > t.a [INFO] [stdout] 37 | | && t.c + t.a > t.b [INFO] [stdout] | |________________________^ help: try: `t.a + t.b > t.c && t.b + t.c > t.a && t.c + t.a > t.b` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> day03/util.rs:34:14 [INFO] [stdout] | [INFO] [stdout] 34 | return true [INFO] [stdout] | ______________^ [INFO] [stdout] 35 | | && t.a + t.b > t.c [INFO] [stdout] 36 | | && t.b + t.c > t.a [INFO] [stdout] | |________________________^ help: try: `t.a + t.b > t.c && t.b + t.c > t.a` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> day03/util.rs:34:14 [INFO] [stdout] | [INFO] [stdout] 34 | return true [INFO] [stdout] | ______________^ [INFO] [stdout] 35 | | && t.a + t.b > t.c [INFO] [stdout] | |________________________^ help: try: `t.a + t.b > t.c` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day03/util.rs:34:7 [INFO] [stdout] | [INFO] [stdout] 34 | / return true [INFO] [stdout] 35 | | && t.a + t.b > t.c [INFO] [stdout] 36 | | && t.b + t.c > t.a [INFO] [stdout] 37 | | && t.c + t.a > t.b [INFO] [stdout] | |________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 34 ~ true [INFO] [stdout] 35 + && t.a + t.b > t.c [INFO] [stdout] 36 + && t.b + t.c > t.a [INFO] [stdout] 37 + && t.c + t.a > t.b [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day03/util.rs:44:4 [INFO] [stdout] | [INFO] [stdout] 44 | return input; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 44 - return input; [INFO] [stdout] 44 + input [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day03/puzzle1.rs:10:4 [INFO] [stdout] | [INFO] [stdout] 10 | return collect_options(input.trim().split("\n").map(Trpl::from_str)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 10 - return collect_options(input.trim().split("\n").map(Trpl::from_str)); [INFO] [stdout] 10 + collect_options(input.trim().split("\n").map(Trpl::from_str)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day03/puzzle2.rs:7:7 [INFO] [stdout] | [INFO] [stdout] 7 | / return Trpl { [INFO] [stdout] 8 | | a: 0, [INFO] [stdout] 9 | | b: 0, [INFO] [stdout] 10 | | c: 0, [INFO] [stdout] 11 | | }; [INFO] [stdout] | |_______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 7 ~ Trpl { [INFO] [stdout] 8 + a: 0, [INFO] [stdout] 9 + b: 0, [INFO] [stdout] 10 + c: 0, [INFO] [stdout] 11 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day03/puzzle2.rs:59:4 [INFO] [stdout] | [INFO] [stdout] 59 | return v; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 59 - return v; [INFO] [stdout] 59 + v [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> day03/puzzle2.rs:29:7 [INFO] [stdout] | [INFO] [stdout] 29 | / match maybe_t { [INFO] [stdout] 30 | | Some(t) => match tp { [INFO] [stdout] 31 | | TrplPos::A => { [INFO] [stdout] 32 | | ta.a = t.a; [INFO] [stdout] ... | [INFO] [stdout] 56 | | None => {} [INFO] [stdout] 57 | | } [INFO] [stdout] | |_______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] = note: `#[warn(clippy::single_match)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 29 ~ if let Some(t) = maybe_t { match tp { [INFO] [stdout] 30 + TrplPos::A => { [INFO] [stdout] 31 + ta.a = t.a; [INFO] [stdout] 32 + tb.a = t.b; [INFO] [stdout] 33 + tc.a = t.c; [INFO] [stdout] 34 + tp = TrplPos::B; [INFO] [stdout] 35 + }, [INFO] [stdout] 36 + TrplPos::B => { [INFO] [stdout] 37 + ta.b = t.a; [INFO] [stdout] 38 + tb.b = t.b; [INFO] [stdout] 39 + tc.b = t.c; [INFO] [stdout] 40 + tp = TrplPos::C; [INFO] [stdout] 41 + }, [INFO] [stdout] 42 + TrplPos::C => { [INFO] [stdout] 43 + ta.c = t.a; [INFO] [stdout] 44 + tb.c = t.b; [INFO] [stdout] 45 + tc.c = t.c; [INFO] [stdout] 46 + v.push(ta); [INFO] [stdout] 47 + v.push(tb); [INFO] [stdout] 48 + v.push(tc); [INFO] [stdout] 49 + ta = Trpl::new(); [INFO] [stdout] 50 + tb = Trpl::new(); [INFO] [stdout] 51 + tc = Trpl::new(); [INFO] [stdout] 52 + tp = TrplPos::A; [INFO] [stdout] 53 + }, [INFO] [stdout] 54 + } } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/util.rs:9:4 [INFO] [stdout] | [INFO] [stdout] 9 | return String::from(input.trim()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 9 - return String::from(input.trim()); [INFO] [stdout] 9 + String::from(input.trim()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/util.rs:13:4 [INFO] [stdout] | [INFO] [stdout] 13 | / return match maybe_x { [INFO] [stdout] 14 | | Ok(x) => Some(x), [INFO] [stdout] 15 | | Err(_) => None [INFO] [stdout] 16 | | } [INFO] [stdout] | |____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 13 ~ match maybe_x { [INFO] [stdout] 14 + Ok(x) => Some(x), [INFO] [stdout] 15 + Err(_) => None [INFO] [stdout] 16 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of `ok` [INFO] [stdout] --> day01/util.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | return match maybe_x { [INFO] [stdout] | ___________^ [INFO] [stdout] 14 | | Ok(x) => Some(x), [INFO] [stdout] 15 | | Err(_) => None [INFO] [stdout] 16 | | } [INFO] [stdout] | |____^ help: replace with: `maybe_x.ok()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_ok_err [INFO] [stdout] = note: `#[warn(clippy::manual_ok_err)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/puzzle1.rs:9:7 [INFO] [stdout] | [INFO] [stdout] 9 | / return match c { [INFO] [stdout] 10 | | Some('R') => Some(Turn::R), [INFO] [stdout] 11 | | Some('L') => Some(Turn::L), [INFO] [stdout] 12 | | _ => None, [INFO] [stdout] 13 | | } [INFO] [stdout] | |_______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 9 ~ match c { [INFO] [stdout] 10 + Some('R') => Some(Turn::R), [INFO] [stdout] 11 + Some('L') => Some(Turn::L), [INFO] [stdout] 12 + _ => None, [INFO] [stdout] 13 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/puzzle1.rs:32:4 [INFO] [stdout] | [INFO] [stdout] 32 | return res.collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 32 - return res.collect(); [INFO] [stdout] 32 + res.collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `filter` for `Some` followed by `unwrap` [INFO] [stdout] --> day01/puzzle1.rs:30:8 [INFO] [stdout] | [INFO] [stdout] 30 | .filter(|x| x.is_some()) [INFO] [stdout] | ________^ [INFO] [stdout] 31 | | .map(|x| x.unwrap()); [INFO] [stdout] | |__________________________^ help: consider using `flatten` instead: `flatten()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#option_filter_map [INFO] [stdout] = note: `#[warn(clippy::option_filter_map)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `.nth(0)` on a `std::iter::Iterator`, when `.next()` is equivalent [INFO] [stdout] --> day01/puzzle1.rs:27:27 [INFO] [stdout] | [INFO] [stdout] 27 | turn: Turn::from(a.chars().nth(0))?, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try calling `.next()` instead of `.nth(0)`: `a.chars().next()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#iter_nth_zero [INFO] [stdout] = note: `#[warn(clippy::iter_nth_zero)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/puzzle1.rs:38:4 [INFO] [stdout] | [INFO] [stdout] 38 | return parsed_input; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 38 - return parsed_input; [INFO] [stdout] 38 + parsed_input [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/puzzle1.rs:44:7 [INFO] [stdout] | [INFO] [stdout] 44 | / return match t { [INFO] [stdout] 45 | | Turn::L => match d { [INFO] [stdout] 46 | | Dir::D0 => Dir::D3, [INFO] [stdout] 47 | | Dir::D1 => Dir::D0, [INFO] [stdout] ... | [INFO] [stdout] 56 | | }, [INFO] [stdout] 57 | | } [INFO] [stdout] | |_______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 44 ~ match t { [INFO] [stdout] 45 + Turn::L => match d { [INFO] [stdout] 46 + Dir::D0 => Dir::D3, [INFO] [stdout] 47 + Dir::D1 => Dir::D0, [INFO] [stdout] 48 + Dir::D2 => Dir::D1, [INFO] [stdout] 49 + Dir::D3 => Dir::D2, [INFO] [stdout] 50 + }, [INFO] [stdout] 51 + Turn::R => match d { [INFO] [stdout] 52 + Dir::D0 => Dir::D1, [INFO] [stdout] 53 + Dir::D1 => Dir::D2, [INFO] [stdout] 54 + Dir::D2 => Dir::D3, [INFO] [stdout] 55 + Dir::D3 => Dir::D0, [INFO] [stdout] 56 + }, [INFO] [stdout] 57 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/puzzle1.rs:75:7 [INFO] [stdout] | [INFO] [stdout] 75 | / return match dir { [INFO] [stdout] 76 | | Dir::D0 => Diff { [INFO] [stdout] 77 | | x: 0, [INFO] [stdout] 78 | | y: -dist, [INFO] [stdout] ... | [INFO] [stdout] 91 | | }, [INFO] [stdout] 92 | | } [INFO] [stdout] | |_______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 75 ~ match dir { [INFO] [stdout] 76 + Dir::D0 => Diff { [INFO] [stdout] 77 + x: 0, [INFO] [stdout] 78 + y: -dist, [INFO] [stdout] 79 + }, [INFO] [stdout] 80 + Dir::D1 => Diff { [INFO] [stdout] 81 + x: dist, [INFO] [stdout] 82 + y: 0, [INFO] [stdout] 83 + }, [INFO] [stdout] 84 + Dir::D2 => Diff { [INFO] [stdout] 85 + x: 0, [INFO] [stdout] 86 + y: dist, [INFO] [stdout] 87 + }, [INFO] [stdout] 88 + Dir::D3 => Diff { [INFO] [stdout] 89 + x: -dist, [INFO] [stdout] 90 + y: 0, [INFO] [stdout] 91 + }, [INFO] [stdout] 92 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/puzzle1.rs:110:7 [INFO] [stdout] | [INFO] [stdout] 110 | return new_s; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 110 - return new_s; [INFO] [stdout] 110 + new_s [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/puzzle1.rs:121:7 [INFO] [stdout] | [INFO] [stdout] 121 | return state; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 121 - return state; [INFO] [stdout] 121 + state [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/puzzle1.rs:125:7 [INFO] [stdout] | [INFO] [stdout] 125 | return dist.try_into().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 125 - return dist.try_into().unwrap(); [INFO] [stdout] 125 + dist.try_into().unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/puzzle2.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | / return match d { [INFO] [stdout] 15 | | Dir::D0 => Dir::D3, [INFO] [stdout] 16 | | Dir::D1 => Dir::D0, [INFO] [stdout] 17 | | Dir::D2 => Dir::D1, [INFO] [stdout] 18 | | Dir::D3 => Dir::D2, [INFO] [stdout] 19 | | } [INFO] [stdout] | |_______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 14 ~ match d { [INFO] [stdout] 15 + Dir::D0 => Dir::D3, [INFO] [stdout] 16 + Dir::D1 => Dir::D0, [INFO] [stdout] 17 + Dir::D2 => Dir::D1, [INFO] [stdout] 18 + Dir::D3 => Dir::D2, [INFO] [stdout] 19 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/puzzle2.rs:22:7 [INFO] [stdout] | [INFO] [stdout] 22 | / return match d { [INFO] [stdout] 23 | | Dir::D0 => Dir::D1, [INFO] [stdout] 24 | | Dir::D1 => Dir::D2, [INFO] [stdout] 25 | | Dir::D2 => Dir::D3, [INFO] [stdout] 26 | | Dir::D3 => Dir::D0, [INFO] [stdout] 27 | | } [INFO] [stdout] | |_______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 22 ~ match d { [INFO] [stdout] 23 + Dir::D0 => Dir::D1, [INFO] [stdout] 24 + Dir::D1 => Dir::D2, [INFO] [stdout] 25 + Dir::D2 => Dir::D3, [INFO] [stdout] 26 + Dir::D3 => Dir::D0, [INFO] [stdout] 27 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> day01/puzzle2.rs:55:10 [INFO] [stdout] | [INFO] [stdout] 55 | / true [INFO] [stdout] 56 | | && self.x == other.x [INFO] [stdout] 57 | | && self.y == other.y [INFO] [stdout] | |__________________________^ help: try: `self.x == other.x && self.y == other.y` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> day01/puzzle2.rs:55:10 [INFO] [stdout] | [INFO] [stdout] 55 | / true [INFO] [stdout] 56 | | && self.x == other.x [INFO] [stdout] | |__________________________^ help: try: `self.x == other.x` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/puzzle2.rs:64:7 [INFO] [stdout] | [INFO] [stdout] 64 | / return match s.dir { [INFO] [stdout] 65 | | Dir::D0 => State { [INFO] [stdout] 66 | | x: s.x - 0, [INFO] [stdout] 67 | | y: s.y - 1, [INFO] [stdout] ... | [INFO] [stdout] 88 | | }, [INFO] [stdout] 89 | | } [INFO] [stdout] | |_______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 64 ~ match s.dir { [INFO] [stdout] 65 + Dir::D0 => State { [INFO] [stdout] 66 + x: s.x - 0, [INFO] [stdout] 67 + y: s.y - 1, [INFO] [stdout] 68 + dir: s.dir, [INFO] [stdout] 69 + index: s.index + 1, [INFO] [stdout] 70 + }, [INFO] [stdout] 71 + Dir::D1 => State { [INFO] [stdout] 72 + x: s.x + 1, [INFO] [stdout] 73 + y: s.y + 0, [INFO] [stdout] 74 + dir: s.dir, [INFO] [stdout] 75 + index: s.index + 1, [INFO] [stdout] 76 + }, [INFO] [stdout] 77 + Dir::D2 => State { [INFO] [stdout] 78 + x: s.x + 0, [INFO] [stdout] 79 + y: s.y + 1, [INFO] [stdout] 80 + dir: s.dir, [INFO] [stdout] 81 + index: s.index + 1, [INFO] [stdout] 82 + }, [INFO] [stdout] 83 + Dir::D3 => State { [INFO] [stdout] 84 + x: s.x - 1, [INFO] [stdout] 85 + y: s.y - 0, [INFO] [stdout] 86 + dir: s.dir, [INFO] [stdout] 87 + index: s.index + 1, [INFO] [stdout] 88 + }, [INFO] [stdout] 89 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> day01/puzzle2.rs:66:16 [INFO] [stdout] | [INFO] [stdout] 66 | x: s.x - 0, [INFO] [stdout] | ^^^^^^^ help: consider reducing it to: `s.x` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] = note: `#[warn(clippy::identity_op)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> day01/puzzle2.rs:73:16 [INFO] [stdout] | [INFO] [stdout] 73 | y: s.y + 0, [INFO] [stdout] | ^^^^^^^ help: consider reducing it to: `s.y` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> day01/puzzle2.rs:78:16 [INFO] [stdout] | [INFO] [stdout] 78 | x: s.x + 0, [INFO] [stdout] | ^^^^^^^ help: consider reducing it to: `s.x` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> day01/puzzle2.rs:85:16 [INFO] [stdout] | [INFO] [stdout] 85 | y: s.y - 0, [INFO] [stdout] | ^^^^^^^ help: consider reducing it to: `s.y` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/puzzle2.rs:92:7 [INFO] [stdout] | [INFO] [stdout] 92 | / return match i { [INFO] [stdout] 93 | | Instruction::L => State { [INFO] [stdout] 94 | | x: s.x, [INFO] [stdout] 95 | | y: s.y, [INFO] [stdout] ... | [INFO] [stdout] 105 | | Instruction::F => State::consume_f(s), [INFO] [stdout] 106 | | } [INFO] [stdout] | |_______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 92 ~ match i { [INFO] [stdout] 93 + Instruction::L => State { [INFO] [stdout] 94 + x: s.x, [INFO] [stdout] 95 + y: s.y, [INFO] [stdout] 96 + dir: Dir::consume_l(s.dir), [INFO] [stdout] 97 + index: s.index + 1, [INFO] [stdout] 98 + }, [INFO] [stdout] 99 + Instruction::R => State { [INFO] [stdout] 100 + x: s.x, [INFO] [stdout] 101 + y: s.y, [INFO] [stdout] 102 + dir: Dir::consume_r(s.dir), [INFO] [stdout] 103 + index: s.index + 1, [INFO] [stdout] 104 + }, [INFO] [stdout] 105 + Instruction::F => State::consume_f(s), [INFO] [stdout] 106 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/puzzle2.rs:110:7 [INFO] [stdout] | [INFO] [stdout] 110 | return dist.try_into().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 110 - return dist.try_into().unwrap(); [INFO] [stdout] 110 + dist.try_into().unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/puzzle2.rs:136:4 [INFO] [stdout] | [INFO] [stdout] 136 | return v; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 136 - return v; [INFO] [stdout] 136 + v [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match can be simplified with `.unwrap_or_default()` [INFO] [stdout] --> day01/puzzle2.rs:128:20 [INFO] [stdout] | [INFO] [stdout] 128 | let num_fs = match maybe_num_fs { [INFO] [stdout] | ____________________^ [INFO] [stdout] 129 | | Some(num_fs) => num_fs, [INFO] [stdout] 130 | | None => 0, [INFO] [stdout] 131 | | }; [INFO] [stdout] | |_______^ help: replace it with: `maybe_num_fs.unwrap_or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_unwrap_or_default [INFO] [stdout] = note: `#[warn(clippy::manual_unwrap_or_default)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day04/util.rs:7:4 [INFO] [stdout] | [INFO] [stdout] 7 | return s.parse::().ok(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 7 - return s.parse::().ok(); [INFO] [stdout] 7 + s.parse::().ok() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day04/util.rs:27:4 [INFO] [stdout] | [INFO] [stdout] 27 | return h; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 27 - return h; [INFO] [stdout] 27 + h [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day04/util.rs:33:4 [INFO] [stdout] | [INFO] [stdout] 33 | return input; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 33 - return input; [INFO] [stdout] 33 + input [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day04/puzzle1.rs:15:7 [INFO] [stdout] | [INFO] [stdout] 15 | / return Some(Input { [INFO] [stdout] 16 | | name: String::from(&caps["name"]), [INFO] [stdout] 17 | | code: util::to_u32(&caps["code"])?, [INFO] [stdout] 18 | | order: String::from(&caps["order"]), [INFO] [stdout] 19 | | }); [INFO] [stdout] | |________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 15 ~ Some(Input { [INFO] [stdout] 16 + name: String::from(&caps["name"]), [INFO] [stdout] 17 + code: util::to_u32(&caps["code"])?, [INFO] [stdout] 18 + order: String::from(&caps["order"]), [INFO] [stdout] 19 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> day04/puzzle1.rs:37:16 [INFO] [stdout] | [INFO] [stdout] 37 | while val_set.len() > 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!val_set.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] = note: `#[warn(clippy::len_zero)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day04/puzzle1.rs:52:7 [INFO] [stdout] | [INFO] [stdout] 52 | / return match maybe_input { [INFO] [stdout] 53 | | Some(input) => Input::is_real_room(&input), [INFO] [stdout] 54 | | None => false [INFO] [stdout] 55 | | } [INFO] [stdout] | |_______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 52 ~ match maybe_input { [INFO] [stdout] 53 + Some(input) => Input::is_real_room(&input), [INFO] [stdout] 54 + None => false [INFO] [stdout] 55 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> day04/puzzle1.rs:53:45 [INFO] [stdout] | [INFO] [stdout] 53 | Some(input) => Input::is_real_room(&input), [INFO] [stdout] | ^^^^^^ help: change this to: `input` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting integer literal to `u32` is unnecessary [INFO] [stdout] --> day04/puzzle1.rs:65:13 [INFO] [stdout] | [INFO] [stdout] 65 | .fold(0 as u32, |x, y| x + y.unwrap().code); [INFO] [stdout] | ^^^^^^^^ help: try: `0_u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] = note: `#[warn(clippy::unnecessary_cast)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/util.rs:9:4 [INFO] [stdout] | [INFO] [stdout] 9 | return String::from(input.trim()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 9 - return String::from(input.trim()); [INFO] [stdout] 9 + String::from(input.trim()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/util.rs:13:4 [INFO] [stdout] | [INFO] [stdout] 13 | / return match maybe_x { [INFO] [stdout] 14 | | Ok(x) => Some(x), [INFO] [stdout] 15 | | Err(_) => None [INFO] [stdout] 16 | | } [INFO] [stdout] | |____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 13 ~ match maybe_x { [INFO] [stdout] 14 + Ok(x) => Some(x), [INFO] [stdout] 15 + Err(_) => None [INFO] [stdout] 16 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of `ok` [INFO] [stdout] --> day01/util.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | return match maybe_x { [INFO] [stdout] | ___________^ [INFO] [stdout] 14 | | Ok(x) => Some(x), [INFO] [stdout] 15 | | Err(_) => None [INFO] [stdout] 16 | | } [INFO] [stdout] | |____^ help: replace with: `maybe_x.ok()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_ok_err [INFO] [stdout] = note: `#[warn(clippy::manual_ok_err)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/puzzle1.rs:9:7 [INFO] [stdout] | [INFO] [stdout] 9 | / return match c { [INFO] [stdout] 10 | | Some('R') => Some(Turn::R), [INFO] [stdout] 11 | | Some('L') => Some(Turn::L), [INFO] [stdout] 12 | | _ => None, [INFO] [stdout] 13 | | } [INFO] [stdout] | |_______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 9 ~ match c { [INFO] [stdout] 10 + Some('R') => Some(Turn::R), [INFO] [stdout] 11 + Some('L') => Some(Turn::L), [INFO] [stdout] 12 + _ => None, [INFO] [stdout] 13 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/puzzle1.rs:32:4 [INFO] [stdout] | [INFO] [stdout] 32 | return res.collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 32 - return res.collect(); [INFO] [stdout] 32 + res.collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `filter` for `Some` followed by `unwrap` [INFO] [stdout] --> day01/puzzle1.rs:30:8 [INFO] [stdout] | [INFO] [stdout] 30 | .filter(|x| x.is_some()) [INFO] [stdout] | ________^ [INFO] [stdout] 31 | | .map(|x| x.unwrap()); [INFO] [stdout] | |__________________________^ help: consider using `flatten` instead: `flatten()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#option_filter_map [INFO] [stdout] = note: `#[warn(clippy::option_filter_map)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day04/util.rs:7:4 [INFO] [stdout] | [INFO] [stdout] 7 | return s.parse::().ok(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 7 - return s.parse::().ok(); [INFO] [stdout] 7 + s.parse::().ok() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day04/util.rs:27:4 [INFO] [stdout] | [INFO] [stdout] 27 | return h; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 27 - return h; [INFO] [stdout] 27 + h [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day04/util.rs:33:4 [INFO] [stdout] | [INFO] [stdout] 33 | return input; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 33 - return input; [INFO] [stdout] 33 + input [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `.nth(0)` on a `std::iter::Iterator`, when `.next()` is equivalent [INFO] [stdout] --> day01/puzzle1.rs:27:27 [INFO] [stdout] | [INFO] [stdout] 27 | turn: Turn::from(a.chars().nth(0))?, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try calling `.next()` instead of `.nth(0)`: `a.chars().next()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#iter_nth_zero [INFO] [stdout] = note: `#[warn(clippy::iter_nth_zero)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day04/puzzle1.rs:15:7 [INFO] [stdout] | [INFO] [stdout] 15 | / return Some(Input { [INFO] [stdout] 16 | | name: String::from(&caps["name"]), [INFO] [stdout] 17 | | code: util::to_u32(&caps["code"])?, [INFO] [stdout] 18 | | order: String::from(&caps["order"]), [INFO] [stdout] 19 | | }); [INFO] [stdout] | |________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 15 ~ Some(Input { [INFO] [stdout] 16 + name: String::from(&caps["name"]), [INFO] [stdout] 17 + code: util::to_u32(&caps["code"])?, [INFO] [stdout] 18 + order: String::from(&caps["order"]), [INFO] [stdout] 19 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/puzzle1.rs:38:4 [INFO] [stdout] | [INFO] [stdout] 38 | return parsed_input; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 38 - return parsed_input; [INFO] [stdout] 38 + parsed_input [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/puzzle1.rs:44:7 [INFO] [stdout] | [INFO] [stdout] 44 | / return match t { [INFO] [stdout] 45 | | Turn::L => match d { [INFO] [stdout] 46 | | Dir::D0 => Dir::D3, [INFO] [stdout] 47 | | Dir::D1 => Dir::D0, [INFO] [stdout] ... | [INFO] [stdout] 56 | | }, [INFO] [stdout] 57 | | } [INFO] [stdout] | |_______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 44 ~ match t { [INFO] [stdout] 45 + Turn::L => match d { [INFO] [stdout] 46 + Dir::D0 => Dir::D3, [INFO] [stdout] 47 + Dir::D1 => Dir::D0, [INFO] [stdout] 48 + Dir::D2 => Dir::D1, [INFO] [stdout] 49 + Dir::D3 => Dir::D2, [INFO] [stdout] 50 + }, [INFO] [stdout] 51 + Turn::R => match d { [INFO] [stdout] 52 + Dir::D0 => Dir::D1, [INFO] [stdout] 53 + Dir::D1 => Dir::D2, [INFO] [stdout] 54 + Dir::D2 => Dir::D3, [INFO] [stdout] 55 + Dir::D3 => Dir::D0, [INFO] [stdout] 56 + }, [INFO] [stdout] 57 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/puzzle1.rs:75:7 [INFO] [stdout] | [INFO] [stdout] 75 | / return match dir { [INFO] [stdout] 76 | | Dir::D0 => Diff { [INFO] [stdout] 77 | | x: 0, [INFO] [stdout] 78 | | y: -dist, [INFO] [stdout] ... | [INFO] [stdout] 91 | | }, [INFO] [stdout] 92 | | } [INFO] [stdout] | |_______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 75 ~ match dir { [INFO] [stdout] 76 + Dir::D0 => Diff { [INFO] [stdout] 77 + x: 0, [INFO] [stdout] 78 + y: -dist, [INFO] [stdout] 79 + }, [INFO] [stdout] 80 + Dir::D1 => Diff { [INFO] [stdout] 81 + x: dist, [INFO] [stdout] 82 + y: 0, [INFO] [stdout] 83 + }, [INFO] [stdout] 84 + Dir::D2 => Diff { [INFO] [stdout] 85 + x: 0, [INFO] [stdout] 86 + y: dist, [INFO] [stdout] 87 + }, [INFO] [stdout] 88 + Dir::D3 => Diff { [INFO] [stdout] 89 + x: -dist, [INFO] [stdout] 90 + y: 0, [INFO] [stdout] 91 + }, [INFO] [stdout] 92 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/puzzle1.rs:110:7 [INFO] [stdout] | [INFO] [stdout] 110 | return new_s; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 110 - return new_s; [INFO] [stdout] 110 + new_s [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/util.rs:9:7 [INFO] [stdout] | [INFO] [stdout] 9 | / return match c { [INFO] [stdout] 10 | | 'L' => Some(Dir::L), [INFO] [stdout] 11 | | 'R' => Some(Dir::R), [INFO] [stdout] 12 | | 'U' => Some(Dir::U), [INFO] [stdout] 13 | | 'D' => Some(Dir::D), [INFO] [stdout] 14 | | _ => None, [INFO] [stdout] 15 | | } [INFO] [stdout] | |_______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 9 ~ match c { [INFO] [stdout] 10 + 'L' => Some(Dir::L), [INFO] [stdout] 11 + 'R' => Some(Dir::R), [INFO] [stdout] 12 + 'U' => Some(Dir::U), [INFO] [stdout] 13 + 'D' => Some(Dir::D), [INFO] [stdout] 14 + _ => None, [INFO] [stdout] 15 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/util.rs:25:7 [INFO] [stdout] | [INFO] [stdout] 25 | return v; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 25 - return v; [INFO] [stdout] 25 + v [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> day02/util.rs:20:10 [INFO] [stdout] | [INFO] [stdout] 20 | / match Dir::from_char(c) { [INFO] [stdout] 21 | | Some(dir) => v.push(dir), [INFO] [stdout] 22 | | None => {} [INFO] [stdout] 23 | | } [INFO] [stdout] | |__________^ help: try: `if let Some(dir) = Dir::from_char(c) { v.push(dir) }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] = note: `#[warn(clippy::single_match)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/util.rs:32:4 [INFO] [stdout] | [INFO] [stdout] 32 | return input.trim().split("\n").map(Dir::from_str).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 32 - return input.trim().split("\n").map(Dir::from_str).collect(); [INFO] [stdout] 32 + input.trim().split("\n").map(Dir::from_str).collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods with the following characteristics: (`to_*` and `self` type is `Copy`) usually take `self` by value [INFO] [stdout] --> day02/puzzle1.rs:10:14 [INFO] [stdout] | [INFO] [stdout] 10 | fn to_int(&self) -> i8 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider choosing a less ambiguous name [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stdout] = note: `#[warn(clippy::wrong_self_convention)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/puzzle1.rs:11:7 [INFO] [stdout] | [INFO] [stdout] 11 | return 1 + self.x + 3*self.y; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 11 - return 1 + self.x + 3*self.y; [INFO] [stdout] 11 + 1 + self.x + 3*self.y [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods with the following characteristics: (`to_*` and `self` type is `Copy`) usually take `self` by value [INFO] [stdout] --> day02/puzzle1.rs:13:17 [INFO] [stdout] | [INFO] [stdout] 13 | fn to_string(&self) -> String { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider choosing a less ambiguous name [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implementation of inherent method `to_string(&self) -> String` for type `puzzle1::State` [INFO] [stdout] --> day02/puzzle1.rs:13:4 [INFO] [stdout] | [INFO] [stdout] 13 | / fn to_string(&self) -> String { [INFO] [stdout] 14 | | return self.to_int().to_string(); [INFO] [stdout] 15 | | } [INFO] [stdout] | |____^ [INFO] [stdout] | [INFO] [stdout] = help: implement trait `Display` for type `puzzle1::State` instead [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inherent_to_string [INFO] [stdout] = note: `#[warn(clippy::inherent_to_string)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/puzzle1.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | return self.to_int().to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 14 - return self.to_int().to_string(); [INFO] [stdout] 14 + self.to_int().to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/puzzle1.rs:18:10 [INFO] [stdout] | [INFO] [stdout] 18 | return 0 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 18 - return 0 [INFO] [stdout] 18 + 0 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/puzzle1.rs:20:10 [INFO] [stdout] | [INFO] [stdout] 20 | return 2 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 20 - return 2 [INFO] [stdout] 20 + 2 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/puzzle1.rs:22:10 [INFO] [stdout] | [INFO] [stdout] 22 | return v [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 22 - return v [INFO] [stdout] 22 + v [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/puzzle1.rs:26:7 [INFO] [stdout] | [INFO] [stdout] 26 | / return match d { [INFO] [stdout] 27 | | Dir::L => State { [INFO] [stdout] 28 | | x: State::clamp(self.x - 1), [INFO] [stdout] 29 | | y: self.y, [INFO] [stdout] ... | [INFO] [stdout] 42 | | }, [INFO] [stdout] 43 | | } [INFO] [stdout] | |_______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 26 ~ match d { [INFO] [stdout] 27 + Dir::L => State { [INFO] [stdout] 28 + x: State::clamp(self.x - 1), [INFO] [stdout] 29 + y: self.y, [INFO] [stdout] 30 + }, [INFO] [stdout] 31 + Dir::R => State { [INFO] [stdout] 32 + x: State::clamp(self.x + 1), [INFO] [stdout] 33 + y: self.y, [INFO] [stdout] 34 + }, [INFO] [stdout] 35 + Dir::U => State { [INFO] [stdout] 36 + x: self.x, [INFO] [stdout] 37 + y: State::clamp(self.y - 1), [INFO] [stdout] 38 + }, [INFO] [stdout] 39 + Dir::D => State { [INFO] [stdout] 40 + x: self.x, [INFO] [stdout] 41 + y: State::clamp(self.y + 1), [INFO] [stdout] 42 + }, [INFO] [stdout] 43 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/puzzle1.rs:50:7 [INFO] [stdout] | [INFO] [stdout] 50 | return state; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 50 - return state; [INFO] [stdout] 50 + state [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods with the following characteristics: (`to_*` and `self` type is `Copy`) usually take `self` by value [INFO] [stdout] --> day02/puzzle2.rs:13:17 [INFO] [stdout] | [INFO] [stdout] 13 | fn to_string(&self) -> String { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider choosing a less ambiguous name [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implementation of inherent method `to_string(&self) -> String` for type `puzzle2::State` [INFO] [stdout] --> day02/puzzle2.rs:13:4 [INFO] [stdout] | [INFO] [stdout] 13 | / fn to_string(&self) -> String { [INFO] [stdout] 14 | | return match self.y { [INFO] [stdout] 15 | | 0 => (self.x - 1).to_string(), [INFO] [stdout] 16 | | 1 => (self.x + 1).to_string(), [INFO] [stdout] ... | [INFO] [stdout] 27 | | } [INFO] [stdout] | |____^ [INFO] [stdout] | [INFO] [stdout] = help: implement trait `Display` for type `puzzle2::State` instead [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inherent_to_string [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/puzzle2.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | / return match self.y { [INFO] [stdout] 15 | | 0 => (self.x - 1).to_string(), [INFO] [stdout] 16 | | 1 => (self.x + 1).to_string(), [INFO] [stdout] 17 | | 2 => (self.x + 5).to_string(), [INFO] [stdout] ... | [INFO] [stdout] 25 | | _ => String::from(""), [INFO] [stdout] 26 | | } [INFO] [stdout] | |_______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 14 ~ match self.y { [INFO] [stdout] 15 + 0 => (self.x - 1).to_string(), [INFO] [stdout] 16 + 1 => (self.x + 1).to_string(), [INFO] [stdout] 17 + 2 => (self.x + 5).to_string(), [INFO] [stdout] 18 + 3 => match self.x { [INFO] [stdout] 19 + 1 => String::from("A"), [INFO] [stdout] 20 + 2 => String::from("B"), [INFO] [stdout] 21 + 3 => String::from("C"), [INFO] [stdout] 22 + _ => String::from(""), [INFO] [stdout] 23 + }, [INFO] [stdout] 24 + 4 => String::from("D"), [INFO] [stdout] 25 + _ => String::from(""), [INFO] [stdout] 26 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> day02/puzzle2.rs:29:14 [INFO] [stdout] | [INFO] [stdout] 29 | return true [INFO] [stdout] | ______________^ [INFO] [stdout] 30 | | && self.x + self.y >= 2 [INFO] [stdout] 31 | | && self.x + self.y <= 6 [INFO] [stdout] 32 | | && self.x - self.y >= -2 [INFO] [stdout] 33 | | && self.x - self.y <= 2 [INFO] [stdout] | |_____________________________^ help: try: `self.x + self.y >= 2 && self.x + self.y <= 6 && self.x - self.y >= -2 && self.x - self.y <= 2` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> day02/puzzle2.rs:29:14 [INFO] [stdout] | [INFO] [stdout] 29 | return true [INFO] [stdout] | ______________^ [INFO] [stdout] 30 | | && self.x + self.y >= 2 [INFO] [stdout] 31 | | && self.x + self.y <= 6 [INFO] [stdout] 32 | | && self.x - self.y >= -2 [INFO] [stdout] | |______________________________^ help: try: `self.x + self.y >= 2 && self.x + self.y <= 6 && self.x - self.y >= -2` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/puzzle1.rs:121:7 [INFO] [stdout] | [INFO] [stdout] 121 | return state; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 121 - return state; [INFO] [stdout] 121 + state [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> day02/puzzle2.rs:29:14 [INFO] [stdout] | [INFO] [stdout] 29 | return true [INFO] [stdout] | ______________^ [INFO] [stdout] 30 | | && self.x + self.y >= 2 [INFO] [stdout] 31 | | && self.x + self.y <= 6 [INFO] [stdout] | |_____________________________^ help: try: `self.x + self.y >= 2 && self.x + self.y <= 6` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> day02/puzzle2.rs:29:14 [INFO] [stdout] | [INFO] [stdout] 29 | return true [INFO] [stdout] | ______________^ [INFO] [stdout] 30 | | && self.x + self.y >= 2 [INFO] [stdout] | |_____________________________^ help: try: `self.x + self.y >= 2` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/puzzle2.rs:29:7 [INFO] [stdout] | [INFO] [stdout] 29 | / return true [INFO] [stdout] 30 | | && self.x + self.y >= 2 [INFO] [stdout] 31 | | && self.x + self.y <= 6 [INFO] [stdout] 32 | | && self.x - self.y >= -2 [INFO] [stdout] 33 | | && self.x - self.y <= 2 [INFO] [stdout] | |_____________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 29 ~ true [INFO] [stdout] 30 + && self.x + self.y >= 2 [INFO] [stdout] 31 + && self.x + self.y <= 6 [INFO] [stdout] 32 + && self.x - self.y >= -2 [INFO] [stdout] 33 + && self.x - self.y <= 2 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/puzzle2.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | return new; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 37 - return new; [INFO] [stdout] 37 + new [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/puzzle2.rs:39:10 [INFO] [stdout] | [INFO] [stdout] 39 | return *self; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 39 - return *self; [INFO] [stdout] 39 + *self [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> day04/puzzle1.rs:37:16 [INFO] [stdout] | [INFO] [stdout] 37 | while val_set.len() > 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!val_set.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] = note: `#[warn(clippy::len_zero)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/puzzle2.rs:43:7 [INFO] [stdout] | [INFO] [stdout] 43 | / return self.maybe_update(match d { [INFO] [stdout] 44 | | Dir::L => State { [INFO] [stdout] 45 | | x: self.x - 1, [INFO] [stdout] 46 | | y: self.y, [INFO] [stdout] ... | [INFO] [stdout] 59 | | }, [INFO] [stdout] 60 | | }); [INFO] [stdout] | |________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 43 ~ self.maybe_update(match d { [INFO] [stdout] 44 + Dir::L => State { [INFO] [stdout] 45 + x: self.x - 1, [INFO] [stdout] 46 + y: self.y, [INFO] [stdout] 47 + }, [INFO] [stdout] 48 + Dir::R => State { [INFO] [stdout] 49 + x: self.x + 1, [INFO] [stdout] 50 + y: self.y, [INFO] [stdout] 51 + }, [INFO] [stdout] 52 + Dir::U => State { [INFO] [stdout] 53 + x: self.x, [INFO] [stdout] 54 + y: self.y - 1, [INFO] [stdout] 55 + }, [INFO] [stdout] 56 + Dir::D => State { [INFO] [stdout] 57 + x: self.x, [INFO] [stdout] 58 + y: self.y + 1, [INFO] [stdout] 59 + }, [INFO] [stdout] 60 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/puzzle1.rs:125:7 [INFO] [stdout] | [INFO] [stdout] 125 | return dist.try_into().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 125 - return dist.try_into().unwrap(); [INFO] [stdout] 125 + dist.try_into().unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day04/puzzle1.rs:52:7 [INFO] [stdout] | [INFO] [stdout] 52 | / return match maybe_input { [INFO] [stdout] 53 | | Some(input) => Input::is_real_room(&input), [INFO] [stdout] 54 | | None => false [INFO] [stdout] 55 | | } [INFO] [stdout] | |_______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 52 ~ match maybe_input { [INFO] [stdout] 53 + Some(input) => Input::is_real_room(&input), [INFO] [stdout] 54 + None => false [INFO] [stdout] 55 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> day04/puzzle1.rs:53:45 [INFO] [stdout] | [INFO] [stdout] 53 | Some(input) => Input::is_real_room(&input), [INFO] [stdout] | ^^^^^^ help: change this to: `input` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day02/puzzle2.rs:67:7 [INFO] [stdout] | [INFO] [stdout] 67 | return state; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 67 - return state; [INFO] [stdout] 67 + state [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting integer literal to `u32` is unnecessary [INFO] [stdout] --> day04/puzzle1.rs:65:13 [INFO] [stdout] | [INFO] [stdout] 65 | .fold(0 as u32, |x, y| x + y.unwrap().code); [INFO] [stdout] | ^^^^^^^^ help: try: `0_u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] = note: `#[warn(clippy::unnecessary_cast)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/puzzle2.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | / return match d { [INFO] [stdout] 15 | | Dir::D0 => Dir::D3, [INFO] [stdout] 16 | | Dir::D1 => Dir::D0, [INFO] [stdout] 17 | | Dir::D2 => Dir::D1, [INFO] [stdout] 18 | | Dir::D3 => Dir::D2, [INFO] [stdout] 19 | | } [INFO] [stdout] | |_______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 14 ~ match d { [INFO] [stdout] 15 + Dir::D0 => Dir::D3, [INFO] [stdout] 16 + Dir::D1 => Dir::D0, [INFO] [stdout] 17 + Dir::D2 => Dir::D1, [INFO] [stdout] 18 + Dir::D3 => Dir::D2, [INFO] [stdout] 19 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/puzzle2.rs:22:7 [INFO] [stdout] | [INFO] [stdout] 22 | / return match d { [INFO] [stdout] 23 | | Dir::D0 => Dir::D1, [INFO] [stdout] 24 | | Dir::D1 => Dir::D2, [INFO] [stdout] 25 | | Dir::D2 => Dir::D3, [INFO] [stdout] 26 | | Dir::D3 => Dir::D0, [INFO] [stdout] 27 | | } [INFO] [stdout] | |_______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 22 ~ match d { [INFO] [stdout] 23 + Dir::D0 => Dir::D1, [INFO] [stdout] 24 + Dir::D1 => Dir::D2, [INFO] [stdout] 25 + Dir::D2 => Dir::D3, [INFO] [stdout] 26 + Dir::D3 => Dir::D0, [INFO] [stdout] 27 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> day01/puzzle2.rs:55:10 [INFO] [stdout] | [INFO] [stdout] 55 | / true [INFO] [stdout] 56 | | && self.x == other.x [INFO] [stdout] 57 | | && self.y == other.y [INFO] [stdout] | |__________________________^ help: try: `self.x == other.x && self.y == other.y` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> day01/puzzle2.rs:55:10 [INFO] [stdout] | [INFO] [stdout] 55 | / true [INFO] [stdout] 56 | | && self.x == other.x [INFO] [stdout] | |__________________________^ help: try: `self.x == other.x` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/puzzle2.rs:64:7 [INFO] [stdout] | [INFO] [stdout] 64 | / return match s.dir { [INFO] [stdout] 65 | | Dir::D0 => State { [INFO] [stdout] 66 | | x: s.x - 0, [INFO] [stdout] 67 | | y: s.y - 1, [INFO] [stdout] ... | [INFO] [stdout] 88 | | }, [INFO] [stdout] 89 | | } [INFO] [stdout] | |_______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 64 ~ match s.dir { [INFO] [stdout] 65 + Dir::D0 => State { [INFO] [stdout] 66 + x: s.x - 0, [INFO] [stdout] 67 + y: s.y - 1, [INFO] [stdout] 68 + dir: s.dir, [INFO] [stdout] 69 + index: s.index + 1, [INFO] [stdout] 70 + }, [INFO] [stdout] 71 + Dir::D1 => State { [INFO] [stdout] 72 + x: s.x + 1, [INFO] [stdout] 73 + y: s.y + 0, [INFO] [stdout] 74 + dir: s.dir, [INFO] [stdout] 75 + index: s.index + 1, [INFO] [stdout] 76 + }, [INFO] [stdout] 77 + Dir::D2 => State { [INFO] [stdout] 78 + x: s.x + 0, [INFO] [stdout] 79 + y: s.y + 1, [INFO] [stdout] 80 + dir: s.dir, [INFO] [stdout] 81 + index: s.index + 1, [INFO] [stdout] 82 + }, [INFO] [stdout] 83 + Dir::D3 => State { [INFO] [stdout] 84 + x: s.x - 1, [INFO] [stdout] 85 + y: s.y - 0, [INFO] [stdout] 86 + dir: s.dir, [INFO] [stdout] 87 + index: s.index + 1, [INFO] [stdout] 88 + }, [INFO] [stdout] 89 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> day01/puzzle2.rs:66:16 [INFO] [stdout] | [INFO] [stdout] 66 | x: s.x - 0, [INFO] [stdout] | ^^^^^^^ help: consider reducing it to: `s.x` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] = note: `#[warn(clippy::identity_op)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> day01/puzzle2.rs:73:16 [INFO] [stdout] | [INFO] [stdout] 73 | y: s.y + 0, [INFO] [stdout] | ^^^^^^^ help: consider reducing it to: `s.y` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> day01/puzzle2.rs:78:16 [INFO] [stdout] | [INFO] [stdout] 78 | x: s.x + 0, [INFO] [stdout] | ^^^^^^^ help: consider reducing it to: `s.x` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> day01/puzzle2.rs:85:16 [INFO] [stdout] | [INFO] [stdout] 85 | y: s.y - 0, [INFO] [stdout] | ^^^^^^^ help: consider reducing it to: `s.y` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/puzzle2.rs:92:7 [INFO] [stdout] | [INFO] [stdout] 92 | / return match i { [INFO] [stdout] 93 | | Instruction::L => State { [INFO] [stdout] 94 | | x: s.x, [INFO] [stdout] 95 | | y: s.y, [INFO] [stdout] ... | [INFO] [stdout] 105 | | Instruction::F => State::consume_f(s), [INFO] [stdout] 106 | | } [INFO] [stdout] | |_______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 92 ~ match i { [INFO] [stdout] 93 + Instruction::L => State { [INFO] [stdout] 94 + x: s.x, [INFO] [stdout] 95 + y: s.y, [INFO] [stdout] 96 + dir: Dir::consume_l(s.dir), [INFO] [stdout] 97 + index: s.index + 1, [INFO] [stdout] 98 + }, [INFO] [stdout] 99 + Instruction::R => State { [INFO] [stdout] 100 + x: s.x, [INFO] [stdout] 101 + y: s.y, [INFO] [stdout] 102 + dir: Dir::consume_r(s.dir), [INFO] [stdout] 103 + index: s.index + 1, [INFO] [stdout] 104 + }, [INFO] [stdout] 105 + Instruction::F => State::consume_f(s), [INFO] [stdout] 106 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/puzzle2.rs:110:7 [INFO] [stdout] | [INFO] [stdout] 110 | return dist.try_into().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 110 - return dist.try_into().unwrap(); [INFO] [stdout] 110 + dist.try_into().unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> day01/puzzle2.rs:136:4 [INFO] [stdout] | [INFO] [stdout] 136 | return v; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 136 - return v; [INFO] [stdout] 136 + v [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match can be simplified with `.unwrap_or_default()` [INFO] [stdout] --> day01/puzzle2.rs:128:20 [INFO] [stdout] | [INFO] [stdout] 128 | let num_fs = match maybe_num_fs { [INFO] [stdout] | ____________________^ [INFO] [stdout] 129 | | Some(num_fs) => num_fs, [INFO] [stdout] 130 | | None => 0, [INFO] [stdout] 131 | | }; [INFO] [stdout] | |_______^ help: replace it with: `maybe_num_fs.unwrap_or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_unwrap_or_default [INFO] [stdout] = note: `#[warn(clippy::manual_unwrap_or_default)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.31s [INFO] running `Command { std: "docker" "inspect" "9be7b3e0a9b032c6ba4cc8a4066414a96f69201cc0313559e0b7d07e692d7113", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9be7b3e0a9b032c6ba4cc8a4066414a96f69201cc0313559e0b7d07e692d7113", kill_on_drop: false }` [INFO] [stdout] 9be7b3e0a9b032c6ba4cc8a4066414a96f69201cc0313559e0b7d07e692d7113