[INFO] cloning repository https://github.com/rkalapuc/aoc2023 [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/rkalapuc/aoc2023" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frkalapuc%2Faoc2023", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frkalapuc%2Faoc2023'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] fe220a2174b4c0f8cdbf0d66fe36431d05c4963e [INFO] linting rkalapuc/aoc2023 against nightly for clippy-nonminimal_bool-denied [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frkalapuc%2Faoc2023" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/rkalapuc/aoc2023 [INFO] finished tweaking git repo https://github.com/rkalapuc/aoc2023 [INFO] tweaked toml for git repo https://github.com/rkalapuc/aoc2023 written to /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/rkalapuc/aoc2023 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/rkalapuc/aoc2023 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] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded anyhow v1.0.76 [INFO] [stderr] Downloaded sorted-vec v0.8.3 [INFO] [stderr] Downloaded polygonical v0.5.0 [INFO] [stderr] Downloaded queues v1.1.0 [INFO] [stderr] Downloaded itertools v0.12.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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] f87535ba5b5ddc127c50125a3931bce9d0e4666ef0dc1bd7d972c3f128543ef8 [INFO] running `Command { std: "docker" "start" "-a" "f87535ba5b5ddc127c50125a3931bce9d0e4666ef0dc1bd7d972c3f128543ef8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "f87535ba5b5ddc127c50125a3931bce9d0e4666ef0dc1bd7d972c3f128543ef8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f87535ba5b5ddc127c50125a3931bce9d0e4666ef0dc1bd7d972c3f128543ef8", kill_on_drop: false }` [INFO] [stdout] f87535ba5b5ddc127c50125a3931bce9d0e4666ef0dc1bd7d972c3f128543ef8 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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] ea03c82b144aae4de918e2a78e61381ffd261d7c104f46b5179177790275a086 [INFO] running `Command { std: "docker" "start" "-a" "ea03c82b144aae4de918e2a78e61381ffd261d7c104f46b5179177790275a086", kill_on_drop: false }` [INFO] [stderr] Checking common v0.1.0 (/opt/rustwide/workdir/common) [INFO] [stderr] Compiling anyhow v1.0.76 [INFO] [stderr] Checking itertools v0.12.0 [INFO] [stderr] Compiling num-traits v0.2.17 [INFO] [stderr] Compiling num-integer v0.1.45 [INFO] [stderr] Compiling matrixmultiply v0.3.8 [INFO] [stderr] Checking hashbrown v0.14.3 [INFO] [stderr] Checking fixedbitset v0.4.2 [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> common/src/math.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | return Some(n1); [INFO] [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 Some(n1); [INFO] [stdout] 16 + Some(n1) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> common/src/math.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 33 | return Some(n.iter().fold(acc.unwrap().to_owned(), | acc, it | gcd(acc, *it).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] 33 - return Some(n.iter().fold(acc.unwrap().to_owned(), | acc, it | gcd(acc, *it).unwrap())) [INFO] [stdout] 33 + Some(n.iter().fold(acc.unwrap().to_owned(), | acc, it | gcd(acc, *it).unwrap())) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> common/src/math.rs:19:19 [INFO] [stdout] | [INFO] [stdout] 19 | pub fn gcd_vec(n: &Vec) -> Option { [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 - pub fn gcd_vec(n: &Vec) -> Option { [INFO] [stdout] 19 + pub fn gcd_vec(n: &[u64]) -> Option { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `contains()` instead of `iter().any()` is more efficient [INFO] [stdout] --> common/src/math.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | if n.iter().any(|&it| it == 0) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `n.contains(&0)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_contains [INFO] [stdout] = note: `#[warn(clippy::manual_contains)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `n.get(0)` [INFO] [stdout] --> common/src/math.rs:28:20 [INFO] [stdout] | [INFO] [stdout] 28 | let acc = gcd(*n.get(0).unwrap(), *n.get(1).unwrap()); [INFO] [stdout] | ^^^^^^^^ help: try: `n.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] = note: `#[warn(clippy::get_first)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> common/src/math.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | return Some(n * m / gcd(n, m).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] 40 - return Some(n * m / gcd(n, m).unwrap()) [INFO] [stdout] 40 + Some(n * m / gcd(n, m).unwrap()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> common/src/math.rs:57:5 [INFO] [stdout] | [INFO] [stdout] 57 | return Some(n.iter().fold(acc.unwrap().to_owned(), | acc, it | lcm(acc, *it).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] 57 - return Some(n.iter().fold(acc.unwrap().to_owned(), | acc, it | lcm(acc, *it).unwrap())) [INFO] [stdout] 57 + Some(n.iter().fold(acc.unwrap().to_owned(), | acc, it | lcm(acc, *it).unwrap())) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> common/src/math.rs:43:19 [INFO] [stdout] | [INFO] [stdout] 43 | pub fn lcm_vec(n: &Vec) -> Option { [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] 43 - pub fn lcm_vec(n: &Vec) -> Option { [INFO] [stdout] 43 + pub fn lcm_vec(n: &[u64]) -> Option { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `contains()` instead of `iter().any()` is more efficient [INFO] [stdout] --> common/src/math.rs:44:8 [INFO] [stdout] | [INFO] [stdout] 44 | if n.iter().any(|&it| it == 0) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `n.contains(&0)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `n.get(0)` [INFO] [stdout] --> common/src/math.rs:52:20 [INFO] [stdout] | [INFO] [stdout] 52 | let acc = lcm(*n.get(0).unwrap(), *n.get(1).unwrap()); [INFO] [stdout] | ^^^^^^^^ help: try: `n.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking queues v1.1.0 [INFO] [stderr] Compiling libc v0.2.151 [INFO] [stderr] Compiling rustversion v1.0.14 [INFO] [stderr] Checking aho-corasick v1.1.2 [INFO] [stderr] Checking indexmap v2.1.0 [INFO] [stderr] Checking linked_hash_set v0.1.4 [INFO] [stderr] Checking sorted-vec v0.8.3 [INFO] [stderr] Checking aoc2023-day-02 v0.1.0 (/opt/rustwide/workdir/2023/day-02) [INFO] [stderr] Compiling cc v1.0.83 [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-02/src/lib.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | return self.red * self.green * self.blue; [INFO] [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] 31 - return self.red * self.green * self.blue; [INFO] [stdout] 31 + self.red * self.green * self.blue [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-02/src/lib.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | return round; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 round; [INFO] [stdout] 52 + round [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> 2023/day-02/src/lib.rs:45:17 [INFO] [stdout] | [INFO] [stdout] 45 | round.red = round.red + part.strip_suffix(" red").unwrap().trim().parse::().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `round.red += part.strip_suffix(" red").unwrap().trim().parse::().unwrap()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] = note: `#[warn(clippy::assign_op_pattern)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> 2023/day-02/src/lib.rs:47:17 [INFO] [stdout] | [INFO] [stdout] 47 | round.green = round.green + part.strip_suffix(" green").unwrap().trim().parse::().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `round.green += part.strip_suffix(" green").unwrap().trim().parse::().unwrap()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> 2023/day-02/src/lib.rs:49:17 [INFO] [stdout] | [INFO] [stdout] 49 | round.blue = round.blue + part.strip_suffix(" blue").unwrap().trim().parse::().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `round.blue += part.strip_suffix(" blue").unwrap().trim().parse::().unwrap()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-02/src/lib.rs:56:9 [INFO] [stdout] | [INFO] [stdout] 56 | return self.red <= limits.red && self.green <= limits.green && self.blue <= limits.blue; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 56 - return self.red <= limits.red && self.green <= limits.green && self.blue <= limits.blue; [INFO] [stdout] 56 + self.red <= limits.red && self.green <= limits.green && self.blue <= limits.blue [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-02/src/lib.rs:72:9 [INFO] [stdout] | [INFO] [stdout] 72 | return Game { index: index.parse().unwrap(), rounds }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 72 - return Game { index: index.parse().unwrap(), rounds }; [INFO] [stdout] 72 + Game { index: index.parse().unwrap(), rounds } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> 2023/day-02/src/lib.rs:71:75 [INFO] [stdout] | [INFO] [stdout] 71 | let rounds: Vec = parts.last().unwrap().split(";").map(|it| GameRound::new(it)).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `GameRound::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] = note: `#[warn(clippy::redundant_closure)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-02/src/lib.rs:76:9 [INFO] [stdout] | [INFO] [stdout] 76 | return !self.rounds.iter().any(|it| !it.is_valid(limits)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 76 - return !self.rounds.iter().any(|it| !it.is_valid(limits)); [INFO] [stdout] 76 + !self.rounds.iter().any(|it| !it.is_valid(limits)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-02/src/lib.rs:96:9 [INFO] [stdout] | [INFO] [stdout] 96 | return limit; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 96 - return limit; [INFO] [stdout] 96 + limit [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-02/src/lib.rs:106:5 [INFO] [stdout] | [INFO] [stdout] 106 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 106 - return result.to_string(); [INFO] [stdout] 106 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> 2023/day-02/src/lib.rs:102:14 [INFO] [stdout] | [INFO] [stdout] 102 | .map(|it| Game::new(it)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `Game::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-02/src/lib.rs:117:5 [INFO] [stdout] | [INFO] [stdout] 117 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 117 - return result.to_string(); [INFO] [stdout] 117 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> 2023/day-02/src/lib.rs:112:14 [INFO] [stdout] | [INFO] [stdout] 112 | .map(|it| Game::new(it)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `Game::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-02/src/lib.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | return self.red * self.green * self.blue; [INFO] [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] 31 - return self.red * self.green * self.blue; [INFO] [stdout] 31 + self.red * self.green * self.blue [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-02/src/lib.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | return round; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 round; [INFO] [stdout] 52 + round [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> 2023/day-02/src/lib.rs:45:17 [INFO] [stdout] | [INFO] [stdout] 45 | round.red = round.red + part.strip_suffix(" red").unwrap().trim().parse::().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `round.red += part.strip_suffix(" red").unwrap().trim().parse::().unwrap()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] = note: `#[warn(clippy::assign_op_pattern)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> 2023/day-02/src/lib.rs:47:17 [INFO] [stdout] | [INFO] [stdout] 47 | round.green = round.green + part.strip_suffix(" green").unwrap().trim().parse::().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `round.green += part.strip_suffix(" green").unwrap().trim().parse::().unwrap()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> 2023/day-02/src/lib.rs:49:17 [INFO] [stdout] | [INFO] [stdout] 49 | round.blue = round.blue + part.strip_suffix(" blue").unwrap().trim().parse::().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `round.blue += part.strip_suffix(" blue").unwrap().trim().parse::().unwrap()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-02/src/lib.rs:56:9 [INFO] [stdout] | [INFO] [stdout] 56 | return self.red <= limits.red && self.green <= limits.green && self.blue <= limits.blue; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 56 - return self.red <= limits.red && self.green <= limits.green && self.blue <= limits.blue; [INFO] [stdout] 56 + self.red <= limits.red && self.green <= limits.green && self.blue <= limits.blue [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-02/src/lib.rs:72:9 [INFO] [stdout] | [INFO] [stdout] 72 | return Game { index: index.parse().unwrap(), rounds }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 72 - return Game { index: index.parse().unwrap(), rounds }; [INFO] [stdout] 72 + Game { index: index.parse().unwrap(), rounds } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> 2023/day-02/src/lib.rs:71:75 [INFO] [stdout] | [INFO] [stdout] 71 | let rounds: Vec = parts.last().unwrap().split(";").map(|it| GameRound::new(it)).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `GameRound::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] = note: `#[warn(clippy::redundant_closure)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-02/src/lib.rs:76:9 [INFO] [stdout] | [INFO] [stdout] 76 | return !self.rounds.iter().any(|it| !it.is_valid(limits)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 76 - return !self.rounds.iter().any(|it| !it.is_valid(limits)); [INFO] [stdout] 76 + !self.rounds.iter().any(|it| !it.is_valid(limits)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-02/src/lib.rs:96:9 [INFO] [stdout] | [INFO] [stdout] 96 | return limit; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 96 - return limit; [INFO] [stdout] 96 + limit [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-02/src/lib.rs:106:5 [INFO] [stdout] | [INFO] [stdout] 106 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 106 - return result.to_string(); [INFO] [stdout] 106 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> 2023/day-02/src/lib.rs:102:14 [INFO] [stdout] | [INFO] [stdout] 102 | .map(|it| Game::new(it)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `Game::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-02/src/lib.rs:117:5 [INFO] [stdout] | [INFO] [stdout] 117 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 117 - return result.to_string(); [INFO] [stdout] 117 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> 2023/day-02/src/lib.rs:112:14 [INFO] [stdout] | [INFO] [stdout] 112 | .map(|it| Game::new(it)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `Game::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking regex-automata v0.4.3 [INFO] [stderr] Checking aoc2023-day-05 v0.1.0 (/opt/rustwide/workdir/2023/day-05) [INFO] [stderr] Checking aoc2022-day-01 v0.1.0 (/opt/rustwide/workdir/2022/day-01) [INFO] [stderr] Checking petgraph v0.6.4 [INFO] [stderr] Checking num-complex v0.4.4 [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-01/src/lib.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 21 - return result.to_string(); [INFO] [stdout] 21 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-01/src/lib.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | return (acc.0 + it.parse::().unwrap(), acc.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] 19 - return (acc.0 + it.parse::().unwrap(), acc.1); [INFO] [stdout] 19 + (acc.0 + it.parse::().unwrap(), acc.1) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> 2022/day-01/src/lib.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 16 | if it.len() == 0 { [INFO] [stdout] | ^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `it.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] --> 2022/day-01/src/lib.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 41 - return result.to_string(); [INFO] [stdout] 41 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> 2022/day-01/src/lib.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 29 | if it.len() == 0 { [INFO] [stdout] | ^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `it.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] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> 2022/day-01/src/lib.rs:33:13 [INFO] [stdout] | [INFO] [stdout] 33 | calories = calories + it.parse::().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `calories += it.parse::().unwrap()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] = note: `#[warn(clippy::assign_op_pattern)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking float-cmp v0.9.0 [INFO] [stderr] Checking aoc2023-day-20 v0.1.0 (/opt/rustwide/workdir/2023/day-20) [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-05/src/lib.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | / return Mapping { [INFO] [stdout] 27 | | dest_start: range.first().unwrap().to_owned(), [INFO] [stdout] 28 | | src_start: range.get(1).unwrap().to_owned(), [INFO] [stdout] 29 | | len: range.last().unwrap().to_owned(), [INFO] [stdout] 30 | | }; [INFO] [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] 26 ~ Mapping { [INFO] [stdout] 27 + dest_start: range.first().unwrap().to_owned(), [INFO] [stdout] 28 + src_start: range.get(1).unwrap().to_owned(), [INFO] [stdout] 29 + len: range.last().unwrap().to_owned(), [INFO] [stdout] 30 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-05/src/lib.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | return self.src_start <= *seed && *seed < self.src_start + self.len; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 34 - return self.src_start <= *seed && *seed < self.src_start + self.len; [INFO] [stdout] 34 + self.src_start <= *seed && *seed < self.src_start + self.len [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-05/src/lib.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | return Almanac { seeds: Vec::new(), mapping: Vec::new() }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 46 - return Almanac { seeds: Vec::new(), mapping: Vec::new() }; [INFO] [stdout] 46 + Almanac { seeds: Vec::new(), mapping: Vec::new() } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-05/src/lib.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | / ... return input.split("\n").fold((Almanac::default() as Almanac, None::), |mut acc, line| { [INFO] [stdout] 53 | | ... if line.starts_with("seeds:") { [INFO] [stdout] 54 | | ... acc.0.seeds = line.strip_prefix("seeds:").unwrap().trim().split(" ").map(|it| it.trim().parse::().unwrap()).col... [INFO] [stdout] 55 | | ... } else if line.len() != 0 { [INFO] [stdout] ... | [INFO] [stdout] 66 | | ... return acc; [INFO] [stdout] 67 | | ... }).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] 52 ~ input.split("\n").fold((Almanac::default() as Almanac, None::), |mut acc, line| { [INFO] [stdout] 53 + if line.starts_with("seeds:") { [INFO] [stdout] 54 + acc.0.seeds = line.strip_prefix("seeds:").unwrap().trim().split(" ").map(|it| it.trim().parse::().unwrap()).collect(); [INFO] [stdout] 55 + } else if line.len() != 0 { [INFO] [stdout] 56 + if line.chars().next().unwrap().is_alphabetic() { [INFO] [stdout] 57 + acc.1 = match acc.1 { [INFO] [stdout] 58 + Some(n) => Some(n + 1), [INFO] [stdout] 59 + _ => Some(0) [INFO] [stdout] 60 + }; [INFO] [stdout] 61 + acc.0.mapping.push(Vec::new()); [INFO] [stdout] 62 + } else if line.chars().next().unwrap().is_digit(10) { [INFO] [stdout] 63 + acc.0.mapping.get_mut(acc.1.unwrap()).unwrap().push(Mapping::create(line)); [INFO] [stdout] 64 + } [INFO] [stdout] 65 + } [INFO] [stdout] 66 + return acc; [INFO] [stdout] 67 ~ }).0 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-05/src/lib.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | return acc; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 acc; [INFO] [stdout] 66 + acc [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> 2023/day-05/src/lib.rs:55:23 [INFO] [stdout] | [INFO] [stdout] 55 | } else if line.len() != 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!line.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: use of `char::is_digit` with literal radix of 10 [INFO] [stdout] --> 2023/day-05/src/lib.rs:62:27 [INFO] [stdout] | [INFO] [stdout] 62 | } else if line.chars().next().unwrap().is_digit(10) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `line.chars().next().unwrap().is_ascii_digit()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#is_digit_ascii_radix [INFO] [stdout] = note: `#[warn(clippy::is_digit_ascii_radix)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-05/src/lib.rs:71:9 [INFO] [stdout] | [INFO] [stdout] 71 | / return self.mapping.iter().fold(self.seeds.clone(), |input, mapping| { [INFO] [stdout] 72 | | return input.iter().map(|seed| { [INFO] [stdout] 73 | | return match mapping.iter().find(|it| it.includes(seed)) { [INFO] [stdout] 74 | | Some(m) => seed + m.dest_start - m.src_start, [INFO] [stdout] ... | [INFO] [stdout] 77 | | }).collect(); [INFO] [stdout] 78 | | }); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 ~ self.mapping.iter().fold(self.seeds.clone(), |input, mapping| { [INFO] [stdout] 72 + return input.iter().map(|seed| { [INFO] [stdout] 73 + return match mapping.iter().find(|it| it.includes(seed)) { [INFO] [stdout] 74 + Some(m) => seed + m.dest_start - m.src_start, [INFO] [stdout] 75 + _ => seed.to_owned() [INFO] [stdout] 76 + }; [INFO] [stdout] 77 + }).collect(); [INFO] [stdout] 78 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-05/src/lib.rs:72:13 [INFO] [stdout] | [INFO] [stdout] 72 | / return input.iter().map(|seed| { [INFO] [stdout] 73 | | return match mapping.iter().find(|it| it.includes(seed)) { [INFO] [stdout] 74 | | Some(m) => seed + m.dest_start - m.src_start, [INFO] [stdout] 75 | | _ => seed.to_owned() [INFO] [stdout] 76 | | }; [INFO] [stdout] 77 | | }).collect(); [INFO] [stdout] | |________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 72 ~ input.iter().map(|seed| { [INFO] [stdout] 73 + return match mapping.iter().find(|it| it.includes(seed)) { [INFO] [stdout] 74 + Some(m) => seed + m.dest_start - m.src_start, [INFO] [stdout] 75 + _ => seed.to_owned() [INFO] [stdout] 76 + }; [INFO] [stdout] 77 ~ }).collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-05/src/lib.rs:73:17 [INFO] [stdout] | [INFO] [stdout] 73 | / return match mapping.iter().find(|it| it.includes(seed)) { [INFO] [stdout] 74 | | Some(m) => seed + m.dest_start - m.src_start, [INFO] [stdout] 75 | | _ => seed.to_owned() [INFO] [stdout] 76 | | }; [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 73 ~ match mapping.iter().find(|it| it.includes(seed)) { [INFO] [stdout] 74 + Some(m) => seed + m.dest_start - m.src_start, [INFO] [stdout] 75 + _ => seed.to_owned() [INFO] [stdout] 76 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking polygonical v0.5.0 [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-05/src/lib.rs:84:9 [INFO] [stdout] | [INFO] [stdout] 84 | / ... return input.split("\n").fold((Almanac::default() as Almanac, None::), |mut acc, line| { [INFO] [stdout] 85 | | ... if line.starts_with("seeds:") { [INFO] [stdout] 86 | | ... let seeds: Vec = line.strip_prefix("seeds:").unwrap().trim().split(" ").map(|it| it.trim().parse::().unwr... [INFO] [stdout] 87 | | ... acc.0.seeds = seeds.chunks(2).map(|it| Range { 0: it[0], 1: it[1] }).collect(); [INFO] [stdout] ... | [INFO] [stdout] 99 | | ... return acc; [INFO] [stdout] 100 | | ... }).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] 84 ~ input.split("\n").fold((Almanac::default() as Almanac, None::), |mut acc, line| { [INFO] [stdout] 85 + if line.starts_with("seeds:") { [INFO] [stdout] 86 + let seeds: Vec = line.strip_prefix("seeds:").unwrap().trim().split(" ").map(|it| it.trim().parse::().unwrap()).collect(); [INFO] [stdout] 87 + acc.0.seeds = seeds.chunks(2).map(|it| Range { 0: it[0], 1: it[1] }).collect(); [INFO] [stdout] 88 + } else if line.len() != 0 { [INFO] [stdout] 89 + if line.chars().next().unwrap().is_alphabetic() { [INFO] [stdout] 90 + acc.1 = match acc.1 { [INFO] [stdout] 91 + Some(n) => Some(n + 1), [INFO] [stdout] 92 + _ => Some(0) [INFO] [stdout] 93 + }; [INFO] [stdout] 94 + acc.0.mapping.push(Vec::new()); [INFO] [stdout] 95 + } else if line.chars().next().unwrap().is_digit(10) { [INFO] [stdout] 96 + acc.0.mapping.get_mut(acc.1.unwrap()).unwrap().push(Mapping::create(line)); [INFO] [stdout] 97 + } [INFO] [stdout] 98 + } [INFO] [stdout] 99 + return acc; [INFO] [stdout] 100 ~ }).0 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-05/src/lib.rs:99:13 [INFO] [stdout] | [INFO] [stdout] 99 | return acc; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 99 - return acc; [INFO] [stdout] 99 + acc [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used a field initializer for a tuple struct [INFO] [stdout] --> 2023/day-05/src/lib.rs:87:56 [INFO] [stdout] | [INFO] [stdout] 87 | acc.0.seeds = seeds.chunks(2).map(|it| Range { 0: it[0], 1: it[1] }).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use tuple initialization: `Range(it[0], it[1])` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#init_numbered_fields [INFO] [stdout] = note: `#[warn(clippy::init_numbered_fields)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> 2023/day-05/src/lib.rs:88:23 [INFO] [stdout] | [INFO] [stdout] 88 | } else if line.len() != 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!line.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] [INFO] [stdout] [INFO] [stdout] warning: use of `char::is_digit` with literal radix of 10 [INFO] [stdout] --> 2023/day-05/src/lib.rs:95:27 [INFO] [stdout] | [INFO] [stdout] 95 | } else if line.chars().next().unwrap().is_digit(10) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `line.chars().next().unwrap().is_ascii_digit()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#is_digit_ascii_radix [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-05/src/lib.rs:104:9 [INFO] [stdout] | [INFO] [stdout] 104 | / return self.mapping.iter().fold(self.seeds.clone(), |input, mapping| { [INFO] [stdout] 105 | | let mut output: Vec = Vec::new(); [INFO] [stdout] 106 | | [INFO] [stdout] 107 | | input.iter().for_each(|it| { [INFO] [stdout] ... | [INFO] [stdout] 126 | | return output; [INFO] [stdout] 127 | | }); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 104 ~ self.mapping.iter().fold(self.seeds.clone(), |input, mapping| { [INFO] [stdout] 105 + let mut output: Vec = Vec::new(); [INFO] [stdout] 106 + [INFO] [stdout] 107 + input.iter().for_each(|it| { [INFO] [stdout] 108 + let mut next_range: Option = Some(it.to_owned()); [INFO] [stdout] 109 + while next_range.is_some() { [INFO] [stdout] 110 + let range = next_range.unwrap(); [INFO] [stdout] 111 + match mapping.iter().find(|it| it.includes(&range.0)) { [INFO] [stdout] 112 + Some(m) => { [INFO] [stdout] 113 + let covered: u64 = cmp::min(m.src_start + m.len - range.0, range.1); [INFO] [stdout] 114 + let left: u64 = range.1 - covered; [INFO] [stdout] 115 + output.push(Range { 0: range.0 + m.dest_start - m.src_start, 1: covered }); [INFO] [stdout] 116 + next_range = if left > 0 { Some(Range { 0: range.0 + covered, 1: left }) } else { None }; [INFO] [stdout] 117 + } [INFO] [stdout] 118 + _ => { [INFO] [stdout] 119 + output.push(range.clone()); [INFO] [stdout] 120 + next_range = None [INFO] [stdout] 121 + } [INFO] [stdout] 122 + } [INFO] [stdout] 123 + } [INFO] [stdout] 124 + }); [INFO] [stdout] 125 + [INFO] [stdout] 126 + return output; [INFO] [stdout] 127 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-05/src/lib.rs:126:13 [INFO] [stdout] | [INFO] [stdout] 126 | return output; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 output; [INFO] [stdout] 126 + output [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used a field initializer for a tuple struct [INFO] [stdout] --> 2023/day-05/src/lib.rs:115:41 [INFO] [stdout] | [INFO] [stdout] 115 | ... output.push(Range { 0: range.0 + m.dest_start - m.src_start, 1: covered }); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use tuple initialization: `Range(range.0 + m.dest_start - m.src_start, covered)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#init_numbered_fields [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used a field initializer for a tuple struct [INFO] [stdout] --> 2023/day-05/src/lib.rs:116:61 [INFO] [stdout] | [INFO] [stdout] 116 | ... next_range = if left > 0 { Some(Range { 0: range.0 + covered, 1: left }) } else { None }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use tuple initialization: `Range(range.0 + covered, left)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#init_numbered_fields [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-05/src/lib.rs:135:5 [INFO] [stdout] | [INFO] [stdout] 135 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 135 - return result.to_string(); [INFO] [stdout] 135 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-05/src/lib.rs:142:5 [INFO] [stdout] | [INFO] [stdout] 142 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 142 - return result.to_string(); [INFO] [stdout] 142 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking aoc2023-day-03 v0.1.0 (/opt/rustwide/workdir/2023/day-03) [INFO] [stderr] Checking aoc2023-day-08 v0.1.0 (/opt/rustwide/workdir/2023/day-08) [INFO] [stderr] Checking ndarray v0.15.6 [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-08/src/lib.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | / return Map { [INFO] [stdout] 30 | | instructions: lines.first().unwrap().chars().map(|it| if it == 'L' { LR::L } else { LR::R }).collect(), [INFO] [stdout] 31 | | network: lines.last().unwrap().trim().split('\n').map(|it| { [INFO] [stdout] 32 | | let record: Vec<&str> = it.split(" = ").collect(); [INFO] [stdout] ... | [INFO] [stdout] 41 | | }).collect(), [INFO] [stdout] 42 | | }; [INFO] [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] 29 ~ Map { [INFO] [stdout] 30 + instructions: lines.first().unwrap().chars().map(|it| if it == 'L' { LR::L } else { LR::R }).collect(), [INFO] [stdout] 31 + network: lines.last().unwrap().trim().split('\n').map(|it| { [INFO] [stdout] 32 + let record: Vec<&str> = it.split(" = ").collect(); [INFO] [stdout] 33 + let coords: Vec<&str> = record.last().unwrap().split(",").collect(); [INFO] [stdout] 34 + ( [INFO] [stdout] 35 + record.first().unwrap().trim().to_owned(), [INFO] [stdout] 36 + ( [INFO] [stdout] 37 + coords.first().unwrap().strip_prefix("(").unwrap().trim().to_owned(), [INFO] [stdout] 38 + coords.last().unwrap().strip_suffix(")").unwrap().trim().to_owned() [INFO] [stdout] 39 + ) [INFO] [stdout] 40 + ) [INFO] [stdout] 41 + }).collect(), [INFO] [stdout] 42 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-08/src/lib.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | return self.instructions.get((steps_count % self.instructions.len() as u64) as usize).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] 46 - return self.instructions.get((steps_count % self.instructions.len() as u64) as usize).unwrap(); [INFO] [stdout] 46 + self.instructions.get((steps_count % self.instructions.len() as u64) as usize).unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-08/src/lib.rs:65:5 [INFO] [stdout] | [INFO] [stdout] 65 | return steps_count.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 65 - return steps_count.to_string(); [INFO] [stdout] 65 + steps_count.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-08/src/lib.rs:87:5 [INFO] [stdout] | [INFO] [stdout] 87 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 87 - return result.to_string(); [INFO] [stdout] 87 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-08/src/lib.rs:83:9 [INFO] [stdout] | [INFO] [stdout] 83 | return steps_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] 83 - return steps_count; [INFO] [stdout] 83 + steps_count [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking aoc2023-day-12 v0.1.0 (/opt/rustwide/workdir/2023/day-12) [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-03/src/lib.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 39 | / return Schema { [INFO] [stdout] 40 | | cols: data.get(0).unwrap().len() as i32, [INFO] [stdout] 41 | | rows: data.len() as i32, [INFO] [stdout] 42 | | data, [INFO] [stdout] 43 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 39 ~ Schema { [INFO] [stdout] 40 + cols: data.get(0).unwrap().len() as i32, [INFO] [stdout] 41 + rows: data.len() as i32, [INFO] [stdout] 42 + data, [INFO] [stdout] 43 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `data.get(0)` [INFO] [stdout] --> 2023/day-03/src/lib.rs:40:19 [INFO] [stdout] | [INFO] [stdout] 40 | cols: data.get(0).unwrap().len() as i32, [INFO] [stdout] | ^^^^^^^^^^^ help: try: `data.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] = note: `#[warn(clippy::get_first)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-03/src/lib.rs:47:9 [INFO] [stdout] | [INFO] [stdout] 47 | return self.data.get(idy as usize).unwrap().get(idx as usize).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] 47 - return self.data.get(idy as usize).unwrap().get(idx as usize).unwrap(); [INFO] [stdout] 47 + self.data.get(idy as usize).unwrap().get(idx as usize).unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-03/src/lib.rs:51:9 [INFO] [stdout] | [INFO] [stdout] 51 | return Schema::ADJACENT_POSITIONS.iter().any(|it| self.is_symbol(idy + it[0], idx + it[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] 51 - return Schema::ADJACENT_POSITIONS.iter().any(|it| self.is_symbol(idy + it[0], idx + it[1])); [INFO] [stdout] 51 + Schema::ADJACENT_POSITIONS.iter().any(|it| self.is_symbol(idy + it[0], idx + it[1])) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-03/src/lib.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 55 | / return HashSet::from_iter(Schema::ADJACENT_POSITIONS.iter().filter_map(|it| { [INFO] [stdout] 56 | | if self.is_gear(idy + it[0], idx + it[1]) { [INFO] [stdout] 57 | | return Some(((idy + it[0]) * (self.cols - 1) + idx + it[1]) as u32); [INFO] [stdout] ... | [INFO] [stdout] 60 | | }).collect::>()); [INFO] [stdout] | |_________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 55 ~ HashSet::from_iter(Schema::ADJACENT_POSITIONS.iter().filter_map(|it| { [INFO] [stdout] 56 + if self.is_gear(idy + it[0], idx + it[1]) { [INFO] [stdout] 57 + return Some(((idy + it[0]) * (self.cols - 1) + idx + it[1]) as u32); [INFO] [stdout] 58 + } [INFO] [stdout] 59 + return None; [INFO] [stdout] 60 ~ }).collect::>()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-03/src/lib.rs:59:13 [INFO] [stdout] | [INFO] [stdout] 59 | 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] 59 - return None; [INFO] [stdout] 59 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-03/src/lib.rs:73:9 [INFO] [stdout] | [INFO] [stdout] 73 | return !Schema::is_digit(char) && char != &b'.'; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 73 - return !Schema::is_digit(char) && char != &b'.'; [INFO] [stdout] 73 + !Schema::is_digit(char) && char != &b'.' [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-03/src/lib.rs:80:9 [INFO] [stdout] | [INFO] [stdout] 80 | return self.item(idy, idx) == &b'*'; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 80 - return self.item(idy, idx) == &b'*'; [INFO] [stdout] 80 + self.item(idy, idx) == &b'*' [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-03/src/lib.rs:99:9 [INFO] [stdout] | [INFO] [stdout] 99 | / return write!( [INFO] [stdout] 100 | | f, [INFO] [stdout] 101 | | "item '{}' at '{}:{}' | last_in_row: {}; is_digit: {}", [INFO] [stdout] 102 | | self.item as char, self.idy, self.idx, self.last_in_row, self.is_digit [INFO] [stdout] 103 | | ); [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 99 ~ write!( [INFO] [stdout] 100 + f, [INFO] [stdout] 101 + "item '{}' at '{}:{}' | last_in_row: {}; is_digit: {}", [INFO] [stdout] 102 + self.item as char, self.idy, self.idx, self.last_in_row, self.is_digit [INFO] [stdout] 103 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-03/src/lib.rs:114:9 [INFO] [stdout] | [INFO] [stdout] 114 | / return SchemaIterator { [INFO] [stdout] 115 | | schema, [INFO] [stdout] 116 | | curr: None, [INFO] [stdout] 117 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 ~ SchemaIterator { [INFO] [stdout] 115 + schema, [INFO] [stdout] 116 + curr: None, [INFO] [stdout] 117 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-03/src/lib.rs:155:9 [INFO] [stdout] | [INFO] [stdout] 155 | 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] 155 - return None; [INFO] [stdout] 155 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-03/src/lib.rs:183:5 [INFO] [stdout] | [INFO] [stdout] 183 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 183 - return result.to_string(); [INFO] [stdout] 183 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `SchemaIterator<'_>` [INFO] [stdout] --> 2023/day-03/src/lib.rs:165:23 [INFO] [stdout] | [INFO] [stdout] 165 | let result: u32 = SchemaIterator::for_schema(&schema).into_iter().filter_map( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into_iter()`: `SchemaIterator::for_schema(&schema)` [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] --> 2023/day-03/src/lib.rs:179:13 [INFO] [stdout] | [INFO] [stdout] 179 | 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] 179 - return None; [INFO] [stdout] 179 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-03/src/lib.rs:224:5 [INFO] [stdout] | [INFO] [stdout] 224 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 224 - return result.to_string(); [INFO] [stdout] 224 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `SchemaIterator<'_>` [INFO] [stdout] --> 2023/day-03/src/lib.rs:192:41 [INFO] [stdout] | [INFO] [stdout] 192 | let gears: HashMap> = SchemaIterator::for_schema(&schema).into_iter().fold( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into_iter()`: `SchemaIterator::for_schema(&schema)` [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] --> 2023/day-03/src/lib.rs:213:13 [INFO] [stdout] | [INFO] [stdout] 213 | return acc; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 213 - return acc; [INFO] [stdout] 213 + acc [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of `contains_key` followed by `insert` on a `HashMap` [INFO] [stdout] --> 2023/day-03/src/lib.rs:203:21 [INFO] [stdout] | [INFO] [stdout] 203 | / if !acc.contains_key(&(gear as i32)) { [INFO] [stdout] 204 | | acc.insert(gear as i32, Vec::new()); [INFO] [stdout] 205 | | } [INFO] [stdout] | |_____________________^ help: try: `acc.entry((gear as i32)).or_insert_with(|| Vec::new());` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_entry [INFO] [stdout] = note: `#[warn(clippy::map_entry)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `it.get(0)` [INFO] [stdout] --> 2023/day-03/src/lib.rs:219:23 [INFO] [stdout] | [INFO] [stdout] 219 | 2 => Some(it.get(0).unwrap() * it.get(1).unwrap()), [INFO] [stdout] | ^^^^^^^^^ help: try: `it.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> 2023/day-03/src/lib.rs:113:27 [INFO] [stdout] | [INFO] [stdout] 113 | fn for_schema(schema: &Schema) -> SchemaIterator { [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 113 | fn for_schema(schema: &Schema) -> SchemaIterator<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking aoc2022-day-05 v0.1.0 (/opt/rustwide/workdir/2022/day-05) [INFO] [stderr] Checking aoc2023-day-18 v0.1.0 (/opt/rustwide/workdir/2023/day-18) [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | return self.state; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 30 - return self.state; [INFO] [stdout] 30 + self.state [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | 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] 38 - return true; [INFO] [stdout] 38 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | return !self.state.iter().fold(true, |acc, it| acc && *it.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] 49 - return !self.state.iter().fold(true, |acc, it| acc && *it.1); [INFO] [stdout] 49 + !self.state.iter().fold(true, |acc, it| acc && *it.1) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.fold` can be written more succinctly using another method [INFO] [stdout] --> 2023/day-20/src/lib.rs:49:35 [INFO] [stdout] | [INFO] [stdout] 49 | return !self.state.iter().fold(true, |acc, it| acc && *it.1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `all(|it| *it.1)` [INFO] [stdout] | [INFO] [stdout] = note: the `all` method is short circuiting and may change the program semantics if the iterator has side effects [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_fold [INFO] [stdout] = note: `#[warn(clippy::unnecessary_fold)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:54:9 [INFO] [stdout] | [INFO] [stdout] 54 | 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] 54 - return true; [INFO] [stdout] 54 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:63:9 [INFO] [stdout] | [INFO] [stdout] 63 | 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] 63 - return false; [INFO] [stdout] 63 + false [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:67:9 [INFO] [stdout] | [INFO] [stdout] 67 | 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] 67 - return false; [INFO] [stdout] 67 + false [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:122:9 [INFO] [stdout] | [INFO] [stdout] 122 | return Ok(DesertMachine { modules }); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 122 - return Ok(DesertMachine { modules }); [INFO] [stdout] 122 + Ok(DesertMachine { modules }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::iter::Map, {closure@2023/day-20/src/lib.rs:96:94: 96:100}>` [INFO] [stdout] --> 2023/day-20/src/lib.rs:96:72 [INFO] [stdout] | [INFO] [stdout] 96 | let modules: HashMap, Vec)> = input.split('\n').map(|line| { [INFO] [stdout] | ________________________________________________________________________^ [INFO] [stdout] 97 | | let module_part = line.split(" -> ").take(1).next().unwrap(); [INFO] [stdout] 98 | | let module_name: &str = &module_part.trim_matches(|it| it == '%' || it == '&'); [INFO] [stdout] 99 | | let module: Box = match &module_part[..1] { [INFO] [stdout] ... | [INFO] [stdout] 119 | | ); [INFO] [stdout] 120 | | }).into_iter().collect(); [INFO] [stdout] | |______________________^ [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] help: consider removing `.into_iter()` [INFO] [stdout] | [INFO] [stdout] 96 ~ let modules: HashMap, Vec)> = input.split('\n').map(|line| { [INFO] [stdout] 97 + let module_part = line.split(" -> ").take(1).next().unwrap(); [INFO] [stdout] 98 + let module_name: &str = &module_part.trim_matches(|it| it == '%' || it == '&'); [INFO] [stdout] 99 + let module: Box = match &module_part[..1] { [INFO] [stdout] 100 + "%" => Box::new(Switch { state: false }), [INFO] [stdout] 101 + "&" => Box::new(Conjunction { [INFO] [stdout] 102 + state: parents.get(module_name).unwrap().iter() [INFO] [stdout] 103 + .map(|it| (it.to_string(), false)) [INFO] [stdout] 104 + .into_iter() [INFO] [stdout] 105 + .collect() [INFO] [stdout] 106 + }), [INFO] [stdout] 107 + "b" => Box::new(Broadcast {}), [INFO] [stdout] 108 + _ => panic!("Invalid module") [INFO] [stdout] 109 + }; [INFO] [stdout] 110 + [INFO] [stdout] 111 + return ( [INFO] [stdout] 112 + module_name.to_string(), [INFO] [stdout] 113 + ( [INFO] [stdout] 114 + module, [INFO] [stdout] 115 + kids.get(module_name).unwrap().iter() [INFO] [stdout] 116 + .map(|it| it.to_string()) [INFO] [stdout] 117 + .collect() [INFO] [stdout] 118 + ) [INFO] [stdout] 119 + ); [INFO] [stdout] 120 ~ }).collect(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:111:13 [INFO] [stdout] | [INFO] [stdout] 111 | / return ( [INFO] [stdout] 112 | | module_name.to_string(), [INFO] [stdout] 113 | | ( [INFO] [stdout] 114 | | module, [INFO] [stdout] ... | [INFO] [stdout] 119 | | ); [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 111 ~ ( [INFO] [stdout] 112 + module_name.to_string(), [INFO] [stdout] 113 + ( [INFO] [stdout] 114 + module, [INFO] [stdout] 115 + kids.get(module_name).unwrap().iter() [INFO] [stdout] 116 + .map(|it| it.to_string()) [INFO] [stdout] 117 + .collect() [INFO] [stdout] 118 + ) [INFO] [stdout] 119 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> 2023/day-20/src/lib.rs:98:37 [INFO] [stdout] | [INFO] [stdout] 98 | let module_name: &str = &module_part.trim_matches(|it| it == '%' || it == '&'); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `module_part.trim_matches(|it| it == '%' || it == '&')` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::iter::Map, {closure@2023/day-20/src/lib.rs:103:30: 103:34}>` [INFO] [stdout] --> 2023/day-20/src/lib.rs:102:28 [INFO] [stdout] | [INFO] [stdout] 102 | state: parents.get(module_name).unwrap().iter() [INFO] [stdout] | ____________________________^ [INFO] [stdout] 103 | | .map(|it| (it.to_string(), false)) [INFO] [stdout] 104 | | .into_iter() [INFO] [stdout] | |____________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] help: consider removing `.into_iter()` [INFO] [stdout] | [INFO] [stdout] 102 ~ state: parents.get(module_name).unwrap().iter() [INFO] [stdout] 103 + .map(|it| (it.to_string(), false)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:155:9 [INFO] [stdout] | [INFO] [stdout] 155 | return (total_low, total_high); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 155 - return (total_low, total_high); [INFO] [stdout] 155 + (total_low, total_high) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:138:17 [INFO] [stdout] | [INFO] [stdout] 138 | / return connections.clone().iter().fold(acc, |acc, next_name| { [INFO] [stdout] 139 | | if self.modules.contains_key(next_name) { [INFO] [stdout] 140 | | let (next_module, _) = self.modules.get_mut(next_name).unwrap(); [INFO] [stdout] 141 | | if next_module.handle(module_name.as_str(), signal) { [INFO] [stdout] ... | [INFO] [stdout] 145 | | return if signal { (acc.0, acc.1 + 1) } else { (acc.0 + 1, acc.1) }; [INFO] [stdout] 146 | | }); [INFO] [stdout] | |__________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 138 ~ connections.clone().iter().fold(acc, |acc, next_name| { [INFO] [stdout] 139 + if self.modules.contains_key(next_name) { [INFO] [stdout] 140 + let (next_module, _) = self.modules.get_mut(next_name).unwrap(); [INFO] [stdout] 141 + if next_module.handle(module_name.as_str(), signal) { [INFO] [stdout] 142 + next_modules.push(next_name.clone()); [INFO] [stdout] 143 + } [INFO] [stdout] 144 + } [INFO] [stdout] 145 + return if signal { (acc.0, acc.1 + 1) } else { (acc.0 + 1, acc.1) }; [INFO] [stdout] 146 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:145:21 [INFO] [stdout] | [INFO] [stdout] 145 | return if signal { (acc.0, acc.1 + 1) } else { (acc.0 + 1, acc.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] 145 - return if signal { (acc.0, acc.1 + 1) } else { (acc.0 + 1, acc.1) }; [INFO] [stdout] 145 + if signal { (acc.0, acc.1 + 1) } else { (acc.0 + 1, acc.1) } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:159:9 [INFO] [stdout] | [INFO] [stdout] 159 | / return self.modules.iter().filter_map(|(module, (_, modules))| { [INFO] [stdout] 160 | | return if modules.first().unwrap() == module_name { Some(module.clone()) } else { None }; [INFO] [stdout] 161 | | }).collect(); [INFO] [stdout] | |____________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 159 ~ self.modules.iter().filter_map(|(module, (_, modules))| { [INFO] [stdout] 160 + return if modules.first().unwrap() == module_name { Some(module.clone()) } else { None }; [INFO] [stdout] 161 ~ }).collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:160:13 [INFO] [stdout] | [INFO] [stdout] 160 | return if modules.first().unwrap() == module_name { Some(module.clone()) } else { 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] 160 - return if modules.first().unwrap() == module_name { Some(module.clone()) } else { None }; [INFO] [stdout] 160 + if modules.first().unwrap() == module_name { Some(module.clone()) } else { None } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> 2023/day-20/src/lib.rs:164:49 [INFO] [stdout] | [INFO] [stdout] 164 | fn calc_min_steps(&mut self, final_modules: &Vec) -> 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] 164 - fn calc_min_steps(&mut self, final_modules: &Vec) -> Vec { [INFO] [stdout] 164 + fn calc_min_steps(&mut self, final_modules: &[String]) -> Vec { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::iter::Map, {closure@2023/day-20/src/lib.rs:168:18: 168:31}>` [INFO] [stdout] --> 2023/day-20/src/lib.rs:167:52 [INFO] [stdout] | [INFO] [stdout] 167 | let mut min_steps: HashMap<&String, u64> = final_modules.iter() [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 168 | | .map(|module_name| (module_name, u64::MAX)) [INFO] [stdout] 169 | | .into_iter() [INFO] [stdout] | |________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] help: consider removing `.into_iter()` [INFO] [stdout] | [INFO] [stdout] 167 ~ let mut min_steps: HashMap<&String, u64> = final_modules.iter() [INFO] [stdout] 168 + .map(|module_name| (module_name, u64::MAX)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:214:5 [INFO] [stdout] | [INFO] [stdout] 214 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 214 - return result.to_string(); [INFO] [stdout] 214 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:209:9 [INFO] [stdout] | [INFO] [stdout] 209 | return (acc.0 + low, acc.1 + high); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 209 - return (acc.0 + low, acc.1 + high); [INFO] [stdout] 209 + (acc.0 + low, acc.1 + high) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:227:5 [INFO] [stdout] | [INFO] [stdout] 227 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 227 - return result.to_string(); [INFO] [stdout] 227 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking aoc2023-day-15 v0.1.0 (/opt/rustwide/workdir/2023/day-15) [INFO] [stdout] warning: name `RIGHT` contains a capitalized acronym [INFO] [stdout] --> 2023/day-18/src/lib.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | RIGHT, [INFO] [stdout] | ^^^^^ help: consider making the acronym lowercase, except the initial letter: `Right` [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 `DOWN` contains a capitalized acronym [INFO] [stdout] --> 2023/day-18/src/lib.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | DOWN, [INFO] [stdout] | ^^^^ help: consider making the acronym lowercase, except the initial letter: `Down` [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 `LEFT` contains a capitalized acronym [INFO] [stdout] --> 2023/day-18/src/lib.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | LEFT, [INFO] [stdout] | ^^^^ help: consider making the acronym lowercase, except the initial letter: `Left` [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] --> 2023/day-18/src/lib.rs:37:9 [INFO] [stdout] | [INFO] [stdout] 37 | / return match input { [INFO] [stdout] 38 | | "U" => DigDirection::UP, [INFO] [stdout] 39 | | "R" => DigDirection::RIGHT, [INFO] [stdout] 40 | | "D" => DigDirection::DOWN, [INFO] [stdout] 41 | | "L" => DigDirection::LEFT, [INFO] [stdout] 42 | | _ => panic!("Invalid direction: {}", input) [INFO] [stdout] 43 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 37 ~ match input { [INFO] [stdout] 38 + "U" => DigDirection::UP, [INFO] [stdout] 39 + "R" => DigDirection::RIGHT, [INFO] [stdout] 40 + "D" => DigDirection::DOWN, [INFO] [stdout] 41 + "L" => DigDirection::LEFT, [INFO] [stdout] 42 + _ => panic!("Invalid direction: {}", input) [INFO] [stdout] 43 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-18/src/lib.rs:47:9 [INFO] [stdout] | [INFO] [stdout] 47 | / return match input { [INFO] [stdout] 48 | | 0 => DigDirection::RIGHT, [INFO] [stdout] 49 | | 1 => DigDirection::DOWN, [INFO] [stdout] 50 | | 2 => DigDirection::LEFT, [INFO] [stdout] 51 | | 3 => DigDirection::UP, [INFO] [stdout] 52 | | _ => panic!("Invalid direction: {}", input) [INFO] [stdout] 53 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 ~ match input { [INFO] [stdout] 48 + 0 => DigDirection::RIGHT, [INFO] [stdout] 49 + 1 => DigDirection::DOWN, [INFO] [stdout] 50 + 2 => DigDirection::LEFT, [INFO] [stdout] 51 + 3 => DigDirection::UP, [INFO] [stdout] 52 + _ => panic!("Invalid direction: {}", input) [INFO] [stdout] 53 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-18/src/lib.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | / return match self { [INFO] [stdout] 58 | | DigDirection::UP => (length as i64 * -1, 0), [INFO] [stdout] 59 | | DigDirection::RIGHT => (0, length as i64), [INFO] [stdout] 60 | | DigDirection::DOWN => (length as i64, 0), [INFO] [stdout] 61 | | DigDirection::LEFT => (0, length as i64 * -1), [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] 57 ~ match self { [INFO] [stdout] 58 + DigDirection::UP => (length as i64 * -1, 0), [INFO] [stdout] 59 + DigDirection::RIGHT => (0, length as i64), [INFO] [stdout] 60 + DigDirection::DOWN => (length as i64, 0), [INFO] [stdout] 61 + DigDirection::LEFT => (0, length as i64 * -1), [INFO] [stdout] 62 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this multiplication by -1 can be written more succinctly [INFO] [stdout] --> 2023/day-18/src/lib.rs:58:34 [INFO] [stdout] | [INFO] [stdout] 58 | DigDirection::UP => (length as i64 * -1, 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: consider using: `-(length as i64)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#neg_multiply [INFO] [stdout] = note: `#[warn(clippy::neg_multiply)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this multiplication by -1 can be written more succinctly [INFO] [stdout] --> 2023/day-18/src/lib.rs:61:39 [INFO] [stdout] | [INFO] [stdout] 61 | DigDirection::LEFT => (0, length as i64 * -1), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: consider using: `-(length as i64)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#neg_multiply [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-18/src/lib.rs:75:9 [INFO] [stdout] | [INFO] [stdout] 75 | / return DigInstruction { [INFO] [stdout] 76 | | direction: DigDirection::from_str(parts.first().unwrap()), [INFO] [stdout] 77 | | length: parts.last().unwrap().parse::().unwrap(), [INFO] [stdout] 78 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 75 ~ DigInstruction { [INFO] [stdout] 76 + direction: DigDirection::from_str(parts.first().unwrap()), [INFO] [stdout] 77 + length: parts.last().unwrap().parse::().unwrap(), [INFO] [stdout] 78 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-18/src/lib.rs:83:9 [INFO] [stdout] | [INFO] [stdout] 83 | / return DigInstruction { [INFO] [stdout] 84 | | direction: DigDirection::from_num(&hex[5..].parse::().unwrap()), [INFO] [stdout] 85 | | length: u64::from_str_radix(&hex[..5], 16).unwrap(), [INFO] [stdout] 86 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 83 ~ DigInstruction { [INFO] [stdout] 84 + direction: DigDirection::from_num(&hex[5..].parse::().unwrap()), [INFO] [stdout] 85 + length: u64::from_str_radix(&hex[..5], 16).unwrap(), [INFO] [stdout] 86 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-18/src/lib.rs:91:9 [INFO] [stdout] | [INFO] [stdout] 91 | return Point { x: from.x + offset_x as f64, y: from.y + offset_y as f64 }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 91 - return Point { x: from.x + offset_x as f64, y: from.y + offset_y as f64 }; [INFO] [stdout] 91 + Point { x: from.x + offset_x as f64, y: from.y + offset_y as f64 } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-18/src/lib.rs:110:5 [INFO] [stdout] | [INFO] [stdout] 110 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 110 - return result.to_string(); [INFO] [stdout] 110 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-18/src/lib.rs:100:9 [INFO] [stdout] | [INFO] [stdout] 100 | return (perimeter + instruction.length, instruction.dig(&last_point)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 100 - return (perimeter + instruction.length, instruction.dig(&last_point)); [INFO] [stdout] 100 + (perimeter + instruction.length, instruction.dig(&last_point)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-18/src/lib.rs:128:5 [INFO] [stdout] | [INFO] [stdout] 128 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 128 - return result.to_string(); [INFO] [stdout] 128 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-18/src/lib.rs:118:9 [INFO] [stdout] | [INFO] [stdout] 118 | return (perimeter + instruction.length, instruction.dig(&last_point)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 (perimeter + instruction.length, instruction.dig(&last_point)); [INFO] [stdout] 118 + (perimeter + instruction.length, instruction.dig(&last_point)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking aoc2023-day-04 v0.1.0 (/opt/rustwide/workdir/2023/day-04) [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-05/src/lib.rs:53:9 [INFO] [stdout] | [INFO] [stdout] 53 | / return Ship { [INFO] [stdout] 54 | | stacks: stacks.iter().map(|it| it.iter().rev().map(|it| *it).collect()).collect(), [INFO] [stdout] 55 | | instructions, [INFO] [stdout] 56 | | }; [INFO] [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] 53 ~ Ship { [INFO] [stdout] 54 + stacks: stacks.iter().map(|it| it.iter().rev().map(|it| *it).collect()).collect(), [INFO] [stdout] 55 + instructions, [INFO] [stdout] 56 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-12/src/lib.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | / return DamagedLine { [INFO] [stdout] 31 | | line: parts.first().unwrap().chars().map(|it| match it { [INFO] [stdout] 32 | | '?' => LineItem::Unknown, [INFO] [stdout] 33 | | '.' => LineItem::Separator, [INFO] [stdout] ... | [INFO] [stdout] 38 | | cache: HashMap::new(), [INFO] [stdout] 39 | | }; [INFO] [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] 30 ~ DamagedLine { [INFO] [stdout] 31 + line: parts.first().unwrap().chars().map(|it| match it { [INFO] [stdout] 32 + '?' => LineItem::Unknown, [INFO] [stdout] 33 + '.' => LineItem::Separator, [INFO] [stdout] 34 + '#' => LineItem::Spring, [INFO] [stdout] 35 + _ => panic!("Unexpected input") [INFO] [stdout] 36 + }).collect(), [INFO] [stdout] 37 + sizes: parts.last().unwrap().split(',').map(|it| it.parse::().unwrap()).collect(), [INFO] [stdout] 38 + cache: HashMap::new(), [INFO] [stdout] 39 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> 2022/day-05/src/lib.rs:45:25 [INFO] [stdout] | [INFO] [stdout] 45 | / match chars.iter().find(|ch| ch.is_alphabetic()) { [INFO] [stdout] 46 | | Some(ch) => stacks[it.0].push(*ch), [INFO] [stdout] 47 | | None => {} [INFO] [stdout] 48 | | } [INFO] [stdout] | |_________________________^ help: try: `if let Some(ch) = chars.iter().find(|ch| ch.is_alphabetic()) { stacks[it.0].push(*ch) }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] = note: `#[warn(clippy::single_match)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you are using an explicit closure for copying elements [INFO] [stdout] --> 2022/day-05/src/lib.rs:54:44 [INFO] [stdout] | [INFO] [stdout] 54 | stacks: stacks.iter().map(|it| it.iter().rev().map(|it| *it).collect()).collect(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider calling the dedicated `copied` method: `it.iter().rev().copied()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stdout] = note: `#[warn(clippy::map_clone)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-05/src/lib.rs:77:5 [INFO] [stdout] | [INFO] [stdout] 77 | return String::from_iter(result); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 77 - return String::from_iter(result); [INFO] [stdout] 77 + String::from_iter(result) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-12/src/lib.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | / return DamagedLine { [INFO] [stdout] 47 | | line: single.line.iter() [INFO] [stdout] 48 | | .cycle() [INFO] [stdout] 49 | | .take(single.line.len() * factor - 1) [INFO] [stdout] ... | [INFO] [stdout] 57 | | cache: HashMap::new(), [INFO] [stdout] 58 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 ~ DamagedLine { [INFO] [stdout] 47 + line: single.line.iter() [INFO] [stdout] 48 + .cycle() [INFO] [stdout] 49 + .take(single.line.len() * factor - 1) [INFO] [stdout] 50 + .map(|it| *it) [INFO] [stdout] 51 + .collect(), [INFO] [stdout] 52 + sizes: single.sizes.iter() [INFO] [stdout] 53 + .cycle() [INFO] [stdout] 54 + .take(single.sizes.len() * factor) [INFO] [stdout] 55 + .map(|it| *it) [INFO] [stdout] 56 + .collect(), [INFO] [stdout] 57 + cache: HashMap::new(), [INFO] [stdout] 58 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-04/src/lib.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | / return input.trim().split(" ").filter_map( [INFO] [stdout] 22 | | |it| match it { [INFO] [stdout] 23 | | "" => None, [INFO] [stdout] 24 | | num => Some(num.trim().parse::().unwrap()) [INFO] [stdout] 25 | | } [INFO] [stdout] 26 | | ).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.trim().split(" ").filter_map( [INFO] [stdout] 22 + |it| match it { [INFO] [stdout] 23 + "" => None, [INFO] [stdout] 24 + num => Some(num.trim().parse::().unwrap()) [INFO] [stdout] 25 + } [INFO] [stdout] 26 ~ ).collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-04/src/lib.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 35 | / return Card { [INFO] [stdout] 36 | | index: index.trim().parse().unwrap(), [INFO] [stdout] 37 | | winning: parse_numbers(second_parts.last().unwrap()), [INFO] [stdout] 38 | | input: parse_numbers(first_parts.last().unwrap()), [INFO] [stdout] 39 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 35 ~ Card { [INFO] [stdout] 36 + index: index.trim().parse().unwrap(), [INFO] [stdout] 37 + winning: parse_numbers(second_parts.last().unwrap()), [INFO] [stdout] 38 + input: parse_numbers(first_parts.last().unwrap()), [INFO] [stdout] 39 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-04/src/lib.rs:43:9 [INFO] [stdout] | [INFO] [stdout] 43 | / return self.winning.iter().filter_map( [INFO] [stdout] 44 | | |it| match self.input.contains(it) { [INFO] [stdout] 45 | | true => Some(1), [INFO] [stdout] 46 | | false => None [INFO] [stdout] 47 | | } [INFO] [stdout] 48 | | ).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] 43 ~ self.winning.iter().filter_map( [INFO] [stdout] 44 + |it| match self.input.contains(it) { [INFO] [stdout] 45 + true => Some(1), [INFO] [stdout] 46 + false => None [INFO] [stdout] 47 + } [INFO] [stdout] 48 ~ ).sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-04/src/lib.rs:63:5 [INFO] [stdout] | [INFO] [stdout] 63 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 63 - return result.to_string(); [INFO] [stdout] 63 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> 2023/day-04/src/lib.rs:53:50 [INFO] [stdout] | [INFO] [stdout] 53 | let cards: Vec = input.split("\n").map(|it| Card::create(it)).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `Card::create` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] = note: `#[warn(clippy::redundant_closure)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-04/src/lib.rs:86:5 [INFO] [stdout] | [INFO] [stdout] 86 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 86 - return result.to_string(); [INFO] [stdout] 86 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> 2023/day-04/src/lib.rs:67:50 [INFO] [stdout] | [INFO] [stdout] 67 | let cards: Vec = input.split("\n").map(|it| Card::create(it)).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `Card::create` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: found `.or(Some(…)).unwrap()` [INFO] [stdout] --> 2023/day-04/src/lib.rs:72:57 [INFO] [stdout] | [INFO] [stdout] 72 | let copies_count: u32 = copies.get(&card.index).or(Some(&0)).unwrap().to_owned(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or(&0)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_then_unwrap [INFO] [stdout] = note: `#[warn(clippy::or_then_unwrap)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you are using an explicit closure for copying elements [INFO] [stdout] --> 2022/day-05/src/lib.rs:72:29 [INFO] [stdout] | [INFO] [stdout] 72 | let result: Vec = ship.stacks.iter() [INFO] [stdout] | _____________________________^ [INFO] [stdout] 73 | | .filter_map(|it| it.last()) [INFO] [stdout] 74 | | .map(|it| *it) [INFO] [stdout] | |______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stdout] help: consider calling the dedicated `copied` method [INFO] [stdout] | [INFO] [stdout] 72 ~ let result: Vec = ship.stacks.iter() [INFO] [stdout] 73 + .filter_map(|it| it.last()).copied() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking aoc2023-day-07 v0.1.0 (/opt/rustwide/workdir/2023/day-07) [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-05/src/lib.rs:97:5 [INFO] [stdout] | [INFO] [stdout] 97 | return String::from_iter(result); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 97 - return String::from_iter(result); [INFO] [stdout] 97 + String::from_iter(result) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you are using an explicit closure for copying elements [INFO] [stdout] --> 2022/day-05/src/lib.rs:92:29 [INFO] [stdout] | [INFO] [stdout] 92 | let result: Vec = ship.stacks.iter() [INFO] [stdout] | _____________________________^ [INFO] [stdout] 93 | | .filter_map(|it| it.last()) [INFO] [stdout] 94 | | .map(|it| *it) [INFO] [stdout] | |______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stdout] help: consider calling the dedicated `copied` method [INFO] [stdout] | [INFO] [stdout] 92 ~ let result: Vec = ship.stacks.iter() [INFO] [stdout] 93 + .filter_map(|it| it.last()).copied() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you are using an explicit closure for copying elements [INFO] [stdout] --> 2023/day-12/src/lib.rs:47:19 [INFO] [stdout] | [INFO] [stdout] 47 | line: single.line.iter() [INFO] [stdout] | ___________________^ [INFO] [stdout] 48 | | .cycle() [INFO] [stdout] 49 | | .take(single.line.len() * factor - 1) [INFO] [stdout] 50 | | .map(|it| *it) [INFO] [stdout] | |______________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stdout] = note: `#[warn(clippy::map_clone)]` on by default [INFO] [stdout] help: consider calling the dedicated `copied` method [INFO] [stdout] | [INFO] [stdout] 47 ~ line: single.line.iter() [INFO] [stdout] 48 + .cycle() [INFO] [stdout] 49 + .take(single.line.len() * factor - 1).copied() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you are using an explicit closure for copying elements [INFO] [stdout] --> 2023/day-12/src/lib.rs:52:20 [INFO] [stdout] | [INFO] [stdout] 52 | sizes: single.sizes.iter() [INFO] [stdout] | ____________________^ [INFO] [stdout] 53 | | .cycle() [INFO] [stdout] 54 | | .take(single.sizes.len() * factor) [INFO] [stdout] 55 | | .map(|it| *it) [INFO] [stdout] | |______________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stdout] help: consider calling the dedicated `copied` method [INFO] [stdout] | [INFO] [stdout] 52 ~ sizes: single.sizes.iter() [INFO] [stdout] 53 + .cycle() [INFO] [stdout] 54 + .take(single.sizes.len() * factor).copied() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-12/src/lib.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 62 | / return match size_pos.0 <= 0 { [INFO] [stdout] 63 | | true => self.calc_arrangements(line_pos + 1, (-1, size_pos.1)), [INFO] [stdout] 64 | | false => 0 [INFO] [stdout] 65 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 62 ~ match size_pos.0 <= 0 { [INFO] [stdout] 63 + true => self.calc_arrangements(line_pos + 1, (-1, size_pos.1)), [INFO] [stdout] 64 + false => 0 [INFO] [stdout] 65 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-12/src/lib.rs:69:9 [INFO] [stdout] | [INFO] [stdout] 69 | / return match size_pos.0 > 0 { [INFO] [stdout] 70 | | true => self.calc_arrangements(line_pos + 1, (size_pos.0 - 1, size_pos.1)), [INFO] [stdout] 71 | | false => match size_pos.0 < 0 && size_pos.1 < self.sizes.len() { [INFO] [stdout] 72 | | true => self.calc_arrangements(line_pos + 1, (self.sizes[size_pos.1] as i32 - 1, size_pos.1 + 1)), [INFO] [stdout] ... | [INFO] [stdout] 75 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 ~ match size_pos.0 > 0 { [INFO] [stdout] 70 + true => self.calc_arrangements(line_pos + 1, (size_pos.0 - 1, size_pos.1)), [INFO] [stdout] 71 + false => match size_pos.0 < 0 && size_pos.1 < self.sizes.len() { [INFO] [stdout] 72 + true => self.calc_arrangements(line_pos + 1, (self.sizes[size_pos.1] as i32 - 1, size_pos.1 + 1)), [INFO] [stdout] 73 + false => 0 [INFO] [stdout] 74 + } [INFO] [stdout] 75 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-12/src/lib.rs:110:9 [INFO] [stdout] | [INFO] [stdout] 110 | return result; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 110 - return result; [INFO] [stdout] 110 + result [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-12/src/lib.rs:119:5 [INFO] [stdout] | [INFO] [stdout] 119 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 119 - return result.to_string(); [INFO] [stdout] 119 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> 2023/day-12/src/lib.rs:116:14 [INFO] [stdout] | [INFO] [stdout] 116 | .map(|line| DamagedLine::create_single(line)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `DamagedLine::create_single` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] = note: `#[warn(clippy::redundant_closure)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-12/src/lib.rs:127:5 [INFO] [stdout] | [INFO] [stdout] 127 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 127 - return result.to_string(); [INFO] [stdout] 127 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking aoc2022-day-02 v0.1.0 (/opt/rustwide/workdir/2022/day-02) [INFO] [stderr] Checking aoc2023-day-19 v0.1.0 (/opt/rustwide/workdir/2023/day-19) [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-15/src/lib.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | return input.bytes().fold(0, |acc, code| ((acc + code as u32) * 17) % 256); [INFO] [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] 14 - return input.bytes().fold(0, |acc, code| ((acc + code as u32) * 17) % 256); [INFO] [stdout] 14 + input.bytes().fold(0, |acc, code| ((acc + code as u32) * 17) % 256) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-15/src/lib.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | return (parts.first().unwrap(), parts.last().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] 19 - return (parts.first().unwrap(), parts.last().unwrap()); [INFO] [stdout] 19 + (parts.first().unwrap(), parts.last().unwrap()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `RPS` contains a capitalized acronym [INFO] [stdout] --> 2022/day-02/src/lib.rs:12:6 [INFO] [stdout] | [INFO] [stdout] 12 | enum RPS { [INFO] [stdout] | ^^^ help: consider making the acronym lowercase, except the initial letter: `Rps` [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: unneeded `return` statement [INFO] [stdout] --> 2022/day-02/src/lib.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | / return match char { [INFO] [stdout] 27 | | "A" => Some(RPS::Rock), [INFO] [stdout] 28 | | "X" => Some(RPS::Rock), [INFO] [stdout] 29 | | "B" => Some(RPS::Paper), [INFO] [stdout] ... | [INFO] [stdout] 33 | | _ => None [INFO] [stdout] 34 | | } [INFO] [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] 26 ~ match char { [INFO] [stdout] 27 + "A" => Some(RPS::Rock), [INFO] [stdout] 28 + "X" => Some(RPS::Rock), [INFO] [stdout] 29 + "B" => Some(RPS::Paper), [INFO] [stdout] 30 + "Y" => Some(RPS::Paper), [INFO] [stdout] 31 + "C" => Some(RPS::Scissors), [INFO] [stdout] 32 + "Z" => Some(RPS::Scissors), [INFO] [stdout] 33 + _ => None [INFO] [stdout] 34 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-15/src/lib.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 24 - return result.to_string(); [INFO] [stdout] 24 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-02/src/lib.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | / return match self { [INFO] [stdout] 39 | | RPS::Rock => { [INFO] [stdout] 40 | | 1 + match other { [INFO] [stdout] 41 | | RPS::Rock => 3, [INFO] [stdout] ... | [INFO] [stdout] 60 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 38 ~ match self { [INFO] [stdout] 39 + RPS::Rock => { [INFO] [stdout] 40 + 1 + match other { [INFO] [stdout] 41 + RPS::Rock => 3, [INFO] [stdout] 42 + RPS::Paper => 0, [INFO] [stdout] 43 + RPS::Scissors => 6, [INFO] [stdout] 44 + } [INFO] [stdout] 45 + } [INFO] [stdout] 46 + RPS::Paper => { [INFO] [stdout] 47 + 2 + match other { [INFO] [stdout] 48 + RPS::Rock => 6, [INFO] [stdout] 49 + RPS::Paper => 3, [INFO] [stdout] 50 + RPS::Scissors => 0 [INFO] [stdout] 51 + } [INFO] [stdout] 52 + } [INFO] [stdout] 53 + RPS::Scissors => { [INFO] [stdout] 54 + 3 + match other { [INFO] [stdout] 55 + RPS::Rock => 0, [INFO] [stdout] 56 + RPS::Paper => 6, [INFO] [stdout] 57 + RPS::Scissors => 3 [INFO] [stdout] 58 + } [INFO] [stdout] 59 + } [INFO] [stdout] 60 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-02/src/lib.rs:64:9 [INFO] [stdout] | [INFO] [stdout] 64 | / return match self { [INFO] [stdout] 65 | | RPS::Rock => { [INFO] [stdout] 66 | | match result { [INFO] [stdout] 67 | | Result::Win => 8, [INFO] [stdout] ... | [INFO] [stdout] 86 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 64 ~ match self { [INFO] [stdout] 65 + RPS::Rock => { [INFO] [stdout] 66 + match result { [INFO] [stdout] 67 + Result::Win => 8, [INFO] [stdout] 68 + Result::Lose => 3, [INFO] [stdout] 69 + Result::Draw => 4 [INFO] [stdout] 70 + } [INFO] [stdout] 71 + } [INFO] [stdout] 72 + RPS::Paper => { [INFO] [stdout] 73 + match result { [INFO] [stdout] 74 + Result::Win => 9, [INFO] [stdout] 75 + Result::Lose => 1, [INFO] [stdout] 76 + Result::Draw => 5 [INFO] [stdout] 77 + } [INFO] [stdout] 78 + } [INFO] [stdout] 79 + RPS::Scissors => { [INFO] [stdout] 80 + match result { [INFO] [stdout] 81 + Result::Win => 7, [INFO] [stdout] 82 + Result::Lose => 2, [INFO] [stdout] 83 + Result::Draw => 6 [INFO] [stdout] 84 + } [INFO] [stdout] 85 + } [INFO] [stdout] 86 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-02/src/lib.rs:92:9 [INFO] [stdout] | [INFO] [stdout] 92 | / return match char { [INFO] [stdout] 93 | | "X" => Some(Result::Lose), [INFO] [stdout] 94 | | "Y" => Some(Result::Draw), [INFO] [stdout] 95 | | "Z" => Some(Result::Win), [INFO] [stdout] 96 | | _ => None [INFO] [stdout] 97 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 92 ~ match char { [INFO] [stdout] 93 + "X" => Some(Result::Lose), [INFO] [stdout] 94 + "Y" => Some(Result::Draw), [INFO] [stdout] 95 + "Z" => Some(Result::Win), [INFO] [stdout] 96 + _ => None [INFO] [stdout] 97 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-02/src/lib.rs:110:5 [INFO] [stdout] | [INFO] [stdout] 110 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 110 - return result.to_string(); [INFO] [stdout] 110 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-02/src/lib.rs:108:9 [INFO] [stdout] | [INFO] [stdout] 108 | return acc + right.score(&left) 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] 108 - return acc + right.score(&left) as u32; [INFO] [stdout] 108 + acc + right.score(&left) as u32 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-02/src/lib.rs:122:5 [INFO] [stdout] | [INFO] [stdout] 122 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 122 - return result.to_string(); [INFO] [stdout] 122 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-02/src/lib.rs:120:9 [INFO] [stdout] | [INFO] [stdout] 120 | return acc + left.score_for_result(&right) 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] 120 - return acc + left.score_for_result(&right) as u32; [INFO] [stdout] 120 + acc + left.score_for_result(&right) as u32 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-15/src/lib.rs:51:5 [INFO] [stdout] | [INFO] [stdout] 51 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 51 - return result.to_string(); [INFO] [stdout] 51 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking aoc2023-day-06 v0.1.0 (/opt/rustwide/workdir/2023/day-06) [INFO] [stdout] warning: useless conversion to the same type: `std::ops::Range` [INFO] [stdout] --> 2023/day-15/src/lib.rs:28:52 [INFO] [stdout] | [INFO] [stdout] 28 | let mut boxes: Vec> = (0..256).into_iter().map(|_| LinkedHashMap::new()).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into_iter()`: `(0..256)` [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] --> 2023/day-15/src/lib.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | / return acc + storage.iter().enumerate().fold(0, |acc, (idy, label)| { [INFO] [stdout] 47 | | return acc + (idx + 1) * (idy + 1) * (*label.1 as usize); [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] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 46 ~ acc + storage.iter().enumerate().fold(0, |acc, (idy, label)| { [INFO] [stdout] 47 + return acc + (idx + 1) * (idy + 1) * (*label.1 as usize); [INFO] [stdout] 48 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-15/src/lib.rs:47:13 [INFO] [stdout] | [INFO] [stdout] 47 | return acc + (idx + 1) * (idy + 1) * (*label.1 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] 47 - return acc + (idx + 1) * (idy + 1) * (*label.1 as usize); [INFO] [stdout] 47 + acc + (idx + 1) * (idy + 1) * (*label.1 as usize) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | return Ok(part); [INFO] [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] 49 - return Ok(part); [INFO] [stdout] 49 + Ok(part) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 55 | return self.x + self.m + self.a + self.s; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 55 - return self.x + self.m + self.a + self.s; [INFO] [stdout] 55 + self.x + self.m + self.a + self.s [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 61 | / return [self.x, self.m, self.a, self.s].iter() [INFO] [stdout] 62 | | .fold(1, |acc, it| acc * (it.1 as u64 - it.0 as u64 + 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] 61 ~ [self.x, self.m, self.a, self.s].iter() [INFO] [stdout] 62 ~ .fold(1, |acc, it| acc * (it.1 as u64 - it.0 as u64 + 1)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:68:9 [INFO] [stdout] | [INFO] [stdout] 68 | / return Part { [INFO] [stdout] 69 | | x: (min, max), [INFO] [stdout] 70 | | m: (min, max), [INFO] [stdout] 71 | | a: (min, max), [INFO] [stdout] 72 | | s: (min, max), [INFO] [stdout] 73 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 ~ Part { [INFO] [stdout] 69 + x: (min, max), [INFO] [stdout] 70 + m: (min, max), [INFO] [stdout] 71 + a: (min, max), [INFO] [stdout] 72 + s: (min, max), [INFO] [stdout] 73 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:99:9 [INFO] [stdout] | [INFO] [stdout] 99 | / return match input { [INFO] [stdout] 100 | | "x" => Ok(Category::Extreme), [INFO] [stdout] 101 | | "m" => Ok(Category::Musical), [INFO] [stdout] 102 | | "a" => Ok(Category::Aerodynamic), [INFO] [stdout] 103 | | "s" => Ok(Category::Shiny), [INFO] [stdout] 104 | | _ => Err(anyhow!("Unexpected category: {}", input)) [INFO] [stdout] 105 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 99 ~ match input { [INFO] [stdout] 100 + "x" => Ok(Category::Extreme), [INFO] [stdout] 101 + "m" => Ok(Category::Musical), [INFO] [stdout] 102 + "a" => Ok(Category::Aerodynamic), [INFO] [stdout] 103 + "s" => Ok(Category::Shiny), [INFO] [stdout] 104 + _ => Err(anyhow!("Unexpected category: {}", input)) [INFO] [stdout] 105 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `LESS` contains a capitalized acronym [INFO] [stdout] --> 2023/day-19/src/lib.rs:110:5 [INFO] [stdout] | [INFO] [stdout] 110 | LESS(u32), [INFO] [stdout] | ^^^^ help: consider making the acronym lowercase, except the initial letter: `Less` [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 `GREATER` contains a capitalized acronym [INFO] [stdout] --> 2023/day-19/src/lib.rs:111:5 [INFO] [stdout] | [INFO] [stdout] 111 | GREATER(u32), [INFO] [stdout] | ^^^^^^^ help: consider making the acronym lowercase, except the initial letter: `Greater` [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] --> 2023/day-19/src/lib.rs:129:9 [INFO] [stdout] | [INFO] [stdout] 129 | / return match op { [INFO] [stdout] 130 | | '<' => Ok(Condition::LESS(value)), [INFO] [stdout] 131 | | '>' => Ok(Condition::GREATER(value)), [INFO] [stdout] 132 | | _ => Err(anyhow!("Unexpected operation: {}", op)) [INFO] [stdout] 133 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 129 ~ match op { [INFO] [stdout] 130 + '<' => Ok(Condition::LESS(value)), [INFO] [stdout] 131 + '>' => Ok(Condition::GREATER(value)), [INFO] [stdout] 132 + _ => Err(anyhow!("Unexpected operation: {}", op)) [INFO] [stdout] 133 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:139:9 [INFO] [stdout] | [INFO] [stdout] 139 | / return match self { [INFO] [stdout] 140 | | Condition::LESS(than) => value < *than, [INFO] [stdout] 141 | | Condition::GREATER(than) => value > *than [INFO] [stdout] 142 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 139 ~ match self { [INFO] [stdout] 140 + Condition::LESS(than) => value < *than, [INFO] [stdout] 141 + Condition::GREATER(than) => value > *than [INFO] [stdout] 142 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> 2023/day-19/src/lib.rs:147:40 [INFO] [stdout] | [INFO] [stdout] 147 | Condition::LESS(than) => ((than + 0, adjusted.1), (next.0, than - 1)), [INFO] [stdout] | ^^^^^^^^ help: consider reducing it to: `*than` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] = note: `#[warn(clippy::identity_op)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> 2023/day-19/src/lib.rs:148:55 [INFO] [stdout] | [INFO] [stdout] 148 | Condition::GREATER(than) => ((adjusted.0, than + 0), (than + 1, next.1)) [INFO] [stdout] | ^^^^^^^^ help: consider reducing it to: `*than` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:173:9 [INFO] [stdout] | [INFO] [stdout] 173 | / return Ok(match input { [INFO] [stdout] 174 | | "A" => Action::Accept, [INFO] [stdout] 175 | | "R" => Action::Reject, [INFO] [stdout] 176 | | next => Forward(next.to_string()) [INFO] [stdout] 177 | | }); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 173 ~ Ok(match input { [INFO] [stdout] 174 + "A" => Action::Accept, [INFO] [stdout] 175 + "R" => Action::Reject, [INFO] [stdout] 176 + next => Forward(next.to_string()) [INFO] [stdout] 177 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:189:13 [INFO] [stdout] | [INFO] [stdout] 189 | return format!("{:?}{:?}:{:?}", category, condition, action); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 189 - return format!("{:?}{:?}:{:?}", category, condition, action); [INFO] [stdout] 189 + format!("{:?}{:?}:{:?}", category, condition, action) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:200:9 [INFO] [stdout] | [INFO] [stdout] 200 | / return Ok(Workflow { [INFO] [stdout] 201 | | conditions: parts.iter().take(parts.len() - 1).map(|it| { [INFO] [stdout] 202 | | let (category, condition_action) = it.split_at(1); [INFO] [stdout] 203 | | let parts: Vec<&str> = condition_action.split(':').collect(); [INFO] [stdout] ... | [INFO] [stdout] 210 | | default_action: parts.last().unwrap().parse::().unwrap(), [INFO] [stdout] 211 | | }); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 200 ~ Ok(Workflow { [INFO] [stdout] 201 + conditions: parts.iter().take(parts.len() - 1).map(|it| { [INFO] [stdout] 202 + let (category, condition_action) = it.split_at(1); [INFO] [stdout] 203 + let parts: Vec<&str> = condition_action.split(':').collect(); [INFO] [stdout] 204 + return ( [INFO] [stdout] 205 + category.parse::().unwrap(), [INFO] [stdout] 206 + parts.first().unwrap().parse::().unwrap(), [INFO] [stdout] 207 + parts.last().unwrap().parse::().unwrap() [INFO] [stdout] 208 + ); [INFO] [stdout] 209 + }).collect(), [INFO] [stdout] 210 + default_action: parts.last().unwrap().parse::().unwrap(), [INFO] [stdout] 211 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:204:17 [INFO] [stdout] | [INFO] [stdout] 204 | / return ( [INFO] [stdout] 205 | | category.parse::().unwrap(), [INFO] [stdout] 206 | | parts.first().unwrap().parse::().unwrap(), [INFO] [stdout] 207 | | parts.last().unwrap().parse::().unwrap() [INFO] [stdout] 208 | | ); [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 204 ~ ( [INFO] [stdout] 205 + category.parse::().unwrap(), [INFO] [stdout] 206 + parts.first().unwrap().parse::().unwrap(), [INFO] [stdout] 207 + parts.last().unwrap().parse::().unwrap() [INFO] [stdout] 208 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:217:9 [INFO] [stdout] | [INFO] [stdout] 217 | / return self.conditions.iter().find_map(|(category, condition, action)| { [INFO] [stdout] 218 | | let matches: bool = match category { [INFO] [stdout] 219 | | Category::Extreme => condition.matches(part.x), [INFO] [stdout] 220 | | Category::Musical => condition.matches(part.m), [INFO] [stdout] ... | [INFO] [stdout] 224 | | return if matches { Some(action) } else { None }; [INFO] [stdout] 225 | | }).unwrap_or(&self.default_action); [INFO] [stdout] | |__________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 217 ~ self.conditions.iter().find_map(|(category, condition, action)| { [INFO] [stdout] 218 + let matches: bool = match category { [INFO] [stdout] 219 + Category::Extreme => condition.matches(part.x), [INFO] [stdout] 220 + Category::Musical => condition.matches(part.m), [INFO] [stdout] 221 + Category::Aerodynamic => condition.matches(part.a), [INFO] [stdout] 222 + Category::Shiny => condition.matches(part.s), [INFO] [stdout] 223 + }; [INFO] [stdout] 224 + return if matches { Some(action) } else { None }; [INFO] [stdout] 225 ~ }).unwrap_or(&self.default_action) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:224:13 [INFO] [stdout] | [INFO] [stdout] 224 | return if matches { Some(action) } else { 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] 224 - return if matches { Some(action) } else { None }; [INFO] [stdout] 224 + if matches { Some(action) } else { None } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stdout] --> 2023/day-19/src/lib.rs:228:50 [INFO] [stdout] | [INFO] [stdout] 228 | fn adjust(&self, part: &Part<(u32, u32)>) -> (Vec<(&str, Part<(u32, u32)>)>, Vec>) { [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] --> 2023/day-19/src/lib.rs:254:9 [INFO] [stdout] | [INFO] [stdout] 254 | return (queued, accepted); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 254 - return (queued, accepted); [INFO] [stdout] 254 + (queued, accepted) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `Part<(u32, u32)>` which implements the `Copy` trait [INFO] [stdout] --> 2023/day-19/src/lib.rs:232:46 [INFO] [stdout] | [INFO] [stdout] 232 | let mut adjusted: Part<(u32, u32)> = part.clone(); [INFO] [stdout] | ^^^^^^^^^^^^ help: try dereferencing it: `*part` [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: using `clone` on type `Part<(u32, u32)>` which implements the `Copy` trait [INFO] [stdout] --> 2023/day-19/src/lib.rs:234:46 [INFO] [stdout] | [INFO] [stdout] 234 | let mut next: Part<(u32, u32)> = adjusted.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `adjusted` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:292:5 [INFO] [stdout] | [INFO] [stdout] 292 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 292 - return result.to_string(); [INFO] [stdout] 292 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:268:13 [INFO] [stdout] | [INFO] [stdout] 268 | return acc; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 268 - return acc; [INFO] [stdout] 268 + acc [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:289:9 [INFO] [stdout] | [INFO] [stdout] 289 | return acc; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 289 - return acc; [INFO] [stdout] 289 + acc [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:323:5 [INFO] [stdout] | [INFO] [stdout] 323 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 323 - return result.to_string(); [INFO] [stdout] 323 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:304:13 [INFO] [stdout] | [INFO] [stdout] 304 | return acc; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 304 - return acc; [INFO] [stdout] 304 + acc [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking aoc2022-day-04 v0.1.0 (/opt/rustwide/workdir/2022/day-04) [INFO] [stderr] Checking aoc2023-day-09 v0.1.0 (/opt/rustwide/workdir/2023/day-09) [INFO] [stdout] warning: a method with this name may be added to the standard library in the future [INFO] [stdout] --> 2023/day-06/src/lib.rs:56:12 [INFO] [stdout] | [INFO] [stdout] 56 | }).intersperse("").collect(); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: call with fully qualified syntax `itertools::Itertools::intersperse(...)` to keep using the current method [INFO] [stdout] = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior! [INFO] [stdout] = note: for more information, see issue #48919 [INFO] [stdout] = note: `#[warn(unstable_name_collisions)]` (part of `#[warn(future_incompatible)]`) on by default [INFO] [stdout] help: add `#![feature(iter_intersperse)]` to the crate attributes to enable `std::iter::Iterator::intersperse` [INFO] [stdout] | [INFO] [stdout] 1 + #![feature(iter_intersperse)] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: a method with this name may be added to the standard library in the future [INFO] [stdout] --> 2023/day-07/src/lib.rs:71:70 [INFO] [stdout] | [INFO] [stdout] 71 | let rank_key: String = sizes.iter().map(|it| it.to_string()).intersperse("".to_owned()).collect(); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: call with fully qualified syntax `itertools::Itertools::intersperse(...)` to keep using the current method [INFO] [stdout] = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior! [INFO] [stdout] = note: for more information, see issue #48919 [INFO] [stdout] = note: `#[warn(unstable_name_collisions)]` (part of `#[warn(future_incompatible)]`) on by default [INFO] [stdout] help: add `#![feature(iter_intersperse)]` to the crate attributes to enable `std::iter::Iterator::intersperse` [INFO] [stdout] | [INFO] [stdout] 1 + #![feature(iter_intersperse)] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-06/src/lib.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | return options_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] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 18 - return options_count; [INFO] [stdout] 18 + options_count [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-06/src/lib.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 39 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 39 - return result.to_string(); [INFO] [stdout] 39 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-06/src/lib.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | return numbers; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 numbers; [INFO] [stdout] 29 + numbers [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.fold` can be written more succinctly using another method [INFO] [stdout] --> 2023/day-06/src/lib.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | .fold(1, |acc, it| acc * it); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `product::()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_fold [INFO] [stdout] = note: `#[warn(clippy::unnecessary_fold)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-06/src/lib.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 46 | return (max_x.trunc() - min_x.trunc()) 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] 46 - return (max_x.trunc() - min_x.trunc()) as u64; [INFO] [stdout] 46 + (max_x.trunc() - min_x.trunc()) as u64 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-06/src/lib.rs:61:5 [INFO] [stdout] | [INFO] [stdout] 61 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 61 - return result.to_string(); [INFO] [stdout] 61 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-06/src/lib.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | return number.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] 57 - return number.parse::().unwrap(); [INFO] [stdout] 57 + number.parse::().unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: a method with this name may be added to the standard library in the future [INFO] [stdout] --> 2023/day-07/src/lib.rs:99:14 [INFO] [stdout] | [INFO] [stdout] 99 | .intersperse("".to_owned()) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: call with fully qualified syntax `itertools::Itertools::intersperse(...)` to keep using the current method [INFO] [stdout] = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior! [INFO] [stdout] = note: for more information, see issue #48919 [INFO] [stdout] help: add `#![feature(iter_intersperse)]` to the crate attributes to enable `std::iter::Iterator::intersperse` [INFO] [stdout] | [INFO] [stdout] 1 + #![feature(iter_intersperse)] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking aoc2022-day-03 v0.1.0 (/opt/rustwide/workdir/2022/day-03) [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-04/src/lib.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | / return input.split("-") [INFO] [stdout] 15 | | .map(|it| it.parse::().unwrap()) [INFO] [stdout] 16 | | .next_tuple() [INFO] [stdout] 17 | | .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] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 14 ~ input.split("-") [INFO] [stdout] 15 + .map(|it| it.parse::().unwrap()) [INFO] [stdout] 16 + .next_tuple() [INFO] [stdout] 17 ~ .unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-04/src/lib.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 34 - return result.to_string(); [INFO] [stdout] 34 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-04/src/lib.rs:32:9 [INFO] [stdout] | [INFO] [stdout] 32 | return acc + if left == range || right == range { 1u32 } else { 0u32 }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 acc + if left == range || right == range { 1u32 } else { 0u32 }; [INFO] [stdout] 32 + acc + if left == range || right == range { 1u32 } else { 0u32 } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-04/src/lib.rs:51:5 [INFO] [stdout] | [INFO] [stdout] 51 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 51 - return result.to_string(); [INFO] [stdout] 51 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-04/src/lib.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | return acc + if range.0 <= range.1 { 1 } else { 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] 49 - return acc + if range.0 <= range.1 { 1 } else { 0 }; [INFO] [stdout] 49 + acc + if range.0 <= range.1 { 1 } else { 0 } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: importing legacy numeric constants [INFO] [stdout] --> 2023/day-07/src/lib.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::u64; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: remove this import [INFO] [stdout] = note: then `u64::` will resolve to the respective associated constant [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] --> 2023/day-07/src/lib.rs:73:9 [INFO] [stdout] | [INFO] [stdout] 73 | / return Hand { [INFO] [stdout] 74 | | bid: parts.last().unwrap().parse().unwrap(), [INFO] [stdout] 75 | | rank: RANKS.get(rank_key.as_str()).unwrap().to_owned(), [INFO] [stdout] 76 | | base13, [INFO] [stdout] 77 | | }; [INFO] [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] 73 ~ Hand { [INFO] [stdout] 74 + bid: parts.last().unwrap().parse().unwrap(), [INFO] [stdout] 75 + rank: RANKS.get(rank_key.as_str()).unwrap().to_owned(), [INFO] [stdout] 76 + base13, [INFO] [stdout] 77 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you are using an explicit closure for copying elements [INFO] [stdout] --> 2023/day-07/src/lib.rs:61:34 [INFO] [stdout] | [INFO] [stdout] 61 | let mut cards: Vec = parts.first().unwrap().as_bytes().iter().map(|it| *it).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider calling the dedicated `copied` method: `parts.first().unwrap().as_bytes().iter().copied()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stdout] = note: `#[warn(clippy::map_clone)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-07/src/lib.rs:102:9 [INFO] [stdout] | [INFO] [stdout] 102 | / return Hand { [INFO] [stdout] 103 | | bid: parts.last().unwrap().parse().unwrap(), [INFO] [stdout] 104 | | rank: RANKS.get(rank_key.as_str()).unwrap().to_owned(), [INFO] [stdout] 105 | | base13, [INFO] [stdout] 106 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 102 ~ Hand { [INFO] [stdout] 103 + bid: parts.last().unwrap().parse().unwrap(), [INFO] [stdout] 104 + rank: RANKS.get(rank_key.as_str()).unwrap().to_owned(), [INFO] [stdout] 105 + base13, [INFO] [stdout] 106 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you are using an explicit closure for copying elements [INFO] [stdout] --> 2023/day-07/src/lib.rs:83:30 [INFO] [stdout] | [INFO] [stdout] 83 | let cards: Vec = parts.first().unwrap().as_bytes().iter().map(|it| *it).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider calling the dedicated `copied` method: `parts.first().unwrap().as_bytes().iter().copied()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `repeat().take()` can be written more concisely [INFO] [stdout] --> 2023/day-07/src/lib.rs:98:20 [INFO] [stdout] | [INFO] [stdout] 98 | .merge(std::iter::repeat('J'.to_string()).take(jokers_count as usize)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n('J'.to_string(), jokers_count as usize)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n [INFO] [stdout] = note: `#[warn(clippy::manual_repeat_n)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-07/src/lib.rs:115:9 [INFO] [stdout] | [INFO] [stdout] 115 | / return reversed.iter() [INFO] [stdout] 116 | | .enumerate() [INFO] [stdout] 117 | | .fold(0, |acc, (idx, ch)| { [INFO] [stdout] 118 | | return acc + base.get(ch).unwrap().to_owned() as usize * base_len.pow(idx as u32); [INFO] [stdout] 119 | | }) 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] 115 ~ reversed.iter() [INFO] [stdout] 116 + .enumerate() [INFO] [stdout] 117 + .fold(0, |acc, (idx, ch)| { [INFO] [stdout] 118 + return acc + base.get(ch).unwrap().to_owned() as usize * base_len.pow(idx as u32); [INFO] [stdout] 119 ~ }) as u64 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-07/src/lib.rs:118:17 [INFO] [stdout] | [INFO] [stdout] 118 | return acc + base.get(ch).unwrap().to_owned() as usize * base_len.pow(idx 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] 118 - return acc + base.get(ch).unwrap().to_owned() as usize * base_len.pow(idx as u32); [INFO] [stdout] 118 + acc + base.get(ch).unwrap().to_owned() as usize * base_len.pow(idx as u32) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-07/src/lib.rs:139:9 [INFO] [stdout] | [INFO] [stdout] 139 | 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] 139 - return Ordering::Equal; [INFO] [stdout] 139 + Ordering::Equal [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-07/src/lib.rs:147:9 [INFO] [stdout] | [INFO] [stdout] 147 | return self.rank == other.rank && self.base13 == other.base13; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 147 - return self.rank == other.rank && self.base13 == other.base13; [INFO] [stdout] 147 + self.rank == other.rank && self.base13 == other.base13 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-canonical implementation of `partial_cmp` on an `Ord` type [INFO] [stdout] --> 2023/day-07/src/lib.rs:151:1 [INFO] [stdout] | [INFO] [stdout] 151 | / impl PartialOrd for Hand { [INFO] [stdout] 152 | | fn partial_cmp(&self, other: &Self) -> Option { [INFO] [stdout] 153 | | return Some(self.compare(other)); [INFO] [stdout] 154 | | } [INFO] [stdout] 155 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#non_canonical_partial_ord_impl [INFO] [stdout] = note: `#[warn(clippy::non_canonical_partial_ord_impl)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 152 - fn partial_cmp(&self, other: &Self) -> Option { [INFO] [stdout] 153 - return Some(self.compare(other)); [INFO] [stdout] 154 - } [INFO] [stdout] 152 + fn partial_cmp(&self, other: &Self) -> Option { Some(std::cmp::Ord::cmp(self, other)) } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-07/src/lib.rs:153:9 [INFO] [stdout] | [INFO] [stdout] 153 | return Some(self.compare(other)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 153 - return Some(self.compare(other)); [INFO] [stdout] 153 + Some(self.compare(other)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-07/src/lib.rs:159:9 [INFO] [stdout] | [INFO] [stdout] 159 | return self.compare(other); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 159 - return self.compare(other); [INFO] [stdout] 159 + self.compare(other) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-07/src/lib.rs:168:5 [INFO] [stdout] | [INFO] [stdout] 168 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 168 - return result.to_string(); [INFO] [stdout] 168 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> 2023/day-07/src/lib.rs:164:54 [INFO] [stdout] | [INFO] [stdout] 164 | let mut hands: Vec = input.split("\n").map(|line| Hand::create(line)).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `Hand::create` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] = note: `#[warn(clippy::redundant_closure)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-07/src/lib.rs:176:5 [INFO] [stdout] | [INFO] [stdout] 176 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 176 - return result.to_string(); [INFO] [stdout] 176 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> 2023/day-07/src/lib.rs:172:54 [INFO] [stdout] | [INFO] [stdout] 172 | let mut hands: Vec = input.split("\n").map(|line| Hand::create_with_jokers(line)).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `Hand::create_with_jokers` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-03/src/lib.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 21 - return result.to_string(); [INFO] [stdout] 21 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-03/src/lib.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | return acc + score 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] 19 - return acc + score as u32; [INFO] [stdout] 19 + acc + score as u32 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator` [INFO] [stdout] --> 2022/day-03/src/lib.rs:16:51 [INFO] [stdout] | [INFO] [stdout] 16 | let set: HashSet = HashSet::from_iter(parts.1.bytes().into_iter()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()` [INFO] [stdout] --> /rustc/3645249d79dfb136b5d8de3ce153d19d6698d92d/library/core/src/iter/traits/collect.rs:152:20 [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] help: consider removing the `.into_iter()` [INFO] [stdout] | [INFO] [stdout] 16 - let set: HashSet = HashSet::from_iter(parts.1.bytes().into_iter()); [INFO] [stdout] 16 + let set: HashSet = HashSet::from_iter(parts.1.bytes()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-03/src/lib.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 32 - return result.to_string(); [INFO] [stdout] 32 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::slice::Chunks<'_, &str>` [INFO] [stdout] --> 2022/day-03/src/lib.rs:25:23 [INFO] [stdout] | [INFO] [stdout] 25 | let result: u32 = input.split("\n").collect::>().chunks(3).into_iter().fold(0, |acc, chunk| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into_iter()`: `input.split("\n").collect::>().chunks(3)` [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] --> 2022/day-03/src/lib.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | return acc + score 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] 30 - return acc + score as u32; [INFO] [stdout] 30 + acc + score as u32 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator` [INFO] [stdout] --> 2022/day-03/src/lib.rs:26:52 [INFO] [stdout] | [INFO] [stdout] 26 | let set1: HashSet = HashSet::from_iter(chunk[1].bytes().into_iter()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()` [INFO] [stdout] --> /rustc/3645249d79dfb136b5d8de3ce153d19d6698d92d/library/core/src/iter/traits/collect.rs:152:20 [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] help: consider removing the `.into_iter()` [INFO] [stdout] | [INFO] [stdout] 26 - let set1: HashSet = HashSet::from_iter(chunk[1].bytes().into_iter()); [INFO] [stdout] 26 + let set1: HashSet = HashSet::from_iter(chunk[1].bytes()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator` [INFO] [stdout] --> 2022/day-03/src/lib.rs:27:52 [INFO] [stdout] | [INFO] [stdout] 27 | let set2: HashSet = HashSet::from_iter(chunk[2].bytes().into_iter()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()` [INFO] [stdout] --> /rustc/3645249d79dfb136b5d8de3ce153d19d6698d92d/library/core/src/iter/traits/collect.rs:152:20 [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] help: consider removing the `.into_iter()` [INFO] [stdout] | [INFO] [stdout] 27 - let set2: HashSet = HashSet::from_iter(chunk[2].bytes().into_iter()); [INFO] [stdout] 27 + let set2: HashSet = HashSet::from_iter(chunk[2].bytes()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-09/src/lib.rs:18:9 [INFO] [stdout] | [INFO] [stdout] 18 | / return History { [INFO] [stdout] 19 | | data: input.split('\n').map(|line| { [INFO] [stdout] 20 | | return line.split(' ').map(|it| it.trim().parse::().unwrap()).collect(); [INFO] [stdout] 21 | | }).collect() [INFO] [stdout] 22 | | }; [INFO] [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] 18 ~ History { [INFO] [stdout] 19 + data: input.split('\n').map(|line| { [INFO] [stdout] 20 + return line.split(' ').map(|it| it.trim().parse::().unwrap()).collect(); [INFO] [stdout] 21 + }).collect() [INFO] [stdout] 22 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-09/src/lib.rs:20:17 [INFO] [stdout] | [INFO] [stdout] 20 | return line.split(' ').map(|it| it.trim().parse::().unwrap()).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 20 - return line.split(' ').map(|it| it.trim().parse::().unwrap()).collect(); [INFO] [stdout] 20 + line.split(' ').map(|it| it.trim().parse::().unwrap()).collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-09/src/lib.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 44 - return result.to_string(); [INFO] [stdout] 44 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-09/src/lib.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | return path.iter().fold(0, |acc, it| acc + *it); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 - return path.iter().fold(0, |acc, it| acc + *it); [INFO] [stdout] 41 + path.iter().fold(0, |acc, it| acc + *it) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-09/src/lib.rs:65:5 [INFO] [stdout] | [INFO] [stdout] 65 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 65 - return result.to_string(); [INFO] [stdout] 65 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling generator v0.7.5 [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-09/src/lib.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 62 | return path.iter().rev().fold(0, |acc, it| *it - acc); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 62 - return path.iter().rev().fold(0, |acc, it| *it - acc); [INFO] [stdout] 62 + path.iter().rev().fold(0, |acc, it| *it - acc) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking aoc2023-day-24 v0.1.0 (/opt/rustwide/workdir/2023/day-24) [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-24/src/lib.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | / return Ok(Hailstone { [INFO] [stdout] 31 | | position: (pos_vel[0], pos_vel[1], pos_vel[2]), [INFO] [stdout] 32 | | velocity: (pos_vel[3], pos_vel[4], pos_vel[5]), [INFO] [stdout] 33 | | }); [INFO] [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] 30 ~ Ok(Hailstone { [INFO] [stdout] 31 + position: (pos_vel[0], pos_vel[1], pos_vel[2]), [INFO] [stdout] 32 + velocity: (pos_vel[3], pos_vel[4], pos_vel[5]), [INFO] [stdout] 33 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-24/src/lib.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | return (self.position.1 as f64 - (self.position.0 as f64 * bias), bias); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 - return (self.position.1 as f64 - (self.position.0 as f64 * bias), bias); [INFO] [stdout] 40 + (self.position.1 as f64 - (self.position.0 as f64 * bias), bias) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-24/src/lib.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | return if self.is_before(x, y) || other.is_before(x, y) { None } else { Some((x, y)) }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 50 - return if self.is_before(x, y) || other.is_before(x, y) { None } else { Some((x, y)) }; [INFO] [stdout] 50 + if self.is_before(x, y) || other.is_before(x, y) { None } else { Some((x, y)) } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-24/src/lib.rs:54:9 [INFO] [stdout] | [INFO] [stdout] 54 | / return ((x - self.position.0 as f64) / self.velocity.0 as f64) < 0f64 [INFO] [stdout] 55 | | || ((y - self.position.1 as f64) / self.velocity.1 as f64) < 0f64; [INFO] [stdout] | |_____________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 54 ~ ((x - self.position.0 as f64) / self.velocity.0 as f64) < 0f64 [INFO] [stdout] 55 ~ || ((y - self.position.1 as f64) / self.velocity.1 as f64) < 0f64 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-24/src/lib.rs:77:5 [INFO] [stdout] | [INFO] [stdout] 77 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 77 - return result.to_string(); [INFO] [stdout] 77 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-24/src/lib.rs:65:9 [INFO] [stdout] | [INFO] [stdout] 65 | / return acc + hailstones[idx + 1..].iter().fold(0, |acc, hs2| { [INFO] [stdout] 66 | | if let Some(intersection) = hs1.intersect(hs2) { [INFO] [stdout] 67 | | return if intersection.0 >= from && intersection.0 <= to && intersection.1 >= from && intersection.1 <= to { [INFO] [stdout] 68 | | acc + 1 [INFO] [stdout] ... | [INFO] [stdout] 73 | | return acc; [INFO] [stdout] 74 | | }); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 65 ~ acc + hailstones[idx + 1..].iter().fold(0, |acc, hs2| { [INFO] [stdout] 66 + if let Some(intersection) = hs1.intersect(hs2) { [INFO] [stdout] 67 + return if intersection.0 >= from && intersection.0 <= to && intersection.1 >= from && intersection.1 <= to { [INFO] [stdout] 68 + acc + 1 [INFO] [stdout] 69 + } else { [INFO] [stdout] 70 + acc [INFO] [stdout] 71 + }; [INFO] [stdout] 72 + } [INFO] [stdout] 73 + return acc; [INFO] [stdout] 74 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-24/src/lib.rs:73:13 [INFO] [stdout] | [INFO] [stdout] 73 | return acc; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 73 - return acc; [INFO] [stdout] 73 + acc [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-24/src/lib.rs:117:9 [INFO] [stdout] | [INFO] [stdout] 117 | 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] 117 - return None; [INFO] [stdout] 117 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-24/src/lib.rs:121:9 [INFO] [stdout] | [INFO] [stdout] 121 | / return hailstones.iter().all(|hs| { [INFO] [stdout] 122 | | let time: i64; [INFO] [stdout] 123 | | if hs.velocity.0 != velocity.0 { [INFO] [stdout] 124 | | time = (position.0 - hs.position.0) / (hs.velocity.0 - velocity.0); [INFO] [stdout] ... | [INFO] [stdout] 134 | | && position.2 + time * velocity.2 == hs.position.2 + time * hs.velocity.2; [INFO] [stdout] 135 | | }); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 121 ~ hailstones.iter().all(|hs| { [INFO] [stdout] 122 + let time: i64; [INFO] [stdout] 123 + if hs.velocity.0 != velocity.0 { [INFO] [stdout] 124 + time = (position.0 - hs.position.0) / (hs.velocity.0 - velocity.0); [INFO] [stdout] 125 + } else if hs.velocity.1 != velocity.1 { [INFO] [stdout] 126 + time = (position.1 - hs.position.1) / (hs.velocity.1 - velocity.1); [INFO] [stdout] 127 + } else if hs.velocity.2 != velocity.2 { [INFO] [stdout] 128 + time = (position.2 - hs.position.2) / (hs.velocity.2 - velocity.2); [INFO] [stdout] 129 + } else { [INFO] [stdout] 130 + panic!("Cannot resolve time for position '{:?}' and velocity '{:?}'", position, velocity) [INFO] [stdout] 131 + } [INFO] [stdout] 132 + return position.0 + time * velocity.0 == hs.position.0 + time * hs.velocity.0 [INFO] [stdout] 133 + && position.1 + time * velocity.1 == hs.position.1 + time * hs.velocity.1 [INFO] [stdout] 134 + && position.2 + time * velocity.2 == hs.position.2 + time * hs.velocity.2; [INFO] [stdout] 135 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-24/src/lib.rs:132:13 [INFO] [stdout] | [INFO] [stdout] 132 | / return position.0 + time * velocity.0 == hs.position.0 + time * hs.velocity.0 [INFO] [stdout] 133 | | && position.1 + time * velocity.1 == hs.position.1 + time * hs.velocity.1 [INFO] [stdout] 134 | | && position.2 + time * velocity.2 == hs.position.2 + time * hs.velocity.2; [INFO] [stdout] | |_________________________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 132 ~ position.0 + time * velocity.0 == hs.position.0 + time * hs.velocity.0 [INFO] [stdout] 133 + && position.1 + time * velocity.1 == hs.position.1 + time * hs.velocity.1 [INFO] [stdout] 134 ~ && position.2 + time * velocity.2 == hs.position.2 + time * hs.velocity.2 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-24/src/lib.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | / return Ok(Hailstone { [INFO] [stdout] 31 | | position: (pos_vel[0], pos_vel[1], pos_vel[2]), [INFO] [stdout] 32 | | velocity: (pos_vel[3], pos_vel[4], pos_vel[5]), [INFO] [stdout] 33 | | }); [INFO] [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] 30 ~ Ok(Hailstone { [INFO] [stdout] 31 + position: (pos_vel[0], pos_vel[1], pos_vel[2]), [INFO] [stdout] 32 + velocity: (pos_vel[3], pos_vel[4], pos_vel[5]), [INFO] [stdout] 33 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-24/src/lib.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | return (self.position.1 as f64 - (self.position.0 as f64 * bias), bias); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 - return (self.position.1 as f64 - (self.position.0 as f64 * bias), bias); [INFO] [stdout] 40 + (self.position.1 as f64 - (self.position.0 as f64 * bias), bias) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-24/src/lib.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | return if self.is_before(x, y) || other.is_before(x, y) { None } else { Some((x, y)) }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 50 - return if self.is_before(x, y) || other.is_before(x, y) { None } else { Some((x, y)) }; [INFO] [stdout] 50 + if self.is_before(x, y) || other.is_before(x, y) { None } else { Some((x, y)) } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-24/src/lib.rs:54:9 [INFO] [stdout] | [INFO] [stdout] 54 | / return ((x - self.position.0 as f64) / self.velocity.0 as f64) < 0f64 [INFO] [stdout] 55 | | || ((y - self.position.1 as f64) / self.velocity.1 as f64) < 0f64; [INFO] [stdout] | |_____________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 54 ~ ((x - self.position.0 as f64) / self.velocity.0 as f64) < 0f64 [INFO] [stdout] 55 ~ || ((y - self.position.1 as f64) / self.velocity.1 as f64) < 0f64 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-24/src/lib.rs:77:5 [INFO] [stdout] | [INFO] [stdout] 77 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 77 - return result.to_string(); [INFO] [stdout] 77 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-24/src/lib.rs:65:9 [INFO] [stdout] | [INFO] [stdout] 65 | / return acc + hailstones[idx + 1..].iter().fold(0, |acc, hs2| { [INFO] [stdout] 66 | | if let Some(intersection) = hs1.intersect(hs2) { [INFO] [stdout] 67 | | return if intersection.0 >= from && intersection.0 <= to && intersection.1 >= from && intersection.1 <= to { [INFO] [stdout] 68 | | acc + 1 [INFO] [stdout] ... | [INFO] [stdout] 73 | | return acc; [INFO] [stdout] 74 | | }); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 65 ~ acc + hailstones[idx + 1..].iter().fold(0, |acc, hs2| { [INFO] [stdout] 66 + if let Some(intersection) = hs1.intersect(hs2) { [INFO] [stdout] 67 + return if intersection.0 >= from && intersection.0 <= to && intersection.1 >= from && intersection.1 <= to { [INFO] [stdout] 68 + acc + 1 [INFO] [stdout] 69 + } else { [INFO] [stdout] 70 + acc [INFO] [stdout] 71 + }; [INFO] [stdout] 72 + } [INFO] [stdout] 73 + return acc; [INFO] [stdout] 74 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-24/src/lib.rs:73:13 [INFO] [stdout] | [INFO] [stdout] 73 | return acc; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 73 - return acc; [INFO] [stdout] 73 + acc [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-24/src/lib.rs:117:9 [INFO] [stdout] | [INFO] [stdout] 117 | 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] 117 - return None; [INFO] [stdout] 117 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-24/src/lib.rs:121:9 [INFO] [stdout] | [INFO] [stdout] 121 | / return hailstones.iter().all(|hs| { [INFO] [stdout] 122 | | let time: i64; [INFO] [stdout] 123 | | if hs.velocity.0 != velocity.0 { [INFO] [stdout] 124 | | time = (position.0 - hs.position.0) / (hs.velocity.0 - velocity.0); [INFO] [stdout] ... | [INFO] [stdout] 134 | | && position.2 + time * velocity.2 == hs.position.2 + time * hs.velocity.2; [INFO] [stdout] 135 | | }); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 121 ~ hailstones.iter().all(|hs| { [INFO] [stdout] 122 + let time: i64; [INFO] [stdout] 123 + if hs.velocity.0 != velocity.0 { [INFO] [stdout] 124 + time = (position.0 - hs.position.0) / (hs.velocity.0 - velocity.0); [INFO] [stdout] 125 + } else if hs.velocity.1 != velocity.1 { [INFO] [stdout] 126 + time = (position.1 - hs.position.1) / (hs.velocity.1 - velocity.1); [INFO] [stdout] 127 + } else if hs.velocity.2 != velocity.2 { [INFO] [stdout] 128 + time = (position.2 - hs.position.2) / (hs.velocity.2 - velocity.2); [INFO] [stdout] 129 + } else { [INFO] [stdout] 130 + panic!("Cannot resolve time for position '{:?}' and velocity '{:?}'", position, velocity) [INFO] [stdout] 131 + } [INFO] [stdout] 132 + return position.0 + time * velocity.0 == hs.position.0 + time * hs.velocity.0 [INFO] [stdout] 133 + && position.1 + time * velocity.1 == hs.position.1 + time * hs.velocity.1 [INFO] [stdout] 134 + && position.2 + time * velocity.2 == hs.position.2 + time * hs.velocity.2; [INFO] [stdout] 135 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-24/src/lib.rs:132:13 [INFO] [stdout] | [INFO] [stdout] 132 | / return position.0 + time * velocity.0 == hs.position.0 + time * hs.velocity.0 [INFO] [stdout] 133 | | && position.1 + time * velocity.1 == hs.position.1 + time * hs.velocity.1 [INFO] [stdout] 134 | | && position.2 + time * velocity.2 == hs.position.2 + time * hs.velocity.2; [INFO] [stdout] | |_________________________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 132 ~ position.0 + time * velocity.0 == hs.position.0 + time * hs.velocity.0 [INFO] [stdout] 133 + && position.1 + time * velocity.1 == hs.position.1 + time * hs.velocity.1 [INFO] [stdout] 134 ~ && position.2 + time * velocity.2 == hs.position.2 + time * hs.velocity.2 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `RIGHT` contains a capitalized acronym [INFO] [stdout] --> 2023/day-18/src/lib.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | RIGHT, [INFO] [stdout] | ^^^^^ help: consider making the acronym lowercase, except the initial letter: `Right` [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 `DOWN` contains a capitalized acronym [INFO] [stdout] --> 2023/day-18/src/lib.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | DOWN, [INFO] [stdout] | ^^^^ help: consider making the acronym lowercase, except the initial letter: `Down` [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 `LEFT` contains a capitalized acronym [INFO] [stdout] --> 2023/day-18/src/lib.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | LEFT, [INFO] [stdout] | ^^^^ help: consider making the acronym lowercase, except the initial letter: `Left` [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] --> 2023/day-18/src/lib.rs:37:9 [INFO] [stdout] | [INFO] [stdout] 37 | / return match input { [INFO] [stdout] 38 | | "U" => DigDirection::UP, [INFO] [stdout] 39 | | "R" => DigDirection::RIGHT, [INFO] [stdout] 40 | | "D" => DigDirection::DOWN, [INFO] [stdout] 41 | | "L" => DigDirection::LEFT, [INFO] [stdout] 42 | | _ => panic!("Invalid direction: {}", input) [INFO] [stdout] 43 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 37 ~ match input { [INFO] [stdout] 38 + "U" => DigDirection::UP, [INFO] [stdout] 39 + "R" => DigDirection::RIGHT, [INFO] [stdout] 40 + "D" => DigDirection::DOWN, [INFO] [stdout] 41 + "L" => DigDirection::LEFT, [INFO] [stdout] 42 + _ => panic!("Invalid direction: {}", input) [INFO] [stdout] 43 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-18/src/lib.rs:47:9 [INFO] [stdout] | [INFO] [stdout] 47 | / return match input { [INFO] [stdout] 48 | | 0 => DigDirection::RIGHT, [INFO] [stdout] 49 | | 1 => DigDirection::DOWN, [INFO] [stdout] 50 | | 2 => DigDirection::LEFT, [INFO] [stdout] 51 | | 3 => DigDirection::UP, [INFO] [stdout] 52 | | _ => panic!("Invalid direction: {}", input) [INFO] [stdout] 53 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 ~ match input { [INFO] [stdout] 48 + 0 => DigDirection::RIGHT, [INFO] [stdout] 49 + 1 => DigDirection::DOWN, [INFO] [stdout] 50 + 2 => DigDirection::LEFT, [INFO] [stdout] 51 + 3 => DigDirection::UP, [INFO] [stdout] 52 + _ => panic!("Invalid direction: {}", input) [INFO] [stdout] 53 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-18/src/lib.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | / return match self { [INFO] [stdout] 58 | | DigDirection::UP => (length as i64 * -1, 0), [INFO] [stdout] 59 | | DigDirection::RIGHT => (0, length as i64), [INFO] [stdout] 60 | | DigDirection::DOWN => (length as i64, 0), [INFO] [stdout] 61 | | DigDirection::LEFT => (0, length as i64 * -1), [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] 57 ~ match self { [INFO] [stdout] 58 + DigDirection::UP => (length as i64 * -1, 0), [INFO] [stdout] 59 + DigDirection::RIGHT => (0, length as i64), [INFO] [stdout] 60 + DigDirection::DOWN => (length as i64, 0), [INFO] [stdout] 61 + DigDirection::LEFT => (0, length as i64 * -1), [INFO] [stdout] 62 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this multiplication by -1 can be written more succinctly [INFO] [stdout] --> 2023/day-18/src/lib.rs:58:34 [INFO] [stdout] | [INFO] [stdout] 58 | DigDirection::UP => (length as i64 * -1, 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: consider using: `-(length as i64)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#neg_multiply [INFO] [stdout] = note: `#[warn(clippy::neg_multiply)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this multiplication by -1 can be written more succinctly [INFO] [stdout] --> 2023/day-18/src/lib.rs:61:39 [INFO] [stdout] | [INFO] [stdout] 61 | DigDirection::LEFT => (0, length as i64 * -1), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: consider using: `-(length as i64)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#neg_multiply [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-18/src/lib.rs:75:9 [INFO] [stdout] | [INFO] [stdout] 75 | / return DigInstruction { [INFO] [stdout] 76 | | direction: DigDirection::from_str(parts.first().unwrap()), [INFO] [stdout] 77 | | length: parts.last().unwrap().parse::().unwrap(), [INFO] [stdout] 78 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 75 ~ DigInstruction { [INFO] [stdout] 76 + direction: DigDirection::from_str(parts.first().unwrap()), [INFO] [stdout] 77 + length: parts.last().unwrap().parse::().unwrap(), [INFO] [stdout] 78 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-18/src/lib.rs:83:9 [INFO] [stdout] | [INFO] [stdout] 83 | / return DigInstruction { [INFO] [stdout] 84 | | direction: DigDirection::from_num(&hex[5..].parse::().unwrap()), [INFO] [stdout] 85 | | length: u64::from_str_radix(&hex[..5], 16).unwrap(), [INFO] [stdout] 86 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 83 ~ DigInstruction { [INFO] [stdout] 84 + direction: DigDirection::from_num(&hex[5..].parse::().unwrap()), [INFO] [stdout] 85 + length: u64::from_str_radix(&hex[..5], 16).unwrap(), [INFO] [stdout] 86 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-18/src/lib.rs:91:9 [INFO] [stdout] | [INFO] [stdout] 91 | return Point { x: from.x + offset_x as f64, y: from.y + offset_y as f64 }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 91 - return Point { x: from.x + offset_x as f64, y: from.y + offset_y as f64 }; [INFO] [stdout] 91 + Point { x: from.x + offset_x as f64, y: from.y + offset_y as f64 } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-18/src/lib.rs:110:5 [INFO] [stdout] | [INFO] [stdout] 110 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 110 - return result.to_string(); [INFO] [stdout] 110 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-18/src/lib.rs:100:9 [INFO] [stdout] | [INFO] [stdout] 100 | return (perimeter + instruction.length, instruction.dig(&last_point)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 100 - return (perimeter + instruction.length, instruction.dig(&last_point)); [INFO] [stdout] 100 + (perimeter + instruction.length, instruction.dig(&last_point)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-18/src/lib.rs:128:5 [INFO] [stdout] | [INFO] [stdout] 128 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 128 - return result.to_string(); [INFO] [stdout] 128 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-18/src/lib.rs:118:9 [INFO] [stdout] | [INFO] [stdout] 118 | return (perimeter + instruction.length, instruction.dig(&last_point)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 (perimeter + instruction.length, instruction.dig(&last_point)); [INFO] [stdout] 118 + (perimeter + instruction.length, instruction.dig(&last_point)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-12/src/lib.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | / return DamagedLine { [INFO] [stdout] 31 | | line: parts.first().unwrap().chars().map(|it| match it { [INFO] [stdout] 32 | | '?' => LineItem::Unknown, [INFO] [stdout] 33 | | '.' => LineItem::Separator, [INFO] [stdout] ... | [INFO] [stdout] 38 | | cache: HashMap::new(), [INFO] [stdout] 39 | | }; [INFO] [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] 30 ~ DamagedLine { [INFO] [stdout] 31 + line: parts.first().unwrap().chars().map(|it| match it { [INFO] [stdout] 32 + '?' => LineItem::Unknown, [INFO] [stdout] 33 + '.' => LineItem::Separator, [INFO] [stdout] 34 + '#' => LineItem::Spring, [INFO] [stdout] 35 + _ => panic!("Unexpected input") [INFO] [stdout] 36 + }).collect(), [INFO] [stdout] 37 + sizes: parts.last().unwrap().split(',').map(|it| it.parse::().unwrap()).collect(), [INFO] [stdout] 38 + cache: HashMap::new(), [INFO] [stdout] 39 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-12/src/lib.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | / return DamagedLine { [INFO] [stdout] 47 | | line: single.line.iter() [INFO] [stdout] 48 | | .cycle() [INFO] [stdout] 49 | | .take(single.line.len() * factor - 1) [INFO] [stdout] ... | [INFO] [stdout] 57 | | cache: HashMap::new(), [INFO] [stdout] 58 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 ~ DamagedLine { [INFO] [stdout] 47 + line: single.line.iter() [INFO] [stdout] 48 + .cycle() [INFO] [stdout] 49 + .take(single.line.len() * factor - 1) [INFO] [stdout] 50 + .map(|it| *it) [INFO] [stdout] 51 + .collect(), [INFO] [stdout] 52 + sizes: single.sizes.iter() [INFO] [stdout] 53 + .cycle() [INFO] [stdout] 54 + .take(single.sizes.len() * factor) [INFO] [stdout] 55 + .map(|it| *it) [INFO] [stdout] 56 + .collect(), [INFO] [stdout] 57 + cache: HashMap::new(), [INFO] [stdout] 58 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you are using an explicit closure for copying elements [INFO] [stdout] --> 2023/day-12/src/lib.rs:47:19 [INFO] [stdout] | [INFO] [stdout] 47 | line: single.line.iter() [INFO] [stdout] | ___________________^ [INFO] [stdout] 48 | | .cycle() [INFO] [stdout] 49 | | .take(single.line.len() * factor - 1) [INFO] [stdout] 50 | | .map(|it| *it) [INFO] [stdout] | |______________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stdout] = note: `#[warn(clippy::map_clone)]` on by default [INFO] [stdout] help: consider calling the dedicated `copied` method [INFO] [stdout] | [INFO] [stdout] 47 ~ line: single.line.iter() [INFO] [stdout] 48 + .cycle() [INFO] [stdout] 49 + .take(single.line.len() * factor - 1).copied() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you are using an explicit closure for copying elements [INFO] [stdout] --> 2023/day-12/src/lib.rs:52:20 [INFO] [stdout] | [INFO] [stdout] 52 | sizes: single.sizes.iter() [INFO] [stdout] | ____________________^ [INFO] [stdout] 53 | | .cycle() [INFO] [stdout] 54 | | .take(single.sizes.len() * factor) [INFO] [stdout] 55 | | .map(|it| *it) [INFO] [stdout] | |______________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stdout] help: consider calling the dedicated `copied` method [INFO] [stdout] | [INFO] [stdout] 52 ~ sizes: single.sizes.iter() [INFO] [stdout] 53 + .cycle() [INFO] [stdout] 54 + .take(single.sizes.len() * factor).copied() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-12/src/lib.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 62 | / return match size_pos.0 <= 0 { [INFO] [stdout] 63 | | true => self.calc_arrangements(line_pos + 1, (-1, size_pos.1)), [INFO] [stdout] 64 | | false => 0 [INFO] [stdout] 65 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 62 ~ match size_pos.0 <= 0 { [INFO] [stdout] 63 + true => self.calc_arrangements(line_pos + 1, (-1, size_pos.1)), [INFO] [stdout] 64 + false => 0 [INFO] [stdout] 65 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-12/src/lib.rs:69:9 [INFO] [stdout] | [INFO] [stdout] 69 | / return match size_pos.0 > 0 { [INFO] [stdout] 70 | | true => self.calc_arrangements(line_pos + 1, (size_pos.0 - 1, size_pos.1)), [INFO] [stdout] 71 | | false => match size_pos.0 < 0 && size_pos.1 < self.sizes.len() { [INFO] [stdout] 72 | | true => self.calc_arrangements(line_pos + 1, (self.sizes[size_pos.1] as i32 - 1, size_pos.1 + 1)), [INFO] [stdout] ... | [INFO] [stdout] 75 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 ~ match size_pos.0 > 0 { [INFO] [stdout] 70 + true => self.calc_arrangements(line_pos + 1, (size_pos.0 - 1, size_pos.1)), [INFO] [stdout] 71 + false => match size_pos.0 < 0 && size_pos.1 < self.sizes.len() { [INFO] [stdout] 72 + true => self.calc_arrangements(line_pos + 1, (self.sizes[size_pos.1] as i32 - 1, size_pos.1 + 1)), [INFO] [stdout] 73 + false => 0 [INFO] [stdout] 74 + } [INFO] [stdout] 75 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-12/src/lib.rs:110:9 [INFO] [stdout] | [INFO] [stdout] 110 | return result; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 110 - return result; [INFO] [stdout] 110 + result [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-12/src/lib.rs:119:5 [INFO] [stdout] | [INFO] [stdout] 119 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 119 - return result.to_string(); [INFO] [stdout] 119 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> 2023/day-12/src/lib.rs:116:14 [INFO] [stdout] | [INFO] [stdout] 116 | .map(|line| DamagedLine::create_single(line)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `DamagedLine::create_single` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] = note: `#[warn(clippy::redundant_closure)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-12/src/lib.rs:127:5 [INFO] [stdout] | [INFO] [stdout] 127 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 127 - return result.to_string(); [INFO] [stdout] 127 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-05/src/lib.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | / return Mapping { [INFO] [stdout] 27 | | dest_start: range.first().unwrap().to_owned(), [INFO] [stdout] 28 | | src_start: range.get(1).unwrap().to_owned(), [INFO] [stdout] 29 | | len: range.last().unwrap().to_owned(), [INFO] [stdout] 30 | | }; [INFO] [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] 26 ~ Mapping { [INFO] [stdout] 27 + dest_start: range.first().unwrap().to_owned(), [INFO] [stdout] 28 + src_start: range.get(1).unwrap().to_owned(), [INFO] [stdout] 29 + len: range.last().unwrap().to_owned(), [INFO] [stdout] 30 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-05/src/lib.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | return self.src_start <= *seed && *seed < self.src_start + self.len; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 34 - return self.src_start <= *seed && *seed < self.src_start + self.len; [INFO] [stdout] 34 + self.src_start <= *seed && *seed < self.src_start + self.len [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-05/src/lib.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | return Almanac { seeds: Vec::new(), mapping: Vec::new() }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 46 - return Almanac { seeds: Vec::new(), mapping: Vec::new() }; [INFO] [stdout] 46 + Almanac { seeds: Vec::new(), mapping: Vec::new() } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-05/src/lib.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | / ... return input.split("\n").fold((Almanac::default() as Almanac, None::), |mut acc, line| { [INFO] [stdout] 53 | | ... if line.starts_with("seeds:") { [INFO] [stdout] 54 | | ... acc.0.seeds = line.strip_prefix("seeds:").unwrap().trim().split(" ").map(|it| it.trim().parse::().unwrap()).col... [INFO] [stdout] 55 | | ... } else if line.len() != 0 { [INFO] [stdout] ... | [INFO] [stdout] 66 | | ... return acc; [INFO] [stdout] 67 | | ... }).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] 52 ~ input.split("\n").fold((Almanac::default() as Almanac, None::), |mut acc, line| { [INFO] [stdout] 53 + if line.starts_with("seeds:") { [INFO] [stdout] 54 + acc.0.seeds = line.strip_prefix("seeds:").unwrap().trim().split(" ").map(|it| it.trim().parse::().unwrap()).collect(); [INFO] [stdout] 55 + } else if line.len() != 0 { [INFO] [stdout] 56 + if line.chars().next().unwrap().is_alphabetic() { [INFO] [stdout] 57 + acc.1 = match acc.1 { [INFO] [stdout] 58 + Some(n) => Some(n + 1), [INFO] [stdout] 59 + _ => Some(0) [INFO] [stdout] 60 + }; [INFO] [stdout] 61 + acc.0.mapping.push(Vec::new()); [INFO] [stdout] 62 + } else if line.chars().next().unwrap().is_digit(10) { [INFO] [stdout] 63 + acc.0.mapping.get_mut(acc.1.unwrap()).unwrap().push(Mapping::create(line)); [INFO] [stdout] 64 + } [INFO] [stdout] 65 + } [INFO] [stdout] 66 + return acc; [INFO] [stdout] 67 ~ }).0 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-05/src/lib.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | return acc; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 acc; [INFO] [stdout] 66 + acc [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> 2023/day-05/src/lib.rs:55:23 [INFO] [stdout] | [INFO] [stdout] 55 | } else if line.len() != 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!line.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: use of `char::is_digit` with literal radix of 10 [INFO] [stdout] --> 2023/day-05/src/lib.rs:62:27 [INFO] [stdout] | [INFO] [stdout] 62 | } else if line.chars().next().unwrap().is_digit(10) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `line.chars().next().unwrap().is_ascii_digit()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#is_digit_ascii_radix [INFO] [stdout] = note: `#[warn(clippy::is_digit_ascii_radix)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-05/src/lib.rs:71:9 [INFO] [stdout] | [INFO] [stdout] 71 | / return self.mapping.iter().fold(self.seeds.clone(), |input, mapping| { [INFO] [stdout] 72 | | return input.iter().map(|seed| { [INFO] [stdout] 73 | | return match mapping.iter().find(|it| it.includes(seed)) { [INFO] [stdout] 74 | | Some(m) => seed + m.dest_start - m.src_start, [INFO] [stdout] ... | [INFO] [stdout] 77 | | }).collect(); [INFO] [stdout] 78 | | }); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 ~ self.mapping.iter().fold(self.seeds.clone(), |input, mapping| { [INFO] [stdout] 72 + return input.iter().map(|seed| { [INFO] [stdout] 73 + return match mapping.iter().find(|it| it.includes(seed)) { [INFO] [stdout] 74 + Some(m) => seed + m.dest_start - m.src_start, [INFO] [stdout] 75 + _ => seed.to_owned() [INFO] [stdout] 76 + }; [INFO] [stdout] 77 + }).collect(); [INFO] [stdout] 78 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-05/src/lib.rs:72:13 [INFO] [stdout] | [INFO] [stdout] 72 | / return input.iter().map(|seed| { [INFO] [stdout] 73 | | return match mapping.iter().find(|it| it.includes(seed)) { [INFO] [stdout] 74 | | Some(m) => seed + m.dest_start - m.src_start, [INFO] [stdout] 75 | | _ => seed.to_owned() [INFO] [stdout] 76 | | }; [INFO] [stdout] 77 | | }).collect(); [INFO] [stdout] | |________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 72 ~ input.iter().map(|seed| { [INFO] [stdout] 73 + return match mapping.iter().find(|it| it.includes(seed)) { [INFO] [stdout] 74 + Some(m) => seed + m.dest_start - m.src_start, [INFO] [stdout] 75 + _ => seed.to_owned() [INFO] [stdout] 76 + }; [INFO] [stdout] 77 ~ }).collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-05/src/lib.rs:73:17 [INFO] [stdout] | [INFO] [stdout] 73 | / return match mapping.iter().find(|it| it.includes(seed)) { [INFO] [stdout] 74 | | Some(m) => seed + m.dest_start - m.src_start, [INFO] [stdout] 75 | | _ => seed.to_owned() [INFO] [stdout] 76 | | }; [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 73 ~ match mapping.iter().find(|it| it.includes(seed)) { [INFO] [stdout] 74 + Some(m) => seed + m.dest_start - m.src_start, [INFO] [stdout] 75 + _ => seed.to_owned() [INFO] [stdout] 76 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-09/src/lib.rs:18:9 [INFO] [stdout] | [INFO] [stdout] 18 | / return History { [INFO] [stdout] 19 | | data: input.split('\n').map(|line| { [INFO] [stdout] 20 | | return line.split(' ').map(|it| it.trim().parse::().unwrap()).collect(); [INFO] [stdout] 21 | | }).collect() [INFO] [stdout] 22 | | }; [INFO] [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] 18 ~ History { [INFO] [stdout] 19 + data: input.split('\n').map(|line| { [INFO] [stdout] 20 + return line.split(' ').map(|it| it.trim().parse::().unwrap()).collect(); [INFO] [stdout] 21 + }).collect() [INFO] [stdout] 22 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-05/src/lib.rs:84:9 [INFO] [stdout] | [INFO] [stdout] 84 | / ... return input.split("\n").fold((Almanac::default() as Almanac, None::), |mut acc, line| { [INFO] [stdout] 85 | | ... if line.starts_with("seeds:") { [INFO] [stdout] 86 | | ... let seeds: Vec = line.strip_prefix("seeds:").unwrap().trim().split(" ").map(|it| it.trim().parse::().unwr... [INFO] [stdout] 87 | | ... acc.0.seeds = seeds.chunks(2).map(|it| Range { 0: it[0], 1: it[1] }).collect(); [INFO] [stdout] ... | [INFO] [stdout] 99 | | ... return acc; [INFO] [stdout] 100 | | ... }).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] 84 ~ input.split("\n").fold((Almanac::default() as Almanac, None::), |mut acc, line| { [INFO] [stdout] 85 + if line.starts_with("seeds:") { [INFO] [stdout] 86 + let seeds: Vec = line.strip_prefix("seeds:").unwrap().trim().split(" ").map(|it| it.trim().parse::().unwrap()).collect(); [INFO] [stdout] 87 + acc.0.seeds = seeds.chunks(2).map(|it| Range { 0: it[0], 1: it[1] }).collect(); [INFO] [stdout] 88 + } else if line.len() != 0 { [INFO] [stdout] 89 + if line.chars().next().unwrap().is_alphabetic() { [INFO] [stdout] 90 + acc.1 = match acc.1 { [INFO] [stdout] 91 + Some(n) => Some(n + 1), [INFO] [stdout] 92 + _ => Some(0) [INFO] [stdout] 93 + }; [INFO] [stdout] 94 + acc.0.mapping.push(Vec::new()); [INFO] [stdout] 95 + } else if line.chars().next().unwrap().is_digit(10) { [INFO] [stdout] 96 + acc.0.mapping.get_mut(acc.1.unwrap()).unwrap().push(Mapping::create(line)); [INFO] [stdout] 97 + } [INFO] [stdout] 98 + } [INFO] [stdout] 99 + return acc; [INFO] [stdout] 100 ~ }).0 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-05/src/lib.rs:99:13 [INFO] [stdout] | [INFO] [stdout] 99 | return acc; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 99 - return acc; [INFO] [stdout] 99 + acc [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used a field initializer for a tuple struct [INFO] [stdout] --> 2023/day-05/src/lib.rs:87:56 [INFO] [stdout] | [INFO] [stdout] 87 | acc.0.seeds = seeds.chunks(2).map(|it| Range { 0: it[0], 1: it[1] }).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use tuple initialization: `Range(it[0], it[1])` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#init_numbered_fields [INFO] [stdout] = note: `#[warn(clippy::init_numbered_fields)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> 2023/day-05/src/lib.rs:88:23 [INFO] [stdout] | [INFO] [stdout] 88 | } else if line.len() != 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!line.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] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-09/src/lib.rs:20:17 [INFO] [stdout] | [INFO] [stdout] 20 | return line.split(' ').map(|it| it.trim().parse::().unwrap()).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 20 - return line.split(' ').map(|it| it.trim().parse::().unwrap()).collect(); [INFO] [stdout] 20 + line.split(' ').map(|it| it.trim().parse::().unwrap()).collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-09/src/lib.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 44 - return result.to_string(); [INFO] [stdout] 44 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-09/src/lib.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | return path.iter().fold(0, |acc, it| acc + *it); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 - return path.iter().fold(0, |acc, it| acc + *it); [INFO] [stdout] 41 + path.iter().fold(0, |acc, it| acc + *it) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-09/src/lib.rs:65:5 [INFO] [stdout] | [INFO] [stdout] 65 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 65 - return result.to_string(); [INFO] [stdout] 65 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-09/src/lib.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 62 | return path.iter().rev().fold(0, |acc, it| *it - acc); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 62 - return path.iter().rev().fold(0, |acc, it| *it - acc); [INFO] [stdout] 62 + path.iter().rev().fold(0, |acc, it| *it - acc) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `char::is_digit` with literal radix of 10 [INFO] [stdout] --> 2023/day-05/src/lib.rs:95:27 [INFO] [stdout] | [INFO] [stdout] 95 | } else if line.chars().next().unwrap().is_digit(10) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `line.chars().next().unwrap().is_ascii_digit()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#is_digit_ascii_radix [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-05/src/lib.rs:104:9 [INFO] [stdout] | [INFO] [stdout] 104 | / return self.mapping.iter().fold(self.seeds.clone(), |input, mapping| { [INFO] [stdout] 105 | | let mut output: Vec = Vec::new(); [INFO] [stdout] 106 | | [INFO] [stdout] 107 | | input.iter().for_each(|it| { [INFO] [stdout] ... | [INFO] [stdout] 126 | | return output; [INFO] [stdout] 127 | | }); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 104 ~ self.mapping.iter().fold(self.seeds.clone(), |input, mapping| { [INFO] [stdout] 105 + let mut output: Vec = Vec::new(); [INFO] [stdout] 106 + [INFO] [stdout] 107 + input.iter().for_each(|it| { [INFO] [stdout] 108 + let mut next_range: Option = Some(it.to_owned()); [INFO] [stdout] 109 + while next_range.is_some() { [INFO] [stdout] 110 + let range = next_range.unwrap(); [INFO] [stdout] 111 + match mapping.iter().find(|it| it.includes(&range.0)) { [INFO] [stdout] 112 + Some(m) => { [INFO] [stdout] 113 + let covered: u64 = cmp::min(m.src_start + m.len - range.0, range.1); [INFO] [stdout] 114 + let left: u64 = range.1 - covered; [INFO] [stdout] 115 + output.push(Range { 0: range.0 + m.dest_start - m.src_start, 1: covered }); [INFO] [stdout] 116 + next_range = if left > 0 { Some(Range { 0: range.0 + covered, 1: left }) } else { None }; [INFO] [stdout] 117 + } [INFO] [stdout] 118 + _ => { [INFO] [stdout] 119 + output.push(range.clone()); [INFO] [stdout] 120 + next_range = None [INFO] [stdout] 121 + } [INFO] [stdout] 122 + } [INFO] [stdout] 123 + } [INFO] [stdout] 124 + }); [INFO] [stdout] 125 + [INFO] [stdout] 126 + return output; [INFO] [stdout] 127 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-05/src/lib.rs:126:13 [INFO] [stdout] | [INFO] [stdout] 126 | return output; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 output; [INFO] [stdout] 126 + output [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used a field initializer for a tuple struct [INFO] [stdout] --> 2023/day-05/src/lib.rs:115:41 [INFO] [stdout] | [INFO] [stdout] 115 | ... output.push(Range { 0: range.0 + m.dest_start - m.src_start, 1: covered }); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use tuple initialization: `Range(range.0 + m.dest_start - m.src_start, covered)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#init_numbered_fields [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used a field initializer for a tuple struct [INFO] [stdout] --> 2023/day-05/src/lib.rs:116:61 [INFO] [stdout] | [INFO] [stdout] 116 | ... next_range = if left > 0 { Some(Range { 0: range.0 + covered, 1: left }) } else { None }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use tuple initialization: `Range(range.0 + covered, left)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#init_numbered_fields [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-05/src/lib.rs:135:5 [INFO] [stdout] | [INFO] [stdout] 135 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 135 - return result.to_string(); [INFO] [stdout] 135 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-05/src/lib.rs:142:5 [INFO] [stdout] | [INFO] [stdout] 142 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 142 - return result.to_string(); [INFO] [stdout] 142 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-08/src/lib.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | / return Map { [INFO] [stdout] 30 | | instructions: lines.first().unwrap().chars().map(|it| if it == 'L' { LR::L } else { LR::R }).collect(), [INFO] [stdout] 31 | | network: lines.last().unwrap().trim().split('\n').map(|it| { [INFO] [stdout] 32 | | let record: Vec<&str> = it.split(" = ").collect(); [INFO] [stdout] ... | [INFO] [stdout] 41 | | }).collect(), [INFO] [stdout] 42 | | }; [INFO] [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] 29 ~ Map { [INFO] [stdout] 30 + instructions: lines.first().unwrap().chars().map(|it| if it == 'L' { LR::L } else { LR::R }).collect(), [INFO] [stdout] 31 + network: lines.last().unwrap().trim().split('\n').map(|it| { [INFO] [stdout] 32 + let record: Vec<&str> = it.split(" = ").collect(); [INFO] [stdout] 33 + let coords: Vec<&str> = record.last().unwrap().split(",").collect(); [INFO] [stdout] 34 + ( [INFO] [stdout] 35 + record.first().unwrap().trim().to_owned(), [INFO] [stdout] 36 + ( [INFO] [stdout] 37 + coords.first().unwrap().strip_prefix("(").unwrap().trim().to_owned(), [INFO] [stdout] 38 + coords.last().unwrap().strip_suffix(")").unwrap().trim().to_owned() [INFO] [stdout] 39 + ) [INFO] [stdout] 40 + ) [INFO] [stdout] 41 + }).collect(), [INFO] [stdout] 42 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-08/src/lib.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | return self.instructions.get((steps_count % self.instructions.len() as u64) as usize).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] 46 - return self.instructions.get((steps_count % self.instructions.len() as u64) as usize).unwrap(); [INFO] [stdout] 46 + self.instructions.get((steps_count % self.instructions.len() as u64) as usize).unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-08/src/lib.rs:65:5 [INFO] [stdout] | [INFO] [stdout] 65 | return steps_count.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 65 - return steps_count.to_string(); [INFO] [stdout] 65 + steps_count.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-08/src/lib.rs:87:5 [INFO] [stdout] | [INFO] [stdout] 87 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 87 - return result.to_string(); [INFO] [stdout] 87 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-08/src/lib.rs:83:9 [INFO] [stdout] | [INFO] [stdout] 83 | return steps_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] 83 - return steps_count; [INFO] [stdout] 83 + steps_count [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-05/src/lib.rs:53:9 [INFO] [stdout] | [INFO] [stdout] 53 | / return Ship { [INFO] [stdout] 54 | | stacks: stacks.iter().map(|it| it.iter().rev().map(|it| *it).collect()).collect(), [INFO] [stdout] 55 | | instructions, [INFO] [stdout] 56 | | }; [INFO] [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] 53 ~ Ship { [INFO] [stdout] 54 + stacks: stacks.iter().map(|it| it.iter().rev().map(|it| *it).collect()).collect(), [INFO] [stdout] 55 + instructions, [INFO] [stdout] 56 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> 2022/day-05/src/lib.rs:45:25 [INFO] [stdout] | [INFO] [stdout] 45 | / match chars.iter().find(|ch| ch.is_alphabetic()) { [INFO] [stdout] 46 | | Some(ch) => stacks[it.0].push(*ch), [INFO] [stdout] 47 | | None => {} [INFO] [stdout] 48 | | } [INFO] [stdout] | |_________________________^ help: try: `if let Some(ch) = chars.iter().find(|ch| ch.is_alphabetic()) { stacks[it.0].push(*ch) }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] = note: `#[warn(clippy::single_match)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you are using an explicit closure for copying elements [INFO] [stdout] --> 2022/day-05/src/lib.rs:54:44 [INFO] [stdout] | [INFO] [stdout] 54 | stacks: stacks.iter().map(|it| it.iter().rev().map(|it| *it).collect()).collect(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider calling the dedicated `copied` method: `it.iter().rev().copied()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stdout] = note: `#[warn(clippy::map_clone)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-05/src/lib.rs:77:5 [INFO] [stdout] | [INFO] [stdout] 77 | return String::from_iter(result); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 77 - return String::from_iter(result); [INFO] [stdout] 77 + String::from_iter(result) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you are using an explicit closure for copying elements [INFO] [stdout] --> 2022/day-05/src/lib.rs:72:29 [INFO] [stdout] | [INFO] [stdout] 72 | let result: Vec = ship.stacks.iter() [INFO] [stdout] | _____________________________^ [INFO] [stdout] 73 | | .filter_map(|it| it.last()) [INFO] [stdout] 74 | | .map(|it| *it) [INFO] [stdout] | |______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stdout] help: consider calling the dedicated `copied` method [INFO] [stdout] | [INFO] [stdout] 72 ~ let result: Vec = ship.stacks.iter() [INFO] [stdout] 73 + .filter_map(|it| it.last()).copied() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-05/src/lib.rs:97:5 [INFO] [stdout] | [INFO] [stdout] 97 | return String::from_iter(result); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 97 - return String::from_iter(result); [INFO] [stdout] 97 + String::from_iter(result) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you are using an explicit closure for copying elements [INFO] [stdout] --> 2022/day-05/src/lib.rs:92:29 [INFO] [stdout] | [INFO] [stdout] 92 | let result: Vec = ship.stacks.iter() [INFO] [stdout] | _____________________________^ [INFO] [stdout] 93 | | .filter_map(|it| it.last()) [INFO] [stdout] 94 | | .map(|it| *it) [INFO] [stdout] | |______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stdout] help: consider calling the dedicated `copied` method [INFO] [stdout] | [INFO] [stdout] 92 ~ let result: Vec = ship.stacks.iter() [INFO] [stdout] 93 + .filter_map(|it| it.last()).copied() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: a method with this name may be added to the standard library in the future [INFO] [stdout] --> 2023/day-07/src/lib.rs:71:70 [INFO] [stdout] | [INFO] [stdout] 71 | let rank_key: String = sizes.iter().map(|it| it.to_string()).intersperse("".to_owned()).collect(); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: call with fully qualified syntax `itertools::Itertools::intersperse(...)` to keep using the current method [INFO] [stdout] = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior! [INFO] [stdout] = note: for more information, see issue #48919 [INFO] [stdout] = note: `#[warn(unstable_name_collisions)]` (part of `#[warn(future_incompatible)]`) on by default [INFO] [stdout] help: add `#![feature(iter_intersperse)]` to the crate attributes to enable `std::iter::Iterator::intersperse` [INFO] [stdout] | [INFO] [stdout] 1 + #![feature(iter_intersperse)] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: a method with this name may be added to the standard library in the future [INFO] [stdout] --> 2023/day-07/src/lib.rs:99:14 [INFO] [stdout] | [INFO] [stdout] 99 | .intersperse("".to_owned()) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: call with fully qualified syntax `itertools::Itertools::intersperse(...)` to keep using the current method [INFO] [stdout] = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior! [INFO] [stdout] = note: for more information, see issue #48919 [INFO] [stdout] help: add `#![feature(iter_intersperse)]` to the crate attributes to enable `std::iter::Iterator::intersperse` [INFO] [stdout] | [INFO] [stdout] 1 + #![feature(iter_intersperse)] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: importing legacy numeric constants [INFO] [stdout] --> 2023/day-07/src/lib.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::u64; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: remove this import [INFO] [stdout] = note: then `u64::` will resolve to the respective associated constant [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] --> 2023/day-07/src/lib.rs:73:9 [INFO] [stdout] | [INFO] [stdout] 73 | / return Hand { [INFO] [stdout] 74 | | bid: parts.last().unwrap().parse().unwrap(), [INFO] [stdout] 75 | | rank: RANKS.get(rank_key.as_str()).unwrap().to_owned(), [INFO] [stdout] 76 | | base13, [INFO] [stdout] 77 | | }; [INFO] [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] 73 ~ Hand { [INFO] [stdout] 74 + bid: parts.last().unwrap().parse().unwrap(), [INFO] [stdout] 75 + rank: RANKS.get(rank_key.as_str()).unwrap().to_owned(), [INFO] [stdout] 76 + base13, [INFO] [stdout] 77 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you are using an explicit closure for copying elements [INFO] [stdout] --> 2023/day-07/src/lib.rs:61:34 [INFO] [stdout] | [INFO] [stdout] 61 | let mut cards: Vec = parts.first().unwrap().as_bytes().iter().map(|it| *it).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider calling the dedicated `copied` method: `parts.first().unwrap().as_bytes().iter().copied()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stdout] = note: `#[warn(clippy::map_clone)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-07/src/lib.rs:102:9 [INFO] [stdout] | [INFO] [stdout] 102 | / return Hand { [INFO] [stdout] 103 | | bid: parts.last().unwrap().parse().unwrap(), [INFO] [stdout] 104 | | rank: RANKS.get(rank_key.as_str()).unwrap().to_owned(), [INFO] [stdout] 105 | | base13, [INFO] [stdout] 106 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 102 ~ Hand { [INFO] [stdout] 103 + bid: parts.last().unwrap().parse().unwrap(), [INFO] [stdout] 104 + rank: RANKS.get(rank_key.as_str()).unwrap().to_owned(), [INFO] [stdout] 105 + base13, [INFO] [stdout] 106 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you are using an explicit closure for copying elements [INFO] [stdout] --> 2023/day-07/src/lib.rs:83:30 [INFO] [stdout] | [INFO] [stdout] 83 | let cards: Vec = parts.first().unwrap().as_bytes().iter().map(|it| *it).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider calling the dedicated `copied` method: `parts.first().unwrap().as_bytes().iter().copied()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `repeat().take()` can be written more concisely [INFO] [stdout] --> 2023/day-07/src/lib.rs:98:20 [INFO] [stdout] | [INFO] [stdout] 98 | .merge(std::iter::repeat('J'.to_string()).take(jokers_count as usize)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n('J'.to_string(), jokers_count as usize)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n [INFO] [stdout] = note: `#[warn(clippy::manual_repeat_n)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-15/src/lib.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | return input.bytes().fold(0, |acc, code| ((acc + code as u32) * 17) % 256); [INFO] [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] 14 - return input.bytes().fold(0, |acc, code| ((acc + code as u32) * 17) % 256); [INFO] [stdout] 14 + input.bytes().fold(0, |acc, code| ((acc + code as u32) * 17) % 256) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-07/src/lib.rs:115:9 [INFO] [stdout] | [INFO] [stdout] 115 | / return reversed.iter() [INFO] [stdout] 116 | | .enumerate() [INFO] [stdout] 117 | | .fold(0, |acc, (idx, ch)| { [INFO] [stdout] 118 | | return acc + base.get(ch).unwrap().to_owned() as usize * base_len.pow(idx as u32); [INFO] [stdout] 119 | | }) 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] 115 ~ reversed.iter() [INFO] [stdout] 116 + .enumerate() [INFO] [stdout] 117 + .fold(0, |acc, (idx, ch)| { [INFO] [stdout] 118 + return acc + base.get(ch).unwrap().to_owned() as usize * base_len.pow(idx as u32); [INFO] [stdout] 119 ~ }) as u64 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-07/src/lib.rs:118:17 [INFO] [stdout] | [INFO] [stdout] 118 | return acc + base.get(ch).unwrap().to_owned() as usize * base_len.pow(idx 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] 118 - return acc + base.get(ch).unwrap().to_owned() as usize * base_len.pow(idx as u32); [INFO] [stdout] 118 + acc + base.get(ch).unwrap().to_owned() as usize * base_len.pow(idx as u32) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-07/src/lib.rs:139:9 [INFO] [stdout] | [INFO] [stdout] 139 | 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] 139 - return Ordering::Equal; [INFO] [stdout] 139 + Ordering::Equal [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-07/src/lib.rs:147:9 [INFO] [stdout] | [INFO] [stdout] 147 | return self.rank == other.rank && self.base13 == other.base13; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 147 - return self.rank == other.rank && self.base13 == other.base13; [INFO] [stdout] 147 + self.rank == other.rank && self.base13 == other.base13 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-15/src/lib.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | return (parts.first().unwrap(), parts.last().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] 19 - return (parts.first().unwrap(), parts.last().unwrap()); [INFO] [stdout] 19 + (parts.first().unwrap(), parts.last().unwrap()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-15/src/lib.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 24 - return result.to_string(); [INFO] [stdout] 24 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-15/src/lib.rs:51:5 [INFO] [stdout] | [INFO] [stdout] 51 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 51 - return result.to_string(); [INFO] [stdout] 51 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-canonical implementation of `partial_cmp` on an `Ord` type [INFO] [stdout] --> 2023/day-07/src/lib.rs:151:1 [INFO] [stdout] | [INFO] [stdout] 151 | / impl PartialOrd for Hand { [INFO] [stdout] 152 | | fn partial_cmp(&self, other: &Self) -> Option { [INFO] [stdout] 153 | | return Some(self.compare(other)); [INFO] [stdout] 154 | | } [INFO] [stdout] 155 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#non_canonical_partial_ord_impl [INFO] [stdout] = note: `#[warn(clippy::non_canonical_partial_ord_impl)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 152 - fn partial_cmp(&self, other: &Self) -> Option { [INFO] [stdout] 153 - return Some(self.compare(other)); [INFO] [stdout] 154 - } [INFO] [stdout] 152 + fn partial_cmp(&self, other: &Self) -> Option { Some(std::cmp::Ord::cmp(self, other)) } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-07/src/lib.rs:153:9 [INFO] [stdout] | [INFO] [stdout] 153 | return Some(self.compare(other)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 153 - return Some(self.compare(other)); [INFO] [stdout] 153 + Some(self.compare(other)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-07/src/lib.rs:159:9 [INFO] [stdout] | [INFO] [stdout] 159 | return self.compare(other); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 159 - return self.compare(other); [INFO] [stdout] 159 + self.compare(other) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | return Ok(part); [INFO] [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] 49 - return Ok(part); [INFO] [stdout] 49 + Ok(part) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-07/src/lib.rs:168:5 [INFO] [stdout] | [INFO] [stdout] 168 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 168 - return result.to_string(); [INFO] [stdout] 168 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> 2023/day-07/src/lib.rs:164:54 [INFO] [stdout] | [INFO] [stdout] 164 | let mut hands: Vec = input.split("\n").map(|line| Hand::create(line)).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `Hand::create` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] = note: `#[warn(clippy::redundant_closure)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-07/src/lib.rs:176:5 [INFO] [stdout] | [INFO] [stdout] 176 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 176 - return result.to_string(); [INFO] [stdout] 176 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> 2023/day-07/src/lib.rs:172:54 [INFO] [stdout] | [INFO] [stdout] 172 | let mut hands: Vec = input.split("\n").map(|line| Hand::create_with_jokers(line)).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `Hand::create_with_jokers` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 55 | return self.x + self.m + self.a + self.s; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 55 - return self.x + self.m + self.a + self.s; [INFO] [stdout] 55 + self.x + self.m + self.a + self.s [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 61 | / return [self.x, self.m, self.a, self.s].iter() [INFO] [stdout] 62 | | .fold(1, |acc, it| acc * (it.1 as u64 - it.0 as u64 + 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] 61 ~ [self.x, self.m, self.a, self.s].iter() [INFO] [stdout] 62 ~ .fold(1, |acc, it| acc * (it.1 as u64 - it.0 as u64 + 1)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:68:9 [INFO] [stdout] | [INFO] [stdout] 68 | / return Part { [INFO] [stdout] 69 | | x: (min, max), [INFO] [stdout] 70 | | m: (min, max), [INFO] [stdout] 71 | | a: (min, max), [INFO] [stdout] 72 | | s: (min, max), [INFO] [stdout] 73 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 ~ Part { [INFO] [stdout] 69 + x: (min, max), [INFO] [stdout] 70 + m: (min, max), [INFO] [stdout] 71 + a: (min, max), [INFO] [stdout] 72 + s: (min, max), [INFO] [stdout] 73 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:99:9 [INFO] [stdout] | [INFO] [stdout] 99 | / return match input { [INFO] [stdout] 100 | | "x" => Ok(Category::Extreme), [INFO] [stdout] 101 | | "m" => Ok(Category::Musical), [INFO] [stdout] 102 | | "a" => Ok(Category::Aerodynamic), [INFO] [stdout] 103 | | "s" => Ok(Category::Shiny), [INFO] [stdout] 104 | | _ => Err(anyhow!("Unexpected category: {}", input)) [INFO] [stdout] 105 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 99 ~ match input { [INFO] [stdout] 100 + "x" => Ok(Category::Extreme), [INFO] [stdout] 101 + "m" => Ok(Category::Musical), [INFO] [stdout] 102 + "a" => Ok(Category::Aerodynamic), [INFO] [stdout] 103 + "s" => Ok(Category::Shiny), [INFO] [stdout] 104 + _ => Err(anyhow!("Unexpected category: {}", input)) [INFO] [stdout] 105 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `LESS` contains a capitalized acronym [INFO] [stdout] --> 2023/day-19/src/lib.rs:110:5 [INFO] [stdout] | [INFO] [stdout] 110 | LESS(u32), [INFO] [stdout] | ^^^^ help: consider making the acronym lowercase, except the initial letter: `Less` [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 `GREATER` contains a capitalized acronym [INFO] [stdout] --> 2023/day-19/src/lib.rs:111:5 [INFO] [stdout] | [INFO] [stdout] 111 | GREATER(u32), [INFO] [stdout] | ^^^^^^^ help: consider making the acronym lowercase, except the initial letter: `Greater` [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] --> 2023/day-19/src/lib.rs:129:9 [INFO] [stdout] | [INFO] [stdout] 129 | / return match op { [INFO] [stdout] 130 | | '<' => Ok(Condition::LESS(value)), [INFO] [stdout] 131 | | '>' => Ok(Condition::GREATER(value)), [INFO] [stdout] 132 | | _ => Err(anyhow!("Unexpected operation: {}", op)) [INFO] [stdout] 133 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 129 ~ match op { [INFO] [stdout] 130 + '<' => Ok(Condition::LESS(value)), [INFO] [stdout] 131 + '>' => Ok(Condition::GREATER(value)), [INFO] [stdout] 132 + _ => Err(anyhow!("Unexpected operation: {}", op)) [INFO] [stdout] 133 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:139:9 [INFO] [stdout] | [INFO] [stdout] 139 | / return match self { [INFO] [stdout] 140 | | Condition::LESS(than) => value < *than, [INFO] [stdout] 141 | | Condition::GREATER(than) => value > *than [INFO] [stdout] 142 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 139 ~ match self { [INFO] [stdout] 140 + Condition::LESS(than) => value < *than, [INFO] [stdout] 141 + Condition::GREATER(than) => value > *than [INFO] [stdout] 142 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::ops::Range` [INFO] [stdout] --> 2023/day-15/src/lib.rs:28:52 [INFO] [stdout] | [INFO] [stdout] 28 | let mut boxes: Vec> = (0..256).into_iter().map(|_| LinkedHashMap::new()).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into_iter()`: `(0..256)` [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: this operation has no effect [INFO] [stdout] --> 2023/day-19/src/lib.rs:147:40 [INFO] [stdout] | [INFO] [stdout] 147 | Condition::LESS(than) => ((than + 0, adjusted.1), (next.0, than - 1)), [INFO] [stdout] | ^^^^^^^^ help: consider reducing it to: `*than` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] = note: `#[warn(clippy::identity_op)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> 2023/day-19/src/lib.rs:148:55 [INFO] [stdout] | [INFO] [stdout] 148 | Condition::GREATER(than) => ((adjusted.0, than + 0), (than + 1, next.1)) [INFO] [stdout] | ^^^^^^^^ help: consider reducing it to: `*than` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:173:9 [INFO] [stdout] | [INFO] [stdout] 173 | / return Ok(match input { [INFO] [stdout] 174 | | "A" => Action::Accept, [INFO] [stdout] 175 | | "R" => Action::Reject, [INFO] [stdout] 176 | | next => Forward(next.to_string()) [INFO] [stdout] 177 | | }); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 173 ~ Ok(match input { [INFO] [stdout] 174 + "A" => Action::Accept, [INFO] [stdout] 175 + "R" => Action::Reject, [INFO] [stdout] 176 + next => Forward(next.to_string()) [INFO] [stdout] 177 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:189:13 [INFO] [stdout] | [INFO] [stdout] 189 | return format!("{:?}{:?}:{:?}", category, condition, action); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 189 - return format!("{:?}{:?}:{:?}", category, condition, action); [INFO] [stdout] 189 + format!("{:?}{:?}:{:?}", category, condition, action) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:200:9 [INFO] [stdout] | [INFO] [stdout] 200 | / return Ok(Workflow { [INFO] [stdout] 201 | | conditions: parts.iter().take(parts.len() - 1).map(|it| { [INFO] [stdout] 202 | | let (category, condition_action) = it.split_at(1); [INFO] [stdout] 203 | | let parts: Vec<&str> = condition_action.split(':').collect(); [INFO] [stdout] ... | [INFO] [stdout] 210 | | default_action: parts.last().unwrap().parse::().unwrap(), [INFO] [stdout] 211 | | }); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 200 ~ Ok(Workflow { [INFO] [stdout] 201 + conditions: parts.iter().take(parts.len() - 1).map(|it| { [INFO] [stdout] 202 + let (category, condition_action) = it.split_at(1); [INFO] [stdout] 203 + let parts: Vec<&str> = condition_action.split(':').collect(); [INFO] [stdout] 204 + return ( [INFO] [stdout] 205 + category.parse::().unwrap(), [INFO] [stdout] 206 + parts.first().unwrap().parse::().unwrap(), [INFO] [stdout] 207 + parts.last().unwrap().parse::().unwrap() [INFO] [stdout] 208 + ); [INFO] [stdout] 209 + }).collect(), [INFO] [stdout] 210 + default_action: parts.last().unwrap().parse::().unwrap(), [INFO] [stdout] 211 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:204:17 [INFO] [stdout] | [INFO] [stdout] 204 | / return ( [INFO] [stdout] 205 | | category.parse::().unwrap(), [INFO] [stdout] 206 | | parts.first().unwrap().parse::().unwrap(), [INFO] [stdout] 207 | | parts.last().unwrap().parse::().unwrap() [INFO] [stdout] 208 | | ); [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 204 ~ ( [INFO] [stdout] 205 + category.parse::().unwrap(), [INFO] [stdout] 206 + parts.first().unwrap().parse::().unwrap(), [INFO] [stdout] 207 + parts.last().unwrap().parse::().unwrap() [INFO] [stdout] 208 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-15/src/lib.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | / return acc + storage.iter().enumerate().fold(0, |acc, (idy, label)| { [INFO] [stdout] 47 | | return acc + (idx + 1) * (idy + 1) * (*label.1 as usize); [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] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 46 ~ acc + storage.iter().enumerate().fold(0, |acc, (idy, label)| { [INFO] [stdout] 47 + return acc + (idx + 1) * (idy + 1) * (*label.1 as usize); [INFO] [stdout] 48 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-15/src/lib.rs:47:13 [INFO] [stdout] | [INFO] [stdout] 47 | return acc + (idx + 1) * (idy + 1) * (*label.1 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] 47 - return acc + (idx + 1) * (idy + 1) * (*label.1 as usize); [INFO] [stdout] 47 + acc + (idx + 1) * (idy + 1) * (*label.1 as usize) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:217:9 [INFO] [stdout] | [INFO] [stdout] 217 | / return self.conditions.iter().find_map(|(category, condition, action)| { [INFO] [stdout] 218 | | let matches: bool = match category { [INFO] [stdout] 219 | | Category::Extreme => condition.matches(part.x), [INFO] [stdout] 220 | | Category::Musical => condition.matches(part.m), [INFO] [stdout] ... | [INFO] [stdout] 224 | | return if matches { Some(action) } else { None }; [INFO] [stdout] 225 | | }).unwrap_or(&self.default_action); [INFO] [stdout] | |__________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 217 ~ self.conditions.iter().find_map(|(category, condition, action)| { [INFO] [stdout] 218 + let matches: bool = match category { [INFO] [stdout] 219 + Category::Extreme => condition.matches(part.x), [INFO] [stdout] 220 + Category::Musical => condition.matches(part.m), [INFO] [stdout] 221 + Category::Aerodynamic => condition.matches(part.a), [INFO] [stdout] 222 + Category::Shiny => condition.matches(part.s), [INFO] [stdout] 223 + }; [INFO] [stdout] 224 + return if matches { Some(action) } else { None }; [INFO] [stdout] 225 ~ }).unwrap_or(&self.default_action) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:224:13 [INFO] [stdout] | [INFO] [stdout] 224 | return if matches { Some(action) } else { 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] 224 - return if matches { Some(action) } else { None }; [INFO] [stdout] 224 + if matches { Some(action) } else { None } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stdout] --> 2023/day-19/src/lib.rs:228:50 [INFO] [stdout] | [INFO] [stdout] 228 | fn adjust(&self, part: &Part<(u32, u32)>) -> (Vec<(&str, Part<(u32, u32)>)>, Vec>) { [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] --> 2023/day-19/src/lib.rs:254:9 [INFO] [stdout] | [INFO] [stdout] 254 | return (queued, accepted); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 254 - return (queued, accepted); [INFO] [stdout] 254 + (queued, accepted) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `Part<(u32, u32)>` which implements the `Copy` trait [INFO] [stdout] --> 2023/day-19/src/lib.rs:232:46 [INFO] [stdout] | [INFO] [stdout] 232 | let mut adjusted: Part<(u32, u32)> = part.clone(); [INFO] [stdout] | ^^^^^^^^^^^^ help: try dereferencing it: `*part` [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: using `clone` on type `Part<(u32, u32)>` which implements the `Copy` trait [INFO] [stdout] --> 2023/day-19/src/lib.rs:234:46 [INFO] [stdout] | [INFO] [stdout] 234 | let mut next: Part<(u32, u32)> = adjusted.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `adjusted` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:292:5 [INFO] [stdout] | [INFO] [stdout] 292 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 292 - return result.to_string(); [INFO] [stdout] 292 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:268:13 [INFO] [stdout] | [INFO] [stdout] 268 | return acc; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 268 - return acc; [INFO] [stdout] 268 + acc [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:289:9 [INFO] [stdout] | [INFO] [stdout] 289 | return acc; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 289 - return acc; [INFO] [stdout] 289 + acc [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:323:5 [INFO] [stdout] | [INFO] [stdout] 323 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 323 - return result.to_string(); [INFO] [stdout] 323 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-19/src/lib.rs:304:13 [INFO] [stdout] | [INFO] [stdout] 304 | return acc; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 304 - return acc; [INFO] [stdout] 304 + acc [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-04/src/lib.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | / return input.split("-") [INFO] [stdout] 15 | | .map(|it| it.parse::().unwrap()) [INFO] [stdout] 16 | | .next_tuple() [INFO] [stdout] 17 | | .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] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 14 ~ input.split("-") [INFO] [stdout] 15 + .map(|it| it.parse::().unwrap()) [INFO] [stdout] 16 + .next_tuple() [INFO] [stdout] 17 ~ .unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-04/src/lib.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 34 - return result.to_string(); [INFO] [stdout] 34 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-04/src/lib.rs:32:9 [INFO] [stdout] | [INFO] [stdout] 32 | return acc + if left == range || right == range { 1u32 } else { 0u32 }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 acc + if left == range || right == range { 1u32 } else { 0u32 }; [INFO] [stdout] 32 + acc + if left == range || right == range { 1u32 } else { 0u32 } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-04/src/lib.rs:51:5 [INFO] [stdout] | [INFO] [stdout] 51 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 51 - return result.to_string(); [INFO] [stdout] 51 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-04/src/lib.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | return acc + if range.0 <= range.1 { 1 } else { 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] 49 - return acc + if range.0 <= range.1 { 1 } else { 0 }; [INFO] [stdout] 49 + acc + if range.0 <= range.1 { 1 } else { 0 } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: a method with this name may be added to the standard library in the future [INFO] [stdout] --> 2023/day-06/src/lib.rs:56:12 [INFO] [stdout] | [INFO] [stdout] 56 | }).intersperse("").collect(); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: call with fully qualified syntax `itertools::Itertools::intersperse(...)` to keep using the current method [INFO] [stdout] = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior! [INFO] [stdout] = note: for more information, see issue #48919 [INFO] [stdout] = note: `#[warn(unstable_name_collisions)]` (part of `#[warn(future_incompatible)]`) on by default [INFO] [stdout] help: add `#![feature(iter_intersperse)]` to the crate attributes to enable `std::iter::Iterator::intersperse` [INFO] [stdout] | [INFO] [stdout] 1 + #![feature(iter_intersperse)] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `RPS` contains a capitalized acronym [INFO] [stdout] --> 2022/day-02/src/lib.rs:12:6 [INFO] [stdout] | [INFO] [stdout] 12 | enum RPS { [INFO] [stdout] | ^^^ help: consider making the acronym lowercase, except the initial letter: `Rps` [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: unneeded `return` statement [INFO] [stdout] --> 2022/day-02/src/lib.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | / return match char { [INFO] [stdout] 27 | | "A" => Some(RPS::Rock), [INFO] [stdout] 28 | | "X" => Some(RPS::Rock), [INFO] [stdout] 29 | | "B" => Some(RPS::Paper), [INFO] [stdout] ... | [INFO] [stdout] 33 | | _ => None [INFO] [stdout] 34 | | } [INFO] [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] 26 ~ match char { [INFO] [stdout] 27 + "A" => Some(RPS::Rock), [INFO] [stdout] 28 + "X" => Some(RPS::Rock), [INFO] [stdout] 29 + "B" => Some(RPS::Paper), [INFO] [stdout] 30 + "Y" => Some(RPS::Paper), [INFO] [stdout] 31 + "C" => Some(RPS::Scissors), [INFO] [stdout] 32 + "Z" => Some(RPS::Scissors), [INFO] [stdout] 33 + _ => None [INFO] [stdout] 34 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-02/src/lib.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | / return match self { [INFO] [stdout] 39 | | RPS::Rock => { [INFO] [stdout] 40 | | 1 + match other { [INFO] [stdout] 41 | | RPS::Rock => 3, [INFO] [stdout] ... | [INFO] [stdout] 60 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 38 ~ match self { [INFO] [stdout] 39 + RPS::Rock => { [INFO] [stdout] 40 + 1 + match other { [INFO] [stdout] 41 + RPS::Rock => 3, [INFO] [stdout] 42 + RPS::Paper => 0, [INFO] [stdout] 43 + RPS::Scissors => 6, [INFO] [stdout] 44 + } [INFO] [stdout] 45 + } [INFO] [stdout] 46 + RPS::Paper => { [INFO] [stdout] 47 + 2 + match other { [INFO] [stdout] 48 + RPS::Rock => 6, [INFO] [stdout] 49 + RPS::Paper => 3, [INFO] [stdout] 50 + RPS::Scissors => 0 [INFO] [stdout] 51 + } [INFO] [stdout] 52 + } [INFO] [stdout] 53 + RPS::Scissors => { [INFO] [stdout] 54 + 3 + match other { [INFO] [stdout] 55 + RPS::Rock => 0, [INFO] [stdout] 56 + RPS::Paper => 6, [INFO] [stdout] 57 + RPS::Scissors => 3 [INFO] [stdout] 58 + } [INFO] [stdout] 59 + } [INFO] [stdout] 60 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-02/src/lib.rs:64:9 [INFO] [stdout] | [INFO] [stdout] 64 | / return match self { [INFO] [stdout] 65 | | RPS::Rock => { [INFO] [stdout] 66 | | match result { [INFO] [stdout] 67 | | Result::Win => 8, [INFO] [stdout] ... | [INFO] [stdout] 86 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 64 ~ match self { [INFO] [stdout] 65 + RPS::Rock => { [INFO] [stdout] 66 + match result { [INFO] [stdout] 67 + Result::Win => 8, [INFO] [stdout] 68 + Result::Lose => 3, [INFO] [stdout] 69 + Result::Draw => 4 [INFO] [stdout] 70 + } [INFO] [stdout] 71 + } [INFO] [stdout] 72 + RPS::Paper => { [INFO] [stdout] 73 + match result { [INFO] [stdout] 74 + Result::Win => 9, [INFO] [stdout] 75 + Result::Lose => 1, [INFO] [stdout] 76 + Result::Draw => 5 [INFO] [stdout] 77 + } [INFO] [stdout] 78 + } [INFO] [stdout] 79 + RPS::Scissors => { [INFO] [stdout] 80 + match result { [INFO] [stdout] 81 + Result::Win => 7, [INFO] [stdout] 82 + Result::Lose => 2, [INFO] [stdout] 83 + Result::Draw => 6 [INFO] [stdout] 84 + } [INFO] [stdout] 85 + } [INFO] [stdout] 86 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-02/src/lib.rs:92:9 [INFO] [stdout] | [INFO] [stdout] 92 | / return match char { [INFO] [stdout] 93 | | "X" => Some(Result::Lose), [INFO] [stdout] 94 | | "Y" => Some(Result::Draw), [INFO] [stdout] 95 | | "Z" => Some(Result::Win), [INFO] [stdout] 96 | | _ => None [INFO] [stdout] 97 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 92 ~ match char { [INFO] [stdout] 93 + "X" => Some(Result::Lose), [INFO] [stdout] 94 + "Y" => Some(Result::Draw), [INFO] [stdout] 95 + "Z" => Some(Result::Win), [INFO] [stdout] 96 + _ => None [INFO] [stdout] 97 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-02/src/lib.rs:110:5 [INFO] [stdout] | [INFO] [stdout] 110 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 110 - return result.to_string(); [INFO] [stdout] 110 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-02/src/lib.rs:108:9 [INFO] [stdout] | [INFO] [stdout] 108 | return acc + right.score(&left) 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] 108 - return acc + right.score(&left) as u32; [INFO] [stdout] 108 + acc + right.score(&left) as u32 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-02/src/lib.rs:122:5 [INFO] [stdout] | [INFO] [stdout] 122 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 122 - return result.to_string(); [INFO] [stdout] 122 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-02/src/lib.rs:120:9 [INFO] [stdout] | [INFO] [stdout] 120 | return acc + left.score_for_result(&right) 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] 120 - return acc + left.score_for_result(&right) as u32; [INFO] [stdout] 120 + acc + left.score_for_result(&right) as u32 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | return self.state; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 30 - return self.state; [INFO] [stdout] 30 + self.state [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | 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] 38 - return true; [INFO] [stdout] 38 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | return !self.state.iter().fold(true, |acc, it| acc && *it.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] 49 - return !self.state.iter().fold(true, |acc, it| acc && *it.1); [INFO] [stdout] 49 + !self.state.iter().fold(true, |acc, it| acc && *it.1) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.fold` can be written more succinctly using another method [INFO] [stdout] --> 2023/day-20/src/lib.rs:49:35 [INFO] [stdout] | [INFO] [stdout] 49 | return !self.state.iter().fold(true, |acc, it| acc && *it.1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `all(|it| *it.1)` [INFO] [stdout] | [INFO] [stdout] = note: the `all` method is short circuiting and may change the program semantics if the iterator has side effects [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_fold [INFO] [stdout] = note: `#[warn(clippy::unnecessary_fold)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:54:9 [INFO] [stdout] | [INFO] [stdout] 54 | 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] 54 - return true; [INFO] [stdout] 54 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:63:9 [INFO] [stdout] | [INFO] [stdout] 63 | 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] 63 - return false; [INFO] [stdout] 63 + false [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:67:9 [INFO] [stdout] | [INFO] [stdout] 67 | 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] 67 - return false; [INFO] [stdout] 67 + false [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:122:9 [INFO] [stdout] | [INFO] [stdout] 122 | return Ok(DesertMachine { modules }); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 122 - return Ok(DesertMachine { modules }); [INFO] [stdout] 122 + Ok(DesertMachine { modules }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::iter::Map, {closure@2023/day-20/src/lib.rs:96:94: 96:100}>` [INFO] [stdout] --> 2023/day-20/src/lib.rs:96:72 [INFO] [stdout] | [INFO] [stdout] 96 | let modules: HashMap, Vec)> = input.split('\n').map(|line| { [INFO] [stdout] | ________________________________________________________________________^ [INFO] [stdout] 97 | | let module_part = line.split(" -> ").take(1).next().unwrap(); [INFO] [stdout] 98 | | let module_name: &str = &module_part.trim_matches(|it| it == '%' || it == '&'); [INFO] [stdout] 99 | | let module: Box = match &module_part[..1] { [INFO] [stdout] ... | [INFO] [stdout] 119 | | ); [INFO] [stdout] 120 | | }).into_iter().collect(); [INFO] [stdout] | |______________________^ [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] help: consider removing `.into_iter()` [INFO] [stdout] | [INFO] [stdout] 96 ~ let modules: HashMap, Vec)> = input.split('\n').map(|line| { [INFO] [stdout] 97 + let module_part = line.split(" -> ").take(1).next().unwrap(); [INFO] [stdout] 98 + let module_name: &str = &module_part.trim_matches(|it| it == '%' || it == '&'); [INFO] [stdout] 99 + let module: Box = match &module_part[..1] { [INFO] [stdout] 100 + "%" => Box::new(Switch { state: false }), [INFO] [stdout] 101 + "&" => Box::new(Conjunction { [INFO] [stdout] 102 + state: parents.get(module_name).unwrap().iter() [INFO] [stdout] 103 + .map(|it| (it.to_string(), false)) [INFO] [stdout] 104 + .into_iter() [INFO] [stdout] 105 + .collect() [INFO] [stdout] 106 + }), [INFO] [stdout] 107 + "b" => Box::new(Broadcast {}), [INFO] [stdout] 108 + _ => panic!("Invalid module") [INFO] [stdout] 109 + }; [INFO] [stdout] 110 + [INFO] [stdout] 111 + return ( [INFO] [stdout] 112 + module_name.to_string(), [INFO] [stdout] 113 + ( [INFO] [stdout] 114 + module, [INFO] [stdout] 115 + kids.get(module_name).unwrap().iter() [INFO] [stdout] 116 + .map(|it| it.to_string()) [INFO] [stdout] 117 + .collect() [INFO] [stdout] 118 + ) [INFO] [stdout] 119 + ); [INFO] [stdout] 120 ~ }).collect(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:111:13 [INFO] [stdout] | [INFO] [stdout] 111 | / return ( [INFO] [stdout] 112 | | module_name.to_string(), [INFO] [stdout] 113 | | ( [INFO] [stdout] 114 | | module, [INFO] [stdout] ... | [INFO] [stdout] 119 | | ); [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 111 ~ ( [INFO] [stdout] 112 + module_name.to_string(), [INFO] [stdout] 113 + ( [INFO] [stdout] 114 + module, [INFO] [stdout] 115 + kids.get(module_name).unwrap().iter() [INFO] [stdout] 116 + .map(|it| it.to_string()) [INFO] [stdout] 117 + .collect() [INFO] [stdout] 118 + ) [INFO] [stdout] 119 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> 2023/day-20/src/lib.rs:98:37 [INFO] [stdout] | [INFO] [stdout] 98 | let module_name: &str = &module_part.trim_matches(|it| it == '%' || it == '&'); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `module_part.trim_matches(|it| it == '%' || it == '&')` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::iter::Map, {closure@2023/day-20/src/lib.rs:103:30: 103:34}>` [INFO] [stdout] --> 2023/day-20/src/lib.rs:102:28 [INFO] [stdout] | [INFO] [stdout] 102 | state: parents.get(module_name).unwrap().iter() [INFO] [stdout] | ____________________________^ [INFO] [stdout] 103 | | .map(|it| (it.to_string(), false)) [INFO] [stdout] 104 | | .into_iter() [INFO] [stdout] | |____________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] help: consider removing `.into_iter()` [INFO] [stdout] | [INFO] [stdout] 102 ~ state: parents.get(module_name).unwrap().iter() [INFO] [stdout] 103 + .map(|it| (it.to_string(), false)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:155:9 [INFO] [stdout] | [INFO] [stdout] 155 | return (total_low, total_high); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 155 - return (total_low, total_high); [INFO] [stdout] 155 + (total_low, total_high) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:138:17 [INFO] [stdout] | [INFO] [stdout] 138 | / return connections.clone().iter().fold(acc, |acc, next_name| { [INFO] [stdout] 139 | | if self.modules.contains_key(next_name) { [INFO] [stdout] 140 | | let (next_module, _) = self.modules.get_mut(next_name).unwrap(); [INFO] [stdout] 141 | | if next_module.handle(module_name.as_str(), signal) { [INFO] [stdout] ... | [INFO] [stdout] 145 | | return if signal { (acc.0, acc.1 + 1) } else { (acc.0 + 1, acc.1) }; [INFO] [stdout] 146 | | }); [INFO] [stdout] | |__________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 138 ~ connections.clone().iter().fold(acc, |acc, next_name| { [INFO] [stdout] 139 + if self.modules.contains_key(next_name) { [INFO] [stdout] 140 + let (next_module, _) = self.modules.get_mut(next_name).unwrap(); [INFO] [stdout] 141 + if next_module.handle(module_name.as_str(), signal) { [INFO] [stdout] 142 + next_modules.push(next_name.clone()); [INFO] [stdout] 143 + } [INFO] [stdout] 144 + } [INFO] [stdout] 145 + return if signal { (acc.0, acc.1 + 1) } else { (acc.0 + 1, acc.1) }; [INFO] [stdout] 146 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:145:21 [INFO] [stdout] | [INFO] [stdout] 145 | return if signal { (acc.0, acc.1 + 1) } else { (acc.0 + 1, acc.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] 145 - return if signal { (acc.0, acc.1 + 1) } else { (acc.0 + 1, acc.1) }; [INFO] [stdout] 145 + if signal { (acc.0, acc.1 + 1) } else { (acc.0 + 1, acc.1) } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:159:9 [INFO] [stdout] | [INFO] [stdout] 159 | / return self.modules.iter().filter_map(|(module, (_, modules))| { [INFO] [stdout] 160 | | return if modules.first().unwrap() == module_name { Some(module.clone()) } else { None }; [INFO] [stdout] 161 | | }).collect(); [INFO] [stdout] | |____________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 159 ~ self.modules.iter().filter_map(|(module, (_, modules))| { [INFO] [stdout] 160 + return if modules.first().unwrap() == module_name { Some(module.clone()) } else { None }; [INFO] [stdout] 161 ~ }).collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:160:13 [INFO] [stdout] | [INFO] [stdout] 160 | return if modules.first().unwrap() == module_name { Some(module.clone()) } else { 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] 160 - return if modules.first().unwrap() == module_name { Some(module.clone()) } else { None }; [INFO] [stdout] 160 + if modules.first().unwrap() == module_name { Some(module.clone()) } else { None } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> 2023/day-20/src/lib.rs:164:49 [INFO] [stdout] | [INFO] [stdout] 164 | fn calc_min_steps(&mut self, final_modules: &Vec) -> 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] 164 - fn calc_min_steps(&mut self, final_modules: &Vec) -> Vec { [INFO] [stdout] 164 + fn calc_min_steps(&mut self, final_modules: &[String]) -> Vec { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::iter::Map, {closure@2023/day-20/src/lib.rs:168:18: 168:31}>` [INFO] [stdout] --> 2023/day-20/src/lib.rs:167:52 [INFO] [stdout] | [INFO] [stdout] 167 | let mut min_steps: HashMap<&String, u64> = final_modules.iter() [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 168 | | .map(|module_name| (module_name, u64::MAX)) [INFO] [stdout] 169 | | .into_iter() [INFO] [stdout] | |________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] help: consider removing `.into_iter()` [INFO] [stdout] | [INFO] [stdout] 167 ~ let mut min_steps: HashMap<&String, u64> = final_modules.iter() [INFO] [stdout] 168 + .map(|module_name| (module_name, u64::MAX)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:214:5 [INFO] [stdout] | [INFO] [stdout] 214 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 214 - return result.to_string(); [INFO] [stdout] 214 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:209:9 [INFO] [stdout] | [INFO] [stdout] 209 | return (acc.0 + low, acc.1 + high); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 209 - return (acc.0 + low, acc.1 + high); [INFO] [stdout] 209 + (acc.0 + low, acc.1 + high) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-20/src/lib.rs:227:5 [INFO] [stdout] | [INFO] [stdout] 227 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 227 - return result.to_string(); [INFO] [stdout] 227 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-06/src/lib.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | return options_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] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 18 - return options_count; [INFO] [stdout] 18 + options_count [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-06/src/lib.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 39 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 39 - return result.to_string(); [INFO] [stdout] 39 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-06/src/lib.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | return numbers; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 numbers; [INFO] [stdout] 29 + numbers [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.fold` can be written more succinctly using another method [INFO] [stdout] --> 2023/day-06/src/lib.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | .fold(1, |acc, it| acc * it); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `product::()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_fold [INFO] [stdout] = note: `#[warn(clippy::unnecessary_fold)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-06/src/lib.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 46 | return (max_x.trunc() - min_x.trunc()) 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] 46 - return (max_x.trunc() - min_x.trunc()) as u64; [INFO] [stdout] 46 + (max_x.trunc() - min_x.trunc()) as u64 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-06/src/lib.rs:61:5 [INFO] [stdout] | [INFO] [stdout] 61 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 61 - return result.to_string(); [INFO] [stdout] 61 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-06/src/lib.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | return number.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] 57 - return number.parse::().unwrap(); [INFO] [stdout] 57 + number.parse::().unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-01/src/lib.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 21 - return result.to_string(); [INFO] [stdout] 21 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-01/src/lib.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | return (acc.0 + it.parse::().unwrap(), acc.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] 19 - return (acc.0 + it.parse::().unwrap(), acc.1); [INFO] [stdout] 19 + (acc.0 + it.parse::().unwrap(), acc.1) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> 2022/day-01/src/lib.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 16 | if it.len() == 0 { [INFO] [stdout] | ^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `it.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] --> 2022/day-01/src/lib.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 41 - return result.to_string(); [INFO] [stdout] 41 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> 2022/day-01/src/lib.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 29 | if it.len() == 0 { [INFO] [stdout] | ^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `it.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] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> 2022/day-01/src/lib.rs:33:13 [INFO] [stdout] | [INFO] [stdout] 33 | calories = calories + it.parse::().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `calories += it.parse::().unwrap()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] = note: `#[warn(clippy::assign_op_pattern)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-03/src/lib.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 21 - return result.to_string(); [INFO] [stdout] 21 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-03/src/lib.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | return acc + score 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] 19 - return acc + score as u32; [INFO] [stdout] 19 + acc + score as u32 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator` [INFO] [stdout] --> 2022/day-03/src/lib.rs:16:51 [INFO] [stdout] | [INFO] [stdout] 16 | let set: HashSet = HashSet::from_iter(parts.1.bytes().into_iter()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()` [INFO] [stdout] --> /rustc/3645249d79dfb136b5d8de3ce153d19d6698d92d/library/core/src/iter/traits/collect.rs:152:20 [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] help: consider removing the `.into_iter()` [INFO] [stdout] | [INFO] [stdout] 16 - let set: HashSet = HashSet::from_iter(parts.1.bytes().into_iter()); [INFO] [stdout] 16 + let set: HashSet = HashSet::from_iter(parts.1.bytes()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2022/day-03/src/lib.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 32 - return result.to_string(); [INFO] [stdout] 32 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-04/src/lib.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | / return input.trim().split(" ").filter_map( [INFO] [stdout] 22 | | |it| match it { [INFO] [stdout] 23 | | "" => None, [INFO] [stdout] 24 | | num => Some(num.trim().parse::().unwrap()) [INFO] [stdout] 25 | | } [INFO] [stdout] 26 | | ).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.trim().split(" ").filter_map( [INFO] [stdout] 22 + |it| match it { [INFO] [stdout] 23 + "" => None, [INFO] [stdout] 24 + num => Some(num.trim().parse::().unwrap()) [INFO] [stdout] 25 + } [INFO] [stdout] 26 ~ ).collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-04/src/lib.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 35 | / return Card { [INFO] [stdout] 36 | | index: index.trim().parse().unwrap(), [INFO] [stdout] 37 | | winning: parse_numbers(second_parts.last().unwrap()), [INFO] [stdout] 38 | | input: parse_numbers(first_parts.last().unwrap()), [INFO] [stdout] 39 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 35 ~ Card { [INFO] [stdout] 36 + index: index.trim().parse().unwrap(), [INFO] [stdout] 37 + winning: parse_numbers(second_parts.last().unwrap()), [INFO] [stdout] 38 + input: parse_numbers(first_parts.last().unwrap()), [INFO] [stdout] 39 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-04/src/lib.rs:43:9 [INFO] [stdout] | [INFO] [stdout] 43 | / return self.winning.iter().filter_map( [INFO] [stdout] 44 | | |it| match self.input.contains(it) { [INFO] [stdout] 45 | | true => Some(1), [INFO] [stdout] 46 | | false => None [INFO] [stdout] 47 | | } [INFO] [stdout] 48 | | ).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] 43 ~ self.winning.iter().filter_map( [INFO] [stdout] 44 + |it| match self.input.contains(it) { [INFO] [stdout] 45 + true => Some(1), [INFO] [stdout] 46 + false => None [INFO] [stdout] 47 + } [INFO] [stdout] 48 ~ ).sum() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-04/src/lib.rs:63:5 [INFO] [stdout] | [INFO] [stdout] 63 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 63 - return result.to_string(); [INFO] [stdout] 63 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> 2023/day-04/src/lib.rs:53:50 [INFO] [stdout] | [INFO] [stdout] 53 | let cards: Vec = input.split("\n").map(|it| Card::create(it)).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `Card::create` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] = note: `#[warn(clippy::redundant_closure)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-04/src/lib.rs:86:5 [INFO] [stdout] | [INFO] [stdout] 86 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 86 - return result.to_string(); [INFO] [stdout] 86 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> 2023/day-04/src/lib.rs:67:50 [INFO] [stdout] | [INFO] [stdout] 67 | let cards: Vec = input.split("\n").map(|it| Card::create(it)).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `Card::create` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: found `.or(Some(…)).unwrap()` [INFO] [stdout] --> 2023/day-04/src/lib.rs:72:57 [INFO] [stdout] | [INFO] [stdout] 72 | let copies_count: u32 = copies.get(&card.index).or(Some(&0)).unwrap().to_owned(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or(&0)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_then_unwrap [INFO] [stdout] = note: `#[warn(clippy::or_then_unwrap)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::slice::Chunks<'_, &str>` [INFO] [stdout] --> 2022/day-03/src/lib.rs:25:23 [INFO] [stdout] | [INFO] [stdout] 25 | let result: u32 = input.split("\n").collect::>().chunks(3).into_iter().fold(0, |acc, chunk| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into_iter()`: `input.split("\n").collect::>().chunks(3)` [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] --> 2022/day-03/src/lib.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | return acc + score 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] 30 - return acc + score as u32; [INFO] [stdout] 30 + acc + score as u32 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator` [INFO] [stdout] --> 2022/day-03/src/lib.rs:26:52 [INFO] [stdout] | [INFO] [stdout] 26 | let set1: HashSet = HashSet::from_iter(chunk[1].bytes().into_iter()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()` [INFO] [stdout] --> /rustc/3645249d79dfb136b5d8de3ce153d19d6698d92d/library/core/src/iter/traits/collect.rs:152:20 [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] help: consider removing the `.into_iter()` [INFO] [stdout] | [INFO] [stdout] 26 - let set1: HashSet = HashSet::from_iter(chunk[1].bytes().into_iter()); [INFO] [stdout] 26 + let set1: HashSet = HashSet::from_iter(chunk[1].bytes()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator` [INFO] [stdout] --> 2022/day-03/src/lib.rs:27:52 [INFO] [stdout] | [INFO] [stdout] 27 | let set2: HashSet = HashSet::from_iter(chunk[2].bytes().into_iter()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()` [INFO] [stdout] --> /rustc/3645249d79dfb136b5d8de3ce153d19d6698d92d/library/core/src/iter/traits/collect.rs:152:20 [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] help: consider removing the `.into_iter()` [INFO] [stdout] | [INFO] [stdout] 27 - let set2: HashSet = HashSet::from_iter(chunk[2].bytes().into_iter()); [INFO] [stdout] 27 + let set2: HashSet = HashSet::from_iter(chunk[2].bytes()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> common/src/math.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | return Some(n1); [INFO] [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 Some(n1); [INFO] [stdout] 16 + Some(n1) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> common/src/math.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 33 | return Some(n.iter().fold(acc.unwrap().to_owned(), | acc, it | gcd(acc, *it).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] 33 - return Some(n.iter().fold(acc.unwrap().to_owned(), | acc, it | gcd(acc, *it).unwrap())) [INFO] [stdout] 33 + Some(n.iter().fold(acc.unwrap().to_owned(), | acc, it | gcd(acc, *it).unwrap())) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> common/src/math.rs:19:19 [INFO] [stdout] | [INFO] [stdout] 19 | pub fn gcd_vec(n: &Vec) -> Option { [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 - pub fn gcd_vec(n: &Vec) -> Option { [INFO] [stdout] 19 + pub fn gcd_vec(n: &[u64]) -> Option { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `contains()` instead of `iter().any()` is more efficient [INFO] [stdout] --> common/src/math.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | if n.iter().any(|&it| it == 0) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `n.contains(&0)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_contains [INFO] [stdout] = note: `#[warn(clippy::manual_contains)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `n.get(0)` [INFO] [stdout] --> common/src/math.rs:28:20 [INFO] [stdout] | [INFO] [stdout] 28 | let acc = gcd(*n.get(0).unwrap(), *n.get(1).unwrap()); [INFO] [stdout] | ^^^^^^^^ help: try: `n.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] = note: `#[warn(clippy::get_first)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> common/src/math.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | return Some(n * m / gcd(n, m).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] 40 - return Some(n * m / gcd(n, m).unwrap()) [INFO] [stdout] 40 + Some(n * m / gcd(n, m).unwrap()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> common/src/math.rs:57:5 [INFO] [stdout] | [INFO] [stdout] 57 | return Some(n.iter().fold(acc.unwrap().to_owned(), | acc, it | lcm(acc, *it).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] 57 - return Some(n.iter().fold(acc.unwrap().to_owned(), | acc, it | lcm(acc, *it).unwrap())) [INFO] [stdout] 57 + Some(n.iter().fold(acc.unwrap().to_owned(), | acc, it | lcm(acc, *it).unwrap())) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> common/src/math.rs:43:19 [INFO] [stdout] | [INFO] [stdout] 43 | pub fn lcm_vec(n: &Vec) -> Option { [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] 43 - pub fn lcm_vec(n: &Vec) -> Option { [INFO] [stdout] 43 + pub fn lcm_vec(n: &[u64]) -> Option { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `contains()` instead of `iter().any()` is more efficient [INFO] [stdout] --> common/src/math.rs:44:8 [INFO] [stdout] | [INFO] [stdout] 44 | if n.iter().any(|&it| it == 0) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `n.contains(&0)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `n.get(0)` [INFO] [stdout] --> common/src/math.rs:52:20 [INFO] [stdout] | [INFO] [stdout] 52 | let acc = lcm(*n.get(0).unwrap(), *n.get(1).unwrap()); [INFO] [stdout] | ^^^^^^^^ help: try: `n.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-03/src/lib.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 39 | / return Schema { [INFO] [stdout] 40 | | cols: data.get(0).unwrap().len() as i32, [INFO] [stdout] 41 | | rows: data.len() as i32, [INFO] [stdout] 42 | | data, [INFO] [stdout] 43 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 39 ~ Schema { [INFO] [stdout] 40 + cols: data.get(0).unwrap().len() as i32, [INFO] [stdout] 41 + rows: data.len() as i32, [INFO] [stdout] 42 + data, [INFO] [stdout] 43 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `data.get(0)` [INFO] [stdout] --> 2023/day-03/src/lib.rs:40:19 [INFO] [stdout] | [INFO] [stdout] 40 | cols: data.get(0).unwrap().len() as i32, [INFO] [stdout] | ^^^^^^^^^^^ help: try: `data.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] = note: `#[warn(clippy::get_first)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-03/src/lib.rs:47:9 [INFO] [stdout] | [INFO] [stdout] 47 | return self.data.get(idy as usize).unwrap().get(idx as usize).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] 47 - return self.data.get(idy as usize).unwrap().get(idx as usize).unwrap(); [INFO] [stdout] 47 + self.data.get(idy as usize).unwrap().get(idx as usize).unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-03/src/lib.rs:51:9 [INFO] [stdout] | [INFO] [stdout] 51 | return Schema::ADJACENT_POSITIONS.iter().any(|it| self.is_symbol(idy + it[0], idx + it[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] 51 - return Schema::ADJACENT_POSITIONS.iter().any(|it| self.is_symbol(idy + it[0], idx + it[1])); [INFO] [stdout] 51 + Schema::ADJACENT_POSITIONS.iter().any(|it| self.is_symbol(idy + it[0], idx + it[1])) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-03/src/lib.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 55 | / return HashSet::from_iter(Schema::ADJACENT_POSITIONS.iter().filter_map(|it| { [INFO] [stdout] 56 | | if self.is_gear(idy + it[0], idx + it[1]) { [INFO] [stdout] 57 | | return Some(((idy + it[0]) * (self.cols - 1) + idx + it[1]) as u32); [INFO] [stdout] ... | [INFO] [stdout] 60 | | }).collect::>()); [INFO] [stdout] | |_________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 55 ~ HashSet::from_iter(Schema::ADJACENT_POSITIONS.iter().filter_map(|it| { [INFO] [stdout] 56 + if self.is_gear(idy + it[0], idx + it[1]) { [INFO] [stdout] 57 + return Some(((idy + it[0]) * (self.cols - 1) + idx + it[1]) as u32); [INFO] [stdout] 58 + } [INFO] [stdout] 59 + return None; [INFO] [stdout] 60 ~ }).collect::>()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-03/src/lib.rs:59:13 [INFO] [stdout] | [INFO] [stdout] 59 | 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] 59 - return None; [INFO] [stdout] 59 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-03/src/lib.rs:73:9 [INFO] [stdout] | [INFO] [stdout] 73 | return !Schema::is_digit(char) && char != &b'.'; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 73 - return !Schema::is_digit(char) && char != &b'.'; [INFO] [stdout] 73 + !Schema::is_digit(char) && char != &b'.' [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-03/src/lib.rs:80:9 [INFO] [stdout] | [INFO] [stdout] 80 | return self.item(idy, idx) == &b'*'; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 80 - return self.item(idy, idx) == &b'*'; [INFO] [stdout] 80 + self.item(idy, idx) == &b'*' [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-03/src/lib.rs:99:9 [INFO] [stdout] | [INFO] [stdout] 99 | / return write!( [INFO] [stdout] 100 | | f, [INFO] [stdout] 101 | | "item '{}' at '{}:{}' | last_in_row: {}; is_digit: {}", [INFO] [stdout] 102 | | self.item as char, self.idy, self.idx, self.last_in_row, self.is_digit [INFO] [stdout] 103 | | ); [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 99 ~ write!( [INFO] [stdout] 100 + f, [INFO] [stdout] 101 + "item '{}' at '{}:{}' | last_in_row: {}; is_digit: {}", [INFO] [stdout] 102 + self.item as char, self.idy, self.idx, self.last_in_row, self.is_digit [INFO] [stdout] 103 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-03/src/lib.rs:114:9 [INFO] [stdout] | [INFO] [stdout] 114 | / return SchemaIterator { [INFO] [stdout] 115 | | schema, [INFO] [stdout] 116 | | curr: None, [INFO] [stdout] 117 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 ~ SchemaIterator { [INFO] [stdout] 115 + schema, [INFO] [stdout] 116 + curr: None, [INFO] [stdout] 117 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-03/src/lib.rs:155:9 [INFO] [stdout] | [INFO] [stdout] 155 | 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] 155 - return None; [INFO] [stdout] 155 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-03/src/lib.rs:183:5 [INFO] [stdout] | [INFO] [stdout] 183 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 183 - return result.to_string(); [INFO] [stdout] 183 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `SchemaIterator<'_>` [INFO] [stdout] --> 2023/day-03/src/lib.rs:165:23 [INFO] [stdout] | [INFO] [stdout] 165 | let result: u32 = SchemaIterator::for_schema(&schema).into_iter().filter_map( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into_iter()`: `SchemaIterator::for_schema(&schema)` [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] --> 2023/day-03/src/lib.rs:179:13 [INFO] [stdout] | [INFO] [stdout] 179 | 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] 179 - return None; [INFO] [stdout] 179 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-03/src/lib.rs:224:5 [INFO] [stdout] | [INFO] [stdout] 224 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 224 - return result.to_string(); [INFO] [stdout] 224 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `SchemaIterator<'_>` [INFO] [stdout] --> 2023/day-03/src/lib.rs:192:41 [INFO] [stdout] | [INFO] [stdout] 192 | let gears: HashMap> = SchemaIterator::for_schema(&schema).into_iter().fold( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into_iter()`: `SchemaIterator::for_schema(&schema)` [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] --> 2023/day-03/src/lib.rs:213:13 [INFO] [stdout] | [INFO] [stdout] 213 | return acc; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 213 - return acc; [INFO] [stdout] 213 + acc [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of `contains_key` followed by `insert` on a `HashMap` [INFO] [stdout] --> 2023/day-03/src/lib.rs:203:21 [INFO] [stdout] | [INFO] [stdout] 203 | / if !acc.contains_key(&(gear as i32)) { [INFO] [stdout] 204 | | acc.insert(gear as i32, Vec::new()); [INFO] [stdout] 205 | | } [INFO] [stdout] | |_____________________^ help: try: `acc.entry((gear as i32)).or_insert_with(|| Vec::new());` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_entry [INFO] [stdout] = note: `#[warn(clippy::map_entry)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `it.get(0)` [INFO] [stdout] --> 2023/day-03/src/lib.rs:219:23 [INFO] [stdout] | [INFO] [stdout] 219 | 2 => Some(it.get(0).unwrap() * it.get(1).unwrap()), [INFO] [stdout] | ^^^^^^^^^ help: try: `it.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> 2023/day-03/src/lib.rs:113:27 [INFO] [stdout] | [INFO] [stdout] 113 | fn for_schema(schema: &Schema) -> SchemaIterator { [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 113 | fn for_schema(schema: &Schema) -> SchemaIterator<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking regex v1.10.2 [INFO] [stderr] Checking aoc2023-day-01 v0.1.0 (/opt/rustwide/workdir/2023/day-01) [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-01/src/lib.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 28 - return result.to_string(); [INFO] [stdout] 28 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-01/src/lib.rs:21:13 [INFO] [stdout] | [INFO] [stdout] 21 | / return match numbers.len() { [INFO] [stdout] 22 | | 0 => 0, [INFO] [stdout] 23 | | 1 => numbers[0] * 10 + numbers[0], [INFO] [stdout] 24 | | _n => numbers[0] * 10 + numbers.last().unwrap(), [INFO] [stdout] 25 | | }; [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 ~ match numbers.len() { [INFO] [stdout] 22 + 0 => 0, [INFO] [stdout] 23 + 1 => numbers[0] * 10 + numbers[0], [INFO] [stdout] 24 + _n => numbers[0] * 10 + numbers.last().unwrap(), [INFO] [stdout] 25 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-01/src/lib.rs:76:5 [INFO] [stdout] | [INFO] [stdout] 76 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 76 - return result.to_string(); [INFO] [stdout] 76 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> 2023/day-01/src/lib.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | pattern.push_str(")"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `pattern.push(')')` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_add_str [INFO] [stdout] = note: `#[warn(clippy::single_char_add_str)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> 2023/day-01/src/lib.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | rev_pattern.push_str(")"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `rev_pattern.push(')')` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_add_str [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> 2023/day-01/src/lib.rs:51:16 [INFO] [stdout] | [INFO] [stdout] 51 | if !first.is_none() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try: `first.is_some()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> 2023/day-01/src/lib.rs:63:16 [INFO] [stdout] | [INFO] [stdout] 63 | if !last.is_none() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `last.is_some()` [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: called `unwrap` on `first` after checking its variant with `is_none` [INFO] [stdout] --> 2023/day-01/src/lib.rs:52:29 [INFO] [stdout] | [INFO] [stdout] 51 | if !first.is_none() { [INFO] [stdout] | --------------- the check is happening here [INFO] [stdout] 52 | let group = first.unwrap().as_str(); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: try using `match` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_unwrap [INFO] [stdout] = note: `#[warn(clippy::unnecessary_unwrap)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `last` after checking its variant with `is_none` [INFO] [stdout] --> 2023/day-01/src/lib.rs:64:29 [INFO] [stdout] | [INFO] [stdout] 63 | if !last.is_none() { [INFO] [stdout] | -------------- the check is happening here [INFO] [stdout] 64 | let group = last.unwrap().as_str(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: try using `match` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_unwrap [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-01/src/lib.rs:73:13 [INFO] [stdout] | [INFO] [stdout] 73 | return numbers[0] * 10 + numbers[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] 73 - return numbers[0] * 10 + numbers[1]; [INFO] [stdout] 73 + numbers[0] * 10 + numbers[1] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking aoc2023-day-22 v0.1.0 (/opt/rustwide/workdir/2023/day-22) [INFO] [stderr] Checking aoc2023-day-17 v0.1.0 (/opt/rustwide/workdir/2023/day-17) [INFO] [stderr] Checking aoc2023-day-11 v0.1.0 (/opt/rustwide/workdir/2023/day-11) [INFO] [stderr] Checking aoc2023-day-14 v0.1.0 (/opt/rustwide/workdir/2023/day-14) [INFO] [stderr] Checking aoc2023-day-16 v0.1.0 (/opt/rustwide/workdir/2023/day-16) [INFO] [stderr] Checking aoc2023-day-23 v0.1.0 (/opt/rustwide/workdir/2023/day-23) [INFO] [stderr] Checking aoc2023-day-10 v0.1.0 (/opt/rustwide/workdir/2023/day-10) [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-01/src/lib.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 28 - return result.to_string(); [INFO] [stdout] 28 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-01/src/lib.rs:21:13 [INFO] [stdout] | [INFO] [stdout] 21 | / return match numbers.len() { [INFO] [stdout] 22 | | 0 => 0, [INFO] [stdout] 23 | | 1 => numbers[0] * 10 + numbers[0], [INFO] [stdout] 24 | | _n => numbers[0] * 10 + numbers.last().unwrap(), [INFO] [stdout] 25 | | }; [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 ~ match numbers.len() { [INFO] [stdout] 22 + 0 => 0, [INFO] [stdout] 23 + 1 => numbers[0] * 10 + numbers[0], [INFO] [stdout] 24 + _n => numbers[0] * 10 + numbers.last().unwrap(), [INFO] [stdout] 25 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-01/src/lib.rs:76:5 [INFO] [stdout] | [INFO] [stdout] 76 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 76 - return result.to_string(); [INFO] [stdout] 76 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> 2023/day-01/src/lib.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | pattern.push_str(")"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `pattern.push(')')` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_add_str [INFO] [stdout] = note: `#[warn(clippy::single_char_add_str)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> 2023/day-01/src/lib.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | rev_pattern.push_str(")"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `rev_pattern.push(')')` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_add_str [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> 2023/day-01/src/lib.rs:51:16 [INFO] [stdout] | [INFO] [stdout] 51 | if !first.is_none() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try: `first.is_some()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> 2023/day-01/src/lib.rs:63:16 [INFO] [stdout] | [INFO] [stdout] 63 | if !last.is_none() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `last.is_some()` [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: called `unwrap` on `first` after checking its variant with `is_none` [INFO] [stdout] --> 2023/day-01/src/lib.rs:52:29 [INFO] [stdout] | [INFO] [stdout] 51 | if !first.is_none() { [INFO] [stdout] | --------------- the check is happening here [INFO] [stdout] 52 | let group = first.unwrap().as_str(); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: try using `match` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_unwrap [INFO] [stdout] = note: `#[warn(clippy::unnecessary_unwrap)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `last` after checking its variant with `is_none` [INFO] [stdout] --> 2023/day-01/src/lib.rs:64:29 [INFO] [stdout] | [INFO] [stdout] 63 | if !last.is_none() { [INFO] [stdout] | -------------- the check is happening here [INFO] [stdout] 64 | let group = last.unwrap().as_str(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: try using `match` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_unwrap [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-01/src/lib.rs:73:13 [INFO] [stdout] | [INFO] [stdout] 73 | return numbers[0] * 10 + numbers[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] 73 - return numbers[0] * 10 + numbers[1]; [INFO] [stdout] 73 + numbers[0] * 10 + numbers[1] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking aoc2023-day-21 v0.1.0 (/opt/rustwide/workdir/2023/day-21) [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-11/src/lib.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 24 | / return Galaxy { [INFO] [stdout] 25 | | data: Array2::from_shape_vec( [INFO] [stdout] 26 | | (data.len(), data.first().unwrap().len()), [INFO] [stdout] 27 | | data.into_iter().flatten().collect(), [INFO] [stdout] 28 | | ).unwrap() [INFO] [stdout] 29 | | }; [INFO] [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] 24 ~ Galaxy { [INFO] [stdout] 25 + data: Array2::from_shape_vec( [INFO] [stdout] 26 + (data.len(), data.first().unwrap().len()), [INFO] [stdout] 27 + data.into_iter().flatten().collect(), [INFO] [stdout] 28 + ).unwrap() [INFO] [stdout] 29 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-11/src/lib.rs:33:9 [INFO] [stdout] | [INFO] [stdout] 33 | / return self.data.rows().into_iter() [INFO] [stdout] 34 | | .enumerate() [INFO] [stdout] 35 | | .filter_map(|it| { [INFO] [stdout] 36 | | if it.1.iter().all(|it| !*it) { [INFO] [stdout] ... | [INFO] [stdout] 39 | | return None; [INFO] [stdout] 40 | | }).collect(); [INFO] [stdout] | |________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 33 ~ self.data.rows().into_iter() [INFO] [stdout] 34 + .enumerate() [INFO] [stdout] 35 + .filter_map(|it| { [INFO] [stdout] 36 + if it.1.iter().all(|it| !*it) { [INFO] [stdout] 37 + return Some(it.0); [INFO] [stdout] 38 + } [INFO] [stdout] 39 + return None; [INFO] [stdout] 40 ~ }).collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-11/src/lib.rs:39:17 [INFO] [stdout] | [INFO] [stdout] 39 | 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] 39 - return None; [INFO] [stdout] 39 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-11/src/lib.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 44 | / return self.data.columns().into_iter() [INFO] [stdout] 45 | | .enumerate() [INFO] [stdout] 46 | | .filter_map(|it| { [INFO] [stdout] 47 | | if it.1.iter().all(|it| !*it) { [INFO] [stdout] ... | [INFO] [stdout] 50 | | return None; [INFO] [stdout] 51 | | }).collect(); [INFO] [stdout] | |________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 44 ~ self.data.columns().into_iter() [INFO] [stdout] 45 + .enumerate() [INFO] [stdout] 46 + .filter_map(|it| { [INFO] [stdout] 47 + if it.1.iter().all(|it| !*it) { [INFO] [stdout] 48 + return Some(it.0); [INFO] [stdout] 49 + } [INFO] [stdout] 50 + return None; [INFO] [stdout] 51 ~ }).collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-11/src/lib.rs:50:17 [INFO] [stdout] | [INFO] [stdout] 50 | 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] 50 - return None; [INFO] [stdout] 50 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-11/src/lib.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 55 | / return self.data.indexed_iter().filter_map(|it| { [INFO] [stdout] 56 | | if *it.1 { [INFO] [stdout] 57 | | return Some([it.0.0 as usize, it.0.1 as usize]); [INFO] [stdout] ... | [INFO] [stdout] 60 | | }).collect(); [INFO] [stdout] | |____________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 55 ~ self.data.indexed_iter().filter_map(|it| { [INFO] [stdout] 56 + if *it.1 { [INFO] [stdout] 57 + return Some([it.0.0 as usize, it.0.1 as usize]); [INFO] [stdout] 58 + } [INFO] [stdout] 59 + return None; [INFO] [stdout] 60 ~ }).collect() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-11/src/lib.rs:59:13 [INFO] [stdout] | [INFO] [stdout] 59 | 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] 59 - return None; [INFO] [stdout] 59 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`usize` -> `usize`) [INFO] [stdout] --> 2023/day-11/src/lib.rs:57:30 [INFO] [stdout] | [INFO] [stdout] 57 | return Some([it.0.0 as usize, it.0.1 as usize]); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `it.0.0` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] = note: `#[warn(clippy::unnecessary_cast)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`usize` -> `usize`) [INFO] [stdout] --> 2023/day-11/src/lib.rs:57:47 [INFO] [stdout] | [INFO] [stdout] 57 | return Some([it.0.0 as usize, it.0.1 as usize]); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `it.0.1` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-11/src/lib.rs:64:9 [INFO] [stdout] | [INFO] [stdout] 64 | / return planets.clone().into_iter().enumerate().map(|it| { [INFO] [stdout] 65 | | return planets.iter().take(it.0).map(|p| { [INFO] [stdout] 66 | | let mut distances: usize = 0; [INFO] [stdout] 67 | | distances = distances + (min(it.1[0], p[0])..max(it.1[0], p[0])).map(|row_idx| { [INFO] [stdout] ... | [INFO] [stdout] 80 | | }).fold(0, |acc, x| acc + x); [INFO] [stdout] 81 | | }).fold(0, |acc, x| acc + x); [INFO] [stdout] | |____________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 ~ planets.clone().into_iter().enumerate().map(|it| { [INFO] [stdout] 65 + return planets.iter().take(it.0).map(|p| { [INFO] [stdout] 66 + let mut distances: usize = 0; [INFO] [stdout] 67 + distances = distances + (min(it.1[0], p[0])..max(it.1[0], p[0])).map(|row_idx| { [INFO] [stdout] 68 + if empty_rows.contains(&row_idx) { [INFO] [stdout] 69 + return scale; [INFO] [stdout] 70 + } [INFO] [stdout] 71 + return 1; [INFO] [stdout] 72 + }).fold(0, |acc, x| acc + x); [INFO] [stdout] 73 + distances = distances + (min(it.1[1], p[1])..max(it.1[1], p[1])).map(|col_idx| { [INFO] [stdout] 74 + if empty_cols.contains(&col_idx) { [INFO] [stdout] 75 + return scale; [INFO] [stdout] 76 + } [INFO] [stdout] 77 + return 1; [INFO] [stdout] 78 + }).fold(0, |acc, x| acc + x); [INFO] [stdout] 79 + return distances; [INFO] [stdout] 80 + }).fold(0, |acc, x| acc + x); [INFO] [stdout] 81 ~ }).fold(0, |acc, x| acc + x) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> 2023/day-11/src/lib.rs:63:39 [INFO] [stdout] | [INFO] [stdout] 63 | fn find_paths_sum(&self, planets: &Vec<[usize; 2]>, empty_rows: &Vec, empty_cols: &Vec, scale: usize) -> 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] 63 ~ fn find_paths_sum(&self, planets: &[[usize; 2]], empty_rows: &Vec, empty_cols: &Vec, scale: usize) -> usize { [INFO] [stdout] 64 ~ return planets.to_owned().into_iter().enumerate().map(|it| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> 2023/day-11/src/lib.rs:63:69 [INFO] [stdout] | [INFO] [stdout] 63 | fn find_paths_sum(&self, planets: &Vec<[usize; 2]>, empty_rows: &Vec, empty_cols: &Vec, scale: usize) -> 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] 63 - fn find_paths_sum(&self, planets: &Vec<[usize; 2]>, empty_rows: &Vec, empty_cols: &Vec, scale: usize) -> usize { [INFO] [stdout] 63 + fn find_paths_sum(&self, planets: &Vec<[usize; 2]>, empty_rows: &[usize], empty_cols: &Vec, scale: usize) -> 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] --> 2023/day-11/src/lib.rs:63:94 [INFO] [stdout] | [INFO] [stdout] 63 | fn find_paths_sum(&self, planets: &Vec<[usize; 2]>, empty_rows: &Vec, empty_cols: &Vec, scale: usize) -> 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] 63 - fn find_paths_sum(&self, planets: &Vec<[usize; 2]>, empty_rows: &Vec, empty_cols: &Vec, scale: usize) -> usize { [INFO] [stdout] 63 + fn find_paths_sum(&self, planets: &Vec<[usize; 2]>, empty_rows: &Vec, empty_cols: &[usize], scale: usize) -> usize { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.fold` can be written more succinctly using another method [INFO] [stdout] --> 2023/day-11/src/lib.rs:81:12 [INFO] [stdout] | [INFO] [stdout] 81 | }).fold(0, |acc, x| acc + x); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `sum()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_fold [INFO] [stdout] = note: `#[warn(clippy::unnecessary_fold)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-17/src/lib.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | return Position { x: 0, y: 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] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 27 - return Position { x: 0, y: 0 }; [INFO] [stdout] 27 + Position { x: 0, y: 0 } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-17/src/lib.rs:33:9 [INFO] [stdout] | [INFO] [stdout] 33 | return self.x >= 0 && self.x < shape[0] && self.y >= 0 && self.y < shape[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] 33 - return self.x >= 0 && self.x < shape[0] && self.y >= 0 && self.y < shape[1]; [INFO] [stdout] 33 + self.x >= 0 && self.x < shape[0] && self.y >= 0 && self.y < shape[1] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `RIGHT` contains a capitalized acronym [INFO] [stdout] --> 2023/day-17/src/lib.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | RIGHT, [INFO] [stdout] | ^^^^^ help: consider making the acronym lowercase, except the initial letter: `Right` [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 `DOWN` contains a capitalized acronym [INFO] [stdout] --> 2023/day-17/src/lib.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | DOWN, [INFO] [stdout] | ^^^^ help: consider making the acronym lowercase, except the initial letter: `Down` [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 `LEFT` contains a capitalized acronym [INFO] [stdout] --> 2023/day-17/src/lib.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | LEFT, [INFO] [stdout] | ^^^^ help: consider making the acronym lowercase, except the initial letter: `Left` [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] --> 2023/day-11/src/lib.rs:65:13 [INFO] [stdout] | [INFO] [stdout] 65 | / return planets.iter().take(it.0).map(|p| { [INFO] [stdout] 66 | | let mut distances: usize = 0; [INFO] [stdout] 67 | | distances = distances + (min(it.1[0], p[0])..max(it.1[0], p[0])).map(|row_idx| { [INFO] [stdout] 68 | | if empty_rows.contains(&row_idx) { [INFO] [stdout] ... | [INFO] [stdout] 79 | | return distances; [INFO] [stdout] 80 | | }).fold(0, |acc, x| acc + x); [INFO] [stdout] | |________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 65 ~ planets.iter().take(it.0).map(|p| { [INFO] [stdout] 66 + let mut distances: usize = 0; [INFO] [stdout] 67 + distances = distances + (min(it.1[0], p[0])..max(it.1[0], p[0])).map(|row_idx| { [INFO] [stdout] 68 + if empty_rows.contains(&row_idx) { [INFO] [stdout] 69 + return scale; [INFO] [stdout] 70 + } [INFO] [stdout] 71 + return 1; [INFO] [stdout] 72 + }).fold(0, |acc, x| acc + x); [INFO] [stdout] 73 + distances = distances + (min(it.1[1], p[1])..max(it.1[1], p[1])).map(|col_idx| { [INFO] [stdout] 74 + if empty_cols.contains(&col_idx) { [INFO] [stdout] 75 + return scale; [INFO] [stdout] 76 + } [INFO] [stdout] 77 + return 1; [INFO] [stdout] 78 + }).fold(0, |acc, x| acc + x); [INFO] [stdout] 79 + return distances; [INFO] [stdout] 80 ~ }).fold(0, |acc, x| acc + x) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.fold` can be written more succinctly using another method [INFO] [stdout] --> 2023/day-11/src/lib.rs:80:16 [INFO] [stdout] | [INFO] [stdout] 80 | }).fold(0, |acc, x| acc + x); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `sum::()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_fold [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-11/src/lib.rs:79:17 [INFO] [stdout] | [INFO] [stdout] 79 | return distances; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 - return distances; [INFO] [stdout] 79 + distances [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> 2023/day-11/src/lib.rs:67:17 [INFO] [stdout] | [INFO] [stdout] 67 | / distances = distances + (min(it.1[0], p[0])..max(it.1[0], p[0])).map(|row_idx| { [INFO] [stdout] 68 | | if empty_rows.contains(&row_idx) { [INFO] [stdout] 69 | | return scale; [INFO] [stdout] ... | [INFO] [stdout] 72 | | }).fold(0, |acc, x| acc + x); [INFO] [stdout] | |____________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] = note: `#[warn(clippy::assign_op_pattern)]` on by default [INFO] [stdout] help: replace it with [INFO] [stdout] | [INFO] [stdout] 67 ~ distances += (min(it.1[0], p[0])..max(it.1[0], p[0])).map(|row_idx| { [INFO] [stdout] 68 + if empty_rows.contains(&row_idx) { [INFO] [stdout] 69 + return scale; [INFO] [stdout] 70 + } [INFO] [stdout] 71 + return 1; [INFO] [stdout] 72 ~ }).fold(0, |acc, x| acc + x); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.fold` can be written more succinctly using another method [INFO] [stdout] --> 2023/day-11/src/lib.rs:72:20 [INFO] [stdout] | [INFO] [stdout] 72 | }).fold(0, |acc, x| acc + x); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `sum::()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_fold [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-11/src/lib.rs:71:21 [INFO] [stdout] | [INFO] [stdout] 71 | return 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] 71 - return 1; [INFO] [stdout] 71 + 1 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> 2023/day-11/src/lib.rs:73:17 [INFO] [stdout] | [INFO] [stdout] 73 | / distances = distances + (min(it.1[1], p[1])..max(it.1[1], p[1])).map(|col_idx| { [INFO] [stdout] 74 | | if empty_cols.contains(&col_idx) { [INFO] [stdout] 75 | | return scale; [INFO] [stdout] ... | [INFO] [stdout] 78 | | }).fold(0, |acc, x| acc + x); [INFO] [stdout] | |____________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] help: replace it with [INFO] [stdout] | [INFO] [stdout] 73 ~ distances += (min(it.1[1], p[1])..max(it.1[1], p[1])).map(|col_idx| { [INFO] [stdout] 74 + if empty_cols.contains(&col_idx) { [INFO] [stdout] 75 + return scale; [INFO] [stdout] 76 + } [INFO] [stdout] 77 + return 1; [INFO] [stdout] 78 ~ }).fold(0, |acc, x| acc + x); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.fold` can be written more succinctly using another method [INFO] [stdout] --> 2023/day-11/src/lib.rs:78:20 [INFO] [stdout] | [INFO] [stdout] 78 | }).fold(0, |acc, x| acc + x); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `sum::()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_fold [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-11/src/lib.rs:77:21 [INFO] [stdout] | [INFO] [stdout] 77 | return 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] 77 - return 1; [INFO] [stdout] 77 + 1 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-17/src/lib.rs:65:9 [INFO] [stdout] | [INFO] [stdout] 65 | / return match self { [INFO] [stdout] 66 | | Direction::UP => Position { x: pos.x - 1, y: pos.y }, [INFO] [stdout] 67 | | Direction::RIGHT => Position { x: pos.x, y: pos.y + 1 }, [INFO] [stdout] 68 | | Direction::DOWN => Position { x: pos.x + 1, y: pos.y }, [INFO] [stdout] 69 | | Direction::LEFT => Position { x: pos.x, y: pos.y - 1 } [INFO] [stdout] 70 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 65 ~ match self { [INFO] [stdout] 66 + Direction::UP => Position { x: pos.x - 1, y: pos.y }, [INFO] [stdout] 67 + Direction::RIGHT => Position { x: pos.x, y: pos.y + 1 }, [INFO] [stdout] 68 + Direction::DOWN => Position { x: pos.x + 1, y: pos.y }, [INFO] [stdout] 69 + Direction::LEFT => Position { x: pos.x, y: pos.y - 1 } [INFO] [stdout] 70 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-11/src/lib.rs:92:5 [INFO] [stdout] | [INFO] [stdout] 92 | return galaxy.find_paths_sum(&planets, &empty_rows, &empty_cols, 2).to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 92 - return galaxy.find_paths_sum(&planets, &empty_rows, &empty_cols, 2).to_string(); [INFO] [stdout] 92 + galaxy.find_paths_sum(&planets, &empty_rows, &empty_cols, 2).to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-22/src/lib.rs:32:9 [INFO] [stdout] | [INFO] [stdout] 32 | return Ok(Point { x: coords[0], y: coords[1], z: coords[2] }); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 32 - return Ok(Point { x: coords[0], y: coords[1], z: coords[2] }); [INFO] [stdout] 32 + Ok(Point { x: coords[0], y: coords[1], z: coords[2] }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-22/src/lib.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 61 | return Ok(Snapshot { bricks, bounds: (bounds.0 + 1, bounds.1 + 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] 61 - return Ok(Snapshot { bricks, bounds: (bounds.0 + 1, bounds.1 + 1) }); [INFO] [stdout] 61 + Ok(Snapshot { bricks, bounds: (bounds.0 + 1, bounds.1 + 1) }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-22/src/lib.rs:49:17 [INFO] [stdout] | [INFO] [stdout] 49 | return (parts[0].parse::().unwrap(), parts[1].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] 49 - return (parts[0].parse::().unwrap(), parts[1].parse::().unwrap()); [INFO] [stdout] 49 + (parts[0].parse::().unwrap(), parts[1].parse::().unwrap()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: consider using `sort_by_key` [INFO] [stdout] --> 2023/day-22/src/lib.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | bricks.sort_by(|a, b| min(a.0.z, a.1.z).cmp(&min(b.0.z, b.1.z))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_sort_by [INFO] [stdout] = note: `#[warn(clippy::unnecessary_sort_by)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 52 - bricks.sort_by(|a, b| min(a.0.z, a.1.z).cmp(&min(b.0.z, b.1.z))); [INFO] [stdout] 52 + bricks.sort_by_key(|a| min(a.0.z, a.1.z)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-11/src/lib.rs:102:5 [INFO] [stdout] | [INFO] [stdout] 102 | return galaxy.find_paths_sum(&planets, &empty_rows, &empty_cols, 1000000).to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 102 - return galaxy.find_paths_sum(&planets, &empty_rows, &empty_cols, 1000000).to_string(); [INFO] [stdout] 102 + galaxy.find_paths_sum(&planets, &empty_rows, &empty_cols, 1000000).to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-17/src/lib.rs:94:9 [INFO] [stdout] | [INFO] [stdout] 94 | return Node { position: position.clone(), direction: direction.clone() }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 Node { position: position.clone(), direction: direction.clone() }; [INFO] [stdout] 94 + Node { position: position.clone(), direction: direction.clone() } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `Position` which implements the `Copy` trait [INFO] [stdout] --> 2023/day-17/src/lib.rs:94:33 [INFO] [stdout] | [INFO] [stdout] 94 | return Node { position: position.clone(), direction: direction.clone() }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try dereferencing it: `*position` [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: using `clone` on type `Direction` which implements the `Copy` trait [INFO] [stdout] --> 2023/day-17/src/lib.rs:94:62 [INFO] [stdout] | [INFO] [stdout] 94 | return Node { position: position.clone(), direction: direction.clone() }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try dereferencing it: `*direction` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-17/src/lib.rs:110:9 [INFO] [stdout] | [INFO] [stdout] 110 | / return Ok(Map { [INFO] [stdout] 111 | | data: Array2::from_shape_vec( [INFO] [stdout] 112 | | (data.len(), data.first().unwrap().len()), [INFO] [stdout] 113 | | data.into_iter().flatten().collect(), [INFO] [stdout] 114 | | ).unwrap() [INFO] [stdout] 115 | | }); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 110 ~ Ok(Map { [INFO] [stdout] 111 + data: Array2::from_shape_vec( [INFO] [stdout] 112 + (data.len(), data.first().unwrap().len()), [INFO] [stdout] 113 + data.into_iter().flatten().collect(), [INFO] [stdout] 114 + ).unwrap() [INFO] [stdout] 115 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-22/src/lib.rs:55:13 [INFO] [stdout] | [INFO] [stdout] 55 | / return ( [INFO] [stdout] 56 | | max(acc.0, max(brick.0.x, brick.1.x)), [INFO] [stdout] 57 | | max(acc.1, max(brick.0.y, brick.1.y)) [INFO] [stdout] 58 | | ); [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 + max(acc.0, max(brick.0.x, brick.1.x)), [INFO] [stdout] 57 + max(acc.1, max(brick.0.y, brick.1.y)) [INFO] [stdout] 58 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-22/src/lib.rs:100:9 [INFO] [stdout] | [INFO] [stdout] 100 | return graph; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 100 - return graph; [INFO] [stdout] 100 + graph [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-17/src/lib.rs:121:9 [INFO] [stdout] | [INFO] [stdout] 121 | / return [ [INFO] [stdout] 122 | | Node { position: Position::default(), direction: Direction::UP }, [INFO] [stdout] 123 | | Node { position: Position::default(), direction: Direction::LEFT } [INFO] [stdout] 124 | | ]; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 121 ~ [ [INFO] [stdout] 122 + Node { position: Position::default(), direction: Direction::UP }, [INFO] [stdout] 123 + Node { position: Position::default(), direction: Direction::LEFT } [INFO] [stdout] 124 ~ ] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-17/src/lib.rs:129:9 [INFO] [stdout] | [INFO] [stdout] 129 | / return [ [INFO] [stdout] 130 | | Node { [INFO] [stdout] 131 | | position: Position { x: shape[0] as i32 - 1, y: shape[1] as i32 - 1 }, [INFO] [stdout] 132 | | direction: Direction::DOWN, [INFO] [stdout] ... | [INFO] [stdout] 138 | | ]; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 129 ~ [ [INFO] [stdout] 130 + Node { [INFO] [stdout] 131 + position: Position { x: shape[0] as i32 - 1, y: shape[1] as i32 - 1 }, [INFO] [stdout] 132 + direction: Direction::DOWN, [INFO] [stdout] 133 + }, [INFO] [stdout] 134 + Node { [INFO] [stdout] 135 + position: Position { x: shape[0] as i32 - 1, y: shape[1] as i32 - 1 }, [INFO] [stdout] 136 + direction: Direction::RIGHT, [INFO] [stdout] 137 + } [INFO] [stdout] 138 ~ ] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-17/src/lib.rs:142:9 [INFO] [stdout] | [INFO] [stdout] 142 | return self.data[[position.x as usize, position.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] 142 - return self.data[[position.x as usize, position.y as usize]]; [INFO] [stdout] 142 + self.data[[position.x as usize, position.y as usize]] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-17/src/lib.rs:173:9 [INFO] [stdout] | [INFO] [stdout] 173 | return graph; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 173 - return graph; [INFO] [stdout] 173 + graph [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-17/src/lib.rs:167:25 [INFO] [stdout] | [INFO] [stdout] 167 | return acc; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 167 - return acc; [INFO] [stdout] 167 + acc [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-17/src/lib.rs:178:9 [INFO] [stdout] | [INFO] [stdout] 178 | / return self.start_positions().iter() [INFO] [stdout] 179 | | .map(|start| dijkstra(&graph, *start, None, |(_, _, w)| *w)) [INFO] [stdout] 180 | | .cartesian_product(self.finish_positions().iter()) [INFO] [stdout] 181 | | .map(|(short_path, finish)| *short_path.get(finish).unwrap()) [INFO] [stdout] 182 | | .min().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] 178 ~ self.start_positions().iter() [INFO] [stdout] 179 + .map(|start| dijkstra(&graph, *start, None, |(_, _, w)| *w)) [INFO] [stdout] 180 + .cartesian_product(self.finish_positions().iter()) [INFO] [stdout] 181 + .map(|(short_path, finish)| *short_path.get(finish).unwrap()) [INFO] [stdout] 182 ~ .min().unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-17/src/lib.rs:189:5 [INFO] [stdout] | [INFO] [stdout] 189 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 189 - return result.to_string(); [INFO] [stdout] 189 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-17/src/lib.rs:195:5 [INFO] [stdout] | [INFO] [stdout] 195 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 195 - return result.to_string(); [INFO] [stdout] 195 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking aoc2023-day-13 v0.1.0 (/opt/rustwide/workdir/2023/day-13) [INFO] [stderr] Checking aoc2023-day-25 v0.1.0 (/opt/rustwide/workdir/2023/day-25) [INFO] [stdout] warning: useless conversion to the same type: `std::ops::RangeInclusive` [INFO] [stdout] --> 2023/day-22/src/lib.rs:76:13 [INFO] [stdout] | [INFO] [stdout] 76 | (brick.0.x..=brick.1.x).into_iter().cartesian_product((brick.0.y..=brick.1.y).into_iter()).for_each(|(x, y)| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into_iter()`: `(brick.0.x..=brick.1.x)` [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: explicit call to `.into_iter()` in function argument accepting `IntoIterator` [INFO] [stdout] --> 2023/day-22/src/lib.rs:76:67 [INFO] [stdout] | [INFO] [stdout] 76 | (brick.0.x..=brick.1.x).into_iter().cartesian_product((brick.0.y..=brick.1.y).into_iter()).for_each(|(x, y)| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/itertools-0.12.0/src/lib.rs:1153:12 [INFO] [stdout] | [INFO] [stdout] 1153 | J: IntoIterator, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] help: consider removing the `.into_iter()` [INFO] [stdout] | [INFO] [stdout] 76 - (brick.0.x..=brick.1.x).into_iter().cartesian_product((brick.0.y..=brick.1.y).into_iter()).for_each(|(x, y)| { [INFO] [stdout] 76 + (brick.0.x..=brick.1.x).into_iter().cartesian_product((brick.0.y..=brick.1.y).for_each(|(x, y)| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::ops::RangeInclusive` [INFO] [stdout] --> 2023/day-22/src/lib.rs:94:13 [INFO] [stdout] | [INFO] [stdout] 94 | (brick.0.x..=brick.1.x).into_iter().cartesian_product((brick.0.y..=brick.1.y).into_iter()).for_each(|(x, y)| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into_iter()`: `(brick.0.x..=brick.1.x)` [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: explicit call to `.into_iter()` in function argument accepting `IntoIterator` [INFO] [stdout] --> 2023/day-22/src/lib.rs:94:67 [INFO] [stdout] | [INFO] [stdout] 94 | (brick.0.x..=brick.1.x).into_iter().cartesian_product((brick.0.y..=brick.1.y).into_iter()).for_each(|(x, y)| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/itertools-0.12.0/src/lib.rs:1153:12 [INFO] [stdout] | [INFO] [stdout] 1153 | J: IntoIterator, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] help: consider removing the `.into_iter()` [INFO] [stdout] | [INFO] [stdout] 94 - (brick.0.x..=brick.1.x).into_iter().cartesian_product((brick.0.y..=brick.1.y).into_iter()).for_each(|(x, y)| { [INFO] [stdout] 94 + (brick.0.x..=brick.1.x).into_iter().cartesian_product((brick.0.y..=brick.1.y).for_each(|(x, y)| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-22/src/lib.rs:115:5 [INFO] [stdout] | [INFO] [stdout] 115 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 115 - return result.to_string(); [INFO] [stdout] 115 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-22/src/lib.rs:112:9 [INFO] [stdout] | [INFO] [stdout] 112 | return if can_be_disintegrated { acc + 1 } else { acc }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 112 - return if can_be_disintegrated { acc + 1 } else { acc }; [INFO] [stdout] 112 + if can_be_disintegrated { acc + 1 } else { acc } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-22/src/lib.rs:110:13 [INFO] [stdout] | [INFO] [stdout] 110 | return graph.neighbors_directed(candidate_idx, Direction::Outgoing).count() > 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] 110 - return graph.neighbors_directed(candidate_idx, Direction::Outgoing).count() > 1; [INFO] [stdout] 110 + graph.neighbors_directed(candidate_idx, Direction::Outgoing).count() > 1 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-22/src/lib.rs:147:5 [INFO] [stdout] | [INFO] [stdout] 147 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 147 - return result.to_string(); [INFO] [stdout] 147 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-22/src/lib.rs:144:9 [INFO] [stdout] | [INFO] [stdout] 144 | return acc + fallen.len() - 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] 144 - return acc + fallen.len() - 1; [INFO] [stdout] 144 + acc + fallen.len() - 1 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-14/src/lib.rs:64:9 [INFO] [stdout] | [INFO] [stdout] 64 | / return Ok(Platform { [INFO] [stdout] 65 | | data: Array2::from_shape_vec( [INFO] [stdout] 66 | | (data.len(), data.first().unwrap().len()), [INFO] [stdout] 67 | | data.into_iter().flatten().collect(), [INFO] [stdout] 68 | | ).unwrap() [INFO] [stdout] 69 | | }); [INFO] [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] 64 ~ Ok(Platform { [INFO] [stdout] 65 + data: Array2::from_shape_vec( [INFO] [stdout] 66 + (data.len(), data.first().unwrap().len()), [INFO] [stdout] 67 + data.into_iter().flatten().collect(), [INFO] [stdout] 68 + ).unwrap() [INFO] [stdout] 69 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-14/src/lib.rs:99:9 [INFO] [stdout] | [INFO] [stdout] 99 | return titled; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 99 - return titled; [INFO] [stdout] 99 + titled [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-14/src/lib.rs:103:9 [INFO] [stdout] | [INFO] [stdout] 103 | / return self.tilt(TiltDirection::North) [INFO] [stdout] 104 | | .tilt(TiltDirection::West) [INFO] [stdout] 105 | | .tilt(TiltDirection::South) [INFO] [stdout] 106 | | .tilt(TiltDirection::East); [INFO] [stdout] | |______________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 103 ~ self.tilt(TiltDirection::North) [INFO] [stdout] 104 + .tilt(TiltDirection::West) [INFO] [stdout] 105 + .tilt(TiltDirection::South) [INFO] [stdout] 106 ~ .tilt(TiltDirection::East) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-14/src/lib.rs:139:13 [INFO] [stdout] | [INFO] [stdout] 139 | / return acc + column.indexed_iter().fold(0, |acc, (pos, it)| { [INFO] [stdout] 140 | | return if *it == PlatformItem::RoundRock { [INFO] [stdout] 141 | | acc + column.len() as u32 - pos as u32 [INFO] [stdout] 142 | | } else { [INFO] [stdout] 143 | | acc [INFO] [stdout] 144 | | }; [INFO] [stdout] 145 | | }); [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 139 ~ acc + column.indexed_iter().fold(0, |acc, (pos, it)| { [INFO] [stdout] 140 + return if *it == PlatformItem::RoundRock { [INFO] [stdout] 141 + acc + column.len() as u32 - pos as u32 [INFO] [stdout] 142 + } else { [INFO] [stdout] 143 + acc [INFO] [stdout] 144 + }; [INFO] [stdout] 145 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-14/src/lib.rs:140:17 [INFO] [stdout] | [INFO] [stdout] 140 | / return if *it == PlatformItem::RoundRock { [INFO] [stdout] 141 | | acc + column.len() as u32 - pos as u32 [INFO] [stdout] 142 | | } else { [INFO] [stdout] 143 | | acc [INFO] [stdout] 144 | | }; [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 140 ~ if *it == PlatformItem::RoundRock { [INFO] [stdout] 141 + acc + column.len() as u32 - pos as u32 [INFO] [stdout] 142 + } else { [INFO] [stdout] 143 + acc [INFO] [stdout] 144 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-14/src/lib.rs:152:9 [INFO] [stdout] | [INFO] [stdout] 152 | return hasher.finish(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 152 - return hasher.finish(); [INFO] [stdout] 152 + hasher.finish() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-14/src/lib.rs:159:5 [INFO] [stdout] | [INFO] [stdout] 159 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 159 - return result.to_string(); [INFO] [stdout] 159 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-14/src/lib.rs:189:5 [INFO] [stdout] | [INFO] [stdout] 189 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 189 - return result.to_string(); [INFO] [stdout] 189 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-14/src/lib.rs:182:9 [INFO] [stdout] | [INFO] [stdout] 182 | return FoldWhile::Continue(acc); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 182 - return FoldWhile::Continue(acc); [INFO] [stdout] 182 + FoldWhile::Continue(acc) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref which would be done by auto-deref [INFO] [stdout] --> 2023/day-14/src/lib.rs:177:44 [INFO] [stdout] | [INFO] [stdout] 177 | let position = (cycles_count - (*existing).0) % (idx - (*existing).0) + (*existing).0; [INFO] [stdout] | ^^^^^^^^^^^ help: try: `existing` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref [INFO] [stdout] = note: `#[warn(clippy::explicit_auto_deref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref which would be done by auto-deref [INFO] [stdout] --> 2023/day-14/src/lib.rs:177:68 [INFO] [stdout] | [INFO] [stdout] 177 | let position = (cycles_count - (*existing).0) % (idx - (*existing).0) + (*existing).0; [INFO] [stdout] | ^^^^^^^^^^^ help: try: `existing` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref which would be done by auto-deref [INFO] [stdout] --> 2023/day-14/src/lib.rs:177:85 [INFO] [stdout] | [INFO] [stdout] 177 | let position = (cycles_count - (*existing).0) % (idx - (*existing).0) + (*existing).0; [INFO] [stdout] | ^^^^^^^^^^^ help: try: `existing` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-16/src/lib.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | return BeamPosition { x: 0, y: 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] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 28 - return BeamPosition { x: 0, y: 0 }; [INFO] [stdout] 28 + BeamPosition { x: 0, y: 0 } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-16/src/lib.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | return self.x >= 0 && self.x < shape[0] && self.y >= 0 && self.y < shape[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] 34 - return self.x >= 0 && self.x < shape[0] && self.y >= 0 && self.y < shape[1]; [INFO] [stdout] 34 + self.x >= 0 && self.x < shape[0] && self.y >= 0 && self.y < shape[1] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `RIGHT` contains a capitalized acronym [INFO] [stdout] --> 2023/day-16/src/lib.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | RIGHT, [INFO] [stdout] | ^^^^^ help: consider making the acronym lowercase, except the initial letter: `Right` [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 `DOWN` contains a capitalized acronym [INFO] [stdout] --> 2023/day-16/src/lib.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | DOWN, [INFO] [stdout] | ^^^^ help: consider making the acronym lowercase, except the initial letter: `Down` [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 `LEFT` contains a capitalized acronym [INFO] [stdout] --> 2023/day-16/src/lib.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 43 | LEFT, [INFO] [stdout] | ^^^^ help: consider making the acronym lowercase, except the initial letter: `Left` [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] --> 2023/day-16/src/lib.rs:48:9 [INFO] [stdout] | [INFO] [stdout] 48 | / return match self { [INFO] [stdout] 49 | | BeamDirection::UP => BeamPosition { x: pos.x - 1, y: pos.y }, [INFO] [stdout] 50 | | BeamDirection::RIGHT => BeamPosition { x: pos.x, y: pos.y + 1 }, [INFO] [stdout] 51 | | BeamDirection::DOWN => BeamPosition { x: pos.x + 1, y: pos.y }, [INFO] [stdout] 52 | | BeamDirection::LEFT => BeamPosition { x: pos.x, y: pos.y - 1 } [INFO] [stdout] 53 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 ~ match self { [INFO] [stdout] 49 + BeamDirection::UP => BeamPosition { x: pos.x - 1, y: pos.y }, [INFO] [stdout] 50 + BeamDirection::RIGHT => BeamPosition { x: pos.x, y: pos.y + 1 }, [INFO] [stdout] 51 + BeamDirection::DOWN => BeamPosition { x: pos.x + 1, y: pos.y }, [INFO] [stdout] 52 + BeamDirection::LEFT => BeamPosition { x: pos.x, y: pos.y - 1 } [INFO] [stdout] 53 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-16/src/lib.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | / return match self { [INFO] [stdout] 80 | | ContraptionItem::UpwardMirror => { [INFO] [stdout] 81 | | return match direction { [INFO] [stdout] 82 | | BeamDirection::UP => vec![BeamDirection::RIGHT], [INFO] [stdout] ... | [INFO] [stdout] 108 | | ContraptionItem::EmptySpace => vec![direction.clone()] [INFO] [stdout] 109 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 ~ match self { [INFO] [stdout] 80 + ContraptionItem::UpwardMirror => { [INFO] [stdout] 81 + return match direction { [INFO] [stdout] 82 + BeamDirection::UP => vec![BeamDirection::RIGHT], [INFO] [stdout] 83 + BeamDirection::RIGHT => vec![BeamDirection::UP], [INFO] [stdout] 84 + BeamDirection::DOWN => vec![BeamDirection::LEFT], [INFO] [stdout] 85 + BeamDirection::LEFT => vec![BeamDirection::DOWN], [INFO] [stdout] 86 + }; [INFO] [stdout] 87 + } [INFO] [stdout] 88 + ContraptionItem::DownwardMirror => { [INFO] [stdout] 89 + return match direction { [INFO] [stdout] 90 + BeamDirection::UP => vec![BeamDirection::LEFT], [INFO] [stdout] 91 + BeamDirection::RIGHT => vec![BeamDirection::DOWN], [INFO] [stdout] 92 + BeamDirection::DOWN => vec![BeamDirection::RIGHT], [INFO] [stdout] 93 + BeamDirection::LEFT => vec![BeamDirection::UP] [INFO] [stdout] 94 + }; [INFO] [stdout] 95 + } [INFO] [stdout] 96 + ContraptionItem::HorizontalSplitter => { [INFO] [stdout] 97 + return match direction { [INFO] [stdout] 98 + BeamDirection::UP | BeamDirection::DOWN => vec![BeamDirection::LEFT, BeamDirection::RIGHT], [INFO] [stdout] 99 + BeamDirection::RIGHT | BeamDirection::LEFT => vec![direction.clone()] [INFO] [stdout] 100 + }; [INFO] [stdout] 101 + } [INFO] [stdout] 102 + ContraptionItem::VerticalSplitter => { [INFO] [stdout] 103 + return match direction { [INFO] [stdout] 104 + BeamDirection::UP | BeamDirection::DOWN => vec![direction.clone()], [INFO] [stdout] 105 + BeamDirection::RIGHT | BeamDirection::LEFT => vec![BeamDirection::UP, BeamDirection::DOWN] [INFO] [stdout] 106 + }; [INFO] [stdout] 107 + } [INFO] [stdout] 108 + ContraptionItem::EmptySpace => vec![direction.clone()] [INFO] [stdout] 109 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `START` contains a capitalized acronym [INFO] [stdout] --> 2023/day-10/src/lib.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | START, [INFO] [stdout] | ^^^^^ help: consider making the acronym lowercase, except the initial letter: `Start` [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: using `clone` on type `BeamDirection` which implements the `Copy` trait [INFO] [stdout] --> 2023/day-16/src/lib.rs:99:72 [INFO] [stdout] | [INFO] [stdout] 99 | BeamDirection::RIGHT | BeamDirection::LEFT => vec![direction.clone()] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try dereferencing it: `*direction` [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: using `clone` on type `BeamDirection` which implements the `Copy` trait [INFO] [stdout] --> 2023/day-16/src/lib.rs:104:69 [INFO] [stdout] | [INFO] [stdout] 104 | BeamDirection::UP | BeamDirection::DOWN => vec![direction.clone()], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try dereferencing it: `*direction` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BeamDirection` which implements the `Copy` trait [INFO] [stdout] --> 2023/day-16/src/lib.rs:108:49 [INFO] [stdout] | [INFO] [stdout] 108 | ContraptionItem::EmptySpace => vec![direction.clone()] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try dereferencing it: `*direction` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-16/src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / return Ok(Contraption { [INFO] [stdout] 135 | | data: Array2::from_shape_vec( [INFO] [stdout] 136 | | (data.len(), data.first().unwrap().len()), [INFO] [stdout] 137 | | data.into_iter().flatten().collect(), [INFO] [stdout] 138 | | ).unwrap() [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] 134 ~ Ok(Contraption { [INFO] [stdout] 135 + data: Array2::from_shape_vec( [INFO] [stdout] 136 + (data.len(), data.first().unwrap().len()), [INFO] [stdout] 137 + data.into_iter().flatten().collect(), [INFO] [stdout] 138 + ).unwrap() [INFO] [stdout] 139 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-16/src/lib.rs:145:9 [INFO] [stdout] | [INFO] [stdout] 145 | return &self.data[[position.x as usize, position.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] 145 - return &self.data[[position.x as usize, position.y as usize]]; [INFO] [stdout] 145 + &self.data[[position.x as usize, position.y as usize]] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-10/src/lib.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | / return match item { [INFO] [stdout] 29 | | 'S' => Some(Pipe::START), [INFO] [stdout] 30 | | '|' => Some(Pipe::NS), [INFO] [stdout] 31 | | '-' => Some(Pipe::EW), [INFO] [stdout] ... | [INFO] [stdout] 36 | | _ => None [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] 28 ~ match item { [INFO] [stdout] 29 + 'S' => Some(Pipe::START), [INFO] [stdout] 30 + '|' => Some(Pipe::NS), [INFO] [stdout] 31 + '-' => Some(Pipe::EW), [INFO] [stdout] 32 + 'L' => Some(Pipe::NE), [INFO] [stdout] 33 + 'J' => Some(Pipe::NW), [INFO] [stdout] 34 + '7' => Some(Pipe::SW), [INFO] [stdout] 35 + 'F' => Some(Pipe::SE), [INFO] [stdout] 36 + _ => None [INFO] [stdout] 37 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-10/src/lib.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | return vec![Pipe::NS, Pipe::EW, Pipe::NE, Pipe::NW, Pipe::SE, Pipe::SW]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 - return vec![Pipe::NS, Pipe::EW, Pipe::NE, Pipe::NW, Pipe::SE, Pipe::SW]; [INFO] [stdout] 41 + vec![Pipe::NS, Pipe::EW, Pipe::NE, Pipe::NW, Pipe::SE, Pipe::SW] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-10/src/lib.rs:45:9 [INFO] [stdout] | [INFO] [stdout] 45 | / return match self { [INFO] [stdout] 46 | | Pipe::START => Vec::new(), [INFO] [stdout] 47 | | Pipe::NS => vec![[pos[0] as i32 - 1, pos[1] as i32], [pos[0] as i32 + 1, pos[1] as i32]], // UP + DOWN [INFO] [stdout] 48 | | Pipe::EW => vec![[pos[0] as i32, pos[1] as i32 - 1], [pos[0] as i32, pos[1] as i32 + 1]], // LEFT + RIGHT [INFO] [stdout] ... | [INFO] [stdout] 52 | | Pipe::SW => vec![[pos[0] as i32 + 1, pos[1] as i32], [pos[0] as i32, pos[1] as i32 - 1]], // DOWN + LEFT [INFO] [stdout] 53 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 ~ match self { [INFO] [stdout] 46 + Pipe::START => Vec::new(), [INFO] [stdout] 47 + Pipe::NS => vec![[pos[0] as i32 - 1, pos[1] as i32], [pos[0] as i32 + 1, pos[1] as i32]], // UP + DOWN [INFO] [stdout] 48 + Pipe::EW => vec![[pos[0] as i32, pos[1] as i32 - 1], [pos[0] as i32, pos[1] as i32 + 1]], // LEFT + RIGHT [INFO] [stdout] 49 + Pipe::NE => vec![[pos[0] as i32 - 1, pos[1] as i32], [pos[0] as i32, pos[1] as i32 + 1]], // UP + RIGHT [INFO] [stdout] 50 + Pipe::NW => vec![[pos[0] as i32 - 1, pos[1] as i32], [pos[0] as i32, pos[1] as i32 - 1]], // UP + LEFT [INFO] [stdout] 51 + Pipe::SE => vec![[pos[0] as i32 + 1, pos[1] as i32], [pos[0] as i32, pos[1] as i32 + 1]], // DOWN + RIGHT [INFO] [stdout] 52 + Pipe::SW => vec![[pos[0] as i32 + 1, pos[1] as i32], [pos[0] as i32, pos[1] as i32 - 1]], // DOWN + LEFT [INFO] [stdout] 53 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-10/src/lib.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | / return match self { [INFO] [stdout] 58 | | Pipe::NS => true, [INFO] [stdout] 59 | | Pipe::SW => true, [INFO] [stdout] 60 | | Pipe::SE => true, [INFO] [stdout] 61 | | _ => false [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] 57 ~ match self { [INFO] [stdout] 58 + Pipe::NS => true, [INFO] [stdout] 59 + Pipe::SW => true, [INFO] [stdout] 60 + Pipe::SE => true, [INFO] [stdout] 61 + _ => false [INFO] [stdout] 62 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `RIGHT` contains a capitalized acronym [INFO] [stdout] --> 2023/day-23/src/lib.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | RIGHT, [INFO] [stdout] | ^^^^^ help: consider making the acronym lowercase, except the initial letter: `Right` [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: match expression looks like `matches!` macro [INFO] [stdout] --> 2023/day-10/src/lib.rs:57:16 [INFO] [stdout] | [INFO] [stdout] 57 | return match self { [INFO] [stdout] | ________________^ [INFO] [stdout] 58 | | Pipe::NS => true, [INFO] [stdout] 59 | | Pipe::SW => true, [INFO] [stdout] 60 | | Pipe::SE => true, [INFO] [stdout] 61 | | _ => false [INFO] [stdout] 62 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] = note: `#[warn(clippy::match_like_matches_macro)]` on by default [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 57 - return match self { [INFO] [stdout] 58 - Pipe::NS => true, [INFO] [stdout] 59 - Pipe::SW => true, [INFO] [stdout] 60 - Pipe::SE => true, [INFO] [stdout] 61 - _ => false [INFO] [stdout] 62 - }; [INFO] [stdout] 57 + return matches!(self, Pipe::NS | Pipe::SW | Pipe::SE); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-10/src/lib.rs:77:9 [INFO] [stdout] | [INFO] [stdout] 77 | / return Grid { [INFO] [stdout] 78 | | data: Array2::from_shape_vec( [INFO] [stdout] 79 | | (data.len(), data.first().unwrap().len()), [INFO] [stdout] 80 | | data.into_iter().flatten().collect(), [INFO] [stdout] 81 | | ).unwrap() [INFO] [stdout] 82 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 77 ~ Grid { [INFO] [stdout] 78 + data: Array2::from_shape_vec( [INFO] [stdout] 79 + (data.len(), data.first().unwrap().len()), [INFO] [stdout] 80 + data.into_iter().flatten().collect(), [INFO] [stdout] 81 + ).unwrap() [INFO] [stdout] 82 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> 2023/day-10/src/lib.rs:74:42 [INFO] [stdout] | [INFO] [stdout] 74 | .map(|line| line.chars().map(|it| Pipe::create(it)).collect()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `Pipe::create` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] = note: `#[warn(clippy::redundant_closure)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-10/src/lib.rs:86:9 [INFO] [stdout] | [INFO] [stdout] 86 | return [pos1[1], pos1[0]].cmp(&[pos2[1], pos2[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] 86 - return [pos1[1], pos1[0]].cmp(&[pos2[1], pos2[0]]); [INFO] [stdout] 86 + [pos1[1], pos1[0]].cmp(&[pos2[1], pos2[0]]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `DOWN` contains a capitalized acronym [INFO] [stdout] --> 2023/day-23/src/lib.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | DOWN, [INFO] [stdout] | ^^^^ help: consider making the acronym lowercase, except the initial letter: `Down` [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 `LEFT` contains a capitalized acronym [INFO] [stdout] --> 2023/day-23/src/lib.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 33 | LEFT, [INFO] [stdout] | ^^^^ help: consider making the acronym lowercase, except the initial letter: `Left` [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] --> 2023/day-23/src/lib.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | / return match self { [INFO] [stdout] 50 | | UP => Position { x: pos.x - 1, y: pos.y }, [INFO] [stdout] 51 | | RIGHT => Position { x: pos.x, y: pos.y + 1 }, [INFO] [stdout] 52 | | DOWN => Position { x: pos.x + 1, y: pos.y }, [INFO] [stdout] 53 | | LEFT => Position { x: pos.x, y: pos.y - 1 } [INFO] [stdout] 54 | | }; [INFO] [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] 49 ~ match self { [INFO] [stdout] 50 + UP => Position { x: pos.x - 1, y: pos.y }, [INFO] [stdout] 51 + RIGHT => Position { x: pos.x, y: pos.y + 1 }, [INFO] [stdout] 52 + DOWN => Position { x: pos.x + 1, y: pos.y }, [INFO] [stdout] 53 + LEFT => Position { x: pos.x, y: pos.y - 1 } [INFO] [stdout] 54 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-10/src/lib.rs:90:9 [INFO] [stdout] | [INFO] [stdout] 90 | / return self.data.indexed_iter().find_map(|it| { [INFO] [stdout] 91 | | if *it.1 == item { [INFO] [stdout] 92 | | return Some([it.0.0, it.0.1]); [INFO] [stdout] ... | [INFO] [stdout] 95 | | }); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 90 ~ self.data.indexed_iter().find_map(|it| { [INFO] [stdout] 91 + if *it.1 == item { [INFO] [stdout] 92 + return Some([it.0.0, it.0.1]); [INFO] [stdout] 93 + } [INFO] [stdout] 94 + return None; [INFO] [stdout] 95 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-10/src/lib.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] --> 2023/day-10/src/lib.rs:100:9 [INFO] [stdout] | [INFO] [stdout] 100 | return pos[0] >= 0 && pos[0] < shape[0] as i32 && pos[1] >= 0 && pos[1] < shape[1] 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] 100 - return pos[0] >= 0 && pos[0] < shape[0] as i32 && pos[1] >= 0 && pos[1] < shape[1] as i32; [INFO] [stdout] 100 + pos[0] >= 0 && pos[0] < shape[0] as i32 && pos[1] >= 0 && pos[1] < shape[1] as i32 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-10/src/lib.rs:104:9 [INFO] [stdout] | [INFO] [stdout] 104 | / return match self.data[pos].as_ref() { [INFO] [stdout] 105 | | Some(pipe) => pipe.connections(pos).iter().filter_map(|it| { [INFO] [stdout] 106 | | if self.belongs(it) { [INFO] [stdout] 107 | | return Some([it[0] as usize, it[1] as usize]); [INFO] [stdout] ... | [INFO] [stdout] 111 | | None => Vec::new(), [INFO] [stdout] 112 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 104 ~ match self.data[pos].as_ref() { [INFO] [stdout] 105 + Some(pipe) => pipe.connections(pos).iter().filter_map(|it| { [INFO] [stdout] 106 + if self.belongs(it) { [INFO] [stdout] 107 + return Some([it[0] as usize, it[1] as usize]); [INFO] [stdout] 108 + } [INFO] [stdout] 109 + return None; [INFO] [stdout] 110 + }).collect(), [INFO] [stdout] 111 + None => Vec::new(), [INFO] [stdout] 112 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-10/src/lib.rs:109:17 [INFO] [stdout] | [INFO] [stdout] 109 | 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] 109 - return None; [INFO] [stdout] 109 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-10/src/lib.rs:133:9 [INFO] [stdout] | [INFO] [stdout] 133 | / return Pipe::candidates().iter().find_map(|it| { [INFO] [stdout] 134 | | let mut connections: Vec<[usize; 2]> = it.connections(*start_pos).iter() [INFO] [stdout] 135 | | .filter_map(|it| if self.belongs(it) { Some([it[0] as usize, it[1] as usize]) } else { None }) [INFO] [stdout] 136 | | .collect(); [INFO] [stdout] 137 | | connections.sort_by(|a, b| Grid::cmp_pos(a, b)); [INFO] [stdout] 138 | | return if connections == start_connections { Some(it.clone()) } else { None }; [INFO] [stdout] 139 | | }).expect("Failed to detect start pipe"); [INFO] [stdout] | |________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 133 ~ Pipe::candidates().iter().find_map(|it| { [INFO] [stdout] 134 + let mut connections: Vec<[usize; 2]> = it.connections(*start_pos).iter() [INFO] [stdout] 135 + .filter_map(|it| if self.belongs(it) { Some([it[0] as usize, it[1] as usize]) } else { None }) [INFO] [stdout] 136 + .collect(); [INFO] [stdout] 137 + connections.sort_by(|a, b| Grid::cmp_pos(a, b)); [INFO] [stdout] 138 + return if connections == start_connections { Some(it.clone()) } else { None }; [INFO] [stdout] 139 ~ }).expect("Failed to detect start pipe") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-23/src/lib.rs:77:9 [INFO] [stdout] | [INFO] [stdout] 77 | / return match self { [INFO] [stdout] 78 | | Path => [UP, LEFT, DOWN, RIGHT].iter().map(|it| it.next(pos)).collect(), [INFO] [stdout] 79 | | Forest => Vec::new(), [INFO] [stdout] 80 | | Slop(direction) => vec![direction.next(pos)] [INFO] [stdout] 81 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 77 ~ match self { [INFO] [stdout] 78 + Path => [UP, LEFT, DOWN, RIGHT].iter().map(|it| it.next(pos)).collect(), [INFO] [stdout] 79 + Forest => Vec::new(), [INFO] [stdout] 80 + Slop(direction) => vec![direction.next(pos)] [INFO] [stdout] 81 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-23/src/lib.rs:108:9 [INFO] [stdout] | [INFO] [stdout] 108 | / return Trails { [INFO] [stdout] 109 | | data: Array2::from_shape_vec( [INFO] [stdout] 110 | | (data.len(), data.first().unwrap().len()), [INFO] [stdout] 111 | | data.into_iter().flatten().collect(), [INFO] [stdout] 112 | | ).unwrap(), [INFO] [stdout] 113 | | shape, [INFO] [stdout] 114 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 108 ~ Trails { [INFO] [stdout] 109 + data: Array2::from_shape_vec( [INFO] [stdout] 110 + (data.len(), data.first().unwrap().len()), [INFO] [stdout] 111 + data.into_iter().flatten().collect(), [INFO] [stdout] 112 + ).unwrap(), [INFO] [stdout] 113 + shape, [INFO] [stdout] 114 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-10/src/lib.rs:128:13 [INFO] [stdout] | [INFO] [stdout] 128 | return if self.connections(pos).contains(start_pos) { Some(pos) } else { 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] 128 - return if self.connections(pos).contains(start_pos) { Some(pos) } else { None }; [INFO] [stdout] 128 + if self.connections(pos).contains(start_pos) { Some(pos) } else { None } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> 2023/day-10/src/lib.rs:131:35 [INFO] [stdout] | [INFO] [stdout] 131 | start_connections.sort_by(|a, b| Grid::cmp_pos(a, b)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `Grid::cmp_pos` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-10/src/lib.rs:138:13 [INFO] [stdout] | [INFO] [stdout] 138 | return if connections == start_connections { Some(it.clone()) } else { 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] 138 - return if connections == start_connections { Some(it.clone()) } else { None }; [INFO] [stdout] 138 + if connections == start_connections { Some(it.clone()) } else { None } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> 2023/day-10/src/lib.rs:137:33 [INFO] [stdout] | [INFO] [stdout] 137 | connections.sort_by(|a, b| Grid::cmp_pos(a, b)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `Grid::cmp_pos` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-10/src/lib.rs:160:9 [INFO] [stdout] | [INFO] [stdout] 160 | return main_loop; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 160 - return main_loop; [INFO] [stdout] 160 + main_loop [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `[usize; 2]` which implements the `Copy` trait [INFO] [stdout] --> 2023/day-10/src/lib.rs:143:36 [INFO] [stdout] | [INFO] [stdout] 143 | let mut prev: [usize; 2] = start_pos.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `start_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: using `clone` on type `[usize; 2]` which implements the `Copy` trait [INFO] [stdout] --> 2023/day-10/src/lib.rs:144:23 [INFO] [stdout] | [INFO] [stdout] 144 | let mut pos = self.connections(start_pos).first().unwrap().clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try dereferencing it: `*self.connections(start_pos).first().unwrap()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-10/src/lib.rs:174:5 [INFO] [stdout] | [INFO] [stdout] 174 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 174 - return result.to_string(); [INFO] [stdout] 174 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-10/src/lib.rs:209:5 [INFO] [stdout] | [INFO] [stdout] 209 | return enclosed_count.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 209 - return enclosed_count.to_string(); [INFO] [stdout] 209 + enclosed_count.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: found `.or(Some(…)).unwrap()` [INFO] [stdout] --> 2023/day-10/src/lib.rs:196:67 [INFO] [stdout] | [INFO] [stdout] 196 | let is_vertical = pipe.map(|pipe| pipe.is_vertical()).or(Some(false)).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or(false)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_then_unwrap [INFO] [stdout] = note: `#[warn(clippy::or_then_unwrap)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-23/src/lib.rs:118:9 [INFO] [stdout] | [INFO] [stdout] 118 | ... return pos.x >= 0 && pos.x < self.shape.0 && pos.y >= 0 && pos.y < self.shape.1 && self.data[[pos.x as usize, pos.y as usize]] != Forest; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 pos.x >= 0 && pos.x < self.shape.0 && pos.y >= 0 && pos.y < self.shape.1 && self.data[[pos.x as usize, pos.y as usize]] != Forest; [INFO] [stdout] 118 + pos.x >= 0 && pos.x < self.shape.0 && pos.y >= 0 && pos.y < self.shape.1 && self.data[[pos.x as usize, pos.y as usize]] != Forest [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-23/src/lib.rs:122:9 [INFO] [stdout] | [INFO] [stdout] 122 | / return self.data[[pos.x as usize, pos.y as usize]].next(pos).iter().filter_map(|pos| { [INFO] [stdout] 123 | | return if self.is_path(pos) { Some(*pos) } else { None }; [INFO] [stdout] 124 | | }).collect::>(); [INFO] [stdout] | |_____________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 122 ~ self.data[[pos.x as usize, pos.y as usize]].next(pos).iter().filter_map(|pos| { [INFO] [stdout] 123 + return if self.is_path(pos) { Some(*pos) } else { None }; [INFO] [stdout] 124 ~ }).collect::>() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-23/src/lib.rs:123:13 [INFO] [stdout] | [INFO] [stdout] 123 | return if self.is_path(pos) { Some(*pos) } else { 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] 123 - return if self.is_path(pos) { Some(*pos) } else { None }; [INFO] [stdout] 123 + if self.is_path(pos) { Some(*pos) } else { None } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-23/src/lib.rs:170:9 [INFO] [stdout] | [INFO] [stdout] 170 | return graph; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 170 - return graph; [INFO] [stdout] 170 + graph [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-23/src/lib.rs:138:17 [INFO] [stdout] | [INFO] [stdout] 138 | return if *item != Forest && self.next(&pos).len() >= 3 { Some(pos) } else { 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] 138 - return if *item != Forest && self.next(&pos).len() >= 3 { Some(pos) } else { None }; [INFO] [stdout] 138 + if *item != Forest && self.next(&pos).len() >= 3 { Some(pos) } else { None } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-16/src/lib.rs:188:9 [INFO] [stdout] | [INFO] [stdout] 188 | return energized.iter().map(|it| (*it).0).unique().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] 188 - return energized.iter().map(|it| (*it).0).unique().count(); [INFO] [stdout] 188 + energized.iter().map(|it| (*it).0).unique().count() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BeamDirection` which implements the `Copy` trait [INFO] [stdout] --> 2023/day-16/src/lib.rs:169:48 [INFO] [stdout] | [INFO] [stdout] 169 | .map(|it| (it.next(&position), it.clone())) [INFO] [stdout] | ^^^^^^^^^^ help: try dereferencing it: `*it` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref which would be done by auto-deref [INFO] [stdout] --> 2023/day-16/src/lib.rs:188:42 [INFO] [stdout] | [INFO] [stdout] 188 | return energized.iter().map(|it| (*it).0).unique().count(); [INFO] [stdout] | ^^^^^ help: try: `it` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref [INFO] [stdout] = note: `#[warn(clippy::explicit_auto_deref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-16/src/lib.rs:195:5 [INFO] [stdout] | [INFO] [stdout] 195 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 195 - return result.to_string(); [INFO] [stdout] 195 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-16/src/lib.rs:223:5 [INFO] [stdout] | [INFO] [stdout] 223 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 223 - return result.to_string(); [INFO] [stdout] 223 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-16/src/lib.rs:203:9 [INFO] [stdout] | [INFO] [stdout] 203 | / return max( [INFO] [stdout] 204 | | acc, [INFO] [stdout] 205 | | max( [INFO] [stdout] 206 | | contraption.energize(BeamPosition { x: idx as i32, y: shape[1] as i32 - 1 }, BeamDirection::LEFT), [INFO] [stdout] 207 | | contraption.energize(BeamPosition { x: idx as i32, y: 0 }, BeamDirection::RIGHT), [INFO] [stdout] 208 | | ), [INFO] [stdout] 209 | | ); [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 203 ~ max( [INFO] [stdout] 204 + acc, [INFO] [stdout] 205 + max( [INFO] [stdout] 206 + contraption.energize(BeamPosition { x: idx as i32, y: shape[1] as i32 - 1 }, BeamDirection::LEFT), [INFO] [stdout] 207 + contraption.energize(BeamPosition { x: idx as i32, y: 0 }, BeamDirection::RIGHT), [INFO] [stdout] 208 + ), [INFO] [stdout] 209 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-16/src/lib.rs:213:9 [INFO] [stdout] | [INFO] [stdout] 213 | / return max( [INFO] [stdout] 214 | | acc, [INFO] [stdout] 215 | | max( [INFO] [stdout] 216 | | contraption.energize(BeamPosition { x: 0, y: idx as i32 }, BeamDirection::DOWN), [INFO] [stdout] 217 | | contraption.energize(BeamPosition { x: shape[0] as i32 - 1, y: idx as i32 }, BeamDirection::UP), [INFO] [stdout] 218 | | ), [INFO] [stdout] 219 | | ); [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 213 ~ max( [INFO] [stdout] 214 + acc, [INFO] [stdout] 215 + max( [INFO] [stdout] 216 + contraption.energize(BeamPosition { x: 0, y: idx as i32 }, BeamDirection::DOWN), [INFO] [stdout] 217 + contraption.energize(BeamPosition { x: shape[0] as i32 - 1, y: idx as i32 }, BeamDirection::UP), [INFO] [stdout] 218 + ), [INFO] [stdout] 219 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-23/src/lib.rs:177:9 [INFO] [stdout] | [INFO] [stdout] 177 | return self.find_longest_dfs(&graph, &start, &mut HashSet::new(), 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] 177 - return self.find_longest_dfs(&graph, &start, &mut HashSet::new(), 0); [INFO] [stdout] 177 + self.find_longest_dfs(&graph, &start, &mut HashSet::new(), 0) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-23/src/lib.rs:193:9 [INFO] [stdout] | [INFO] [stdout] 193 | return longest; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 193 - return longest; [INFO] [stdout] 193 + longest [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `RIGHT` contains a capitalized acronym [INFO] [stdout] --> 2023/day-21/src/lib.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | RIGHT, [INFO] [stdout] | ^^^^^ help: consider making the acronym lowercase, except the initial letter: `Right` [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 `DOWN` contains a capitalized acronym [INFO] [stdout] --> 2023/day-21/src/lib.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | DOWN, [INFO] [stdout] | ^^^^ help: consider making the acronym lowercase, except the initial letter: `Down` [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 `LEFT` contains a capitalized acronym [INFO] [stdout] --> 2023/day-21/src/lib.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | LEFT, [INFO] [stdout] | ^^^^ help: consider making the acronym lowercase, except the initial letter: `Left` [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] --> 2023/day-23/src/lib.rs:200:5 [INFO] [stdout] | [INFO] [stdout] 200 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 200 - return result.to_string(); [INFO] [stdout] 200 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-23/src/lib.rs:206:5 [INFO] [stdout] | [INFO] [stdout] 206 | return result.to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 206 - return result.to_string(); [INFO] [stdout] 206 + result.to_string() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-21/src/lib.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 35 | / return match self { [INFO] [stdout] 36 | | UP => Position { x: pos.x - 1, y: pos.y }, [INFO] [stdout] 37 | | RIGHT => Position { x: pos.x, y: pos.y + 1 }, [INFO] [stdout] 38 | | DOWN => Position { x: pos.x + 1, y: pos.y }, [INFO] [stdout] 39 | | LEFT => Position { x: pos.x, y: pos.y - 1 } [INFO] [stdout] 40 | | }; [INFO] [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] 35 ~ match self { [INFO] [stdout] 36 + UP => Position { x: pos.x - 1, y: pos.y }, [INFO] [stdout] 37 + RIGHT => Position { x: pos.x, y: pos.y + 1 }, [INFO] [stdout] 38 + DOWN => Position { x: pos.x + 1, y: pos.y }, [INFO] [stdout] 39 + LEFT => Position { x: pos.x, y: pos.y - 1 } [INFO] [stdout] 40 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-21/src/lib.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | / return Ok(Garden { [INFO] [stdout] 80 | | data: Array2::from_shape_vec( [INFO] [stdout] 81 | | (data.len(), data.first().unwrap().len()), [INFO] [stdout] 82 | | data.into_iter().flatten().collect(), [INFO] [stdout] 83 | | ).unwrap() [INFO] [stdout] 84 | | }); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 ~ Ok(Garden { [INFO] [stdout] 80 + data: Array2::from_shape_vec( [INFO] [stdout] 81 + (data.len(), data.first().unwrap().len()), [INFO] [stdout] 82 + data.into_iter().flatten().collect(), [INFO] [stdout] 83 + ).unwrap() [INFO] [stdout] 84 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-13/src/lib.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | / return Ok(Pattern { [INFO] [stdout] 31 | | data: Array2::from_shape_vec( [INFO] [stdout] 32 | | (data.len(), data.first().unwrap().len()), [INFO] [stdout] 33 | | data.into_iter().flatten().collect(), [INFO] [stdout] 34 | | ).unwrap() [INFO] [stdout] 35 | | }); [INFO] [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] 30 ~ Ok(Pattern { [INFO] [stdout] 31 + data: Array2::from_shape_vec( [INFO] [stdout] 32 + (data.len(), data.first().unwrap().len()), [INFO] [stdout] 33 + data.into_iter().flatten().collect(), [INFO] [stdout] 34 + ).unwrap() [INFO] [stdout] 35 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-13/src/lib.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | / return self.data.row(idx1).iter().enumerate().fold_while(0, |acc, it| { [INFO] [stdout] 42 | | if acc > max_diff { [INFO] [stdout] 43 | | return FoldWhile::Done(acc); [INFO] [stdout] ... | [INFO] [stdout] 46 | | }).into_inner(); [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 ~ self.data.row(idx1).iter().enumerate().fold_while(0, |acc, it| { [INFO] [stdout] 42 + if acc > max_diff { [INFO] [stdout] 43 + return FoldWhile::Done(acc); [INFO] [stdout] 44 + } [INFO] [stdout] 45 + return if *it.1 != self.data[[idx2, it.0]] { FoldWhile::Continue(acc + 1) } else { FoldWhile::Continue(acc) }; [INFO] [stdout] 46 ~ }).into_inner() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-13/src/lib.rs:45:13 [INFO] [stdout] | [INFO] [stdout] 45 | return if *it.1 != self.data[[idx2, it.0]] { FoldWhile::Continue(acc + 1) } else { FoldWhile::Continue(acc) }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 if *it.1 != self.data[[idx2, it.0]] { FoldWhile::Continue(acc + 1) } else { FoldWhile::Continue(acc) }; [INFO] [stdout] 45 + if *it.1 != self.data[[idx2, it.0]] { FoldWhile::Continue(acc + 1) } else { FoldWhile::Continue(acc) } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-13/src/lib.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | / return self.data.column(idx1).iter().enumerate().fold_while(0, |acc, it| { [INFO] [stdout] 51 | | if acc > max_diff { [INFO] [stdout] 52 | | return FoldWhile::Done(acc); [INFO] [stdout] ... | [INFO] [stdout] 55 | | }).into_inner(); [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 ~ self.data.column(idx1).iter().enumerate().fold_while(0, |acc, it| { [INFO] [stdout] 51 + if acc > max_diff { [INFO] [stdout] 52 + return FoldWhile::Done(acc); [INFO] [stdout] 53 + } [INFO] [stdout] 54 + return if *it.1 != self.data[[it.0, idx2]] { FoldWhile::Continue(acc + 1) } else { FoldWhile::Continue(acc) }; [INFO] [stdout] 55 ~ }).into_inner() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-13/src/lib.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | return if *it.1 != self.data[[it.0, idx2]] { FoldWhile::Continue(acc + 1) } else { FoldWhile::Continue(acc) }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 54 - return if *it.1 != self.data[[it.0, idx2]] { FoldWhile::Continue(acc + 1) } else { FoldWhile::Continue(acc) }; [INFO] [stdout] 54 + if *it.1 != self.data[[it.0, idx2]] { FoldWhile::Continue(acc + 1) } else { FoldWhile::Continue(acc) } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-21/src/lib.rs:93:9 [INFO] [stdout] | [INFO] [stdout] 93 | return &self.data[[x as usize, 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] 93 - return &self.data[[x as usize, y as usize]]; [INFO] [stdout] 93 + &self.data[[x as usize, y as usize]] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-21/src/lib.rs:97:9 [INFO] [stdout] | [INFO] [stdout] 97 | / return self.data.indexed_iter().find_map(|((x, y), tile)| { [INFO] [stdout] 98 | | if *tile == Tile::Start { Some(Position { x: x as i32, y: y as i32 }) } else { None } [INFO] [stdout] 99 | | }).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] 97 ~ self.data.indexed_iter().find_map(|((x, y), tile)| { [INFO] [stdout] 98 + if *tile == Tile::Start { Some(Position { x: x as i32, y: y as i32 }) } else { None } [INFO] [stdout] 99 ~ }).unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-13/src/lib.rs:66:9 [INFO] [stdout] | [INFO] [stdout] 66 | return result <= max_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 result <= max_diff; [INFO] [stdout] 66 + result <= max_diff [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-21/src/lib.rs:115:9 [INFO] [stdout] | [INFO] [stdout] 115 | return next_plots; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for 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 next_plots; [INFO] [stdout] 115 + next_plots [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> 2023/day-21/src/lib.rs:110:21 [INFO] [stdout] | [INFO] [stdout] 110 | return if *self.get_tile(&next_position) != Tile::Rock { Some(next_position) } else { 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] 110 - return if *self.get_tile(&next_position) != Tile::Rock { Some(next_position) } else { None }; [INFO] [stdout] 110 + if *self.get_tile(&next_position) != Tile::Rock { Some(next_position) } else { None } [INFO] [stdout] | [INFO] [stdout] [WARN] too many lines in the log, truncating it