[INFO] cloning repository https://github.com/mattnotmitt/aoc.rs [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/mattnotmitt/aoc.rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmattnotmitt%2Faoc.rs", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmattnotmitt%2Faoc.rs'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 9e6114c4841614581b247f311a9a2a10a0d22ce4 [INFO] linting mattnotmitt/aoc.rs against nightly for clippy-nonminimal_bool-denied [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmattnotmitt%2Faoc.rs" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/mattnotmitt/aoc.rs [INFO] finished tweaking git repo https://github.com/mattnotmitt/aoc.rs [INFO] tweaked toml for git repo https://github.com/mattnotmitt/aoc.rs written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/mattnotmitt/aoc.rs 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/mattnotmitt/aoc.rs 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-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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] 3f6909bc2e60c3da9ba32d065a52884b0acdbebcb03504b5e6de016bdd9169d6 [INFO] running `Command { std: "docker" "start" "-a" "3f6909bc2e60c3da9ba32d065a52884b0acdbebcb03504b5e6de016bdd9169d6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "3f6909bc2e60c3da9ba32d065a52884b0acdbebcb03504b5e6de016bdd9169d6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3f6909bc2e60c3da9ba32d065a52884b0acdbebcb03504b5e6de016bdd9169d6", kill_on_drop: false }` [INFO] [stdout] 3f6909bc2e60c3da9ba32d065a52884b0acdbebcb03504b5e6de016bdd9169d6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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] 7806f4973bf122c313b1241adf742cbb43b70765a7c75f0b85ec8c933b3df215 [INFO] running `Command { std: "docker" "start" "-a" "7806f4973bf122c313b1241adf742cbb43b70765a7c75f0b85ec8c933b3df215", kill_on_drop: false }` [INFO] [stderr] Checking regex-automata v0.4.13 [INFO] [stderr] Checking regex v1.12.2 [INFO] [stderr] Checking aoc2024 v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib/util/util.rs:72:9 [INFO] [stdout] | [INFO] [stdout] 72 | return new_pos; [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] 72 - return new_pos; [INFO] [stdout] 72 + new_pos [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib/util/util.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | / return grid [INFO] [stdout] 80 | | .get(self.x as usize) [INFO] [stdout] 81 | | .and_then(|r| r.get(self.y as usize)); [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] 79 ~ grid [INFO] [stdout] 80 + .get(self.x as usize) [INFO] [stdout] 81 ~ .and_then(|r| r.get(self.y as usize)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/lib/util/util.rs:75:44 [INFO] [stdout] | [INFO] [stdout] 75 | pub fn safe_access<'a, T>(&self, grid: &'a Vec>) -> Option<&'a T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 75 - pub fn safe_access<'a, T>(&self, grid: &'a Vec>) -> Option<&'a T> { [INFO] [stdout] 75 + pub fn safe_access<'a, T>(&self, grid: &'a [Vec]) -> Option<&'a T> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&mut Vec` instead of `&mut [_]` involves a new object where a slice will do [INFO] [stdout] --> src/lib/util/util.rs:84:35 [INFO] [stdout] | [INFO] [stdout] 84 | pub fn update(&self, grid: &mut Vec>, val: T) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 84 - pub fn update(&self, grid: &mut Vec>, val: T) { [INFO] [stdout] 84 + pub fn update(&self, grid: &mut [Vec], val: T) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib/util/util.rs:116:9 [INFO] [stdout] | [INFO] [stdout] 116 | return DIRECTIONS.iter(); [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] 116 - return DIRECTIONS.iter(); [INFO] [stdout] 116 + DIRECTIONS.iter() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib/util/util.rs:126:9 [INFO] [stdout] | [INFO] [stdout] 126 | return DIRECTIONS.iter(); [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] 126 - return DIRECTIONS.iter(); [INFO] [stdout] 126 + DIRECTIONS.iter() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib/util/util.rs:130:9 [INFO] [stdout] | [INFO] [stdout] 130 | / return match self { [INFO] [stdout] 131 | | Direction2D::N => Point2D::new(-1, 0), [INFO] [stdout] 132 | | Direction2D::NE => Point2D::new(-1, 1), [INFO] [stdout] 133 | | Direction2D::E => Point2D::new(0, 1), [INFO] [stdout] ... | [INFO] [stdout] 138 | | Direction2D::NW => Point2D::new(-1, -1), [INFO] [stdout] 139 | | }; [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] 130 ~ match self { [INFO] [stdout] 131 + Direction2D::N => Point2D::new(-1, 0), [INFO] [stdout] 132 + Direction2D::NE => Point2D::new(-1, 1), [INFO] [stdout] 133 + Direction2D::E => Point2D::new(0, 1), [INFO] [stdout] 134 + Direction2D::SE => Point2D::new(1, 1), [INFO] [stdout] 135 + Direction2D::S => Point2D::new(1, 0), [INFO] [stdout] 136 + Direction2D::SW => Point2D::new(1, -1), [INFO] [stdout] 137 + Direction2D::W => Point2D::new(0, -1), [INFO] [stdout] 138 + Direction2D::NW => Point2D::new(-1, -1), [INFO] [stdout] 139 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib/util/util.rs:143:9 [INFO] [stdout] | [INFO] [stdout] 143 | / return match self { [INFO] [stdout] 144 | | Direction2D::N => Direction2D::S, [INFO] [stdout] 145 | | Direction2D::NE => Direction2D::SW, [INFO] [stdout] 146 | | Direction2D::E => Direction2D::W, [INFO] [stdout] ... | [INFO] [stdout] 151 | | Direction2D::NW => Direction2D::SE, [INFO] [stdout] 152 | | }; [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] 143 ~ match self { [INFO] [stdout] 144 + Direction2D::N => Direction2D::S, [INFO] [stdout] 145 + Direction2D::NE => Direction2D::SW, [INFO] [stdout] 146 + Direction2D::E => Direction2D::W, [INFO] [stdout] 147 + Direction2D::SE => Direction2D::NW, [INFO] [stdout] 148 + Direction2D::S => Direction2D::N, [INFO] [stdout] 149 + Direction2D::SW => Direction2D::NE, [INFO] [stdout] 150 + Direction2D::W => Direction2D::E, [INFO] [stdout] 151 + Direction2D::NW => Direction2D::SE, [INFO] [stdout] 152 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib/util/util.rs:156:9 [INFO] [stdout] | [INFO] [stdout] 156 | / return match self { [INFO] [stdout] 157 | | Direction2D::N => Direction2D::E, [INFO] [stdout] 158 | | Direction2D::NE => Direction2D::SE, [INFO] [stdout] 159 | | Direction2D::E => Direction2D::S, [INFO] [stdout] ... | [INFO] [stdout] 164 | | Direction2D::NW => Direction2D::NE, [INFO] [stdout] 165 | | }; [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] 156 ~ match self { [INFO] [stdout] 157 + Direction2D::N => Direction2D::E, [INFO] [stdout] 158 + Direction2D::NE => Direction2D::SE, [INFO] [stdout] 159 + Direction2D::E => Direction2D::S, [INFO] [stdout] 160 + Direction2D::SE => Direction2D::SW, [INFO] [stdout] 161 + Direction2D::S => Direction2D::W, [INFO] [stdout] 162 + Direction2D::SW => Direction2D::NW, [INFO] [stdout] 163 + Direction2D::W => Direction2D::N, [INFO] [stdout] 164 + Direction2D::NW => Direction2D::NE, [INFO] [stdout] 165 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib/util/util.rs:72:9 [INFO] [stdout] | [INFO] [stdout] 72 | return new_pos; [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] 72 - return new_pos; [INFO] [stdout] 72 + new_pos [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib/util/util.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | / return grid [INFO] [stdout] 80 | | .get(self.x as usize) [INFO] [stdout] 81 | | .and_then(|r| r.get(self.y as usize)); [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] 79 ~ grid [INFO] [stdout] 80 + .get(self.x as usize) [INFO] [stdout] 81 ~ .and_then(|r| r.get(self.y as usize)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/lib/util/util.rs:75:44 [INFO] [stdout] | [INFO] [stdout] 75 | pub fn safe_access<'a, T>(&self, grid: &'a Vec>) -> Option<&'a T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 75 - pub fn safe_access<'a, T>(&self, grid: &'a Vec>) -> Option<&'a T> { [INFO] [stdout] 75 + pub fn safe_access<'a, T>(&self, grid: &'a [Vec]) -> Option<&'a T> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&mut Vec` instead of `&mut [_]` involves a new object where a slice will do [INFO] [stdout] --> src/lib/util/util.rs:84:35 [INFO] [stdout] | [INFO] [stdout] 84 | pub fn update(&self, grid: &mut Vec>, val: T) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 84 - pub fn update(&self, grid: &mut Vec>, val: T) { [INFO] [stdout] 84 + pub fn update(&self, grid: &mut [Vec], val: T) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib/util/util.rs:116:9 [INFO] [stdout] | [INFO] [stdout] 116 | return DIRECTIONS.iter(); [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] 116 - return DIRECTIONS.iter(); [INFO] [stdout] 116 + DIRECTIONS.iter() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib/util/util.rs:126:9 [INFO] [stdout] | [INFO] [stdout] 126 | return DIRECTIONS.iter(); [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] 126 - return DIRECTIONS.iter(); [INFO] [stdout] 126 + DIRECTIONS.iter() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib/util/util.rs:130:9 [INFO] [stdout] | [INFO] [stdout] 130 | / return match self { [INFO] [stdout] 131 | | Direction2D::N => Point2D::new(-1, 0), [INFO] [stdout] 132 | | Direction2D::NE => Point2D::new(-1, 1), [INFO] [stdout] 133 | | Direction2D::E => Point2D::new(0, 1), [INFO] [stdout] ... | [INFO] [stdout] 138 | | Direction2D::NW => Point2D::new(-1, -1), [INFO] [stdout] 139 | | }; [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] 130 ~ match self { [INFO] [stdout] 131 + Direction2D::N => Point2D::new(-1, 0), [INFO] [stdout] 132 + Direction2D::NE => Point2D::new(-1, 1), [INFO] [stdout] 133 + Direction2D::E => Point2D::new(0, 1), [INFO] [stdout] 134 + Direction2D::SE => Point2D::new(1, 1), [INFO] [stdout] 135 + Direction2D::S => Point2D::new(1, 0), [INFO] [stdout] 136 + Direction2D::SW => Point2D::new(1, -1), [INFO] [stdout] 137 + Direction2D::W => Point2D::new(0, -1), [INFO] [stdout] 138 + Direction2D::NW => Point2D::new(-1, -1), [INFO] [stdout] 139 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib/util/util.rs:143:9 [INFO] [stdout] | [INFO] [stdout] 143 | / return match self { [INFO] [stdout] 144 | | Direction2D::N => Direction2D::S, [INFO] [stdout] 145 | | Direction2D::NE => Direction2D::SW, [INFO] [stdout] 146 | | Direction2D::E => Direction2D::W, [INFO] [stdout] ... | [INFO] [stdout] 151 | | Direction2D::NW => Direction2D::SE, [INFO] [stdout] 152 | | }; [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] 143 ~ match self { [INFO] [stdout] 144 + Direction2D::N => Direction2D::S, [INFO] [stdout] 145 + Direction2D::NE => Direction2D::SW, [INFO] [stdout] 146 + Direction2D::E => Direction2D::W, [INFO] [stdout] 147 + Direction2D::SE => Direction2D::NW, [INFO] [stdout] 148 + Direction2D::S => Direction2D::N, [INFO] [stdout] 149 + Direction2D::SW => Direction2D::NE, [INFO] [stdout] 150 + Direction2D::W => Direction2D::E, [INFO] [stdout] 151 + Direction2D::NW => Direction2D::SE, [INFO] [stdout] 152 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib/util/util.rs:156:9 [INFO] [stdout] | [INFO] [stdout] 156 | / return match self { [INFO] [stdout] 157 | | Direction2D::N => Direction2D::E, [INFO] [stdout] 158 | | Direction2D::NE => Direction2D::SE, [INFO] [stdout] 159 | | Direction2D::E => Direction2D::S, [INFO] [stdout] ... | [INFO] [stdout] 164 | | Direction2D::NW => Direction2D::NE, [INFO] [stdout] 165 | | }; [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] 156 ~ match self { [INFO] [stdout] 157 + Direction2D::N => Direction2D::E, [INFO] [stdout] 158 + Direction2D::NE => Direction2D::SE, [INFO] [stdout] 159 + Direction2D::E => Direction2D::S, [INFO] [stdout] 160 + Direction2D::SE => Direction2D::SW, [INFO] [stdout] 161 + Direction2D::S => Direction2D::W, [INFO] [stdout] 162 + Direction2D::SW => Direction2D::NW, [INFO] [stdout] 163 + Direction2D::W => Direction2D::N, [INFO] [stdout] 164 + Direction2D::NW => Direction2D::NE, [INFO] [stdout] 165 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter` [INFO] [stdout] --> src/bin/2025/day4/day4.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::iter; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day5/day5.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | return (ranges, ingredients); [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] 17 - return (ranges, ingredients); [INFO] [stdout] 17 + (ranges, ingredients) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day5/day5.rs:10:13 [INFO] [stdout] | [INFO] [stdout] 10 | return range_split[0]..=range_split[1]; [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 range_split[0]..=range_split[1]; [INFO] [stdout] 10 + range_split[0]..=range_split[1] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `itertools` [INFO] [stdout] --> src/bin/2025/day4/day4.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use itertools::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day5/day5.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | return count; [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] 30 - return count; [INFO] [stdout] 30 + count [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day5/day5.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 48 | return merged_ranges.iter().map(|r| r.end() - r.start() + 1).sum(); [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] 48 - return merged_ranges.iter().map(|r| r.end() - r.start() + 1).sum(); [INFO] [stdout] 48 + merged_ranges.iter().map(|r| r.end() - r.start() + 1).sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2025/day5/day5.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | fn part2(ranges: &Vec>) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 33 ~ fn part2(ranges: &[RangeInclusive]) -> u64 { [INFO] [stdout] 34 ~ let mut sorted_ranges = ranges.to_owned(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day4/day4.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | return rolls; [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] 16 - return rolls; [INFO] [stdout] 16 + rolls [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day4/day4.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | return count; [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 count; [INFO] [stdout] 32 + count [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day4/day4.rs:58:5 [INFO] [stdout] | [INFO] [stdout] 58 | return count; [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] 58 - return count; [INFO] [stdout] 58 + count [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/bin/2025/day4/day4.rs:52:12 [INFO] [stdout] | [INFO] [stdout] 52 | if rem_rolls.len() == 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `rem_rolls.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] --> src/bin/2024/day10/day10.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | / return ( [INFO] [stdout] 10 | | input [INFO] [stdout] 11 | | .lines() [INFO] [stdout] 12 | | .enumerate() [INFO] [stdout] ... | [INFO] [stdout] 26 | | trailheads, [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] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 9 ~ ( [INFO] [stdout] 10 + input [INFO] [stdout] 11 + .lines() [INFO] [stdout] 12 + .enumerate() [INFO] [stdout] 13 + .map(|(i, l)| { [INFO] [stdout] 14 + l.chars() [INFO] [stdout] 15 + .enumerate() [INFO] [stdout] 16 + .map(|(j, c)| { [INFO] [stdout] 17 + let elevation = c.to_digit(10).unwrap() as u8; [INFO] [stdout] 18 + if elevation == 0 { [INFO] [stdout] 19 + trailheads.push(Point2D::new(i as isize, j as isize)); [INFO] [stdout] 20 + } [INFO] [stdout] 21 + return elevation; [INFO] [stdout] 22 + }) [INFO] [stdout] 23 + .collect() [INFO] [stdout] 24 + }) [INFO] [stdout] 25 + .collect(), [INFO] [stdout] 26 + trailheads, [INFO] [stdout] 27 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day10/day10.rs:21:25 [INFO] [stdout] | [INFO] [stdout] 21 | return elevation; [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] 21 - return elevation; [INFO] [stdout] 21 + elevation [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day10/day10.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | / return trailheads [INFO] [stdout] 38 | | .iter() [INFO] [stdout] 39 | | .map(|t| { [INFO] [stdout] 40 | | let mut peaks: HashSet = HashSet::new(); [INFO] [stdout] ... | [INFO] [stdout] 60 | | }) [INFO] [stdout] 61 | | .sum(); [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 ~ trailheads [INFO] [stdout] 38 + .iter() [INFO] [stdout] 39 + .map(|t| { [INFO] [stdout] 40 + let mut peaks: HashSet = HashSet::new(); [INFO] [stdout] 41 + let mut q: VecDeque = VecDeque::from([*t]); [INFO] [stdout] 42 + while q.front().is_some() { [INFO] [stdout] 43 + let pos = q.pop_front().unwrap(); [INFO] [stdout] 44 + let height = pos.safe_access(map).unwrap(); [INFO] [stdout] 45 + for d in &directions { [INFO] [stdout] 46 + let new_pos = pos + *d; [INFO] [stdout] 47 + let maybe_new_height = (new_pos).safe_access(map); [INFO] [stdout] 48 + if maybe_new_height.is_some_and(|v| v - height == 1) { [INFO] [stdout] 49 + if maybe_new_height.is_some_and(|v| *v == 9) { [INFO] [stdout] 50 + peaks.insert(new_pos); [INFO] [stdout] 51 + } else { [INFO] [stdout] 52 + q.push_back(new_pos); [INFO] [stdout] 53 + } [INFO] [stdout] 54 + } [INFO] [stdout] 55 + } [INFO] [stdout] 56 + } [INFO] [stdout] 57 + // println!("{:?}", peaks); [INFO] [stdout] 58 + [INFO] [stdout] 59 + return peaks.iter().count(); [INFO] [stdout] 60 + }) [INFO] [stdout] 61 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day10/day10.rs:30:42 [INFO] [stdout] | [INFO] [stdout] 30 | fn part1(map: &Vec>, trailheads: &Vec) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 30 - fn part1(map: &Vec>, trailheads: &Vec) -> usize { [INFO] [stdout] 30 + fn part1(map: &Vec>, trailheads: &[Point2D]) -> usize { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day10/day10.rs:59:13 [INFO] [stdout] | [INFO] [stdout] 59 | return peaks.iter().count(); [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 peaks.iter().count(); [INFO] [stdout] 59 + peaks.iter().count() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `.iter().count()` on a `HashSet` [INFO] [stdout] --> src/bin/2024/day10/day10.rs:59:20 [INFO] [stdout] | [INFO] [stdout] 59 | return peaks.iter().count(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: try: `peaks.len()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#iter_count [INFO] [stdout] = note: `#[warn(clippy::iter_count)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day10/day10.rs:71:5 [INFO] [stdout] | [INFO] [stdout] 71 | / return trailheads [INFO] [stdout] 72 | | .iter() [INFO] [stdout] 73 | | .map(|t| { [INFO] [stdout] 74 | | let mut score = 0; [INFO] [stdout] ... | [INFO] [stdout] 94 | | }) [INFO] [stdout] 95 | | .sum(); [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] 71 ~ trailheads [INFO] [stdout] 72 + .iter() [INFO] [stdout] 73 + .map(|t| { [INFO] [stdout] 74 + let mut score = 0; [INFO] [stdout] 75 + let mut q: VecDeque = VecDeque::from([*t]); [INFO] [stdout] 76 + while q.front().is_some() { [INFO] [stdout] 77 + let pos = q.pop_front().unwrap(); [INFO] [stdout] 78 + let height = pos.safe_access(map).unwrap(); [INFO] [stdout] 79 + for d in &directions { [INFO] [stdout] 80 + let new_pos = pos + *d; [INFO] [stdout] 81 + let maybe_new_height = (new_pos).safe_access(map); [INFO] [stdout] 82 + if maybe_new_height.is_some_and(|v| v - height == 1) { [INFO] [stdout] 83 + if maybe_new_height.is_some_and(|v| *v == 9) { [INFO] [stdout] 84 + score += 1; [INFO] [stdout] 85 + } else { [INFO] [stdout] 86 + q.push_back(new_pos); [INFO] [stdout] 87 + } [INFO] [stdout] 88 + } [INFO] [stdout] 89 + } [INFO] [stdout] 90 + } [INFO] [stdout] 91 + // println!("{:?}", peaks); [INFO] [stdout] 92 + [INFO] [stdout] 93 + return score; [INFO] [stdout] 94 + }) [INFO] [stdout] 95 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day10/day10.rs:64:42 [INFO] [stdout] | [INFO] [stdout] 64 | fn part2(map: &Vec>, trailheads: &Vec) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 64 - fn part2(map: &Vec>, trailheads: &Vec) -> usize { [INFO] [stdout] 64 + fn part2(map: &Vec>, trailheads: &[Point2D]) -> usize { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day10/day10.rs:93:13 [INFO] [stdout] | [INFO] [stdout] 93 | return score; [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] 93 - return score; [INFO] [stdout] 93 + score [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day11/day11.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | / return input [INFO] [stdout] 6 | | .split(" ") [INFO] [stdout] 7 | | .map(|stone| stone.parse::().unwrap()) [INFO] [stdout] 8 | | .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] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 5 ~ input [INFO] [stdout] 6 + .split(" ") [INFO] [stdout] 7 + .map(|stone| stone.parse::().unwrap()) [INFO] [stdout] 8 ~ .collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day11/day11.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | / return stones [INFO] [stdout] 15 | | .iter() [INFO] [stdout] 16 | | .map(|stone| gen_stones(0, 25, *stone, &mut memo)) [INFO] [stdout] 17 | | .sum(); [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 ~ stones [INFO] [stdout] 15 + .iter() [INFO] [stdout] 16 + .map(|stone| gen_stones(0, 25, *stone, &mut memo)) [INFO] [stdout] 17 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day11/day11.rs:11:18 [INFO] [stdout] | [INFO] [stdout] 11 | fn part1(stones: &Vec) -> u64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 11 - fn part1(stones: &Vec) -> u64 { [INFO] [stdout] 11 + fn part1(stones: &[u64]) -> u64 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `itertools` [INFO] [stdout] --> src/bin/2024/day12/day12.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use itertools::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day11/day11.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 43 | return ret_val; [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 - return ret_val; [INFO] [stdout] 43 + ret_val [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day13/day13.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | / return input [INFO] [stdout] 22 | | .split("\n\n") [INFO] [stdout] 23 | | .map(|m| { [INFO] [stdout] 24 | | let lines: Vec<&str> = m.lines().collect(); [INFO] [stdout] ... | [INFO] [stdout] 37 | | }) [INFO] [stdout] 38 | | .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] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 21 ~ input [INFO] [stdout] 22 + .split("\n\n") [INFO] [stdout] 23 + .map(|m| { [INFO] [stdout] 24 + let lines: Vec<&str> = m.lines().collect(); [INFO] [stdout] 25 + let re = Regex::new(r"(?:\+|=)(\d+),.+(?:\+|=)(\d+)").unwrap(); [INFO] [stdout] 26 + let (_, [ax_s, ay_s]) = re.captures(lines[0]).unwrap().extract(); [INFO] [stdout] 27 + let (_, [bx_s, by_s]) = re.captures(lines[1]).unwrap().extract(); [INFO] [stdout] 28 + let (_, [px_s, py_s]) = re.captures(lines[2]).unwrap().extract(); [INFO] [stdout] 29 + return Machine::new( [INFO] [stdout] 30 + ax_s.parse::().unwrap(), [INFO] [stdout] 31 + ay_s.parse::().unwrap(), [INFO] [stdout] 32 + bx_s.parse::().unwrap(), [INFO] [stdout] 33 + by_s.parse::().unwrap(), [INFO] [stdout] 34 + px_s.parse::().unwrap(), [INFO] [stdout] 35 + py_s.parse::().unwrap(), [INFO] [stdout] 36 + ); [INFO] [stdout] 37 + }) [INFO] [stdout] 38 ~ .collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day2/day2.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | / return input [INFO] [stdout] 5 | | .lines() [INFO] [stdout] 6 | | .map(|line| { [INFO] [stdout] 7 | | line.split_whitespace() [INFO] [stdout] ... | [INFO] [stdout] 10 | | }) [INFO] [stdout] 11 | | .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] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 4 ~ input [INFO] [stdout] 5 + .lines() [INFO] [stdout] 6 + .map(|line| { [INFO] [stdout] 7 + line.split_whitespace() [INFO] [stdout] 8 + .map(|v| v.parse::().unwrap()) [INFO] [stdout] 9 + .collect() [INFO] [stdout] 10 + }) [INFO] [stdout] 11 ~ .collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day13/day13.rs:29:13 [INFO] [stdout] | [INFO] [stdout] 29 | / return Machine::new( [INFO] [stdout] 30 | | ax_s.parse::().unwrap(), [INFO] [stdout] 31 | | ay_s.parse::().unwrap(), [INFO] [stdout] 32 | | bx_s.parse::().unwrap(), [INFO] [stdout] ... | [INFO] [stdout] 35 | | py_s.parse::().unwrap(), [INFO] [stdout] 36 | | ); [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 ~ Machine::new( [INFO] [stdout] 30 + ax_s.parse::().unwrap(), [INFO] [stdout] 31 + ay_s.parse::().unwrap(), [INFO] [stdout] 32 + bx_s.parse::().unwrap(), [INFO] [stdout] 33 + by_s.parse::().unwrap(), [INFO] [stdout] 34 + px_s.parse::().unwrap(), [INFO] [stdout] 35 + py_s.parse::().unwrap(), [INFO] [stdout] 36 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of `.is_multiple_of()` [INFO] [stdout] --> src/bin/2024/day11/day11.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 33 | if s_str.len() % 2 == 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace with: `s_str.len().is_multiple_of(2)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_is_multiple_of [INFO] [stdout] = note: `#[warn(clippy::manual_is_multiple_of)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day10/day10.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | / return ( [INFO] [stdout] 10 | | input [INFO] [stdout] 11 | | .lines() [INFO] [stdout] 12 | | .enumerate() [INFO] [stdout] ... | [INFO] [stdout] 26 | | trailheads, [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] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 9 ~ ( [INFO] [stdout] 10 + input [INFO] [stdout] 11 + .lines() [INFO] [stdout] 12 + .enumerate() [INFO] [stdout] 13 + .map(|(i, l)| { [INFO] [stdout] 14 + l.chars() [INFO] [stdout] 15 + .enumerate() [INFO] [stdout] 16 + .map(|(j, c)| { [INFO] [stdout] 17 + let elevation = c.to_digit(10).unwrap() as u8; [INFO] [stdout] 18 + if elevation == 0 { [INFO] [stdout] 19 + trailheads.push(Point2D::new(i as isize, j as isize)); [INFO] [stdout] 20 + } [INFO] [stdout] 21 + return elevation; [INFO] [stdout] 22 + }) [INFO] [stdout] 23 + .collect() [INFO] [stdout] 24 + }) [INFO] [stdout] 25 + .collect(), [INFO] [stdout] 26 + trailheads, [INFO] [stdout] 27 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day10/day10.rs:21:25 [INFO] [stdout] | [INFO] [stdout] 21 | return elevation; [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] 21 - return elevation; [INFO] [stdout] 21 + elevation [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day2/day2.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | / return reports [INFO] [stdout] 16 | | .iter() [INFO] [stdout] 17 | | .filter(|report| { [INFO] [stdout] 18 | | let mut direction = 0_i32; [INFO] [stdout] ... | [INFO] [stdout] 36 | | }) [INFO] [stdout] 37 | | .count(); [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 ~ reports [INFO] [stdout] 16 + .iter() [INFO] [stdout] 17 + .filter(|report| { [INFO] [stdout] 18 + let mut direction = 0_i32; [INFO] [stdout] 19 + report [INFO] [stdout] 20 + .windows(2) [INFO] [stdout] 21 + // make pattern irrefutable [INFO] [stdout] 22 + .flat_map(<&[i32; 2]>::try_from) [INFO] [stdout] 23 + .all(|[a, b]| { [INFO] [stdout] 24 + if direction == 0 { [INFO] [stdout] 25 + direction = if (a - b).is_positive() { 1 } else { -1 }; [INFO] [stdout] 26 + } [INFO] [stdout] 27 + let diff = a - b; [INFO] [stdout] 28 + if diff.is_positive() && direction.is_positive() { [INFO] [stdout] 29 + return (1..=3).contains(&diff); [INFO] [stdout] 30 + } else if diff.is_negative() && direction.is_negative() { [INFO] [stdout] 31 + return (-3..=1).contains(&diff); [INFO] [stdout] 32 + } else { [INFO] [stdout] 33 + return false; [INFO] [stdout] 34 + } [INFO] [stdout] 35 + }) [INFO] [stdout] 36 + }) [INFO] [stdout] 37 ~ .count() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day2/day2.rs:14:19 [INFO] [stdout] | [INFO] [stdout] 14 | fn part1(reports: &Vec>) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 14 - fn part1(reports: &Vec>) -> usize { [INFO] [stdout] 14 + fn part1(reports: &[Vec]) -> usize { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day2/day2.rs:29:25 [INFO] [stdout] | [INFO] [stdout] 29 | return (1..=3).contains(&diff); [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 - return (1..=3).contains(&diff); [INFO] [stdout] 29 + (1..=3).contains(&diff) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day2/day2.rs:31:25 [INFO] [stdout] | [INFO] [stdout] 31 | return (-3..=1).contains(&diff); [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] 31 - return (-3..=1).contains(&diff); [INFO] [stdout] 31 + (-3..=1).contains(&diff) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day2/day2.rs:33:25 [INFO] [stdout] | [INFO] [stdout] 33 | return false; [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 false; [INFO] [stdout] 33 + false [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day13/day13.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | / return machines [INFO] [stdout] 43 | | .iter() [INFO] [stdout] 44 | | .map(|m| { [INFO] [stdout] ... | [INFO] [stdout] 59 | | }) [INFO] [stdout] 60 | | .sum(); [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] 42 ~ machines [INFO] [stdout] 43 + .iter() [INFO] [stdout] 44 + .map(|m| { [INFO] [stdout] 45 + // a = button_a.0, b = button_b.0, c = button_a.1, d = button_b.1 [INFO] [stdout] 46 + let det = m.button_a.0 * m.button_b.1 - m.button_b.0 * m.button_a.1; [INFO] [stdout] 47 + let a = (m.button_b.1 * m.prize.0 - m.button_b.0 * m.prize.1) / det; [INFO] [stdout] 48 + let b = (m.button_a.0 * m.prize.1 - m.button_a.1 * m.prize.0) / det; [INFO] [stdout] 49 + // println!("{:?}, {:?}: {a}, {b}", m.prize.0, m.prize.1); [INFO] [stdout] 50 + if ( [INFO] [stdout] 51 + m.button_a.0 * a + m.button_b.0 * b, [INFO] [stdout] 52 + m.button_a.1 * a + m.button_b.1 * b, [INFO] [stdout] 53 + ) != (m.prize.0, m.prize.1) [INFO] [stdout] 54 + { [INFO] [stdout] 55 + return 0; [INFO] [stdout] 56 + } [INFO] [stdout] 57 + [INFO] [stdout] 58 + return (a as u64) * 3 + (b as u64); [INFO] [stdout] 59 + }) [INFO] [stdout] 60 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day13/day13.rs:41:20 [INFO] [stdout] | [INFO] [stdout] 41 | fn part1(machines: &Vec) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 41 - fn part1(machines: &Vec) -> u64 { [INFO] [stdout] 41 + fn part1(machines: &[Machine]) -> u64 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day13/day13.rs:58:13 [INFO] [stdout] | [INFO] [stdout] 58 | return (a as u64) * 3 + (b as u64); [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] 58 - return (a as u64) * 3 + (b as u64); [INFO] [stdout] 58 + (a as u64) * 3 + (b as u64) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day13/day13.rs:64:5 [INFO] [stdout] | [INFO] [stdout] 64 | / return machines [INFO] [stdout] 65 | | .iter() [INFO] [stdout] 66 | | .map(|m| { [INFO] [stdout] 67 | | let prize_x = m.prize.0 + 10000000000000; [INFO] [stdout] ... | [INFO] [stdout] 83 | | }) [INFO] [stdout] 84 | | .sum(); [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 ~ machines [INFO] [stdout] 65 + .iter() [INFO] [stdout] 66 + .map(|m| { [INFO] [stdout] 67 + let prize_x = m.prize.0 + 10000000000000; [INFO] [stdout] 68 + let prize_y = m.prize.1 + 10000000000000; [INFO] [stdout] 69 + // a = button_a.0, b = button_b.0, c = button_a.1, d = button_b.1 [INFO] [stdout] 70 + let det = m.button_a.0 * m.button_b.1 - m.button_b.0 * m.button_a.1; [INFO] [stdout] 71 + let a = (m.button_b.1 * prize_x - m.button_b.0 * prize_y) / det; [INFO] [stdout] 72 + let b = (m.button_a.0 * prize_y - m.button_a.1 * prize_x) / det; [INFO] [stdout] 73 + // println!("{:?}, {:?}: {a}, {b}", m.prize.0, m.prize.1); [INFO] [stdout] 74 + if ( [INFO] [stdout] 75 + m.button_a.0 * a + m.button_b.0 * b, [INFO] [stdout] 76 + m.button_a.1 * a + m.button_b.1 * b, [INFO] [stdout] 77 + ) != (prize_x, prize_y) [INFO] [stdout] 78 + { [INFO] [stdout] 79 + return 0; [INFO] [stdout] 80 + } [INFO] [stdout] 81 + [INFO] [stdout] 82 + return (a as u64) * 3 + (b as u64); [INFO] [stdout] 83 + }) [INFO] [stdout] 84 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day10/day10.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | / return trailheads [INFO] [stdout] 38 | | .iter() [INFO] [stdout] 39 | | .map(|t| { [INFO] [stdout] 40 | | let mut peaks: HashSet = HashSet::new(); [INFO] [stdout] ... | [INFO] [stdout] 60 | | }) [INFO] [stdout] 61 | | .sum(); [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 ~ trailheads [INFO] [stdout] 38 + .iter() [INFO] [stdout] 39 + .map(|t| { [INFO] [stdout] 40 + let mut peaks: HashSet = HashSet::new(); [INFO] [stdout] 41 + let mut q: VecDeque = VecDeque::from([*t]); [INFO] [stdout] 42 + while q.front().is_some() { [INFO] [stdout] 43 + let pos = q.pop_front().unwrap(); [INFO] [stdout] 44 + let height = pos.safe_access(map).unwrap(); [INFO] [stdout] 45 + for d in &directions { [INFO] [stdout] 46 + let new_pos = pos + *d; [INFO] [stdout] 47 + let maybe_new_height = (new_pos).safe_access(map); [INFO] [stdout] 48 + if maybe_new_height.is_some_and(|v| v - height == 1) { [INFO] [stdout] 49 + if maybe_new_height.is_some_and(|v| *v == 9) { [INFO] [stdout] 50 + peaks.insert(new_pos); [INFO] [stdout] 51 + } else { [INFO] [stdout] 52 + q.push_back(new_pos); [INFO] [stdout] 53 + } [INFO] [stdout] 54 + } [INFO] [stdout] 55 + } [INFO] [stdout] 56 + } [INFO] [stdout] 57 + // println!("{:?}", peaks); [INFO] [stdout] 58 + [INFO] [stdout] 59 + return peaks.iter().count(); [INFO] [stdout] 60 + }) [INFO] [stdout] 61 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day10/day10.rs:30:42 [INFO] [stdout] | [INFO] [stdout] 30 | fn part1(map: &Vec>, trailheads: &Vec) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 30 - fn part1(map: &Vec>, trailheads: &Vec) -> usize { [INFO] [stdout] 30 + fn part1(map: &Vec>, trailheads: &[Point2D]) -> usize { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day10/day10.rs:59:13 [INFO] [stdout] | [INFO] [stdout] 59 | return peaks.iter().count(); [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 peaks.iter().count(); [INFO] [stdout] 59 + peaks.iter().count() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `.iter().count()` on a `HashSet` [INFO] [stdout] --> src/bin/2024/day10/day10.rs:59:20 [INFO] [stdout] | [INFO] [stdout] 59 | return peaks.iter().count(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: try: `peaks.len()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#iter_count [INFO] [stdout] = note: `#[warn(clippy::iter_count)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day10/day10.rs:71:5 [INFO] [stdout] | [INFO] [stdout] 71 | / return trailheads [INFO] [stdout] 72 | | .iter() [INFO] [stdout] 73 | | .map(|t| { [INFO] [stdout] 74 | | let mut score = 0; [INFO] [stdout] ... | [INFO] [stdout] 94 | | }) [INFO] [stdout] 95 | | .sum(); [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] 71 ~ trailheads [INFO] [stdout] 72 + .iter() [INFO] [stdout] 73 + .map(|t| { [INFO] [stdout] 74 + let mut score = 0; [INFO] [stdout] 75 + let mut q: VecDeque = VecDeque::from([*t]); [INFO] [stdout] 76 + while q.front().is_some() { [INFO] [stdout] 77 + let pos = q.pop_front().unwrap(); [INFO] [stdout] 78 + let height = pos.safe_access(map).unwrap(); [INFO] [stdout] 79 + for d in &directions { [INFO] [stdout] 80 + let new_pos = pos + *d; [INFO] [stdout] 81 + let maybe_new_height = (new_pos).safe_access(map); [INFO] [stdout] 82 + if maybe_new_height.is_some_and(|v| v - height == 1) { [INFO] [stdout] 83 + if maybe_new_height.is_some_and(|v| *v == 9) { [INFO] [stdout] 84 + score += 1; [INFO] [stdout] 85 + } else { [INFO] [stdout] 86 + q.push_back(new_pos); [INFO] [stdout] 87 + } [INFO] [stdout] 88 + } [INFO] [stdout] 89 + } [INFO] [stdout] 90 + } [INFO] [stdout] 91 + // println!("{:?}", peaks); [INFO] [stdout] 92 + [INFO] [stdout] 93 + return score; [INFO] [stdout] 94 + }) [INFO] [stdout] 95 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day10/day10.rs:64:42 [INFO] [stdout] | [INFO] [stdout] 64 | fn part2(map: &Vec>, trailheads: &Vec) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 64 - fn part2(map: &Vec>, trailheads: &Vec) -> usize { [INFO] [stdout] 64 + fn part2(map: &Vec>, trailheads: &[Point2D]) -> usize { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day10/day10.rs:93:13 [INFO] [stdout] | [INFO] [stdout] 93 | return score; [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] 93 - return score; [INFO] [stdout] 93 + score [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day2/day2.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | / return reports [INFO] [stdout] 42 | | .iter() [INFO] [stdout] 43 | | .filter(|report| { [INFO] [stdout] 44 | | (0..report.len()) [INFO] [stdout] ... | [INFO] [stdout] 72 | | }) [INFO] [stdout] 73 | | .count(); [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] 41 ~ reports [INFO] [stdout] 42 + .iter() [INFO] [stdout] 43 + .filter(|report| { [INFO] [stdout] 44 + (0..report.len()) [INFO] [stdout] 45 + .map(|idx| { [INFO] [stdout] 46 + report [INFO] [stdout] 47 + .iter() [INFO] [stdout] 48 + .enumerate() [INFO] [stdout] 49 + .filter_map(|(i, e)| if i != idx { Some(e) } else { None }) [INFO] [stdout] 50 + .collect::>() [INFO] [stdout] 51 + }) [INFO] [stdout] 52 + .any(|report| { [INFO] [stdout] 53 + let mut direction = 0_i32; [INFO] [stdout] 54 + report [INFO] [stdout] 55 + .windows(2) [INFO] [stdout] 56 + // make pattern irrefutable [INFO] [stdout] 57 + .flat_map(<[&i32; 2]>::try_from) [INFO] [stdout] 58 + .all(|[a, b]| { [INFO] [stdout] 59 + if direction == 0 { [INFO] [stdout] 60 + direction = if (a - b).is_positive() { 1 } else { -1 }; [INFO] [stdout] 61 + } [INFO] [stdout] 62 + let diff = a - b; [INFO] [stdout] 63 + if diff.is_positive() && direction.is_positive() { [INFO] [stdout] 64 + return (1..=3).contains(&diff); [INFO] [stdout] 65 + } else if diff.is_negative() && direction.is_negative() { [INFO] [stdout] 66 + return (-3..=1).contains(&diff); [INFO] [stdout] 67 + } else { [INFO] [stdout] 68 + return false; [INFO] [stdout] 69 + } [INFO] [stdout] 70 + }) [INFO] [stdout] 71 + }) [INFO] [stdout] 72 + }) [INFO] [stdout] 73 ~ .count() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day2/day2.rs:40:19 [INFO] [stdout] | [INFO] [stdout] 40 | fn part2(reports: &Vec>) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 40 - fn part2(reports: &Vec>) -> usize { [INFO] [stdout] 40 + fn part2(reports: &[Vec]) -> usize { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day13/day13.rs:63:20 [INFO] [stdout] | [INFO] [stdout] 63 | fn part2(machines: &Vec) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 63 - fn part2(machines: &Vec) -> u64 { [INFO] [stdout] 63 + fn part2(machines: &[Machine]) -> u64 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day13/day13.rs:82:13 [INFO] [stdout] | [INFO] [stdout] 82 | return (a as u64) * 3 + (b as u64); [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] 82 - return (a as u64) * 3 + (b as u64); [INFO] [stdout] 82 + (a as u64) * 3 + (b as u64) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day2/day2.rs:64:33 [INFO] [stdout] | [INFO] [stdout] 64 | ... return (1..=3).contains(&diff); [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 - return (1..=3).contains(&diff); [INFO] [stdout] 64 + (1..=3).contains(&diff) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this import is redundant [INFO] [stdout] --> src/bin/2024/day15/day15.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | use util; [INFO] [stdout] | ^^^^^^^^^ help: remove it entirely [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_component_path_imports [INFO] [stdout] = note: `#[warn(clippy::single_component_path_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day11/day11.rs:49:5 [INFO] [stdout] | [INFO] [stdout] 49 | / return stones [INFO] [stdout] 50 | | .iter() [INFO] [stdout] 51 | | .map(|stone| gen_stones(0, 75, *stone, &mut memo)) [INFO] [stdout] 52 | | .sum(); [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] 49 ~ stones [INFO] [stdout] 50 + .iter() [INFO] [stdout] 51 + .map(|stone| gen_stones(0, 75, *stone, &mut memo)) [INFO] [stdout] 52 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day11/day11.rs:46:18 [INFO] [stdout] | [INFO] [stdout] 46 | fn part2(stones: &Vec) -> u64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 46 - fn part2(stones: &Vec) -> u64 { [INFO] [stdout] 46 + fn part2(stones: &[u64]) -> u64 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day2/day2.rs:66:33 [INFO] [stdout] | [INFO] [stdout] 66 | ... return (-3..=1).contains(&diff); [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] 66 - return (-3..=1).contains(&diff); [INFO] [stdout] 66 + (-3..=1).contains(&diff) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day2/day2.rs:68:33 [INFO] [stdout] | [INFO] [stdout] 68 | ... return false; [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] 68 - return false; [INFO] [stdout] 68 + false [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stdout] --> src/bin/2024/day9/day9.rs:3:26 [INFO] [stdout] | [INFO] [stdout] 3 | fn parse(input: &str) -> (Vec, Vec<(usize, u32)>, Vec<(usize, u32)>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stdout] = note: `#[warn(clippy::type_complexity)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day9/day9.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | return (disk, free_space, files); [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] 16 - return (disk, free_space, files); [INFO] [stdout] 16 + (disk, free_space, files) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day9/day9.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | / return new_disk [INFO] [stdout] 42 | | .iter() [INFO] [stdout] 43 | | .enumerate() [INFO] [stdout] 44 | | .map(|(i, v)| if *v != -1 { i as u64 * *v as u64 } else { 0 }) [INFO] [stdout] 45 | | .sum(); [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] 41 ~ new_disk [INFO] [stdout] 42 + .iter() [INFO] [stdout] 43 + .enumerate() [INFO] [stdout] 44 + .map(|(i, v)| if *v != -1 { i as u64 * *v as u64 } else { 0 }) [INFO] [stdout] 45 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day9/day9.rs:19:16 [INFO] [stdout] | [INFO] [stdout] 19 | fn part1(disk: &Vec) -> u64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 19 ~ fn part1(disk: &[i32]) -> u64 { [INFO] [stdout] 20 ~ let mut new_disk = disk.to_owned(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day4/day4.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | / return input [INFO] [stdout] 6 | | .lines() [INFO] [stdout] 7 | | .map(|l| l.chars().collect::>()) [INFO] [stdout] 8 | | .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] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 5 ~ input [INFO] [stdout] 6 + .lines() [INFO] [stdout] 7 + .map(|l| l.chars().collect::>()) [INFO] [stdout] 8 ~ .collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/bin/2024/day4/day4.rs:21:16 [INFO] [stdout] | [INFO] [stdout] 21 | if !next_char.is_some_and(|c| *c == next_exp) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `next_char.is_none_or(|c| *c != next_exp)` [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: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day3/day3.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | return total; [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] 44 - return total; [INFO] [stdout] 44 + total [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day9/day9.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | / return new_files [INFO] [stdout] 81 | | .iter() [INFO] [stdout] 82 | | .enumerate() [INFO] [stdout] 83 | | .map(|(id, (pos, len))| { [INFO] [stdout] ... | [INFO] [stdout] 89 | | }) [INFO] [stdout] 90 | | .sum(); [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] 80 ~ new_files [INFO] [stdout] 81 + .iter() [INFO] [stdout] 82 + .enumerate() [INFO] [stdout] 83 + .map(|(id, (pos, len))| { [INFO] [stdout] 84 + let mut sum: u64 = 0; [INFO] [stdout] 85 + for x in 0..*len { [INFO] [stdout] 86 + sum += (*pos as u64 + x as u64) * id as u64 [INFO] [stdout] 87 + } [INFO] [stdout] 88 + return sum; [INFO] [stdout] 89 + }) [INFO] [stdout] 90 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day9/day9.rs:48:17 [INFO] [stdout] | [INFO] [stdout] 48 | fn part2(files: &Vec<(usize, u32)>, free_space: &Vec<(usize, u32)>) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 48 ~ fn part2(files: &[(usize, u32)], free_space: &Vec<(usize, u32)>) -> u64 { [INFO] [stdout] 49 ~ let mut new_files = files.to_owned(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day9/day9.rs:48:49 [INFO] [stdout] | [INFO] [stdout] 48 | fn part2(files: &Vec<(usize, u32)>, free_space: &Vec<(usize, u32)>) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 48 ~ fn part2(files: &Vec<(usize, u32)>, free_space: &[(usize, u32)]) -> u64 { [INFO] [stdout] 49 | let mut new_files = files.clone(); [INFO] [stdout] 50 ~ let mut new_free_space = free_space.to_owned(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day4/day4.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | return count; [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] 28 - return count; [INFO] [stdout] 28 + count [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant pattern matching, consider using `is_some()` [INFO] [stdout] --> src/bin/2024/day4/day4.rs:23:24 [INFO] [stdout] | [INFO] [stdout] 23 | } else if !matches!(rest_chars.peek(), Some(_)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `rest_chars.peek().is_some()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stdout] = note: `#[warn(clippy::redundant_pattern_matching)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day4/day4.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 48 | return count; [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] 48 - return count; [INFO] [stdout] 48 + count [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `itertools` [INFO] [stdout] --> src/bin/2024/day16/day16.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use itertools::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day3/day3.rs:98:5 [INFO] [stdout] | [INFO] [stdout] 98 | return total; [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] 98 - return total; [INFO] [stdout] 98 + total [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day4/day4.rs:40:25 [INFO] [stdout] | [INFO] [stdout] 40 | return find_xmas(wordsearch, i as isize, j as isize); [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] 40 ~ find_xmas(wordsearch, i as isize, j as isize) [INFO] [stdout] 41 | } else { [INFO] [stdout] 42 | return 0; [INFO] [stdout] 43 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day4/day4.rs:42:25 [INFO] [stdout] | [INFO] [stdout] 42 | 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] 42 ~ 0 [INFO] [stdout] 43 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/bin/2024/day4/day4.rs:74:12 [INFO] [stdout] | [INFO] [stdout] 74 | if !next_char.is_some_and(|f| *f == exp_char) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `next_char.is_none_or(|f| *f != exp_char)` [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] --> src/bin/2024/day4/day4.rs:90:12 [INFO] [stdout] | [INFO] [stdout] 90 | if !next_char.is_some_and(|f| *f == exp_char) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `next_char.is_none_or(|f| *f != exp_char)` [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] --> src/bin/2024/day4/day4.rs:95:5 [INFO] [stdout] | [INFO] [stdout] 95 | 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] 95 - return 0; [INFO] [stdout] 95 + 0 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day9/day9.rs:88:13 [INFO] [stdout] | [INFO] [stdout] 88 | return sum; [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] 88 - return sum; [INFO] [stdout] 88 + sum [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day4/day4.rs:115:5 [INFO] [stdout] | [INFO] [stdout] 115 | return count; [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] 115 - return count; [INFO] [stdout] 115 + count [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day4/day4.rs:107:25 [INFO] [stdout] | [INFO] [stdout] 107 | return find_x_mas(wordsearch, i as isize, j as isize); [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] 107 ~ find_x_mas(wordsearch, i as isize, j as isize) [INFO] [stdout] 108 | } else { [INFO] [stdout] 109 | return 0; [INFO] [stdout] 110 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day4/day4.rs:109:25 [INFO] [stdout] | [INFO] [stdout] 109 | 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] 109 ~ 0 [INFO] [stdout] 110 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: importing a legacy numeric constant [INFO] [stdout] --> src/bin/2024/day16/day16.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::u32::MAX; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: remove this import and use the associated constant `u32::MAX` from the primitive type instead [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#legacy_numeric_constants [INFO] [stdout] = note: `#[warn(clippy::legacy_numeric_constants)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day16/day16.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | / return ( [INFO] [stdout] 28 | | input [INFO] [stdout] 29 | | .lines() [INFO] [stdout] 30 | | .enumerate() [INFO] [stdout] ... | [INFO] [stdout] 47 | | start_pose, [INFO] [stdout] 48 | | ); [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] 27 ~ ( [INFO] [stdout] 28 + input [INFO] [stdout] 29 + .lines() [INFO] [stdout] 30 + .enumerate() [INFO] [stdout] 31 + .map(|(i, l)| { [INFO] [stdout] 32 + l.chars() [INFO] [stdout] 33 + .enumerate() [INFO] [stdout] 34 + .map(|(j, c)| match c { [INFO] [stdout] 35 + '.' => TileType::Valid, [INFO] [stdout] 36 + '#' => TileType::Wall, [INFO] [stdout] 37 + 'S' => { [INFO] [stdout] 38 + start_pose.position = Point2D::new(i as isize, j as isize); [INFO] [stdout] 39 + return TileType::Valid; [INFO] [stdout] 40 + } [INFO] [stdout] 41 + 'E' => TileType::End, [INFO] [stdout] 42 + _ => panic!("unexpected tile type"), [INFO] [stdout] 43 + }) [INFO] [stdout] 44 + .collect() [INFO] [stdout] 45 + }) [INFO] [stdout] 46 + .collect(), [INFO] [stdout] 47 + start_pose, [INFO] [stdout] 48 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day16/day16.rs:39:29 [INFO] [stdout] | [INFO] [stdout] 39 | ... return TileType::Valid; [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 TileType::Valid; [INFO] [stdout] 39 + TileType::Valid [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day12/day12.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | return input.lines().map(|l| l.chars().collect()).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] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 8 - return input.lines().map(|l| l.chars().collect()).collect(); [INFO] [stdout] 8 + input.lines().map(|l| l.chars().collect()).collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day12/day12.rs:142:5 [INFO] [stdout] | [INFO] [stdout] 142 | return (t_area, t_perimeter, t_corners); [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] 142 - return (t_area, t_perimeter, t_corners); [INFO] [stdout] 142 + (t_area, t_perimeter, t_corners) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of a legacy numeric constant [INFO] [stdout] --> src/bin/2024/day16/day16.rs:149:29 [INFO] [stdout] | [INFO] [stdout] 149 | let mut optimal_score = MAX; [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#legacy_numeric_constants [INFO] [stdout] help: use the associated constant instead [INFO] [stdout] | [INFO] [stdout] 149 | let mut optimal_score = u32::MAX; [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/bin/2024/day16/day16.rs:167:9 [INFO] [stdout] | [INFO] [stdout] 167 | / if let Some(&min_cost_val) = min_cost.get(¤t_state) { [INFO] [stdout] 168 | | if current_cost > min_cost_val { [INFO] [stdout] 169 | | continue; [INFO] [stdout] 170 | | } [INFO] [stdout] 171 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] = note: `#[warn(clippy::collapsible_if)]` on by default [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 167 ~ if let Some(&min_cost_val) = min_cost.get(¤t_state) [INFO] [stdout] 168 ~ && current_cost > min_cost_val { [INFO] [stdout] 169 | continue; [INFO] [stdout] 170 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of a legacy numeric constant [INFO] [stdout] --> src/bin/2024/day16/day16.rs:176:33 [INFO] [stdout] | [INFO] [stdout] 176 | if optimal_score == MAX { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#legacy_numeric_constants [INFO] [stdout] help: use the associated constant instead [INFO] [stdout] | [INFO] [stdout] 176 | if optimal_score == u32::MAX { [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `itertools` [INFO] [stdout] --> src/bin/2024/day15/day15.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use itertools::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/bin/2024/day15/day15.rs:82:10 [INFO] [stdout] | [INFO] [stdout] 82 | for (i, direction) in directions.iter().enumerate() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `itertools` [INFO] [stdout] --> src/bin/2024/day12/day12.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use itertools::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day12/day12.rs:162:5 [INFO] [stdout] | [INFO] [stdout] 162 | return total; [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] 162 - return total; [INFO] [stdout] 162 + total [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day12/day12.rs:179:5 [INFO] [stdout] | [INFO] [stdout] 179 | return total; [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] 179 - return total; [INFO] [stdout] 179 + total [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day4/day4.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | / return input [INFO] [stdout] 6 | | .lines() [INFO] [stdout] 7 | | .map(|l| l.chars().collect::>()) [INFO] [stdout] 8 | | .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] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 5 ~ input [INFO] [stdout] 6 + .lines() [INFO] [stdout] 7 + .map(|l| l.chars().collect::>()) [INFO] [stdout] 8 ~ .collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/bin/2024/day4/day4.rs:21:16 [INFO] [stdout] | [INFO] [stdout] 21 | if !next_char.is_some_and(|c| *c == next_exp) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `next_char.is_none_or(|c| *c != next_exp)` [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: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day4/day4.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | return count; [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] 28 - return count; [INFO] [stdout] 28 + count [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant pattern matching, consider using `is_some()` [INFO] [stdout] --> src/bin/2024/day4/day4.rs:23:24 [INFO] [stdout] | [INFO] [stdout] 23 | } else if !matches!(rest_chars.peek(), Some(_)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `rest_chars.peek().is_some()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stdout] = note: `#[warn(clippy::redundant_pattern_matching)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day4/day4.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 48 | return count; [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] 48 - return count; [INFO] [stdout] 48 + count [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day4/day4.rs:40:25 [INFO] [stdout] | [INFO] [stdout] 40 | return find_xmas(wordsearch, i as isize, j as isize); [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] 40 ~ find_xmas(wordsearch, i as isize, j as isize) [INFO] [stdout] 41 | } else { [INFO] [stdout] 42 | return 0; [INFO] [stdout] 43 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day4/day4.rs:42:25 [INFO] [stdout] | [INFO] [stdout] 42 | 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] 42 ~ 0 [INFO] [stdout] 43 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/bin/2024/day4/day4.rs:74:12 [INFO] [stdout] | [INFO] [stdout] 74 | if !next_char.is_some_and(|f| *f == exp_char) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `next_char.is_none_or(|f| *f != exp_char)` [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] --> src/bin/2024/day4/day4.rs:90:12 [INFO] [stdout] | [INFO] [stdout] 90 | if !next_char.is_some_and(|f| *f == exp_char) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `next_char.is_none_or(|f| *f != exp_char)` [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] --> src/bin/2024/day4/day4.rs:95:5 [INFO] [stdout] | [INFO] [stdout] 95 | 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] 95 - return 0; [INFO] [stdout] 95 + 0 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day4/day4.rs:115:5 [INFO] [stdout] | [INFO] [stdout] 115 | return count; [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] 115 - return count; [INFO] [stdout] 115 + count [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day4/day4.rs:107:25 [INFO] [stdout] | [INFO] [stdout] 107 | return find_x_mas(wordsearch, i as isize, j as isize); [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] 107 ~ find_x_mas(wordsearch, i as isize, j as isize) [INFO] [stdout] 108 | } else { [INFO] [stdout] 109 | return 0; [INFO] [stdout] 110 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day4/day4.rs:109:25 [INFO] [stdout] | [INFO] [stdout] 109 | 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] 109 ~ 0 [INFO] [stdout] 110 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `itertools` [INFO] [stdout] --> src/bin/2024/day5/day5.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use itertools::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day5/day5.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | return (rules, updates); [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] 23 - return (rules, updates); [INFO] [stdout] 23 + (rules, updates) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day5/day5.rs:16:13 [INFO] [stdout] | [INFO] [stdout] 16 | return (pair[0], pair[1]); [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 (pair[0], pair[1]); [INFO] [stdout] 16 + (pair[0], pair[1]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day5/day5.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | / return updates [INFO] [stdout] 28 | | .iter() [INFO] [stdout] 29 | | .filter(|u| { [INFO] [stdout] 30 | | let mut rule_map: HashMap> = HashMap::new(); [INFO] [stdout] ... | [INFO] [stdout] 51 | | }) [INFO] [stdout] 52 | | .sum::() as i32; [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 ~ updates [INFO] [stdout] 28 + .iter() [INFO] [stdout] 29 + .filter(|u| { [INFO] [stdout] 30 + let mut rule_map: HashMap> = HashMap::new(); [INFO] [stdout] 31 + for (before, val) in rules { [INFO] [stdout] 32 + if u.contains(before) && u.contains(val) { [INFO] [stdout] 33 + rule_map [INFO] [stdout] 34 + .entry(*val) [INFO] [stdout] 35 + .or_insert(HashSet::new()) [INFO] [stdout] 36 + .insert(*before); [INFO] [stdout] 37 + } [INFO] [stdout] 38 + } [INFO] [stdout] 39 + let mut seen_vals: HashSet = HashSet::new(); [INFO] [stdout] 40 + for v in *u { [INFO] [stdout] 41 + seen_vals.insert(*v); [INFO] [stdout] 42 + if rule_map.get(v).is_some_and(|r| !r.is_subset(&seen_vals)) { [INFO] [stdout] 43 + return false; [INFO] [stdout] 44 + } [INFO] [stdout] 45 + } [INFO] [stdout] 46 + return true; [INFO] [stdout] 47 + }) [INFO] [stdout] 48 + .map(|u| { [INFO] [stdout] 49 + let val = u[u.len() / 2]; [INFO] [stdout] 50 + return val; [INFO] [stdout] 51 + }) [INFO] [stdout] 52 ~ .sum::() as i32 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day5/day5.rs:26:44 [INFO] [stdout] | [INFO] [stdout] 26 | fn part1(rules: &Vec<(u32, u32)>, updates: &Vec>) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 26 - fn part1(rules: &Vec<(u32, u32)>, updates: &Vec>) -> i32 { [INFO] [stdout] 26 + fn part1(rules: &Vec<(u32, u32)>, updates: &[Vec]) -> i32 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day5/day5.rs:46:13 [INFO] [stdout] | [INFO] [stdout] 46 | return true; [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] 46 - return true; [INFO] [stdout] 46 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert` to construct default value [INFO] [stdout] --> src/bin/2024/day5/day5.rs:35:26 [INFO] [stdout] | [INFO] [stdout] 35 | .or_insert(HashSet::new()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] = note: `#[warn(clippy::unwrap_or_default)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day5/day5.rs:50:13 [INFO] [stdout] | [INFO] [stdout] 50 | return val; [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 val; [INFO] [stdout] 50 + val [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day5/day5.rs:70:5 [INFO] [stdout] | [INFO] [stdout] 70 | / return updates [INFO] [stdout] 71 | | .iter() [INFO] [stdout] 72 | | .map(|u| { [INFO] [stdout] 73 | | if !u.is_sorted_by(|l, r| sort_func(l, r) != Ordering::Greater) { [INFO] [stdout] ... | [INFO] [stdout] 79 | | }) [INFO] [stdout] 80 | | .sum::() as i32; [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] 70 ~ updates [INFO] [stdout] 71 + .iter() [INFO] [stdout] 72 + .map(|u| { [INFO] [stdout] 73 + if !u.is_sorted_by(|l, r| sort_func(l, r) != Ordering::Greater) { [INFO] [stdout] 74 + let mut new_update = u.clone(); [INFO] [stdout] 75 + new_update.sort_by(sort_func); [INFO] [stdout] 76 + return new_update[new_update.len() / 2]; [INFO] [stdout] 77 + } [INFO] [stdout] 78 + return 0; [INFO] [stdout] 79 + }) [INFO] [stdout] 80 ~ .sum::() as i32 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day5/day5.rs:55:44 [INFO] [stdout] | [INFO] [stdout] 55 | fn part2(rules: &Vec<(u32, u32)>, updates: &Vec>) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 55 - fn part2(rules: &Vec<(u32, u32)>, updates: &Vec>) -> i32 { [INFO] [stdout] 55 + fn part2(rules: &Vec<(u32, u32)>, updates: &[Vec]) -> i32 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day5/day5.rs:67:9 [INFO] [stdout] | [INFO] [stdout] 67 | return Ordering::Equal; [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 Ordering::Equal; [INFO] [stdout] 67 + Ordering::Equal [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day5/day5.rs:78:13 [INFO] [stdout] | [INFO] [stdout] 78 | 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] 78 - return 0; [INFO] [stdout] 78 + 0 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day15/day15.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | / return ( [INFO] [stdout] 43 | | Map { [INFO] [stdout] 44 | | robot_position, [INFO] [stdout] 45 | | box_positions, [INFO] [stdout] ... | [INFO] [stdout] 48 | | directions, [INFO] [stdout] 49 | | ); [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] 42 ~ ( [INFO] [stdout] 43 + Map { [INFO] [stdout] 44 + robot_position, [INFO] [stdout] 45 + box_positions, [INFO] [stdout] 46 + wall_positions, [INFO] [stdout] 47 + }, [INFO] [stdout] 48 + directions, [INFO] [stdout] 49 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day15/day15.rs:70:5 [INFO] [stdout] | [INFO] [stdout] 70 | return true; [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] 70 - return true; [INFO] [stdout] 70 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day15/day15.rs:114:5 [INFO] [stdout] | [INFO] [stdout] 114 | / return curr_box_positions [INFO] [stdout] 115 | | .iter() [INFO] [stdout] 116 | | .map(|b| (b.x * 100 + b.y) as u32) [INFO] [stdout] 117 | | .sum(); [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] 114 ~ curr_box_positions [INFO] [stdout] 115 + .iter() [INFO] [stdout] 116 + .map(|b| (b.x * 100 + b.y) as u32) [INFO] [stdout] 117 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day15/day15.rs:79:33 [INFO] [stdout] | [INFO] [stdout] 79 | fn part1(map: &Map, directions: &Vec) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 79 - fn part1(map: &Map, directions: &Vec) -> u32 { [INFO] [stdout] 79 + fn part1(map: &Map, directions: &[Direction2D]) -> u32 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day15/day15.rs:179:5 [INFO] [stdout] | [INFO] [stdout] 179 | return true; [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] 179 - return true; [INFO] [stdout] 179 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day15/day15.rs:240:5 [INFO] [stdout] | [INFO] [stdout] 240 | / return curr_box_positions [INFO] [stdout] 241 | | .iter() [INFO] [stdout] 242 | | .filter(|b| *b.1 == BoxHalf::L) [INFO] [stdout] 243 | | .map(|b| (b.0.x * 100 + b.0.y) as u32) [INFO] [stdout] 244 | | .sum(); [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] 240 ~ curr_box_positions [INFO] [stdout] 241 + .iter() [INFO] [stdout] 242 + .filter(|b| *b.1 == BoxHalf::L) [INFO] [stdout] 243 + .map(|b| (b.0.x * 100 + b.0.y) as u32) [INFO] [stdout] 244 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day15/day15.rs:182:33 [INFO] [stdout] | [INFO] [stdout] 182 | fn part2(map: &Map, directions: &Vec) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 182 - fn part2(map: &Map, directions: &Vec) -> u32 { [INFO] [stdout] 182 + fn part2(map: &Map, directions: &[Direction2D]) -> u32 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `itertools` [INFO] [stdout] --> src/bin/2024/day16/day16.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use itertools::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: importing a legacy numeric constant [INFO] [stdout] --> src/bin/2024/day16/day16.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::u32::MAX; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: remove this import and use the associated constant `u32::MAX` from the primitive type instead [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#legacy_numeric_constants [INFO] [stdout] = note: `#[warn(clippy::legacy_numeric_constants)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day16/day16.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | / return ( [INFO] [stdout] 28 | | input [INFO] [stdout] 29 | | .lines() [INFO] [stdout] 30 | | .enumerate() [INFO] [stdout] ... | [INFO] [stdout] 47 | | start_pose, [INFO] [stdout] 48 | | ); [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] 27 ~ ( [INFO] [stdout] 28 + input [INFO] [stdout] 29 + .lines() [INFO] [stdout] 30 + .enumerate() [INFO] [stdout] 31 + .map(|(i, l)| { [INFO] [stdout] 32 + l.chars() [INFO] [stdout] 33 + .enumerate() [INFO] [stdout] 34 + .map(|(j, c)| match c { [INFO] [stdout] 35 + '.' => TileType::Valid, [INFO] [stdout] 36 + '#' => TileType::Wall, [INFO] [stdout] 37 + 'S' => { [INFO] [stdout] 38 + start_pose.position = Point2D::new(i as isize, j as isize); [INFO] [stdout] 39 + return TileType::Valid; [INFO] [stdout] 40 + } [INFO] [stdout] 41 + 'E' => TileType::End, [INFO] [stdout] 42 + _ => panic!("unexpected tile type"), [INFO] [stdout] 43 + }) [INFO] [stdout] 44 + .collect() [INFO] [stdout] 45 + }) [INFO] [stdout] 46 + .collect(), [INFO] [stdout] 47 + start_pose, [INFO] [stdout] 48 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day16/day16.rs:39:29 [INFO] [stdout] | [INFO] [stdout] 39 | ... return TileType::Valid; [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 TileType::Valid; [INFO] [stdout] 39 + TileType::Valid [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of a legacy numeric constant [INFO] [stdout] --> src/bin/2024/day16/day16.rs:149:29 [INFO] [stdout] | [INFO] [stdout] 149 | let mut optimal_score = MAX; [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#legacy_numeric_constants [INFO] [stdout] help: use the associated constant instead [INFO] [stdout] | [INFO] [stdout] 149 | let mut optimal_score = u32::MAX; [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/bin/2024/day16/day16.rs:167:9 [INFO] [stdout] | [INFO] [stdout] 167 | / if let Some(&min_cost_val) = min_cost.get(¤t_state) { [INFO] [stdout] 168 | | if current_cost > min_cost_val { [INFO] [stdout] 169 | | continue; [INFO] [stdout] 170 | | } [INFO] [stdout] 171 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] = note: `#[warn(clippy::collapsible_if)]` on by default [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 167 ~ if let Some(&min_cost_val) = min_cost.get(¤t_state) [INFO] [stdout] 168 ~ && current_cost > min_cost_val { [INFO] [stdout] 169 | continue; [INFO] [stdout] 170 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of a legacy numeric constant [INFO] [stdout] --> src/bin/2024/day16/day16.rs:176:33 [INFO] [stdout] | [INFO] [stdout] 176 | if optimal_score == MAX { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#legacy_numeric_constants [INFO] [stdout] help: use the associated constant instead [INFO] [stdout] | [INFO] [stdout] 176 | if optimal_score == u32::MAX { [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day12/day12.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | return input.lines().map(|l| l.chars().collect()).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] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 8 - return input.lines().map(|l| l.chars().collect()).collect(); [INFO] [stdout] 8 + input.lines().map(|l| l.chars().collect()).collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day12/day12.rs:142:5 [INFO] [stdout] | [INFO] [stdout] 142 | return (t_area, t_perimeter, t_corners); [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] 142 - return (t_area, t_perimeter, t_corners); [INFO] [stdout] 142 + (t_area, t_perimeter, t_corners) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day12/day12.rs:162:5 [INFO] [stdout] | [INFO] [stdout] 162 | return total; [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] 162 - return total; [INFO] [stdout] 162 + total [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day12/day12.rs:179:5 [INFO] [stdout] | [INFO] [stdout] 179 | return total; [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] 179 - return total; [INFO] [stdout] 179 + total [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day3/day3.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | / return input [INFO] [stdout] 5 | | .lines() [INFO] [stdout] 6 | | .map(|l| l.chars().map(|c| c.to_digit(10).unwrap()).collect()) [INFO] [stdout] 7 | | .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] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 4 ~ input [INFO] [stdout] 5 + .lines() [INFO] [stdout] 6 + .map(|l| l.chars().map(|c| c.to_digit(10).unwrap()).collect()) [INFO] [stdout] 7 ~ .collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `itertools` [INFO] [stdout] --> src/bin/2024/day5/day5.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use itertools::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day3/day3.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | / return banks [INFO] [stdout] 12 | | .iter() [INFO] [stdout] 13 | | .map(|batts| { [INFO] [stdout] 14 | | let mut max_tens = 0; [INFO] [stdout] ... | [INFO] [stdout] 34 | | }) [INFO] [stdout] 35 | | .sum(); [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 ~ banks [INFO] [stdout] 12 + .iter() [INFO] [stdout] 13 + .map(|batts| { [INFO] [stdout] 14 + let mut max_tens = 0; [INFO] [stdout] 15 + let mut tens_idx = 0; [INFO] [stdout] 16 + let mut max_units = 0; [INFO] [stdout] 17 + for (i, y) in batts.iter().enumerate().take(batts.len() - 1) { [INFO] [stdout] 18 + if *y > max_tens { [INFO] [stdout] 19 + tens_idx = i; [INFO] [stdout] 20 + max_tens = *y; [INFO] [stdout] 21 + } [INFO] [stdout] 22 + } [INFO] [stdout] 23 + // println!("Skipping first {tens_idx} for units."); [INFO] [stdout] 24 + for y in batts.iter().skip(tens_idx + 1) { [INFO] [stdout] 25 + if *y > max_units { [INFO] [stdout] 26 + max_units = *y; [INFO] [stdout] 27 + } [INFO] [stdout] 28 + } [INFO] [stdout] 29 + // println!( [INFO] [stdout] 30 + // "Found {max_tens} & {max_units} -> {}", [INFO] [stdout] 31 + // max_tens * 10 + max_units [INFO] [stdout] 32 + // ); [INFO] [stdout] 33 + return max_tens * 10 + max_units; [INFO] [stdout] 34 + }) [INFO] [stdout] 35 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2025/day3/day3.rs:10:17 [INFO] [stdout] | [INFO] [stdout] 10 | fn part1(banks: &Vec>) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 10 - fn part1(banks: &Vec>) -> u32 { [INFO] [stdout] 10 + fn part1(banks: &[Vec]) -> u32 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day3/day3.rs:33:13 [INFO] [stdout] | [INFO] [stdout] 33 | return max_tens * 10 + max_units; [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 max_tens * 10 + max_units; [INFO] [stdout] 33 + max_tens * 10 + max_units [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day2/day2.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | / return input [INFO] [stdout] 5 | | .lines() [INFO] [stdout] 6 | | .map(|line| { [INFO] [stdout] 7 | | line.split_whitespace() [INFO] [stdout] ... | [INFO] [stdout] 10 | | }) [INFO] [stdout] 11 | | .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] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 4 ~ input [INFO] [stdout] 5 + .lines() [INFO] [stdout] 6 + .map(|line| { [INFO] [stdout] 7 + line.split_whitespace() [INFO] [stdout] 8 + .map(|v| v.parse::().unwrap()) [INFO] [stdout] 9 + .collect() [INFO] [stdout] 10 + }) [INFO] [stdout] 11 ~ .collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day2/day2.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | / return reports [INFO] [stdout] 16 | | .iter() [INFO] [stdout] 17 | | .filter(|report| { [INFO] [stdout] 18 | | let mut direction = 0_i32; [INFO] [stdout] ... | [INFO] [stdout] 36 | | }) [INFO] [stdout] 37 | | .count(); [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 ~ reports [INFO] [stdout] 16 + .iter() [INFO] [stdout] 17 + .filter(|report| { [INFO] [stdout] 18 + let mut direction = 0_i32; [INFO] [stdout] 19 + report [INFO] [stdout] 20 + .windows(2) [INFO] [stdout] 21 + // make pattern irrefutable [INFO] [stdout] 22 + .flat_map(<&[i32; 2]>::try_from) [INFO] [stdout] 23 + .all(|[a, b]| { [INFO] [stdout] 24 + if direction == 0 { [INFO] [stdout] 25 + direction = if (a - b).is_positive() { 1 } else { -1 }; [INFO] [stdout] 26 + } [INFO] [stdout] 27 + let diff = a - b; [INFO] [stdout] 28 + if diff.is_positive() && direction.is_positive() { [INFO] [stdout] 29 + return (1..=3).contains(&diff); [INFO] [stdout] 30 + } else if diff.is_negative() && direction.is_negative() { [INFO] [stdout] 31 + return (-3..=1).contains(&diff); [INFO] [stdout] 32 + } else { [INFO] [stdout] 33 + return false; [INFO] [stdout] 34 + } [INFO] [stdout] 35 + }) [INFO] [stdout] 36 + }) [INFO] [stdout] 37 ~ .count() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day2/day2.rs:14:19 [INFO] [stdout] | [INFO] [stdout] 14 | fn part1(reports: &Vec>) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 14 - fn part1(reports: &Vec>) -> usize { [INFO] [stdout] 14 + fn part1(reports: &[Vec]) -> usize { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day2/day2.rs:29:25 [INFO] [stdout] | [INFO] [stdout] 29 | return (1..=3).contains(&diff); [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 - return (1..=3).contains(&diff); [INFO] [stdout] 29 + (1..=3).contains(&diff) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day2/day2.rs:31:25 [INFO] [stdout] | [INFO] [stdout] 31 | return (-3..=1).contains(&diff); [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] 31 - return (-3..=1).contains(&diff); [INFO] [stdout] 31 + (-3..=1).contains(&diff) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day2/day2.rs:33:25 [INFO] [stdout] | [INFO] [stdout] 33 | return false; [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 false; [INFO] [stdout] 33 + false [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day3/day3.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | / return banks [INFO] [stdout] 41 | | .iter() [INFO] [stdout] 42 | | .map(|batts| { [INFO] [stdout] 43 | | let mut bank_total: u64 = 0; [INFO] [stdout] ... | [INFO] [stdout] 60 | | }) [INFO] [stdout] 61 | | .sum(); [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] 40 ~ banks [INFO] [stdout] 41 + .iter() [INFO] [stdout] 42 + .map(|batts| { [INFO] [stdout] 43 + let mut bank_total: u64 = 0; [INFO] [stdout] 44 + let mut last_index: isize = -1; [INFO] [stdout] 45 + for i in 0..digits { [INFO] [stdout] 46 + let remaining = digits - i; [INFO] [stdout] 47 + let max = batts [INFO] [stdout] 48 + .iter() [INFO] [stdout] 49 + .enumerate() [INFO] [stdout] 50 + .skip((last_index + 1) as usize) [INFO] [stdout] 51 + .take(batts.len() - remaining - (last_index as usize)) [INFO] [stdout] 52 + .max_by(|a, b| { [INFO] [stdout] 53 + return a.1.cmp(b.1).then_with(|| b.0.cmp(&a.0)); [INFO] [stdout] 54 + }) [INFO] [stdout] 55 + .unwrap(); [INFO] [stdout] 56 + last_index = max.0 as isize; [INFO] [stdout] 57 + bank_total += *max.1 as u64 * 10u64.pow(remaining as u32 - 1) [INFO] [stdout] 58 + } [INFO] [stdout] 59 + return bank_total; [INFO] [stdout] 60 + }) [INFO] [stdout] 61 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2025/day3/day3.rs:38:17 [INFO] [stdout] | [INFO] [stdout] 38 | fn part2(banks: &Vec>) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 38 - fn part2(banks: &Vec>) -> u64 { [INFO] [stdout] 38 + fn part2(banks: &[Vec]) -> u64 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day3/day3.rs:59:13 [INFO] [stdout] | [INFO] [stdout] 59 | return bank_total; [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 bank_total; [INFO] [stdout] 59 + bank_total [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day3/day3.rs:53:25 [INFO] [stdout] | [INFO] [stdout] 53 | return a.1.cmp(b.1).then_with(|| b.0.cmp(&a.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] 53 - return a.1.cmp(b.1).then_with(|| b.0.cmp(&a.0)); [INFO] [stdout] 53 + a.1.cmp(b.1).then_with(|| b.0.cmp(&a.0)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day2/day2.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | / return reports [INFO] [stdout] 42 | | .iter() [INFO] [stdout] 43 | | .filter(|report| { [INFO] [stdout] 44 | | (0..report.len()) [INFO] [stdout] ... | [INFO] [stdout] 72 | | }) [INFO] [stdout] 73 | | .count(); [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] 41 ~ reports [INFO] [stdout] 42 + .iter() [INFO] [stdout] 43 + .filter(|report| { [INFO] [stdout] 44 + (0..report.len()) [INFO] [stdout] 45 + .map(|idx| { [INFO] [stdout] 46 + report [INFO] [stdout] 47 + .iter() [INFO] [stdout] 48 + .enumerate() [INFO] [stdout] 49 + .filter_map(|(i, e)| if i != idx { Some(e) } else { None }) [INFO] [stdout] 50 + .collect::>() [INFO] [stdout] 51 + }) [INFO] [stdout] 52 + .any(|report| { [INFO] [stdout] 53 + let mut direction = 0_i32; [INFO] [stdout] 54 + report [INFO] [stdout] 55 + .windows(2) [INFO] [stdout] 56 + // make pattern irrefutable [INFO] [stdout] 57 + .flat_map(<[&i32; 2]>::try_from) [INFO] [stdout] 58 + .all(|[a, b]| { [INFO] [stdout] 59 + if direction == 0 { [INFO] [stdout] 60 + direction = if (a - b).is_positive() { 1 } else { -1 }; [INFO] [stdout] 61 + } [INFO] [stdout] 62 + let diff = a - b; [INFO] [stdout] 63 + if diff.is_positive() && direction.is_positive() { [INFO] [stdout] 64 + return (1..=3).contains(&diff); [INFO] [stdout] 65 + } else if diff.is_negative() && direction.is_negative() { [INFO] [stdout] 66 + return (-3..=1).contains(&diff); [INFO] [stdout] 67 + } else { [INFO] [stdout] 68 + return false; [INFO] [stdout] 69 + } [INFO] [stdout] 70 + }) [INFO] [stdout] 71 + }) [INFO] [stdout] 72 + }) [INFO] [stdout] 73 ~ .count() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day2/day2.rs:40:19 [INFO] [stdout] | [INFO] [stdout] 40 | fn part2(reports: &Vec>) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 40 - fn part2(reports: &Vec>) -> usize { [INFO] [stdout] 40 + fn part2(reports: &[Vec]) -> usize { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day5/day5.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | return (rules, updates); [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] 23 - return (rules, updates); [INFO] [stdout] 23 + (rules, updates) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day11/day11.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | / return input [INFO] [stdout] 6 | | .split(" ") [INFO] [stdout] 7 | | .map(|stone| stone.parse::().unwrap()) [INFO] [stdout] 8 | | .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] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 5 ~ input [INFO] [stdout] 6 + .split(" ") [INFO] [stdout] 7 + .map(|stone| stone.parse::().unwrap()) [INFO] [stdout] 8 ~ .collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day5/day5.rs:16:13 [INFO] [stdout] | [INFO] [stdout] 16 | return (pair[0], pair[1]); [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 (pair[0], pair[1]); [INFO] [stdout] 16 + (pair[0], pair[1]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day5/day5.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | / return updates [INFO] [stdout] 28 | | .iter() [INFO] [stdout] 29 | | .filter(|u| { [INFO] [stdout] 30 | | let mut rule_map: HashMap> = HashMap::new(); [INFO] [stdout] ... | [INFO] [stdout] 51 | | }) [INFO] [stdout] 52 | | .sum::() as i32; [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 ~ updates [INFO] [stdout] 28 + .iter() [INFO] [stdout] 29 + .filter(|u| { [INFO] [stdout] 30 + let mut rule_map: HashMap> = HashMap::new(); [INFO] [stdout] 31 + for (before, val) in rules { [INFO] [stdout] 32 + if u.contains(before) && u.contains(val) { [INFO] [stdout] 33 + rule_map [INFO] [stdout] 34 + .entry(*val) [INFO] [stdout] 35 + .or_insert(HashSet::new()) [INFO] [stdout] 36 + .insert(*before); [INFO] [stdout] 37 + } [INFO] [stdout] 38 + } [INFO] [stdout] 39 + let mut seen_vals: HashSet = HashSet::new(); [INFO] [stdout] 40 + for v in *u { [INFO] [stdout] 41 + seen_vals.insert(*v); [INFO] [stdout] 42 + if rule_map.get(v).is_some_and(|r| !r.is_subset(&seen_vals)) { [INFO] [stdout] 43 + return false; [INFO] [stdout] 44 + } [INFO] [stdout] 45 + } [INFO] [stdout] 46 + return true; [INFO] [stdout] 47 + }) [INFO] [stdout] 48 + .map(|u| { [INFO] [stdout] 49 + let val = u[u.len() / 2]; [INFO] [stdout] 50 + return val; [INFO] [stdout] 51 + }) [INFO] [stdout] 52 ~ .sum::() as i32 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day5/day5.rs:26:44 [INFO] [stdout] | [INFO] [stdout] 26 | fn part1(rules: &Vec<(u32, u32)>, updates: &Vec>) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 26 - fn part1(rules: &Vec<(u32, u32)>, updates: &Vec>) -> i32 { [INFO] [stdout] 26 + fn part1(rules: &Vec<(u32, u32)>, updates: &[Vec]) -> i32 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day5/day5.rs:46:13 [INFO] [stdout] | [INFO] [stdout] 46 | return true; [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] 46 - return true; [INFO] [stdout] 46 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert` to construct default value [INFO] [stdout] --> src/bin/2024/day5/day5.rs:35:26 [INFO] [stdout] | [INFO] [stdout] 35 | .or_insert(HashSet::new()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] = note: `#[warn(clippy::unwrap_or_default)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day5/day5.rs:50:13 [INFO] [stdout] | [INFO] [stdout] 50 | return val; [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 val; [INFO] [stdout] 50 + val [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day5/day5.rs:70:5 [INFO] [stdout] | [INFO] [stdout] 70 | / return updates [INFO] [stdout] 71 | | .iter() [INFO] [stdout] 72 | | .map(|u| { [INFO] [stdout] 73 | | if !u.is_sorted_by(|l, r| sort_func(l, r) != Ordering::Greater) { [INFO] [stdout] ... | [INFO] [stdout] 79 | | }) [INFO] [stdout] 80 | | .sum::() as i32; [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] 70 ~ updates [INFO] [stdout] 71 + .iter() [INFO] [stdout] 72 + .map(|u| { [INFO] [stdout] 73 + if !u.is_sorted_by(|l, r| sort_func(l, r) != Ordering::Greater) { [INFO] [stdout] 74 + let mut new_update = u.clone(); [INFO] [stdout] 75 + new_update.sort_by(sort_func); [INFO] [stdout] 76 + return new_update[new_update.len() / 2]; [INFO] [stdout] 77 + } [INFO] [stdout] 78 + return 0; [INFO] [stdout] 79 + }) [INFO] [stdout] 80 ~ .sum::() as i32 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day5/day5.rs:55:44 [INFO] [stdout] | [INFO] [stdout] 55 | fn part2(rules: &Vec<(u32, u32)>, updates: &Vec>) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 55 - fn part2(rules: &Vec<(u32, u32)>, updates: &Vec>) -> i32 { [INFO] [stdout] 55 + fn part2(rules: &Vec<(u32, u32)>, updates: &[Vec]) -> i32 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day5/day5.rs:67:9 [INFO] [stdout] | [INFO] [stdout] 67 | return Ordering::Equal; [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 Ordering::Equal; [INFO] [stdout] 67 + Ordering::Equal [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day5/day5.rs:78:13 [INFO] [stdout] | [INFO] [stdout] 78 | 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] 78 - return 0; [INFO] [stdout] 78 + 0 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day2/day2.rs:64:33 [INFO] [stdout] | [INFO] [stdout] 64 | ... return (1..=3).contains(&diff); [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 - return (1..=3).contains(&diff); [INFO] [stdout] 64 + (1..=3).contains(&diff) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day2/day2.rs:66:33 [INFO] [stdout] | [INFO] [stdout] 66 | ... return (-3..=1).contains(&diff); [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] 66 - return (-3..=1).contains(&diff); [INFO] [stdout] 66 + (-3..=1).contains(&diff) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day2/day2.rs:68:33 [INFO] [stdout] | [INFO] [stdout] 68 | ... return false; [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] 68 - return false; [INFO] [stdout] 68 + false [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day11/day11.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | / return stones [INFO] [stdout] 15 | | .iter() [INFO] [stdout] 16 | | .map(|stone| gen_stones(0, 25, *stone, &mut memo)) [INFO] [stdout] 17 | | .sum(); [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 ~ stones [INFO] [stdout] 15 + .iter() [INFO] [stdout] 16 + .map(|stone| gen_stones(0, 25, *stone, &mut memo)) [INFO] [stdout] 17 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day11/day11.rs:11:18 [INFO] [stdout] | [INFO] [stdout] 11 | fn part1(stones: &Vec) -> u64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 11 - fn part1(stones: &Vec) -> u64 { [INFO] [stdout] 11 + fn part1(stones: &[u64]) -> u64 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day11/day11.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 43 | return ret_val; [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 - return ret_val; [INFO] [stdout] 43 + ret_val [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of `.is_multiple_of()` [INFO] [stdout] --> src/bin/2024/day11/day11.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 33 | if s_str.len() % 2 == 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace with: `s_str.len().is_multiple_of(2)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_is_multiple_of [INFO] [stdout] = note: `#[warn(clippy::manual_is_multiple_of)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day11/day11.rs:49:5 [INFO] [stdout] | [INFO] [stdout] 49 | / return stones [INFO] [stdout] 50 | | .iter() [INFO] [stdout] 51 | | .map(|stone| gen_stones(0, 75, *stone, &mut memo)) [INFO] [stdout] 52 | | .sum(); [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] 49 ~ stones [INFO] [stdout] 50 + .iter() [INFO] [stdout] 51 + .map(|stone| gen_stones(0, 75, *stone, &mut memo)) [INFO] [stdout] 52 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day11/day11.rs:46:18 [INFO] [stdout] | [INFO] [stdout] 46 | fn part2(stones: &Vec) -> u64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 46 - fn part2(stones: &Vec) -> u64 { [INFO] [stdout] 46 + fn part2(stones: &[u64]) -> u64 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day3/day3.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | return total; [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] 44 - return total; [INFO] [stdout] 44 + total [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day3/day3.rs:98:5 [INFO] [stdout] | [INFO] [stdout] 98 | return total; [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] 98 - return total; [INFO] [stdout] 98 + total [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day8/day8.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | return (width as u32, height as u32, antenna_map); [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] 23 - return (width as u32, height as u32, antenna_map); [INFO] [stdout] 23 + (width as u32, height as u32, antenna_map) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert` to construct default value [INFO] [stdout] --> src/bin/2024/day8/day8.rs:19:18 [INFO] [stdout] | [INFO] [stdout] 19 | .or_insert(Vec::new()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] = note: `#[warn(clippy::unwrap_or_default)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day8/day8.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | return !(node.x < 0 || node.x >= *height as isize || node.y < 0 || node.y >= *width as isize); [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 !(node.x < 0 || node.x >= *height as isize || node.y < 0 || node.y >= *width as isize); [INFO] [stdout] 27 + !(node.x < 0 || node.x >= *height as isize || node.y < 0 || node.y >= *width as isize) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day1/day1.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | / return input [INFO] [stdout] 5 | | .lines() [INFO] [stdout] 6 | | .map(|l| { [INFO] [stdout] 7 | | let res = l.replace("R", "0").replace("L", "-"); [INFO] [stdout] 8 | | return res.parse::().unwrap(); [INFO] [stdout] 9 | | }) [INFO] [stdout] 10 | | .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] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 4 ~ input [INFO] [stdout] 5 + .lines() [INFO] [stdout] 6 + .map(|l| { [INFO] [stdout] 7 + let res = l.replace("R", "0").replace("L", "-"); [INFO] [stdout] 8 + return res.parse::().unwrap(); [INFO] [stdout] 9 + }) [INFO] [stdout] 10 ~ .collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day1/day1.rs:8:13 [INFO] [stdout] | [INFO] [stdout] 8 | return res.parse::().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] 8 - return res.parse::().unwrap(); [INFO] [stdout] 8 + res.parse::().unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day1/day1.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | return zero_count; [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] 24 - return zero_count; [INFO] [stdout] 24 + zero_count [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2025/day1/day1.rs:13:24 [INFO] [stdout] | [INFO] [stdout] 13 | fn part1(instructions: &Vec) -> i32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 13 - fn part1(instructions: &Vec) -> i32 { [INFO] [stdout] 13 + fn part1(instructions: &[i32]) -> i32 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day1/day1.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 22 | return res; [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 res; [INFO] [stdout] 22 + res [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day1/day1.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 45 | return zero_count; [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] 45 - return zero_count; [INFO] [stdout] 45 + zero_count [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2025/day1/day1.rs:27:24 [INFO] [stdout] | [INFO] [stdout] 27 | fn part2(instructions: &Vec) -> i32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 27 - fn part2(instructions: &Vec) -> i32 { [INFO] [stdout] 27 + fn part2(instructions: &[i32]) -> i32 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day1/day1.rs:43:9 [INFO] [stdout] | [INFO] [stdout] 43 | return res; [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 - return res; [INFO] [stdout] 43 + res [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` has identical blocks [INFO] [stdout] --> src/bin/2025/day1/day1.rs:33:56 [INFO] [stdout] | [INFO] [stdout] 33 | if i.is_positive() && res <= dial && dial != 0 { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 34 | | // println!("Hit!"); [INFO] [stdout] 35 | | zero_count += 1; [INFO] [stdout] 36 | | } else if i.is_negative() && res >= dial && dial != 0 { [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] note: same as this [INFO] [stdout] --> src/bin/2025/day1/day1.rs:36:63 [INFO] [stdout] | [INFO] [stdout] 36 | } else if i.is_negative() && res >= dial && dial != 0 { [INFO] [stdout] | _______________________________________________________________^ [INFO] [stdout] 37 | | // println!("Hit!"); [INFO] [stdout] 38 | | zero_count += 1; [INFO] [stdout] 39 | | } else if res == 0 { [INFO] [stdout] | |_________^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stdout] = note: `#[warn(clippy::if_same_then_else)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` has identical blocks [INFO] [stdout] --> src/bin/2025/day1/day1.rs:36:63 [INFO] [stdout] | [INFO] [stdout] 36 | } else if i.is_negative() && res >= dial && dial != 0 { [INFO] [stdout] | _______________________________________________________________^ [INFO] [stdout] 37 | | // println!("Hit!"); [INFO] [stdout] 38 | | zero_count += 1; [INFO] [stdout] 39 | | } else if res == 0 { [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] note: same as this [INFO] [stdout] --> src/bin/2025/day1/day1.rs:39:28 [INFO] [stdout] | [INFO] [stdout] 39 | } else if res == 0 { [INFO] [stdout] | ____________________________^ [INFO] [stdout] 40 | | // println!("Hit!"); [INFO] [stdout] 41 | | zero_count += 1; [INFO] [stdout] 42 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day8/day8.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 46 | return antinodes.len() as u32; [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] 46 - return antinodes.len() as u32; [INFO] [stdout] 46 + antinodes.len() as u32 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day8/day8.rs:69:5 [INFO] [stdout] | [INFO] [stdout] 69 | return antinodes.len() as u32; [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] 69 - return antinodes.len() as u32; [INFO] [stdout] 69 + antinodes.len() as u32 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day5/day5.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | return (ranges, ingredients); [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] 17 - return (ranges, ingredients); [INFO] [stdout] 17 + (ranges, ingredients) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day7/day7.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | / return input [INFO] [stdout] 5 | | .lines() [INFO] [stdout] 6 | | .map(|l| { [INFO] [stdout] 7 | | let pair: Vec<&str> = l.split(": ").collect(); [INFO] [stdout] ... | [INFO] [stdout] 15 | | }) [INFO] [stdout] 16 | | .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] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 4 ~ input [INFO] [stdout] 5 + .lines() [INFO] [stdout] 6 + .map(|l| { [INFO] [stdout] 7 + let pair: Vec<&str> = l.split(": ").collect(); [INFO] [stdout] 8 + return ( [INFO] [stdout] 9 + pair[0].parse::().unwrap(), [INFO] [stdout] 10 + pair[1] [INFO] [stdout] 11 + .split(" ") [INFO] [stdout] 12 + .map(|v| v.parse::().unwrap()) [INFO] [stdout] 13 + .collect(), [INFO] [stdout] 14 + ); [INFO] [stdout] 15 + }) [INFO] [stdout] 16 ~ .collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day1/day1.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | / return input [INFO] [stdout] 5 | | .lines() [INFO] [stdout] 6 | | .map(|l| { [INFO] [stdout] 7 | | let res = l.replace("R", "0").replace("L", "-"); [INFO] [stdout] 8 | | return res.parse::().unwrap(); [INFO] [stdout] 9 | | }) [INFO] [stdout] 10 | | .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] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 4 ~ input [INFO] [stdout] 5 + .lines() [INFO] [stdout] 6 + .map(|l| { [INFO] [stdout] 7 + let res = l.replace("R", "0").replace("L", "-"); [INFO] [stdout] 8 + return res.parse::().unwrap(); [INFO] [stdout] 9 + }) [INFO] [stdout] 10 ~ .collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day5/day5.rs:10:13 [INFO] [stdout] | [INFO] [stdout] 10 | return range_split[0]..=range_split[1]; [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 range_split[0]..=range_split[1]; [INFO] [stdout] 10 + range_split[0]..=range_split[1] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day5/day5.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | return count; [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] 30 - return count; [INFO] [stdout] 30 + count [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day1/day1.rs:8:13 [INFO] [stdout] | [INFO] [stdout] 8 | return res.parse::().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] 8 - return res.parse::().unwrap(); [INFO] [stdout] 8 + res.parse::().unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day5/day5.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 48 | return merged_ranges.iter().map(|r| r.end() - r.start() + 1).sum(); [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] 48 - return merged_ranges.iter().map(|r| r.end() - r.start() + 1).sum(); [INFO] [stdout] 48 + merged_ranges.iter().map(|r| r.end() - r.start() + 1).sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2025/day5/day5.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | fn part2(ranges: &Vec>) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 33 ~ fn part2(ranges: &[RangeInclusive]) -> u64 { [INFO] [stdout] 34 ~ let mut sorted_ranges = ranges.to_owned(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day7/day7.rs:8:13 [INFO] [stdout] | [INFO] [stdout] 8 | / return ( [INFO] [stdout] 9 | | pair[0].parse::().unwrap(), [INFO] [stdout] 10 | | pair[1] [INFO] [stdout] 11 | | .split(" ") [INFO] [stdout] 12 | | .map(|v| v.parse::().unwrap()) [INFO] [stdout] 13 | | .collect(), [INFO] [stdout] 14 | | ); [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] 8 ~ ( [INFO] [stdout] 9 + pair[0].parse::().unwrap(), [INFO] [stdout] 10 + pair[1] [INFO] [stdout] 11 + .split(" ") [INFO] [stdout] 12 + .map(|v| v.parse::().unwrap()) [INFO] [stdout] 13 + .collect(), [INFO] [stdout] 14 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `MUL` contains a capitalized acronym [INFO] [stdout] --> src/bin/2024/day7/day7.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | MUL, [INFO] [stdout] | ^^^ help: consider making the acronym lowercase, except the initial letter: `Mul` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#upper_case_acronyms [INFO] [stdout] = note: `#[warn(clippy::upper_case_acronyms)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `ADD` contains a capitalized acronym [INFO] [stdout] --> src/bin/2024/day7/day7.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | ADD, [INFO] [stdout] | ^^^ help: consider making the acronym lowercase, except the initial letter: `Add` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#upper_case_acronyms [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `CONCAT` contains a capitalized acronym [INFO] [stdout] --> src/bin/2024/day7/day7.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | CONCAT, [INFO] [stdout] | ^^^^^^ help: consider making the acronym lowercase, except the initial letter: `Concat` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#upper_case_acronyms [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day7/day7.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 39 | / return check_equation(result, new_total, Operator::ADD, &rest[1..]) [INFO] [stdout] 40 | | || check_equation(result, new_total, Operator::MUL, &rest[1..]); [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 ~ check_equation(result, new_total, Operator::ADD, &rest[1..]) [INFO] [stdout] 40 ~ || check_equation(result, new_total, Operator::MUL, &rest[1..]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` has identical blocks [INFO] [stdout] --> src/bin/2024/day7/day7.rs:34:34 [INFO] [stdout] | [INFO] [stdout] 34 | } else if new_total > result { [INFO] [stdout] | __________________________________^ [INFO] [stdout] 35 | | return false; [INFO] [stdout] 36 | | } else if rest.len() == 1 { [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] note: same as this [INFO] [stdout] --> src/bin/2024/day7/day7.rs:36:31 [INFO] [stdout] | [INFO] [stdout] 36 | } else if rest.len() == 1 { [INFO] [stdout] | _______________________________^ [INFO] [stdout] 37 | | return false; [INFO] [stdout] 38 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stdout] = note: `#[warn(clippy::if_same_then_else)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day7/day7.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | / return equations [INFO] [stdout] 45 | | .iter() [INFO] [stdout] 46 | | .filter_map(|e| { [INFO] [stdout] 47 | | if check_equation(e.0, 0, Operator::ADD, e.1.as_slice()) [INFO] [stdout] ... | [INFO] [stdout] 53 | | }) [INFO] [stdout] 54 | | .sum(); [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 ~ equations [INFO] [stdout] 45 + .iter() [INFO] [stdout] 46 + .filter_map(|e| { [INFO] [stdout] 47 + if check_equation(e.0, 0, Operator::ADD, e.1.as_slice()) [INFO] [stdout] 48 + || check_equation(e.0, 0, Operator::MUL, e.1.as_slice()) [INFO] [stdout] 49 + { [INFO] [stdout] 50 + return Some(e.0); [INFO] [stdout] 51 + } [INFO] [stdout] 52 + return None; [INFO] [stdout] 53 + }) [INFO] [stdout] 54 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day1/day1.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | return zero_count; [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] 24 - return zero_count; [INFO] [stdout] 24 + zero_count [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2025/day1/day1.rs:13:24 [INFO] [stdout] | [INFO] [stdout] 13 | fn part1(instructions: &Vec) -> i32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 13 - fn part1(instructions: &Vec) -> i32 { [INFO] [stdout] 13 + fn part1(instructions: &[i32]) -> i32 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day1/day1.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 22 | return res; [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 res; [INFO] [stdout] 22 + res [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day1/day1.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 45 | return zero_count; [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] 45 - return zero_count; [INFO] [stdout] 45 + zero_count [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2025/day1/day1.rs:27:24 [INFO] [stdout] | [INFO] [stdout] 27 | fn part2(instructions: &Vec) -> i32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 27 - fn part2(instructions: &Vec) -> i32 { [INFO] [stdout] 27 + fn part2(instructions: &[i32]) -> i32 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day1/day1.rs:43:9 [INFO] [stdout] | [INFO] [stdout] 43 | return res; [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 - return res; [INFO] [stdout] 43 + res [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` has identical blocks [INFO] [stdout] --> src/bin/2025/day1/day1.rs:33:56 [INFO] [stdout] | [INFO] [stdout] 33 | if i.is_positive() && res <= dial && dial != 0 { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 34 | | // println!("Hit!"); [INFO] [stdout] 35 | | zero_count += 1; [INFO] [stdout] 36 | | } else if i.is_negative() && res >= dial && dial != 0 { [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] note: same as this [INFO] [stdout] --> src/bin/2025/day1/day1.rs:36:63 [INFO] [stdout] | [INFO] [stdout] 36 | } else if i.is_negative() && res >= dial && dial != 0 { [INFO] [stdout] | _______________________________________________________________^ [INFO] [stdout] 37 | | // println!("Hit!"); [INFO] [stdout] 38 | | zero_count += 1; [INFO] [stdout] 39 | | } else if res == 0 { [INFO] [stdout] | |_________^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stdout] = note: `#[warn(clippy::if_same_then_else)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` has identical blocks [INFO] [stdout] --> src/bin/2025/day1/day1.rs:36:63 [INFO] [stdout] | [INFO] [stdout] 36 | } else if i.is_negative() && res >= dial && dial != 0 { [INFO] [stdout] | _______________________________________________________________^ [INFO] [stdout] 37 | | // println!("Hit!"); [INFO] [stdout] 38 | | zero_count += 1; [INFO] [stdout] 39 | | } else if res == 0 { [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] note: same as this [INFO] [stdout] --> src/bin/2025/day1/day1.rs:39:28 [INFO] [stdout] | [INFO] [stdout] 39 | } else if res == 0 { [INFO] [stdout] | ____________________________^ [INFO] [stdout] 40 | | // println!("Hit!"); [INFO] [stdout] 41 | | zero_count += 1; [INFO] [stdout] 42 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day7/day7.rs:43:21 [INFO] [stdout] | [INFO] [stdout] 43 | fn part1(equations: &Vec<(u64, Vec)>) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 43 - fn part1(equations: &Vec<(u64, Vec)>) -> u64 { [INFO] [stdout] 43 + fn part1(equations: &[(u64, Vec)]) -> u64 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day7/day7.rs:52:13 [INFO] [stdout] | [INFO] [stdout] 52 | return None; [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 - return None; [INFO] [stdout] 52 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day7/day7.rs:79:5 [INFO] [stdout] | [INFO] [stdout] 79 | / return check_equation_2(result, new_total, Operator::ADD, &rest[1..]) [INFO] [stdout] 80 | | || check_equation_2(result, new_total, Operator::MUL, &rest[1..]) [INFO] [stdout] 81 | | || check_equation_2(result, new_total, Operator::CONCAT, &rest[1..]); [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] 79 ~ check_equation_2(result, new_total, Operator::ADD, &rest[1..]) [INFO] [stdout] 80 + || check_equation_2(result, new_total, Operator::MUL, &rest[1..]) [INFO] [stdout] 81 ~ || check_equation_2(result, new_total, Operator::CONCAT, &rest[1..]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: needlessly taken reference of both operands [INFO] [stdout] --> src/bin/2024/day7/day7.rs:63:21 [INFO] [stdout] | [INFO] [stdout] 63 | assert!(&rest[0].to_string().parse::().unwrap() == &rest[0]); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#op_ref [INFO] [stdout] = note: `#[warn(clippy::op_ref)]` on by default [INFO] [stdout] help: use the values directly [INFO] [stdout] | [INFO] [stdout] 63 - assert!(&rest[0].to_string().parse::().unwrap() == &rest[0]); [INFO] [stdout] 63 + assert!(rest[0].to_string().parse::().unwrap() == rest[0]); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day7/day7.rs:85:5 [INFO] [stdout] | [INFO] [stdout] 85 | / return equations [INFO] [stdout] 86 | | .iter() [INFO] [stdout] 87 | | .filter_map(|e| { [INFO] [stdout] 88 | | if check_equation_2(e.0, e.1[0], Operator::ADD, &e.1[1..]) [INFO] [stdout] ... | [INFO] [stdout] 95 | | }) [INFO] [stdout] 96 | | .sum(); [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] 85 ~ equations [INFO] [stdout] 86 + .iter() [INFO] [stdout] 87 + .filter_map(|e| { [INFO] [stdout] 88 + if check_equation_2(e.0, e.1[0], Operator::ADD, &e.1[1..]) [INFO] [stdout] 89 + || check_equation_2(e.0, e.1[0], Operator::MUL, &e.1[1..]) [INFO] [stdout] 90 + || check_equation_2(e.0, e.1[0], Operator::CONCAT, &e.1[1..]) [INFO] [stdout] 91 + { [INFO] [stdout] 92 + return Some(e.0); [INFO] [stdout] 93 + } [INFO] [stdout] 94 + return None; [INFO] [stdout] 95 + }) [INFO] [stdout] 96 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day7/day7.rs:84:21 [INFO] [stdout] | [INFO] [stdout] 84 | fn part2(equations: &Vec<(u64, Vec)>) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 84 - fn part2(equations: &Vec<(u64, Vec)>) -> u64 { [INFO] [stdout] 84 + fn part2(equations: &[(u64, Vec)]) -> u64 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day7/day7.rs:94:13 [INFO] [stdout] | [INFO] [stdout] 94 | return None; [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] 94 - return None; [INFO] [stdout] 94 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day7/day7.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | / return input [INFO] [stdout] 5 | | .lines() [INFO] [stdout] 6 | | .map(|l| { [INFO] [stdout] 7 | | let pair: Vec<&str> = l.split(": ").collect(); [INFO] [stdout] ... | [INFO] [stdout] 15 | | }) [INFO] [stdout] 16 | | .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] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 4 ~ input [INFO] [stdout] 5 + .lines() [INFO] [stdout] 6 + .map(|l| { [INFO] [stdout] 7 + let pair: Vec<&str> = l.split(": ").collect(); [INFO] [stdout] 8 + return ( [INFO] [stdout] 9 + pair[0].parse::().unwrap(), [INFO] [stdout] 10 + pair[1] [INFO] [stdout] 11 + .split(" ") [INFO] [stdout] 12 + .map(|v| v.parse::().unwrap()) [INFO] [stdout] 13 + .collect(), [INFO] [stdout] 14 + ); [INFO] [stdout] 15 + }) [INFO] [stdout] 16 ~ .collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day7/day7.rs:8:13 [INFO] [stdout] | [INFO] [stdout] 8 | / return ( [INFO] [stdout] 9 | | pair[0].parse::().unwrap(), [INFO] [stdout] 10 | | pair[1] [INFO] [stdout] 11 | | .split(" ") [INFO] [stdout] 12 | | .map(|v| v.parse::().unwrap()) [INFO] [stdout] 13 | | .collect(), [INFO] [stdout] 14 | | ); [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] 8 ~ ( [INFO] [stdout] 9 + pair[0].parse::().unwrap(), [INFO] [stdout] 10 + pair[1] [INFO] [stdout] 11 + .split(" ") [INFO] [stdout] 12 + .map(|v| v.parse::().unwrap()) [INFO] [stdout] 13 + .collect(), [INFO] [stdout] 14 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `MUL` contains a capitalized acronym [INFO] [stdout] --> src/bin/2024/day7/day7.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | MUL, [INFO] [stdout] | ^^^ help: consider making the acronym lowercase, except the initial letter: `Mul` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#upper_case_acronyms [INFO] [stdout] = note: `#[warn(clippy::upper_case_acronyms)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `ADD` contains a capitalized acronym [INFO] [stdout] --> src/bin/2024/day7/day7.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | ADD, [INFO] [stdout] | ^^^ help: consider making the acronym lowercase, except the initial letter: `Add` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#upper_case_acronyms [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `CONCAT` contains a capitalized acronym [INFO] [stdout] --> src/bin/2024/day7/day7.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | CONCAT, [INFO] [stdout] | ^^^^^^ help: consider making the acronym lowercase, except the initial letter: `Concat` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#upper_case_acronyms [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day7/day7.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 39 | / return check_equation(result, new_total, Operator::ADD, &rest[1..]) [INFO] [stdout] 40 | | || check_equation(result, new_total, Operator::MUL, &rest[1..]); [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 ~ check_equation(result, new_total, Operator::ADD, &rest[1..]) [INFO] [stdout] 40 ~ || check_equation(result, new_total, Operator::MUL, &rest[1..]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` has identical blocks [INFO] [stdout] --> src/bin/2024/day7/day7.rs:34:34 [INFO] [stdout] | [INFO] [stdout] 34 | } else if new_total > result { [INFO] [stdout] | __________________________________^ [INFO] [stdout] 35 | | return false; [INFO] [stdout] 36 | | } else if rest.len() == 1 { [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] note: same as this [INFO] [stdout] --> src/bin/2024/day7/day7.rs:36:31 [INFO] [stdout] | [INFO] [stdout] 36 | } else if rest.len() == 1 { [INFO] [stdout] | _______________________________^ [INFO] [stdout] 37 | | return false; [INFO] [stdout] 38 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stdout] = note: `#[warn(clippy::if_same_then_else)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day7/day7.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | / return equations [INFO] [stdout] 45 | | .iter() [INFO] [stdout] 46 | | .filter_map(|e| { [INFO] [stdout] 47 | | if check_equation(e.0, 0, Operator::ADD, e.1.as_slice()) [INFO] [stdout] ... | [INFO] [stdout] 53 | | }) [INFO] [stdout] 54 | | .sum(); [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 ~ equations [INFO] [stdout] 45 + .iter() [INFO] [stdout] 46 + .filter_map(|e| { [INFO] [stdout] 47 + if check_equation(e.0, 0, Operator::ADD, e.1.as_slice()) [INFO] [stdout] 48 + || check_equation(e.0, 0, Operator::MUL, e.1.as_slice()) [INFO] [stdout] 49 + { [INFO] [stdout] 50 + return Some(e.0); [INFO] [stdout] 51 + } [INFO] [stdout] 52 + return None; [INFO] [stdout] 53 + }) [INFO] [stdout] 54 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day7/day7.rs:43:21 [INFO] [stdout] | [INFO] [stdout] 43 | fn part1(equations: &Vec<(u64, Vec)>) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 43 - fn part1(equations: &Vec<(u64, Vec)>) -> u64 { [INFO] [stdout] 43 + fn part1(equations: &[(u64, Vec)]) -> u64 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day7/day7.rs:52:13 [INFO] [stdout] | [INFO] [stdout] 52 | return None; [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 - return None; [INFO] [stdout] 52 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day7/day7.rs:79:5 [INFO] [stdout] | [INFO] [stdout] 79 | / return check_equation_2(result, new_total, Operator::ADD, &rest[1..]) [INFO] [stdout] 80 | | || check_equation_2(result, new_total, Operator::MUL, &rest[1..]) [INFO] [stdout] 81 | | || check_equation_2(result, new_total, Operator::CONCAT, &rest[1..]); [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] 79 ~ check_equation_2(result, new_total, Operator::ADD, &rest[1..]) [INFO] [stdout] 80 + || check_equation_2(result, new_total, Operator::MUL, &rest[1..]) [INFO] [stdout] 81 ~ || check_equation_2(result, new_total, Operator::CONCAT, &rest[1..]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: needlessly taken reference of both operands [INFO] [stdout] --> src/bin/2024/day7/day7.rs:63:21 [INFO] [stdout] | [INFO] [stdout] 63 | assert!(&rest[0].to_string().parse::().unwrap() == &rest[0]); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#op_ref [INFO] [stdout] = note: `#[warn(clippy::op_ref)]` on by default [INFO] [stdout] help: use the values directly [INFO] [stdout] | [INFO] [stdout] 63 - assert!(&rest[0].to_string().parse::().unwrap() == &rest[0]); [INFO] [stdout] 63 + assert!(rest[0].to_string().parse::().unwrap() == rest[0]); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day1/day1.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | / return input [INFO] [stdout] 7 | | .lines() [INFO] [stdout] 8 | | .map(|line| { [INFO] [stdout] 9 | | let parts: Vec<&str> = line.split_whitespace().collect(); [INFO] [stdout] ... | [INFO] [stdout] 14 | | }) [INFO] [stdout] 15 | | .unzip(); [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] 6 ~ input [INFO] [stdout] 7 + .lines() [INFO] [stdout] 8 + .map(|line| { [INFO] [stdout] 9 + let parts: Vec<&str> = line.split_whitespace().collect(); [INFO] [stdout] 10 + ( [INFO] [stdout] 11 + parts[0].parse::().unwrap(), [INFO] [stdout] 12 + parts[1].parse::().unwrap(), [INFO] [stdout] 13 + ) [INFO] [stdout] 14 + }) [INFO] [stdout] 15 ~ .unzip() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day1/day1.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | / return iter::zip(sorted(left), sorted(right)) [INFO] [stdout] 20 | | .map(|(l, r)| (l - r).abs()) [INFO] [stdout] 21 | | .sum(); [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] 19 ~ iter::zip(sorted(left), sorted(right)) [INFO] [stdout] 20 + .map(|(l, r)| (l - r).abs()) [INFO] [stdout] 21 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day1/day1.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | / return left [INFO] [stdout] 27 | | .iter() [INFO] [stdout] 28 | | .map(|v| v * (*right_freq.get(v).unwrap_or(&0) as i32)) [INFO] [stdout] 29 | | .sum(); [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 ~ left [INFO] [stdout] 27 + .iter() [INFO] [stdout] 28 + .map(|v| v * (*right_freq.get(v).unwrap_or(&0) as i32)) [INFO] [stdout] 29 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day1/day1.rs:24:16 [INFO] [stdout] | [INFO] [stdout] 24 | fn part2(left: &Vec, right: &Vec) -> i32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 24 - fn part2(left: &Vec, right: &Vec) -> i32 { [INFO] [stdout] 24 + fn part2(left: &[i32], right: &Vec) -> i32 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day1/day1.rs:24:34 [INFO] [stdout] | [INFO] [stdout] 24 | fn part2(left: &Vec, right: &Vec) -> i32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 24 - fn part2(left: &Vec, right: &Vec) -> i32 { [INFO] [stdout] 24 + fn part2(left: &Vec, right: &[i32]) -> i32 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day7/day7.rs:85:5 [INFO] [stdout] | [INFO] [stdout] 85 | / return equations [INFO] [stdout] 86 | | .iter() [INFO] [stdout] 87 | | .filter_map(|e| { [INFO] [stdout] 88 | | if check_equation_2(e.0, e.1[0], Operator::ADD, &e.1[1..]) [INFO] [stdout] ... | [INFO] [stdout] 95 | | }) [INFO] [stdout] 96 | | .sum(); [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] 85 ~ equations [INFO] [stdout] 86 + .iter() [INFO] [stdout] 87 + .filter_map(|e| { [INFO] [stdout] 88 + if check_equation_2(e.0, e.1[0], Operator::ADD, &e.1[1..]) [INFO] [stdout] 89 + || check_equation_2(e.0, e.1[0], Operator::MUL, &e.1[1..]) [INFO] [stdout] 90 + || check_equation_2(e.0, e.1[0], Operator::CONCAT, &e.1[1..]) [INFO] [stdout] 91 + { [INFO] [stdout] 92 + return Some(e.0); [INFO] [stdout] 93 + } [INFO] [stdout] 94 + return None; [INFO] [stdout] 95 + }) [INFO] [stdout] 96 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day7/day7.rs:84:21 [INFO] [stdout] | [INFO] [stdout] 84 | fn part2(equations: &Vec<(u64, Vec)>) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 84 - fn part2(equations: &Vec<(u64, Vec)>) -> u64 { [INFO] [stdout] 84 + fn part2(equations: &[(u64, Vec)]) -> u64 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day7/day7.rs:94:13 [INFO] [stdout] | [INFO] [stdout] 94 | return None; [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] 94 - return None; [INFO] [stdout] 94 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day2/day2.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | / return input [INFO] [stdout] 7 | | .split(",") [INFO] [stdout] 8 | | .map(|s| { [INFO] [stdout] 9 | | let (start, end) = s.split("-").collect_tuple().unwrap(); [INFO] [stdout] 10 | | return start.parse().unwrap()..=end.parse().unwrap(); [INFO] [stdout] 11 | | }) [INFO] [stdout] 12 | | .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] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 6 ~ input [INFO] [stdout] 7 + .split(",") [INFO] [stdout] 8 + .map(|s| { [INFO] [stdout] 9 + let (start, end) = s.split("-").collect_tuple().unwrap(); [INFO] [stdout] 10 + return start.parse().unwrap()..=end.parse().unwrap(); [INFO] [stdout] 11 + }) [INFO] [stdout] 12 ~ .collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter` [INFO] [stdout] --> src/bin/2025/day4/day4.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::iter; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day2/day2.rs:10:13 [INFO] [stdout] | [INFO] [stdout] 10 | return start.parse().unwrap()..=end.parse().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] 10 - return start.parse().unwrap()..=end.parse().unwrap(); [INFO] [stdout] 10 + start.parse().unwrap()..=end.parse().unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day2/day2.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | / return ranges.iter().fold(0, |acc, r| { [INFO] [stdout] 17 | | let mut count = 0; [INFO] [stdout] 18 | | for val in r.clone().into_iter() { [INFO] [stdout] 19 | | let val_str = val.to_string(); [INFO] [stdout] ... | [INFO] [stdout] 25 | | return acc + count; [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] 16 ~ ranges.iter().fold(0, |acc, r| { [INFO] [stdout] 17 + let mut count = 0; [INFO] [stdout] 18 + for val in r.clone().into_iter() { [INFO] [stdout] 19 + let val_str = val.to_string(); [INFO] [stdout] 20 + let val_split = val_str.split_at(val_str.len() / 2); [INFO] [stdout] 21 + if val_split.0 == val_split.1 { [INFO] [stdout] 22 + count += val; [INFO] [stdout] 23 + } [INFO] [stdout] 24 + } [INFO] [stdout] 25 + return acc + count; [INFO] [stdout] 26 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2025/day2/day2.rs:15:18 [INFO] [stdout] | [INFO] [stdout] 15 | fn part1(ranges: &Vec>) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 15 - fn part1(ranges: &Vec>) -> u64 { [INFO] [stdout] 15 + fn part1(ranges: &[RangeInclusive]) -> u64 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day2/day2.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | return acc + count; [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 acc + count; [INFO] [stdout] 25 + acc + count [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `itertools` [INFO] [stdout] --> src/bin/2025/day4/day4.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use itertools::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::ops::RangeInclusive` [INFO] [stdout] --> src/bin/2025/day2/day2.rs:18:20 [INFO] [stdout] | [INFO] [stdout] 18 | for val in r.clone().into_iter() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into_iter()`: `r.clone()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] = note: `#[warn(clippy::useless_conversion)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day2/day2.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | / return ranges.iter().fold(0, |acc, r| { [INFO] [stdout] 31 | | let mut count = 0; [INFO] [stdout] 32 | | for val in r.clone().into_iter() { [INFO] [stdout] 33 | | let val_str = val.to_string(); [INFO] [stdout] ... | [INFO] [stdout] 44 | | return acc + count; [INFO] [stdout] 45 | | }); [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] 30 ~ ranges.iter().fold(0, |acc, r| { [INFO] [stdout] 31 + let mut count = 0; [INFO] [stdout] 32 + for val in r.clone().into_iter() { [INFO] [stdout] 33 + let val_str = val.to_string(); [INFO] [stdout] 34 + for i in (1..=val_str.len() / 2).rev().into_iter() { [INFO] [stdout] 35 + let val_split = val_str.split_at(i).0; [INFO] [stdout] 36 + let rep_count = val_str.match_indices(val_split).collect::>().len(); [INFO] [stdout] 37 + let req_count = val_str.len().div_ceil(i); [INFO] [stdout] 38 + if rep_count == req_count { [INFO] [stdout] 39 + count += val; [INFO] [stdout] 40 + break; [INFO] [stdout] 41 + } [INFO] [stdout] 42 + } [INFO] [stdout] 43 + } [INFO] [stdout] 44 + return acc + count; [INFO] [stdout] 45 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2025/day2/day2.rs:29:18 [INFO] [stdout] | [INFO] [stdout] 29 | fn part2(ranges: &Vec>) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 29 - fn part2(ranges: &Vec>) -> u64 { [INFO] [stdout] 29 + fn part2(ranges: &[RangeInclusive]) -> u64 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day2/day2.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 44 | return acc + count; [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 acc + count; [INFO] [stdout] 44 + acc + count [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::ops::RangeInclusive` [INFO] [stdout] --> src/bin/2025/day2/day2.rs:32:20 [INFO] [stdout] | [INFO] [stdout] 32 | for val in r.clone().into_iter() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into_iter()`: `r.clone()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::iter::Rev>` [INFO] [stdout] --> src/bin/2025/day2/day2.rs:34:22 [INFO] [stdout] | [INFO] [stdout] 34 | for i in (1..=val_str.len() / 2).rev().into_iter() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into_iter()`: `(1..=val_str.len() / 2).rev()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day8/day8.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | return (width as u32, height as u32, antenna_map); [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] 23 - return (width as u32, height as u32, antenna_map); [INFO] [stdout] 23 + (width as u32, height as u32, antenna_map) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this import is redundant [INFO] [stdout] --> src/bin/2024/day6/day6.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | use util; [INFO] [stdout] | ^^^^^^^^^ help: remove it entirely [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_component_path_imports [INFO] [stdout] = note: `#[warn(clippy::single_component_path_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert` to construct default value [INFO] [stdout] --> src/bin/2024/day8/day8.rs:19:18 [INFO] [stdout] | [INFO] [stdout] 19 | .or_insert(Vec::new()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] = note: `#[warn(clippy::unwrap_or_default)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day8/day8.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | return !(node.x < 0 || node.x >= *height as isize || node.y < 0 || node.y >= *width as isize); [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 !(node.x < 0 || node.x >= *height as isize || node.y < 0 || node.y >= *width as isize); [INFO] [stdout] 27 + !(node.x < 0 || node.x >= *height as isize || node.y < 0 || node.y >= *width as isize) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day3/day3.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | / return input [INFO] [stdout] 5 | | .lines() [INFO] [stdout] 6 | | .map(|l| l.chars().map(|c| c.to_digit(10).unwrap()).collect()) [INFO] [stdout] 7 | | .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] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 4 ~ input [INFO] [stdout] 5 + .lines() [INFO] [stdout] 6 + .map(|l| l.chars().map(|c| c.to_digit(10).unwrap()).collect()) [INFO] [stdout] 7 ~ .collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day8/day8.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 46 | return antinodes.len() as u32; [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] 46 - return antinodes.len() as u32; [INFO] [stdout] 46 + antinodes.len() as u32 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day8/day8.rs:69:5 [INFO] [stdout] | [INFO] [stdout] 69 | return antinodes.len() as u32; [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] 69 - return antinodes.len() as u32; [INFO] [stdout] 69 + antinodes.len() as u32 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day3/day3.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | / return banks [INFO] [stdout] 12 | | .iter() [INFO] [stdout] 13 | | .map(|batts| { [INFO] [stdout] 14 | | let mut max_tens = 0; [INFO] [stdout] ... | [INFO] [stdout] 34 | | }) [INFO] [stdout] 35 | | .sum(); [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 ~ banks [INFO] [stdout] 12 + .iter() [INFO] [stdout] 13 + .map(|batts| { [INFO] [stdout] 14 + let mut max_tens = 0; [INFO] [stdout] 15 + let mut tens_idx = 0; [INFO] [stdout] 16 + let mut max_units = 0; [INFO] [stdout] 17 + for (i, y) in batts.iter().enumerate().take(batts.len() - 1) { [INFO] [stdout] 18 + if *y > max_tens { [INFO] [stdout] 19 + tens_idx = i; [INFO] [stdout] 20 + max_tens = *y; [INFO] [stdout] 21 + } [INFO] [stdout] 22 + } [INFO] [stdout] 23 + // println!("Skipping first {tens_idx} for units."); [INFO] [stdout] 24 + for y in batts.iter().skip(tens_idx + 1) { [INFO] [stdout] 25 + if *y > max_units { [INFO] [stdout] 26 + max_units = *y; [INFO] [stdout] 27 + } [INFO] [stdout] 28 + } [INFO] [stdout] 29 + // println!( [INFO] [stdout] 30 + // "Found {max_tens} & {max_units} -> {}", [INFO] [stdout] 31 + // max_tens * 10 + max_units [INFO] [stdout] 32 + // ); [INFO] [stdout] 33 + return max_tens * 10 + max_units; [INFO] [stdout] 34 + }) [INFO] [stdout] 35 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2025/day3/day3.rs:10:17 [INFO] [stdout] | [INFO] [stdout] 10 | fn part1(banks: &Vec>) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 10 - fn part1(banks: &Vec>) -> u32 { [INFO] [stdout] 10 + fn part1(banks: &[Vec]) -> u32 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day3/day3.rs:33:13 [INFO] [stdout] | [INFO] [stdout] 33 | return max_tens * 10 + max_units; [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 max_tens * 10 + max_units; [INFO] [stdout] 33 + max_tens * 10 + max_units [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day3/day3.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | / return banks [INFO] [stdout] 41 | | .iter() [INFO] [stdout] 42 | | .map(|batts| { [INFO] [stdout] 43 | | let mut bank_total: u64 = 0; [INFO] [stdout] ... | [INFO] [stdout] 60 | | }) [INFO] [stdout] 61 | | .sum(); [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] 40 ~ banks [INFO] [stdout] 41 + .iter() [INFO] [stdout] 42 + .map(|batts| { [INFO] [stdout] 43 + let mut bank_total: u64 = 0; [INFO] [stdout] 44 + let mut last_index: isize = -1; [INFO] [stdout] 45 + for i in 0..digits { [INFO] [stdout] 46 + let remaining = digits - i; [INFO] [stdout] 47 + let max = batts [INFO] [stdout] 48 + .iter() [INFO] [stdout] 49 + .enumerate() [INFO] [stdout] 50 + .skip((last_index + 1) as usize) [INFO] [stdout] 51 + .take(batts.len() - remaining - (last_index as usize)) [INFO] [stdout] 52 + .max_by(|a, b| { [INFO] [stdout] 53 + return a.1.cmp(b.1).then_with(|| b.0.cmp(&a.0)); [INFO] [stdout] 54 + }) [INFO] [stdout] 55 + .unwrap(); [INFO] [stdout] 56 + last_index = max.0 as isize; [INFO] [stdout] 57 + bank_total += *max.1 as u64 * 10u64.pow(remaining as u32 - 1) [INFO] [stdout] 58 + } [INFO] [stdout] 59 + return bank_total; [INFO] [stdout] 60 + }) [INFO] [stdout] 61 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2025/day3/day3.rs:38:17 [INFO] [stdout] | [INFO] [stdout] 38 | fn part2(banks: &Vec>) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 38 - fn part2(banks: &Vec>) -> u64 { [INFO] [stdout] 38 + fn part2(banks: &[Vec]) -> u64 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day3/day3.rs:59:13 [INFO] [stdout] | [INFO] [stdout] 59 | return bank_total; [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 bank_total; [INFO] [stdout] 59 + bank_total [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day3/day3.rs:53:25 [INFO] [stdout] | [INFO] [stdout] 53 | return a.1.cmp(b.1).then_with(|| b.0.cmp(&a.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] 53 - return a.1.cmp(b.1).then_with(|| b.0.cmp(&a.0)); [INFO] [stdout] 53 + a.1.cmp(b.1).then_with(|| b.0.cmp(&a.0)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day1/day1.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | / return input [INFO] [stdout] 7 | | .lines() [INFO] [stdout] 8 | | .map(|line| { [INFO] [stdout] 9 | | let parts: Vec<&str> = line.split_whitespace().collect(); [INFO] [stdout] ... | [INFO] [stdout] 14 | | }) [INFO] [stdout] 15 | | .unzip(); [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] 6 ~ input [INFO] [stdout] 7 + .lines() [INFO] [stdout] 8 + .map(|line| { [INFO] [stdout] 9 + let parts: Vec<&str> = line.split_whitespace().collect(); [INFO] [stdout] 10 + ( [INFO] [stdout] 11 + parts[0].parse::().unwrap(), [INFO] [stdout] 12 + parts[1].parse::().unwrap(), [INFO] [stdout] 13 + ) [INFO] [stdout] 14 + }) [INFO] [stdout] 15 ~ .unzip() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day13/day13.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | / return input [INFO] [stdout] 22 | | .split("\n\n") [INFO] [stdout] 23 | | .map(|m| { [INFO] [stdout] 24 | | let lines: Vec<&str> = m.lines().collect(); [INFO] [stdout] ... | [INFO] [stdout] 37 | | }) [INFO] [stdout] 38 | | .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] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 21 ~ input [INFO] [stdout] 22 + .split("\n\n") [INFO] [stdout] 23 + .map(|m| { [INFO] [stdout] 24 + let lines: Vec<&str> = m.lines().collect(); [INFO] [stdout] 25 + let re = Regex::new(r"(?:\+|=)(\d+),.+(?:\+|=)(\d+)").unwrap(); [INFO] [stdout] 26 + let (_, [ax_s, ay_s]) = re.captures(lines[0]).unwrap().extract(); [INFO] [stdout] 27 + let (_, [bx_s, by_s]) = re.captures(lines[1]).unwrap().extract(); [INFO] [stdout] 28 + let (_, [px_s, py_s]) = re.captures(lines[2]).unwrap().extract(); [INFO] [stdout] 29 + return Machine::new( [INFO] [stdout] 30 + ax_s.parse::().unwrap(), [INFO] [stdout] 31 + ay_s.parse::().unwrap(), [INFO] [stdout] 32 + bx_s.parse::().unwrap(), [INFO] [stdout] 33 + by_s.parse::().unwrap(), [INFO] [stdout] 34 + px_s.parse::().unwrap(), [INFO] [stdout] 35 + py_s.parse::().unwrap(), [INFO] [stdout] 36 + ); [INFO] [stdout] 37 + }) [INFO] [stdout] 38 ~ .collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day13/day13.rs:29:13 [INFO] [stdout] | [INFO] [stdout] 29 | / return Machine::new( [INFO] [stdout] 30 | | ax_s.parse::().unwrap(), [INFO] [stdout] 31 | | ay_s.parse::().unwrap(), [INFO] [stdout] 32 | | bx_s.parse::().unwrap(), [INFO] [stdout] ... | [INFO] [stdout] 35 | | py_s.parse::().unwrap(), [INFO] [stdout] 36 | | ); [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 ~ Machine::new( [INFO] [stdout] 30 + ax_s.parse::().unwrap(), [INFO] [stdout] 31 + ay_s.parse::().unwrap(), [INFO] [stdout] 32 + bx_s.parse::().unwrap(), [INFO] [stdout] 33 + by_s.parse::().unwrap(), [INFO] [stdout] 34 + px_s.parse::().unwrap(), [INFO] [stdout] 35 + py_s.parse::().unwrap(), [INFO] [stdout] 36 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day13/day13.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | / return machines [INFO] [stdout] 43 | | .iter() [INFO] [stdout] 44 | | .map(|m| { [INFO] [stdout] ... | [INFO] [stdout] 59 | | }) [INFO] [stdout] 60 | | .sum(); [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] 42 ~ machines [INFO] [stdout] 43 + .iter() [INFO] [stdout] 44 + .map(|m| { [INFO] [stdout] 45 + // a = button_a.0, b = button_b.0, c = button_a.1, d = button_b.1 [INFO] [stdout] 46 + let det = m.button_a.0 * m.button_b.1 - m.button_b.0 * m.button_a.1; [INFO] [stdout] 47 + let a = (m.button_b.1 * m.prize.0 - m.button_b.0 * m.prize.1) / det; [INFO] [stdout] 48 + let b = (m.button_a.0 * m.prize.1 - m.button_a.1 * m.prize.0) / det; [INFO] [stdout] 49 + // println!("{:?}, {:?}: {a}, {b}", m.prize.0, m.prize.1); [INFO] [stdout] 50 + if ( [INFO] [stdout] 51 + m.button_a.0 * a + m.button_b.0 * b, [INFO] [stdout] 52 + m.button_a.1 * a + m.button_b.1 * b, [INFO] [stdout] 53 + ) != (m.prize.0, m.prize.1) [INFO] [stdout] 54 + { [INFO] [stdout] 55 + return 0; [INFO] [stdout] 56 + } [INFO] [stdout] 57 + [INFO] [stdout] 58 + return (a as u64) * 3 + (b as u64); [INFO] [stdout] 59 + }) [INFO] [stdout] 60 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day1/day1.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | / return iter::zip(sorted(left), sorted(right)) [INFO] [stdout] 20 | | .map(|(l, r)| (l - r).abs()) [INFO] [stdout] 21 | | .sum(); [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] 19 ~ iter::zip(sorted(left), sorted(right)) [INFO] [stdout] 20 + .map(|(l, r)| (l - r).abs()) [INFO] [stdout] 21 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day1/day1.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | / return left [INFO] [stdout] 27 | | .iter() [INFO] [stdout] 28 | | .map(|v| v * (*right_freq.get(v).unwrap_or(&0) as i32)) [INFO] [stdout] 29 | | .sum(); [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 ~ left [INFO] [stdout] 27 + .iter() [INFO] [stdout] 28 + .map(|v| v * (*right_freq.get(v).unwrap_or(&0) as i32)) [INFO] [stdout] 29 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day13/day13.rs:41:20 [INFO] [stdout] | [INFO] [stdout] 41 | fn part1(machines: &Vec) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 41 - fn part1(machines: &Vec) -> u64 { [INFO] [stdout] 41 + fn part1(machines: &[Machine]) -> u64 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day13/day13.rs:58:13 [INFO] [stdout] | [INFO] [stdout] 58 | return (a as u64) * 3 + (b as u64); [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] 58 - return (a as u64) * 3 + (b as u64); [INFO] [stdout] 58 + (a as u64) * 3 + (b as u64) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day13/day13.rs:64:5 [INFO] [stdout] | [INFO] [stdout] 64 | / return machines [INFO] [stdout] 65 | | .iter() [INFO] [stdout] 66 | | .map(|m| { [INFO] [stdout] 67 | | let prize_x = m.prize.0 + 10000000000000; [INFO] [stdout] ... | [INFO] [stdout] 83 | | }) [INFO] [stdout] 84 | | .sum(); [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 ~ machines [INFO] [stdout] 65 + .iter() [INFO] [stdout] 66 + .map(|m| { [INFO] [stdout] 67 + let prize_x = m.prize.0 + 10000000000000; [INFO] [stdout] 68 + let prize_y = m.prize.1 + 10000000000000; [INFO] [stdout] 69 + // a = button_a.0, b = button_b.0, c = button_a.1, d = button_b.1 [INFO] [stdout] 70 + let det = m.button_a.0 * m.button_b.1 - m.button_b.0 * m.button_a.1; [INFO] [stdout] 71 + let a = (m.button_b.1 * prize_x - m.button_b.0 * prize_y) / det; [INFO] [stdout] 72 + let b = (m.button_a.0 * prize_y - m.button_a.1 * prize_x) / det; [INFO] [stdout] 73 + // println!("{:?}, {:?}: {a}, {b}", m.prize.0, m.prize.1); [INFO] [stdout] 74 + if ( [INFO] [stdout] 75 + m.button_a.0 * a + m.button_b.0 * b, [INFO] [stdout] 76 + m.button_a.1 * a + m.button_b.1 * b, [INFO] [stdout] 77 + ) != (prize_x, prize_y) [INFO] [stdout] 78 + { [INFO] [stdout] 79 + return 0; [INFO] [stdout] 80 + } [INFO] [stdout] 81 + [INFO] [stdout] 82 + return (a as u64) * 3 + (b as u64); [INFO] [stdout] 83 + }) [INFO] [stdout] 84 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day13/day13.rs:63:20 [INFO] [stdout] | [INFO] [stdout] 63 | fn part2(machines: &Vec) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 63 - fn part2(machines: &Vec) -> u64 { [INFO] [stdout] 63 + fn part2(machines: &[Machine]) -> u64 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day13/day13.rs:82:13 [INFO] [stdout] | [INFO] [stdout] 82 | return (a as u64) * 3 + (b as u64); [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] 82 - return (a as u64) * 3 + (b as u64); [INFO] [stdout] 82 + (a as u64) * 3 + (b as u64) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day1/day1.rs:24:16 [INFO] [stdout] | [INFO] [stdout] 24 | fn part2(left: &Vec, right: &Vec) -> i32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 24 - fn part2(left: &Vec, right: &Vec) -> i32 { [INFO] [stdout] 24 + fn part2(left: &[i32], right: &Vec) -> i32 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day1/day1.rs:24:34 [INFO] [stdout] | [INFO] [stdout] 24 | fn part2(left: &Vec, right: &Vec) -> i32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 24 - fn part2(left: &Vec, right: &Vec) -> i32 { [INFO] [stdout] 24 + fn part2(left: &Vec, right: &[i32]) -> i32 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day6/day6.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | / return ( [INFO] [stdout] 18 | | input [INFO] [stdout] 19 | | .lines() [INFO] [stdout] 20 | | .enumerate() [INFO] [stdout] ... | [INFO] [stdout] 36 | | guard_pos, [INFO] [stdout] 37 | | ); [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] 17 ~ ( [INFO] [stdout] 18 + input [INFO] [stdout] 19 + .lines() [INFO] [stdout] 20 + .enumerate() [INFO] [stdout] 21 + .map(|(i, l)| { [INFO] [stdout] 22 + l.chars() [INFO] [stdout] 23 + .enumerate() [INFO] [stdout] 24 + .map(|(j, c)| match c { [INFO] [stdout] 25 + '.' => TileType::Empty, [INFO] [stdout] 26 + '#' => TileType::Blocked, [INFO] [stdout] 27 + '^' => { [INFO] [stdout] 28 + guard_pos = Point2D::new(i as isize, j as isize); [INFO] [stdout] 29 + return TileType::Visited; [INFO] [stdout] 30 + } [INFO] [stdout] 31 + _ => panic!("unexpected tile type"), [INFO] [stdout] 32 + }) [INFO] [stdout] 33 + .collect() [INFO] [stdout] 34 + }) [INFO] [stdout] 35 + .collect(), [INFO] [stdout] 36 + guard_pos, [INFO] [stdout] 37 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day6/day6.rs:29:29 [INFO] [stdout] | [INFO] [stdout] 29 | ... return TileType::Visited; [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 - return TileType::Visited; [INFO] [stdout] 29 + TileType::Visited [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day6/day6.rs:55:5 [INFO] [stdout] | [INFO] [stdout] 55 | / return ( [INFO] [stdout] 56 | | tilemap [INFO] [stdout] 57 | | .iter() [INFO] [stdout] 58 | | .flatten() [INFO] [stdout] ... | [INFO] [stdout] 61 | | visited_points, [INFO] [stdout] 62 | | ); [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] 55 ~ ( [INFO] [stdout] 56 + tilemap [INFO] [stdout] 57 + .iter() [INFO] [stdout] 58 + .flatten() [INFO] [stdout] 59 + .filter(|t| **t == TileType::Visited) [INFO] [stdout] 60 + .count() as i32, [INFO] [stdout] 61 + visited_points, [INFO] [stdout] 62 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day6/day6.rs:118:5 [INFO] [stdout] | [INFO] [stdout] 118 | return count; [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] 118 - return count; [INFO] [stdout] 118 + count [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day6/day6.rs:66:18 [INFO] [stdout] | [INFO] [stdout] 66 | inp_tilemap: &Vec>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 66 ~ inp_tilemap: &[Vec], [INFO] [stdout] 67 | inp_guard_pos: Point2D, [INFO] [stdout] ... [INFO] [stdout] 71 | for point in visited_points { [INFO] [stdout] 72 ~ let mut tilemap = inp_tilemap.to_owned(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `Point2D` which implements the `Copy` trait [INFO] [stdout] --> src/bin/2024/day6/day6.rs:73:29 [INFO] [stdout] | [INFO] [stdout] 73 | let mut guard_pos = inp_guard_pos.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `inp_guard_pos` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] = note: `#[warn(clippy::clone_on_copy)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day4/day4.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | return rolls; [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] 16 - return rolls; [INFO] [stdout] 16 + rolls [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day4/day4.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | return count; [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 count; [INFO] [stdout] 32 + count [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day4/day4.rs:58:5 [INFO] [stdout] | [INFO] [stdout] 58 | return count; [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] 58 - return count; [INFO] [stdout] 58 + count [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/bin/2025/day4/day4.rs:52:12 [INFO] [stdout] | [INFO] [stdout] 52 | if rem_rolls.len() == 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `rem_rolls.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: this import is redundant [INFO] [stdout] --> src/bin/2024/day6/day6.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | use util; [INFO] [stdout] | ^^^^^^^^^ help: remove it entirely [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_component_path_imports [INFO] [stdout] = note: `#[warn(clippy::single_component_path_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `itertools` [INFO] [stdout] --> src/bin/2024/day14/day14.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use itertools::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day14/day14.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | / return input [INFO] [stdout] 10 | | .lines() [INFO] [stdout] 11 | | .map(|l| { [INFO] [stdout] 12 | | let (_, [px, py, vx, vy]) = re.captures(l).unwrap().extract(); [INFO] [stdout] ... | [INFO] [stdout] 17 | | }) [INFO] [stdout] 18 | | .unzip(); [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 ~ input [INFO] [stdout] 10 + .lines() [INFO] [stdout] 11 + .map(|l| { [INFO] [stdout] 12 + let (_, [px, py, vx, vy]) = re.captures(l).unwrap().extract(); [INFO] [stdout] 13 + return ( [INFO] [stdout] 14 + Point2D::new(px.parse().unwrap(), py.parse().unwrap()), [INFO] [stdout] 15 + Point2D::new(vx.parse().unwrap(), vy.parse().unwrap()), [INFO] [stdout] 16 + ); [INFO] [stdout] 17 + }) [INFO] [stdout] 18 ~ .unzip() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day14/day14.rs:13:13 [INFO] [stdout] | [INFO] [stdout] 13 | / return ( [INFO] [stdout] 14 | | Point2D::new(px.parse().unwrap(), py.parse().unwrap()), [INFO] [stdout] 15 | | Point2D::new(vx.parse().unwrap(), vy.parse().unwrap()), [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 ~ ( [INFO] [stdout] 14 + Point2D::new(px.parse().unwrap(), py.parse().unwrap()), [INFO] [stdout] 15 + Point2D::new(vx.parse().unwrap(), vy.parse().unwrap()), [INFO] [stdout] 16 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day14/day14.rs:47:5 [INFO] [stdout] | [INFO] [stdout] 47 | return quadrant_count.0 * quadrant_count.1 * quadrant_count.2 * quadrant_count.3; [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] 47 - return quadrant_count.0 * quadrant_count.1 * quadrant_count.2 * quadrant_count.3; [INFO] [stdout] 47 + quadrant_count.0 * quadrant_count.1 * quadrant_count.2 * quadrant_count.3 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day14/day14.rs:21:48 [INFO] [stdout] | [INFO] [stdout] 21 | fn part1(positions: &Vec, velocities: &Vec, size: &(isize, isize)) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 21 - fn part1(positions: &Vec, velocities: &Vec, size: &(isize, isize)) -> u64 { [INFO] [stdout] 21 + fn part1(positions: &Vec, velocities: &[Point2D], size: &(isize, isize)) -> u64 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day14/day14.rs:50:21 [INFO] [stdout] | [INFO] [stdout] 50 | fn print_grid(grid: &Vec>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 50 - fn print_grid(grid: &Vec>) { [INFO] [stdout] 50 + fn print_grid(grid: &[Vec]) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day14/day14.rs:71:5 [INFO] [stdout] | [INFO] [stdout] 71 | return; [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] 70 - } [INFO] [stdout] 71 - return; [INFO] [stdout] 70 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day14/day14.rs:55:48 [INFO] [stdout] | [INFO] [stdout] 55 | fn part2(positions: &Vec, velocities: &Vec, size: &(isize, isize)) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 55 - fn part2(positions: &Vec, velocities: &Vec, size: &(isize, isize)) { [INFO] [stdout] 55 + fn part2(positions: &Vec, velocities: &[Point2D], size: &(isize, isize)) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this import is redundant [INFO] [stdout] --> src/bin/2024/day15/day15.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | use util; [INFO] [stdout] | ^^^^^^^^^ help: remove it entirely [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_component_path_imports [INFO] [stdout] = note: `#[warn(clippy::single_component_path_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `itertools` [INFO] [stdout] --> src/bin/2024/day14/day14.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use itertools::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stdout] --> src/bin/2024/day9/day9.rs:3:26 [INFO] [stdout] | [INFO] [stdout] 3 | fn parse(input: &str) -> (Vec, Vec<(usize, u32)>, Vec<(usize, u32)>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stdout] = note: `#[warn(clippy::type_complexity)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day9/day9.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | return (disk, free_space, files); [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] 16 - return (disk, free_space, files); [INFO] [stdout] 16 + (disk, free_space, files) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day9/day9.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | / return new_disk [INFO] [stdout] 42 | | .iter() [INFO] [stdout] 43 | | .enumerate() [INFO] [stdout] 44 | | .map(|(i, v)| if *v != -1 { i as u64 * *v as u64 } else { 0 }) [INFO] [stdout] 45 | | .sum(); [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] 41 ~ new_disk [INFO] [stdout] 42 + .iter() [INFO] [stdout] 43 + .enumerate() [INFO] [stdout] 44 + .map(|(i, v)| if *v != -1 { i as u64 * *v as u64 } else { 0 }) [INFO] [stdout] 45 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day9/day9.rs:19:16 [INFO] [stdout] | [INFO] [stdout] 19 | fn part1(disk: &Vec) -> u64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 19 ~ fn part1(disk: &[i32]) -> u64 { [INFO] [stdout] 20 ~ let mut new_disk = disk.to_owned(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day14/day14.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | / return input [INFO] [stdout] 10 | | .lines() [INFO] [stdout] 11 | | .map(|l| { [INFO] [stdout] 12 | | let (_, [px, py, vx, vy]) = re.captures(l).unwrap().extract(); [INFO] [stdout] ... | [INFO] [stdout] 17 | | }) [INFO] [stdout] 18 | | .unzip(); [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 ~ input [INFO] [stdout] 10 + .lines() [INFO] [stdout] 11 + .map(|l| { [INFO] [stdout] 12 + let (_, [px, py, vx, vy]) = re.captures(l).unwrap().extract(); [INFO] [stdout] 13 + return ( [INFO] [stdout] 14 + Point2D::new(px.parse().unwrap(), py.parse().unwrap()), [INFO] [stdout] 15 + Point2D::new(vx.parse().unwrap(), vy.parse().unwrap()), [INFO] [stdout] 16 + ); [INFO] [stdout] 17 + }) [INFO] [stdout] 18 ~ .unzip() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day14/day14.rs:13:13 [INFO] [stdout] | [INFO] [stdout] 13 | / return ( [INFO] [stdout] 14 | | Point2D::new(px.parse().unwrap(), py.parse().unwrap()), [INFO] [stdout] 15 | | Point2D::new(vx.parse().unwrap(), vy.parse().unwrap()), [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 ~ ( [INFO] [stdout] 14 + Point2D::new(px.parse().unwrap(), py.parse().unwrap()), [INFO] [stdout] 15 + Point2D::new(vx.parse().unwrap(), vy.parse().unwrap()), [INFO] [stdout] 16 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day9/day9.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | / return new_files [INFO] [stdout] 81 | | .iter() [INFO] [stdout] 82 | | .enumerate() [INFO] [stdout] 83 | | .map(|(id, (pos, len))| { [INFO] [stdout] ... | [INFO] [stdout] 89 | | }) [INFO] [stdout] 90 | | .sum(); [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] 80 ~ new_files [INFO] [stdout] 81 + .iter() [INFO] [stdout] 82 + .enumerate() [INFO] [stdout] 83 + .map(|(id, (pos, len))| { [INFO] [stdout] 84 + let mut sum: u64 = 0; [INFO] [stdout] 85 + for x in 0..*len { [INFO] [stdout] 86 + sum += (*pos as u64 + x as u64) * id as u64 [INFO] [stdout] 87 + } [INFO] [stdout] 88 + return sum; [INFO] [stdout] 89 + }) [INFO] [stdout] 90 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day9/day9.rs:48:17 [INFO] [stdout] | [INFO] [stdout] 48 | fn part2(files: &Vec<(usize, u32)>, free_space: &Vec<(usize, u32)>) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 48 ~ fn part2(files: &[(usize, u32)], free_space: &Vec<(usize, u32)>) -> u64 { [INFO] [stdout] 49 ~ let mut new_files = files.to_owned(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day9/day9.rs:48:49 [INFO] [stdout] | [INFO] [stdout] 48 | fn part2(files: &Vec<(usize, u32)>, free_space: &Vec<(usize, u32)>) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 48 ~ fn part2(files: &Vec<(usize, u32)>, free_space: &[(usize, u32)]) -> u64 { [INFO] [stdout] 49 | let mut new_files = files.clone(); [INFO] [stdout] 50 ~ let mut new_free_space = free_space.to_owned(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day14/day14.rs:47:5 [INFO] [stdout] | [INFO] [stdout] 47 | return quadrant_count.0 * quadrant_count.1 * quadrant_count.2 * quadrant_count.3; [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] 47 - return quadrant_count.0 * quadrant_count.1 * quadrant_count.2 * quadrant_count.3; [INFO] [stdout] 47 + quadrant_count.0 * quadrant_count.1 * quadrant_count.2 * quadrant_count.3 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day14/day14.rs:21:48 [INFO] [stdout] | [INFO] [stdout] 21 | fn part1(positions: &Vec, velocities: &Vec, size: &(isize, isize)) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 21 - fn part1(positions: &Vec, velocities: &Vec, size: &(isize, isize)) -> u64 { [INFO] [stdout] 21 + fn part1(positions: &Vec, velocities: &[Point2D], size: &(isize, isize)) -> u64 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day9/day9.rs:88:13 [INFO] [stdout] | [INFO] [stdout] 88 | return sum; [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] 88 - return sum; [INFO] [stdout] 88 + sum [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day14/day14.rs:50:21 [INFO] [stdout] | [INFO] [stdout] 50 | fn print_grid(grid: &Vec>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 50 - fn print_grid(grid: &Vec>) { [INFO] [stdout] 50 + fn print_grid(grid: &[Vec]) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day14/day14.rs:71:5 [INFO] [stdout] | [INFO] [stdout] 71 | return; [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] 70 - } [INFO] [stdout] 71 - return; [INFO] [stdout] 70 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day14/day14.rs:55:48 [INFO] [stdout] | [INFO] [stdout] 55 | fn part2(positions: &Vec, velocities: &Vec, size: &(isize, isize)) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 55 - fn part2(positions: &Vec, velocities: &Vec, size: &(isize, isize)) { [INFO] [stdout] 55 + fn part2(positions: &Vec, velocities: &[Point2D], size: &(isize, isize)) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `itertools` [INFO] [stdout] --> src/bin/2024/day15/day15.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use itertools::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day2/day2.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | / return input [INFO] [stdout] 7 | | .split(",") [INFO] [stdout] 8 | | .map(|s| { [INFO] [stdout] 9 | | let (start, end) = s.split("-").collect_tuple().unwrap(); [INFO] [stdout] 10 | | return start.parse().unwrap()..=end.parse().unwrap(); [INFO] [stdout] 11 | | }) [INFO] [stdout] 12 | | .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] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 6 ~ input [INFO] [stdout] 7 + .split(",") [INFO] [stdout] 8 + .map(|s| { [INFO] [stdout] 9 + let (start, end) = s.split("-").collect_tuple().unwrap(); [INFO] [stdout] 10 + return start.parse().unwrap()..=end.parse().unwrap(); [INFO] [stdout] 11 + }) [INFO] [stdout] 12 ~ .collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day2/day2.rs:10:13 [INFO] [stdout] | [INFO] [stdout] 10 | return start.parse().unwrap()..=end.parse().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] 10 - return start.parse().unwrap()..=end.parse().unwrap(); [INFO] [stdout] 10 + start.parse().unwrap()..=end.parse().unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/bin/2024/day15/day15.rs:82:10 [INFO] [stdout] | [INFO] [stdout] 82 | for (i, direction) in directions.iter().enumerate() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day2/day2.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | / return ranges.iter().fold(0, |acc, r| { [INFO] [stdout] 17 | | let mut count = 0; [INFO] [stdout] 18 | | for val in r.clone().into_iter() { [INFO] [stdout] 19 | | let val_str = val.to_string(); [INFO] [stdout] ... | [INFO] [stdout] 25 | | return acc + count; [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] 16 ~ ranges.iter().fold(0, |acc, r| { [INFO] [stdout] 17 + let mut count = 0; [INFO] [stdout] 18 + for val in r.clone().into_iter() { [INFO] [stdout] 19 + let val_str = val.to_string(); [INFO] [stdout] 20 + let val_split = val_str.split_at(val_str.len() / 2); [INFO] [stdout] 21 + if val_split.0 == val_split.1 { [INFO] [stdout] 22 + count += val; [INFO] [stdout] 23 + } [INFO] [stdout] 24 + } [INFO] [stdout] 25 + return acc + count; [INFO] [stdout] 26 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2025/day2/day2.rs:15:18 [INFO] [stdout] | [INFO] [stdout] 15 | fn part1(ranges: &Vec>) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 15 - fn part1(ranges: &Vec>) -> u64 { [INFO] [stdout] 15 + fn part1(ranges: &[RangeInclusive]) -> u64 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day2/day2.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | return acc + count; [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 acc + count; [INFO] [stdout] 25 + acc + count [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day15/day15.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | / return ( [INFO] [stdout] 43 | | Map { [INFO] [stdout] 44 | | robot_position, [INFO] [stdout] 45 | | box_positions, [INFO] [stdout] ... | [INFO] [stdout] 48 | | directions, [INFO] [stdout] 49 | | ); [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] 42 ~ ( [INFO] [stdout] 43 + Map { [INFO] [stdout] 44 + robot_position, [INFO] [stdout] 45 + box_positions, [INFO] [stdout] 46 + wall_positions, [INFO] [stdout] 47 + }, [INFO] [stdout] 48 + directions, [INFO] [stdout] 49 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day15/day15.rs:70:5 [INFO] [stdout] | [INFO] [stdout] 70 | return true; [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] 70 - return true; [INFO] [stdout] 70 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day15/day15.rs:114:5 [INFO] [stdout] | [INFO] [stdout] 114 | / return curr_box_positions [INFO] [stdout] 115 | | .iter() [INFO] [stdout] 116 | | .map(|b| (b.x * 100 + b.y) as u32) [INFO] [stdout] 117 | | .sum(); [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] 114 ~ curr_box_positions [INFO] [stdout] 115 + .iter() [INFO] [stdout] 116 + .map(|b| (b.x * 100 + b.y) as u32) [INFO] [stdout] 117 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day15/day15.rs:79:33 [INFO] [stdout] | [INFO] [stdout] 79 | fn part1(map: &Map, directions: &Vec) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 79 - fn part1(map: &Map, directions: &Vec) -> u32 { [INFO] [stdout] 79 + fn part1(map: &Map, directions: &[Direction2D]) -> u32 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day15/day15.rs:179:5 [INFO] [stdout] | [INFO] [stdout] 179 | return true; [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] 179 - return true; [INFO] [stdout] 179 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day15/day15.rs:240:5 [INFO] [stdout] | [INFO] [stdout] 240 | / return curr_box_positions [INFO] [stdout] 241 | | .iter() [INFO] [stdout] 242 | | .filter(|b| *b.1 == BoxHalf::L) [INFO] [stdout] 243 | | .map(|b| (b.0.x * 100 + b.0.y) as u32) [INFO] [stdout] 244 | | .sum(); [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] 240 ~ curr_box_positions [INFO] [stdout] 241 + .iter() [INFO] [stdout] 242 + .filter(|b| *b.1 == BoxHalf::L) [INFO] [stdout] 243 + .map(|b| (b.0.x * 100 + b.0.y) as u32) [INFO] [stdout] 244 ~ .sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day15/day15.rs:182:33 [INFO] [stdout] | [INFO] [stdout] 182 | fn part2(map: &Map, directions: &Vec) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 182 - fn part2(map: &Map, directions: &Vec) -> u32 { [INFO] [stdout] 182 + fn part2(map: &Map, directions: &[Direction2D]) -> u32 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::ops::RangeInclusive` [INFO] [stdout] --> src/bin/2025/day2/day2.rs:18:20 [INFO] [stdout] | [INFO] [stdout] 18 | for val in r.clone().into_iter() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into_iter()`: `r.clone()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] = note: `#[warn(clippy::useless_conversion)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day2/day2.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | / return ranges.iter().fold(0, |acc, r| { [INFO] [stdout] 31 | | let mut count = 0; [INFO] [stdout] 32 | | for val in r.clone().into_iter() { [INFO] [stdout] 33 | | let val_str = val.to_string(); [INFO] [stdout] ... | [INFO] [stdout] 44 | | return acc + count; [INFO] [stdout] 45 | | }); [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] 30 ~ ranges.iter().fold(0, |acc, r| { [INFO] [stdout] 31 + let mut count = 0; [INFO] [stdout] 32 + for val in r.clone().into_iter() { [INFO] [stdout] 33 + let val_str = val.to_string(); [INFO] [stdout] 34 + for i in (1..=val_str.len() / 2).rev().into_iter() { [INFO] [stdout] 35 + let val_split = val_str.split_at(i).0; [INFO] [stdout] 36 + let rep_count = val_str.match_indices(val_split).collect::>().len(); [INFO] [stdout] 37 + let req_count = val_str.len().div_ceil(i); [INFO] [stdout] 38 + if rep_count == req_count { [INFO] [stdout] 39 + count += val; [INFO] [stdout] 40 + break; [INFO] [stdout] 41 + } [INFO] [stdout] 42 + } [INFO] [stdout] 43 + } [INFO] [stdout] 44 + return acc + count; [INFO] [stdout] 45 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2025/day2/day2.rs:29:18 [INFO] [stdout] | [INFO] [stdout] 29 | fn part2(ranges: &Vec>) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 29 - fn part2(ranges: &Vec>) -> u64 { [INFO] [stdout] 29 + fn part2(ranges: &[RangeInclusive]) -> u64 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2025/day2/day2.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 44 | return acc + count; [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 acc + count; [INFO] [stdout] 44 + acc + count [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::ops::RangeInclusive` [INFO] [stdout] --> src/bin/2025/day2/day2.rs:32:20 [INFO] [stdout] | [INFO] [stdout] 32 | for val in r.clone().into_iter() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into_iter()`: `r.clone()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::iter::Rev>` [INFO] [stdout] --> src/bin/2025/day2/day2.rs:34:22 [INFO] [stdout] | [INFO] [stdout] 34 | for i in (1..=val_str.len() / 2).rev().into_iter() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into_iter()`: `(1..=val_str.len() / 2).rev()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day6/day6.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | / return ( [INFO] [stdout] 18 | | input [INFO] [stdout] 19 | | .lines() [INFO] [stdout] 20 | | .enumerate() [INFO] [stdout] ... | [INFO] [stdout] 36 | | guard_pos, [INFO] [stdout] 37 | | ); [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] 17 ~ ( [INFO] [stdout] 18 + input [INFO] [stdout] 19 + .lines() [INFO] [stdout] 20 + .enumerate() [INFO] [stdout] 21 + .map(|(i, l)| { [INFO] [stdout] 22 + l.chars() [INFO] [stdout] 23 + .enumerate() [INFO] [stdout] 24 + .map(|(j, c)| match c { [INFO] [stdout] 25 + '.' => TileType::Empty, [INFO] [stdout] 26 + '#' => TileType::Blocked, [INFO] [stdout] 27 + '^' => { [INFO] [stdout] 28 + guard_pos = Point2D::new(i as isize, j as isize); [INFO] [stdout] 29 + return TileType::Visited; [INFO] [stdout] 30 + } [INFO] [stdout] 31 + _ => panic!("unexpected tile type"), [INFO] [stdout] 32 + }) [INFO] [stdout] 33 + .collect() [INFO] [stdout] 34 + }) [INFO] [stdout] 35 + .collect(), [INFO] [stdout] 36 + guard_pos, [INFO] [stdout] 37 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day6/day6.rs:29:29 [INFO] [stdout] | [INFO] [stdout] 29 | ... return TileType::Visited; [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 - return TileType::Visited; [INFO] [stdout] 29 + TileType::Visited [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day6/day6.rs:55:5 [INFO] [stdout] | [INFO] [stdout] 55 | / return ( [INFO] [stdout] 56 | | tilemap [INFO] [stdout] 57 | | .iter() [INFO] [stdout] 58 | | .flatten() [INFO] [stdout] ... | [INFO] [stdout] 61 | | visited_points, [INFO] [stdout] 62 | | ); [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] 55 ~ ( [INFO] [stdout] 56 + tilemap [INFO] [stdout] 57 + .iter() [INFO] [stdout] 58 + .flatten() [INFO] [stdout] 59 + .filter(|t| **t == TileType::Visited) [INFO] [stdout] 60 + .count() as i32, [INFO] [stdout] 61 + visited_points, [INFO] [stdout] 62 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bin/2024/day6/day6.rs:118:5 [INFO] [stdout] | [INFO] [stdout] 118 | return count; [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] 118 - return count; [INFO] [stdout] 118 + count [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/bin/2024/day6/day6.rs:66:18 [INFO] [stdout] | [INFO] [stdout] 66 | inp_tilemap: &Vec>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 66 ~ inp_tilemap: &[Vec], [INFO] [stdout] 67 | inp_guard_pos: Point2D, [INFO] [stdout] ... [INFO] [stdout] 71 | for point in visited_points { [INFO] [stdout] 72 ~ let mut tilemap = inp_tilemap.to_owned(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `Point2D` which implements the `Copy` trait [INFO] [stdout] --> src/bin/2024/day6/day6.rs:73:29 [INFO] [stdout] | [INFO] [stdout] 73 | let mut guard_pos = inp_guard_pos.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `inp_guard_pos` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] = note: `#[warn(clippy::clone_on_copy)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.44s [INFO] running `Command { std: "docker" "inspect" "7806f4973bf122c313b1241adf742cbb43b70765a7c75f0b85ec8c933b3df215", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7806f4973bf122c313b1241adf742cbb43b70765a7c75f0b85ec8c933b3df215", kill_on_drop: false }` [INFO] [stdout] 7806f4973bf122c313b1241adf742cbb43b70765a7c75f0b85ec8c933b3df215