[INFO] cloning repository https://github.com/DedsecKnight/aoc2023 [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/DedsecKnight/aoc2023" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDedsecKnight%2Faoc2023", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDedsecKnight%2Faoc2023'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] ca0544d90f3e5d83b12b0773f8b0fc50a70febc7 [INFO] checking DedsecKnight/aoc2023 against master#779e19d8baa3e3625bd4fc5c85cbb2ad47b43155 for pr-147589-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDedsecKnight%2Faoc2023" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/DedsecKnight/aoc2023 [INFO] finished tweaking git repo https://github.com/DedsecKnight/aoc2023 [INFO] tweaked toml for git repo https://github.com/DedsecKnight/aoc2023 written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/DedsecKnight/aoc2023 on toolchain 779e19d8baa3e3625bd4fc5c85cbb2ad47b43155 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/DedsecKnight/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" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded rustix v0.38.25 [INFO] [stderr] Downloaded linux-raw-sys v0.4.11 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] d3fe4f9ccc9dfcbab9e4cc053209bc8bd4138640c3818f29326d518a7bd4eacc [INFO] running `Command { std: "docker" "start" "-a" "d3fe4f9ccc9dfcbab9e4cc053209bc8bd4138640c3818f29326d518a7bd4eacc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d3fe4f9ccc9dfcbab9e4cc053209bc8bd4138640c3818f29326d518a7bd4eacc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d3fe4f9ccc9dfcbab9e4cc053209bc8bd4138640c3818f29326d518a7bd4eacc", kill_on_drop: false }` [INFO] [stdout] d3fe4f9ccc9dfcbab9e4cc053209bc8bd4138640c3818f29326d518a7bd4eacc [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d5ea1a7a0bc606491bf4f4dea996a7e1003c2f26631d237a6939fd39e6e945a4 [INFO] running `Command { std: "docker" "start" "-a" "d5ea1a7a0bc606491bf4f4dea996a7e1003c2f26631d237a6939fd39e6e945a4", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.150 [INFO] [stderr] Compiling proc-macro2 v1.0.70 [INFO] [stderr] Checking pin-project-lite v0.2.13 [INFO] [stderr] Checking once_cell v1.18.0 [INFO] [stderr] Compiling pkg-config v0.3.27 [INFO] [stderr] Compiling num-traits v0.2.17 [INFO] [stderr] Compiling futures-core v0.3.29 [INFO] [stderr] Checking bytes v1.5.0 [INFO] [stderr] Checking itoa v1.0.9 [INFO] [stderr] Checking bitflags v2.4.1 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Compiling futures-task v0.3.29 [INFO] [stderr] Checking tracing-core v0.1.32 [INFO] [stderr] Compiling serde v1.0.193 [INFO] [stderr] Compiling futures-util v0.3.29 [INFO] [stderr] Compiling openssl v0.10.60 [INFO] [stderr] Checking http v0.2.11 [INFO] [stderr] Compiling cc v1.0.83 [INFO] [stderr] Checking tracing v0.1.40 [INFO] [stderr] Checking hashbrown v0.14.3 [INFO] [stderr] Checking futures-sink v0.3.29 [INFO] [stderr] Compiling native-tls v0.2.11 [INFO] [stderr] Checking futures-io v0.3.29 [INFO] [stderr] Compiling quote v1.0.33 [INFO] [stderr] Compiling futures-channel v0.3.29 [INFO] [stderr] Compiling syn v2.0.39 [INFO] [stderr] Checking socket2 v0.5.5 [INFO] [stderr] Checking mio v0.8.9 [INFO] [stderr] Checking num_cpus v1.16.0 [INFO] [stderr] Checking indexmap v2.1.0 [INFO] [stderr] Checking num-integer v0.1.45 [INFO] [stderr] Compiling httparse v1.8.0 [INFO] [stderr] Checking tinyvec v1.6.0 [INFO] [stderr] Checking tokio v1.34.0 [INFO] [stderr] Compiling num-bigint v0.4.4 [INFO] [stderr] Compiling openssl-sys v0.9.96 [INFO] [stderr] Checking log v0.4.20 [INFO] [stderr] Compiling rustix v0.38.25 [INFO] [stderr] Checking ryu v1.0.15 [INFO] [stderr] Checking try-lock v0.2.4 [INFO] [stderr] Checking want v0.3.1 [INFO] [stderr] Checking unicode-normalization v0.1.22 [INFO] [stderr] Checking http-body v0.4.5 [INFO] [stderr] Checking dirs-sys-next v0.1.2 [INFO] [stderr] Checking socket2 v0.4.10 [INFO] [stderr] Compiling num-rational v0.4.1 [INFO] [stderr] Compiling num-iter v0.1.43 [INFO] [stderr] Checking unicode-bidi v0.3.13 [INFO] [stderr] Checking linux-raw-sys v0.4.11 [INFO] [stderr] Checking idna v0.5.0 [INFO] [stderr] Checking dirs-next v2.0.0 [INFO] [stderr] Checking csv-core v0.1.11 [INFO] [stderr] Compiling iana-time-zone v0.1.58 [INFO] [stderr] Checking url v2.5.0 [INFO] [stderr] Checking term v0.7.0 [INFO] [stderr] Checking is-terminal v0.4.9 [INFO] [stderr] Checking num-complex v0.4.4 [INFO] [stderr] Compiling chrono v0.4.31 [INFO] [stderr] Checking encoding_rs v0.8.33 [INFO] [stderr] Checking base64 v0.21.5 [INFO] [stderr] Checking encode_unicode v1.0.0 [INFO] [stderr] Checking unicode-width v0.1.11 [INFO] [stderr] Checking num v0.4.1 [INFO] [stderr] Checking serde_urlencoded v0.7.1 [INFO] [stderr] Checking csv v1.3.0 [INFO] [stderr] Checking tokio-util v0.7.10 [INFO] [stderr] Checking prettytable-rs v0.10.0 [INFO] [stderr] Checking h2 v0.3.22 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling macros v0.1.0 (/opt/rustwide/workdir/macros) [INFO] [stderr] Checking hyper v0.14.27 [INFO] [stderr] Checking tokio-native-tls v0.3.1 [INFO] [stderr] Checking hyper-tls v0.5.0 [INFO] [stderr] Checking reqwest v0.11.22 [INFO] [stderr] Checking aoc2023 v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: struct `Day16` is never constructed [INFO] [stdout] --> src/solution/day16.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Day16; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DIR_VECTOR` is never used [INFO] [stdout] --> src/solution/day16.rs:10:7 [INFO] [stdout] | [INFO] [stdout] 10 | const DIR_VECTOR: &[(i32, i32)] = &[(-1, 0), (0, 1), (1, 0), (0, -1)]; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DIR_UP` is never used [INFO] [stdout] --> src/solution/day16.rs:11:7 [INFO] [stdout] | [INFO] [stdout] 11 | const DIR_UP: usize = 0; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DIR_RIGHT` is never used [INFO] [stdout] --> src/solution/day16.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | const DIR_RIGHT: usize = 1; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DIR_DOWN` is never used [INFO] [stdout] --> src/solution/day16.rs:13:7 [INFO] [stdout] | [INFO] [stdout] 13 | const DIR_DOWN: usize = 2; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DIR_LEFT` is never used [INFO] [stdout] --> src/solution/day16.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | const DIR_LEFT: usize = 3; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Grid` is never constructed [INFO] [stdout] --> src/solution/day16.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 16 | struct Grid { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `rotate_clockwise`, `rotate_counterclockwise`, `generate_neighbors`, and `count_num_energized` are never used [INFO] [stdout] --> src/solution/day16.rs:21:8 [INFO] [stdout] | [INFO] [stdout] 20 | impl Grid { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 21 | fn new(grid: Vec>) -> Grid { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | fn rotate_clockwise(dir_index: usize) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn rotate_counterclockwise(dir_index: usize) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 30 | fn generate_neighbors(cell_type: char, dir: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | fn count_num_energized( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `parse_grid` is never used [INFO] [stdout] --> src/solution/day16.rs:120:8 [INFO] [stdout] | [INFO] [stdout] 119 | impl Day16 { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] 120 | fn parse_grid<'a>(lines: impl Iterator) -> Vec> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day6` is never constructed [INFO] [stdout] --> src/solution/day6.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Day6; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `QuadraticEquation` is never constructed [INFO] [stdout] --> src/solution/day6.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | struct QuadraticEquation { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `find_clamped_roots`, `evaluate`, and `new` are never used [INFO] [stdout] --> src/solution/day6.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 16 | impl QuadraticEquation { [INFO] [stdout] | ---------------------- associated items in this implementation [INFO] [stdout] 17 | fn find_clamped_roots(&self, lb: f64, rb: f64) -> (f64, f64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 25 | fn evaluate(&self, x: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | fn new(param_a: f64, param_b: f64, param_c: f64) -> QuadraticEquation { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `parse_line` and `join_line` are never used [INFO] [stdout] --> src/solution/day6.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 37 | impl Day6 { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 38 | fn parse_line(line: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 41 | fn join_line(num_list: Vec) -> i64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day9` is never constructed [INFO] [stdout] --> src/solution/day9.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Day9; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `parse_line`, `extrapolate_foward`, and `extrapolate_backward` are never used [INFO] [stdout] --> src/solution/day9.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 8 | impl Day9 { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 9 | fn parse_line(line: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 14 | fn extrapolate_foward(nums: &Vec) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 25 | fn extrapolate_backward(nums: &Vec) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day19` is never constructed [INFO] [stdout] --> src/solution/day19.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Day19; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Rule` is never constructed [INFO] [stdout] --> src/solution/day19.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | struct Rule { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `WorkflowManager` is never constructed [INFO] [stdout] --> src/solution/day19.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 16 | struct WorkflowManager { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Input` is never constructed [INFO] [stdout] --> src/solution/day19.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | struct Input { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `InputBound` is never constructed [INFO] [stdout] --> src/solution/day19.rs:27:8 [INFO] [stdout] | [INFO] [stdout] 27 | struct InputBound { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `accept_input`, `process_input`, and `find_acceptable_variable_ranges` are never used [INFO] [stdout] --> src/solution/day19.rs:35:8 [INFO] [stdout] | [INFO] [stdout] 34 | impl WorkflowManager { [INFO] [stdout] | -------------------- associated items in this implementation [INFO] [stdout] 35 | fn new(wm: HashMap>) -> WorkflowManager { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | fn accept_input(&self, input: &Input, workflow: String) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 58 | fn process_input(&self, input_data: &Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 67 | fn find_acceptable_variable_ranges(&self, init_bound: InputBound) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `accept`, `determine_new_range_inverted`, and `determine_new_range` are never used [INFO] [stdout] --> src/solution/day19.rs:96:8 [INFO] [stdout] | [INFO] [stdout] 95 | impl Rule { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 96 | fn new(raw_rule: &str) -> Rule { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 115 | fn accept(&self, input: &Input) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 133 | fn determine_new_range_inverted(&self, old_range: &InputBound) -> InputBound { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 162 | fn determine_new_range(&self, old_range: &InputBound) -> InputBound { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `combined_params` are never used [INFO] [stdout] --> src/solution/day19.rs:193:8 [INFO] [stdout] | [INFO] [stdout] 192 | impl Input { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 193 | fn new(raw_line: &str) -> Input { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 218 | fn combined_params(&self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_valid` and `count_valid_combinations` are never used [INFO] [stdout] --> src/solution/day19.rs:224:8 [INFO] [stdout] | [INFO] [stdout] 223 | impl InputBound { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 224 | fn is_valid(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 227 | fn count_valid_combinations(&self) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `parse_workflow_data` is never used [INFO] [stdout] --> src/solution/day19.rs:236:8 [INFO] [stdout] | [INFO] [stdout] 235 | impl Day19 { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] 236 | fn parse_workflow_data(raw_data: &str) -> (String, Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day11` is never constructed [INFO] [stdout] --> src/solution/day11.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Day11; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `rescale_grid` is never used [INFO] [stdout] --> src/solution/day11.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 10 | impl Day11 { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] 11 | fn rescale_grid(grid: &Vec>) -> Vec> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day21` is never constructed [INFO] [stdout] --> src/solution/day21.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Day21; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DX` is never used [INFO] [stdout] --> src/solution/day21.rs:10:7 [INFO] [stdout] | [INFO] [stdout] 10 | const DX: &[isize] = &[-1, 1, 0, 0]; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DY` is never used [INFO] [stdout] --> src/solution/day21.rs:11:7 [INFO] [stdout] | [INFO] [stdout] 11 | const DY: &[isize] = &[0, 0, -1, 1]; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Grid` is never constructed [INFO] [stdout] --> src/solution/day21.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct Grid { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `calculate_saturated_state`, `num_reachable_with_num_steps`, `traverse_mini_extended_grid`, `extrapolate_2d`, and `extrapolate_1d` are never used [INFO] [stdout] --> src/solution/day21.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 21 | impl Grid { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 22 | fn new(g: Vec>) -> Grid { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | fn calculate_saturated_state(&mut self, start_pos: (isize, isize)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | fn num_reachable_with_num_steps( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | fn traverse_mini_extended_grid(&mut self, start_pos: (isize, isize)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 188 | fn extrapolate_2d(&self, start_pos: (isize, isize), max_num_steps: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 243 | fn extrapolate_1d(&self, start_pos: (isize, isize), max_num_steps: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day15` is never constructed [INFO] [stdout] --> src/solution/day15.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Day15; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Operation` is never used [INFO] [stdout] --> src/solution/day15.rs:8:6 [INFO] [stdout] | [INFO] [stdout] 8 | enum Operation<'a> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `calculate_hash` and `parse_operation` are never used [INFO] [stdout] --> src/solution/day15.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 13 | impl Day15 { [INFO] [stdout] | ---------- associated functions in this implementation [INFO] [stdout] 14 | fn calculate_hash(s: &str) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 19 | fn parse_operation(s: &str) -> Operation { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day7` is never constructed [INFO] [stdout] --> src/solution/day7.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Day7; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `HandType` is never used [INFO] [stdout] --> src/solution/day7.rs:10:6 [INFO] [stdout] | [INFO] [stdout] 10 | type HandType = u32; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FIVE_KIND` is never used [INFO] [stdout] --> src/solution/day7.rs:11:7 [INFO] [stdout] | [INFO] [stdout] 11 | const FIVE_KIND: HandType = 7; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FOUR_KIND` is never used [INFO] [stdout] --> src/solution/day7.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | const FOUR_KIND: HandType = 6; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FULL_HOUSE` is never used [INFO] [stdout] --> src/solution/day7.rs:13:7 [INFO] [stdout] | [INFO] [stdout] 13 | const FULL_HOUSE: u32 = 5; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `THREE_KIND` is never used [INFO] [stdout] --> src/solution/day7.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | const THREE_KIND: u32 = 4; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TWO_PAIR` is never used [INFO] [stdout] --> src/solution/day7.rs:15:7 [INFO] [stdout] | [INFO] [stdout] 15 | const TWO_PAIR: u32 = 3; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ONE_PAIR` is never used [INFO] [stdout] --> src/solution/day7.rs:16:7 [INFO] [stdout] | [INFO] [stdout] 16 | const ONE_PAIR: u32 = 2; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HIGH_CARD` is never used [INFO] [stdout] --> src/solution/day7.rs:17:7 [INFO] [stdout] | [INFO] [stdout] 17 | const HIGH_CARD: u32 = 1; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated functions are never used [INFO] [stdout] --> src/solution/day7.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 19 | impl Day7 { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 20 | fn is_five_kind(card_freq: &HashMap) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | fn is_four_kind(card_freq: &HashMap) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 26 | fn is_three_kind(card_freq: &HashMap) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | fn is_one_pair(card_freq: &HashMap) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | fn is_full_house(card_freq: &HashMap) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | fn is_two_pair(card_freq: &HashMap) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | fn calculate_card_freq(hand: &str) -> HashMap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | fn evaluate_hand(hand: &str) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | fn find_best_hand(hand_data: &str) -> HandType { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | fn parse_hand(hand_data: &str, j_as_joker: bool) -> (HandType, &str, u32) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 89 | fn compare_hand(lhs: &str, rhs: &str, card_order: &Vec) -> Ordering { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day3` is never constructed [INFO] [stdout] --> src/solution/day3.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Day3; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `check_range` and `calculate_gear_ratio` are never used [INFO] [stdout] --> src/solution/day3.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 10 | impl Day3 { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 11 | fn check_range( [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | fn calculate_gear_ratio( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day8` is never constructed [INFO] [stdout] --> src/solution/day8.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Day8; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `parse_edge`, `find_dist`, `gcd`, and `lcm` are never used [INFO] [stdout] --> src/solution/day8.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 10 | impl Day8 { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 11 | fn parse_edge(raw_edge_data: &str) -> (String, Vec) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | fn find_dist( [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | fn gcd(a: u64, b: u64) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | fn lcm(a: u64, b: u64) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day22` is never constructed [INFO] [stdout] --> src/solution/day22.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Day22; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Coordinate` is never constructed [INFO] [stdout] --> src/solution/day22.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | struct Coordinate { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Block` is never constructed [INFO] [stdout] --> src/solution/day22.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 17 | struct Block { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Space3D` is never constructed [INFO] [stdout] --> src/solution/day22.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 22 | struct Space3D { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/solution/day22.rs:30:8 [INFO] [stdout] | [INFO] [stdout] 29 | impl Block { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] 30 | fn new(raw_block: &str) -> Block { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/solution/day22.rs:44:8 [INFO] [stdout] | [INFO] [stdout] 43 | impl Coordinate { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] 44 | fn new(raw_coordinate: &str) -> Coordinate { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `add_block`, `simulate_fall`, `count_disintegratable_block`, `build_graph`, and `find_maximum_chain` are never used [INFO] [stdout] --> src/solution/day22.rs:59:8 [INFO] [stdout] | [INFO] [stdout] 58 | impl Space3D { [INFO] [stdout] | ------------ associated items in this implementation [INFO] [stdout] 59 | fn new(dim_size: usize) -> Space3D { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 67 | fn add_block(&mut self, block: &Block) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 79 | fn simulate_fall(&mut self, blocks: Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 104 | fn count_disintegratable_block(&mut self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 116 | fn build_graph(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 134 | fn find_maximum_chain(&mut self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day12` is never constructed [INFO] [stdout] --> src/solution/day12.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Day12; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `parse_line`, `validate_configuration`, `count_valid_arrangement_bruteforce`, and `count_valid_arrangement_optimized` are never used [INFO] [stdout] --> src/solution/day12.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 9 | impl Day12 { [INFO] [stdout] | ---------- associated functions in this implementation [INFO] [stdout] 10 | fn parse_line(line: &str, num_copies: usize) -> (String, Vec) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 30 | fn validate_configuration(config: &Vec, requirement: &Vec) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | fn count_valid_arrangement_bruteforce(parsed_line: (String, Vec)) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | fn count_valid_arrangement_optimized(parsed_line: (String, Vec)) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day14` is never constructed [INFO] [stdout] --> src/solution/day14.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Day14; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated functions are never used [INFO] [stdout] --> src/solution/day14.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 8 | impl Day14 { [INFO] [stdout] | ---------- associated functions in this implementation [INFO] [stdout] 9 | fn roll_north(grid: &mut Vec>) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 30 | fn roll_west(grid: &mut Vec>) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | fn roll_south(grid: &mut Vec>) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | fn roll_east(grid: &mut Vec>) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 96 | fn calculate_weight(grid: &Vec>) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | fn rotate_cycle(mut grid: Vec>) -> Vec> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 108 | fn is_same_grid(g1: &Vec>, g2: &Vec>) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day1` is never constructed [INFO] [stdout] --> src/solution/day1.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Day1; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day23` is never constructed [INFO] [stdout] --> src/solution/day23.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Day23; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Graph` is never constructed [INFO] [stdout] --> src/solution/day23.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | struct Graph { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `STATE` is never used [INFO] [stdout] --> src/solution/day23.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | const STATE: &[(isize, isize, char)] = &[(-1, 0, '^'), (0, 1, '>'), (0, -1, '<'), (1, 0, 'v')]; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_DEPTH_LIMIT` is never used [INFO] [stdout] --> src/solution/day23.rs:13:7 [INFO] [stdout] | [INFO] [stdout] 13 | const MAX_DEPTH_LIMIT: i32 = 7000; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `find_longest_path`, and `find_longest_path_optimized` are never used [INFO] [stdout] --> src/solution/day23.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 15 | impl Graph { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 16 | fn new(grid: Vec>) -> Graph { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | fn find_longest_path(&mut self, curr_pos: (isize, isize), curr_dist: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | fn find_longest_path_optimized( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day4` is never constructed [INFO] [stdout] --> src/solution/day4.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Day4; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `parse_card_data` is never used [INFO] [stdout] --> src/solution/day4.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 10 | impl Day4 { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 11 | fn parse_card_data(raw_card_data: &str) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day18` is never constructed [INFO] [stdout] --> src/solution/day18.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Day18; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `parse_line` is never used [INFO] [stdout] --> src/solution/day18.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 8 | impl Day18 { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] 9 | fn parse_line(line: &str) -> (char, u32, String) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day10` is never constructed [INFO] [stdout] --> src/solution/day10.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Day10; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Graph` is never constructed [INFO] [stdout] --> src/solution/day10.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | struct Graph<'a> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DX` is never used [INFO] [stdout] --> src/solution/day10.rs:18:7 [INFO] [stdout] | [INFO] [stdout] 18 | const DX: &[i32] = &[0, 1, 0, -1]; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DY` is never used [INFO] [stdout] --> src/solution/day10.rs:19:7 [INFO] [stdout] | [INFO] [stdout] 19 | const DY: &[i32] = &[-1, 0, 1, 0]; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `GridPos` is never used [INFO] [stdout] --> src/solution/day10.rs:21:6 [INFO] [stdout] | [INFO] [stdout] 21 | type GridPos = (usize, usize); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `GridPosTraits` is never used [INFO] [stdout] --> src/solution/day10.rs:23:7 [INFO] [stdout] | [INFO] [stdout] 23 | trait GridPosTraits { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `is_connected`, `add_edge`, `mark_loop`, `furthest_from`, and `calculate_loop_area` are never used [INFO] [stdout] --> src/solution/day10.rs:68:8 [INFO] [stdout] | [INFO] [stdout] 67 | impl<'a> Graph<'a> { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 68 | fn new(grid: &'a Vec>) -> Graph<'a> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | fn is_connected(&self, grid_pos: &GridPos, parent_pos: &GridPos) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 98 | fn add_edge(&mut self, from: &GridPos, to: &GridPos) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 104 | fn mark_loop(&mut self, start_pos: GridPos) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 116 | fn furthest_from(&self, start_pos: GridPos) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 131 | fn calculate_loop_area(&self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day13` is never constructed [INFO] [stdout] --> src/solution/day13.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Day13; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PatternMap` is never constructed [INFO] [stdout] --> src/solution/day13.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 8 | struct PatternMap { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `match_column`, `match_row`, and `summarize` are never used [INFO] [stdout] --> src/solution/day13.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 12 | impl PatternMap { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 13 | fn new(buffer: &Vec>) -> PatternMap { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 18 | fn match_column(&self, i: usize, j: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 21 | fn match_row(&self, i: usize, j: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | fn summarize( [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `read_pattern_list` is never used [INFO] [stdout] --> src/solution/day13.rs:81:8 [INFO] [stdout] | [INFO] [stdout] 80 | impl Day13 { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] 81 | fn read_pattern_list<'a>(lines: impl Iterator) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day2` is never constructed [INFO] [stdout] --> src/solution/day2.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Day2; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MatchData` is never constructed [INFO] [stdout] --> src/solution/day2.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | struct MatchData { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `parse_match_data` and `parse_game_data` are never used [INFO] [stdout] --> src/solution/day2.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 15 | impl Day2 { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 16 | fn parse_match_data(match_data: &str) -> MatchData { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 36 | fn parse_game_data(game_data: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day5` is never constructed [INFO] [stdout] --> src/solution/day5.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Day5; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `QueueElement` is never used [INFO] [stdout] --> src/solution/day5.rs:10:6 [INFO] [stdout] | [INFO] [stdout] 10 | enum QueueElement { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `parse_seed_data`, `parse_seed_data_p2`, and `parse_map` are never used [INFO] [stdout] --> src/solution/day5.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 15 | impl Day5 { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 16 | fn parse_seed_data(seed_data: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | fn parse_seed_data_p2(raw_seed_data: &Vec) -> Vec<(i64, i64)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | fn parse_map<'a>(lines: &mut impl Iterator) -> Vec<(i64, i64, i64)> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day20` is never constructed [INFO] [stdout] --> src/solution/day20.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Day20; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Broadcaster` is never constructed [INFO] [stdout] --> src/solution/day20.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | struct Broadcaster { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FlipFlop` is never constructed [INFO] [stdout] --> src/solution/day20.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | struct FlipFlop { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Conjunction` is never constructed [INFO] [stdout] --> src/solution/day20.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 19 | struct Conjunction { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ModuleComponent` is never used [INFO] [stdout] --> src/solution/day20.rs:24:6 [INFO] [stdout] | [INFO] [stdout] 24 | enum ModuleComponent { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Module` is never constructed [INFO] [stdout] --> src/solution/day20.rs:30:8 [INFO] [stdout] | [INFO] [stdout] 30 | struct Module { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `receive_input`, `current_output`, and `reset` are never used [INFO] [stdout] --> src/solution/day20.rs:36:8 [INFO] [stdout] | [INFO] [stdout] 35 | impl Module { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] 36 | fn receive_input(&mut self, module_from: &String, input: &PulseType) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | fn current_output(&mut self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | fn reset(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `PulseType` is never used [INFO] [stdout] --> src/solution/day20.rs:106:6 [INFO] [stdout] | [INFO] [stdout] 106 | enum PulseType { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Machine` is never constructed [INFO] [stdout] --> src/solution/day20.rs:111:8 [INFO] [stdout] | [INFO] [stdout] 111 | struct Machine { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/solution/day20.rs:117:8 [INFO] [stdout] | [INFO] [stdout] 116 | impl Machine { [INFO] [stdout] | ------------ associated items in this implementation [INFO] [stdout] 117 | fn new() -> Machine { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 123 | fn add_module(&mut self, module_name: String, module: Module) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 128 | fn build_connection(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 143 | fn has_module(&self, module_name: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 146 | fn push_button(&mut self) -> (u64, u64) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 179 | fn push_until_node_sends_signal(&mut self, module: &String, pulse: &PulseType) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 212 | fn reset(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `parse_module` is never used [INFO] [stdout] --> src/solution/day20.rs:220:8 [INFO] [stdout] | [INFO] [stdout] 219 | impl Day20 { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] 220 | fn parse_module(line: &str) -> (String, Module) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/solution/day15.rs:19:27 [INFO] [stdout] | [INFO] [stdout] 19 | fn parse_operation(s: &str) -> Operation { [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] 19 | fn parse_operation(s: &str) -> Operation<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/solution/day7.rs:68:30 [INFO] [stdout] | [INFO] [stdout] 68 | hand_data [INFO] [stdout] | ______________________________^ [INFO] [stdout] 69 | | .clone() [INFO] [stdout] | |________________________________^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day16` is never constructed [INFO] [stdout] --> src/solution/day16.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Day16; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DIR_VECTOR` is never used [INFO] [stdout] --> src/solution/day16.rs:10:7 [INFO] [stdout] | [INFO] [stdout] 10 | const DIR_VECTOR: &[(i32, i32)] = &[(-1, 0), (0, 1), (1, 0), (0, -1)]; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DIR_UP` is never used [INFO] [stdout] --> src/solution/day16.rs:11:7 [INFO] [stdout] | [INFO] [stdout] 11 | const DIR_UP: usize = 0; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DIR_RIGHT` is never used [INFO] [stdout] --> src/solution/day16.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | const DIR_RIGHT: usize = 1; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DIR_DOWN` is never used [INFO] [stdout] --> src/solution/day16.rs:13:7 [INFO] [stdout] | [INFO] [stdout] 13 | const DIR_DOWN: usize = 2; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DIR_LEFT` is never used [INFO] [stdout] --> src/solution/day16.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | const DIR_LEFT: usize = 3; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Grid` is never constructed [INFO] [stdout] --> src/solution/day16.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 16 | struct Grid { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `rotate_clockwise`, `rotate_counterclockwise`, `generate_neighbors`, and `count_num_energized` are never used [INFO] [stdout] --> src/solution/day16.rs:21:8 [INFO] [stdout] | [INFO] [stdout] 20 | impl Grid { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 21 | fn new(grid: Vec>) -> Grid { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | fn rotate_clockwise(dir_index: usize) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn rotate_counterclockwise(dir_index: usize) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 30 | fn generate_neighbors(cell_type: char, dir: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | fn count_num_energized( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `parse_grid` is never used [INFO] [stdout] --> src/solution/day16.rs:120:8 [INFO] [stdout] | [INFO] [stdout] 119 | impl Day16 { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] 120 | fn parse_grid<'a>(lines: impl Iterator) -> Vec> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day6` is never constructed [INFO] [stdout] --> src/solution/day6.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Day6; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `QuadraticEquation` is never constructed [INFO] [stdout] --> src/solution/day6.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | struct QuadraticEquation { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `find_clamped_roots`, `evaluate`, and `new` are never used [INFO] [stdout] --> src/solution/day6.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 16 | impl QuadraticEquation { [INFO] [stdout] | ---------------------- associated items in this implementation [INFO] [stdout] 17 | fn find_clamped_roots(&self, lb: f64, rb: f64) -> (f64, f64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 25 | fn evaluate(&self, x: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | fn new(param_a: f64, param_b: f64, param_c: f64) -> QuadraticEquation { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `parse_line` and `join_line` are never used [INFO] [stdout] --> src/solution/day6.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 37 | impl Day6 { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 38 | fn parse_line(line: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 41 | fn join_line(num_list: Vec) -> i64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day9` is never constructed [INFO] [stdout] --> src/solution/day9.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Day9; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `parse_line`, `extrapolate_foward`, and `extrapolate_backward` are never used [INFO] [stdout] --> src/solution/day9.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 8 | impl Day9 { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 9 | fn parse_line(line: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 14 | fn extrapolate_foward(nums: &Vec) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 25 | fn extrapolate_backward(nums: &Vec) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day19` is never constructed [INFO] [stdout] --> src/solution/day19.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Day19; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Rule` is never constructed [INFO] [stdout] --> src/solution/day19.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | struct Rule { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `WorkflowManager` is never constructed [INFO] [stdout] --> src/solution/day19.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 16 | struct WorkflowManager { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Input` is never constructed [INFO] [stdout] --> src/solution/day19.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | struct Input { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `InputBound` is never constructed [INFO] [stdout] --> src/solution/day19.rs:27:8 [INFO] [stdout] | [INFO] [stdout] 27 | struct InputBound { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `accept_input`, `process_input`, and `find_acceptable_variable_ranges` are never used [INFO] [stdout] --> src/solution/day19.rs:35:8 [INFO] [stdout] | [INFO] [stdout] 34 | impl WorkflowManager { [INFO] [stdout] | -------------------- associated items in this implementation [INFO] [stdout] 35 | fn new(wm: HashMap>) -> WorkflowManager { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | fn accept_input(&self, input: &Input, workflow: String) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 58 | fn process_input(&self, input_data: &Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 67 | fn find_acceptable_variable_ranges(&self, init_bound: InputBound) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `accept`, `determine_new_range_inverted`, and `determine_new_range` are never used [INFO] [stdout] --> src/solution/day19.rs:96:8 [INFO] [stdout] | [INFO] [stdout] 95 | impl Rule { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 96 | fn new(raw_rule: &str) -> Rule { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 115 | fn accept(&self, input: &Input) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 133 | fn determine_new_range_inverted(&self, old_range: &InputBound) -> InputBound { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 162 | fn determine_new_range(&self, old_range: &InputBound) -> InputBound { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `combined_params` are never used [INFO] [stdout] --> src/solution/day19.rs:193:8 [INFO] [stdout] | [INFO] [stdout] 192 | impl Input { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 193 | fn new(raw_line: &str) -> Input { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 218 | fn combined_params(&self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_valid` and `count_valid_combinations` are never used [INFO] [stdout] --> src/solution/day19.rs:224:8 [INFO] [stdout] | [INFO] [stdout] 223 | impl InputBound { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 224 | fn is_valid(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 227 | fn count_valid_combinations(&self) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `parse_workflow_data` is never used [INFO] [stdout] --> src/solution/day19.rs:236:8 [INFO] [stdout] | [INFO] [stdout] 235 | impl Day19 { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] 236 | fn parse_workflow_data(raw_data: &str) -> (String, Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day11` is never constructed [INFO] [stdout] --> src/solution/day11.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Day11; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `rescale_grid` is never used [INFO] [stdout] --> src/solution/day11.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 10 | impl Day11 { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] 11 | fn rescale_grid(grid: &Vec>) -> Vec> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day21` is never constructed [INFO] [stdout] --> src/solution/day21.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Day21; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DX` is never used [INFO] [stdout] --> src/solution/day21.rs:10:7 [INFO] [stdout] | [INFO] [stdout] 10 | const DX: &[isize] = &[-1, 1, 0, 0]; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DY` is never used [INFO] [stdout] --> src/solution/day21.rs:11:7 [INFO] [stdout] | [INFO] [stdout] 11 | const DY: &[isize] = &[0, 0, -1, 1]; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Grid` is never constructed [INFO] [stdout] --> src/solution/day21.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct Grid { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `calculate_saturated_state`, `num_reachable_with_num_steps`, `traverse_mini_extended_grid`, `extrapolate_2d`, and `extrapolate_1d` are never used [INFO] [stdout] --> src/solution/day21.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 21 | impl Grid { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 22 | fn new(g: Vec>) -> Grid { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | fn calculate_saturated_state(&mut self, start_pos: (isize, isize)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | fn num_reachable_with_num_steps( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | fn traverse_mini_extended_grid(&mut self, start_pos: (isize, isize)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 188 | fn extrapolate_2d(&self, start_pos: (isize, isize), max_num_steps: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 243 | fn extrapolate_1d(&self, start_pos: (isize, isize), max_num_steps: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day15` is never constructed [INFO] [stdout] --> src/solution/day15.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Day15; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Operation` is never used [INFO] [stdout] --> src/solution/day15.rs:8:6 [INFO] [stdout] | [INFO] [stdout] 8 | enum Operation<'a> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `calculate_hash` and `parse_operation` are never used [INFO] [stdout] --> src/solution/day15.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 13 | impl Day15 { [INFO] [stdout] | ---------- associated functions in this implementation [INFO] [stdout] 14 | fn calculate_hash(s: &str) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 19 | fn parse_operation(s: &str) -> Operation { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day7` is never constructed [INFO] [stdout] --> src/solution/day7.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Day7; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `HandType` is never used [INFO] [stdout] --> src/solution/day7.rs:10:6 [INFO] [stdout] | [INFO] [stdout] 10 | type HandType = u32; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FIVE_KIND` is never used [INFO] [stdout] --> src/solution/day7.rs:11:7 [INFO] [stdout] | [INFO] [stdout] 11 | const FIVE_KIND: HandType = 7; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FOUR_KIND` is never used [INFO] [stdout] --> src/solution/day7.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | const FOUR_KIND: HandType = 6; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FULL_HOUSE` is never used [INFO] [stdout] --> src/solution/day7.rs:13:7 [INFO] [stdout] | [INFO] [stdout] 13 | const FULL_HOUSE: u32 = 5; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `THREE_KIND` is never used [INFO] [stdout] --> src/solution/day7.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | const THREE_KIND: u32 = 4; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TWO_PAIR` is never used [INFO] [stdout] --> src/solution/day7.rs:15:7 [INFO] [stdout] | [INFO] [stdout] 15 | const TWO_PAIR: u32 = 3; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ONE_PAIR` is never used [INFO] [stdout] --> src/solution/day7.rs:16:7 [INFO] [stdout] | [INFO] [stdout] 16 | const ONE_PAIR: u32 = 2; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HIGH_CARD` is never used [INFO] [stdout] --> src/solution/day7.rs:17:7 [INFO] [stdout] | [INFO] [stdout] 17 | const HIGH_CARD: u32 = 1; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated functions are never used [INFO] [stdout] --> src/solution/day7.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 19 | impl Day7 { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 20 | fn is_five_kind(card_freq: &HashMap) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | fn is_four_kind(card_freq: &HashMap) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 26 | fn is_three_kind(card_freq: &HashMap) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | fn is_one_pair(card_freq: &HashMap) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | fn is_full_house(card_freq: &HashMap) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | fn is_two_pair(card_freq: &HashMap) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | fn calculate_card_freq(hand: &str) -> HashMap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | fn evaluate_hand(hand: &str) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | fn find_best_hand(hand_data: &str) -> HandType { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | fn parse_hand(hand_data: &str, j_as_joker: bool) -> (HandType, &str, u32) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 89 | fn compare_hand(lhs: &str, rhs: &str, card_order: &Vec) -> Ordering { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day3` is never constructed [INFO] [stdout] --> src/solution/day3.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Day3; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `check_range` and `calculate_gear_ratio` are never used [INFO] [stdout] --> src/solution/day3.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 10 | impl Day3 { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 11 | fn check_range( [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | fn calculate_gear_ratio( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day8` is never constructed [INFO] [stdout] --> src/solution/day8.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Day8; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `parse_edge`, `find_dist`, `gcd`, and `lcm` are never used [INFO] [stdout] --> src/solution/day8.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 10 | impl Day8 { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 11 | fn parse_edge(raw_edge_data: &str) -> (String, Vec) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | fn find_dist( [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | fn gcd(a: u64, b: u64) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | fn lcm(a: u64, b: u64) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day22` is never constructed [INFO] [stdout] --> src/solution/day22.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Day22; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Coordinate` is never constructed [INFO] [stdout] --> src/solution/day22.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | struct Coordinate { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Block` is never constructed [INFO] [stdout] --> src/solution/day22.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 17 | struct Block { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Space3D` is never constructed [INFO] [stdout] --> src/solution/day22.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 22 | struct Space3D { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/solution/day22.rs:30:8 [INFO] [stdout] | [INFO] [stdout] 29 | impl Block { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] 30 | fn new(raw_block: &str) -> Block { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/solution/day22.rs:44:8 [INFO] [stdout] | [INFO] [stdout] 43 | impl Coordinate { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] 44 | fn new(raw_coordinate: &str) -> Coordinate { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `add_block`, `simulate_fall`, `count_disintegratable_block`, `build_graph`, and `find_maximum_chain` are never used [INFO] [stdout] --> src/solution/day22.rs:59:8 [INFO] [stdout] | [INFO] [stdout] 58 | impl Space3D { [INFO] [stdout] | ------------ associated items in this implementation [INFO] [stdout] 59 | fn new(dim_size: usize) -> Space3D { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 67 | fn add_block(&mut self, block: &Block) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 79 | fn simulate_fall(&mut self, blocks: Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 104 | fn count_disintegratable_block(&mut self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 116 | fn build_graph(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 134 | fn find_maximum_chain(&mut self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day12` is never constructed [INFO] [stdout] --> src/solution/day12.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Day12; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `parse_line`, `validate_configuration`, `count_valid_arrangement_bruteforce`, and `count_valid_arrangement_optimized` are never used [INFO] [stdout] --> src/solution/day12.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 9 | impl Day12 { [INFO] [stdout] | ---------- associated functions in this implementation [INFO] [stdout] 10 | fn parse_line(line: &str, num_copies: usize) -> (String, Vec) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 30 | fn validate_configuration(config: &Vec, requirement: &Vec) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | fn count_valid_arrangement_bruteforce(parsed_line: (String, Vec)) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | fn count_valid_arrangement_optimized(parsed_line: (String, Vec)) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day14` is never constructed [INFO] [stdout] --> src/solution/day14.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Day14; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated functions are never used [INFO] [stdout] --> src/solution/day14.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 8 | impl Day14 { [INFO] [stdout] | ---------- associated functions in this implementation [INFO] [stdout] 9 | fn roll_north(grid: &mut Vec>) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 30 | fn roll_west(grid: &mut Vec>) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | fn roll_south(grid: &mut Vec>) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | fn roll_east(grid: &mut Vec>) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 96 | fn calculate_weight(grid: &Vec>) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | fn rotate_cycle(mut grid: Vec>) -> Vec> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 108 | fn is_same_grid(g1: &Vec>, g2: &Vec>) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day1` is never constructed [INFO] [stdout] --> src/solution/day1.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Day1; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day23` is never constructed [INFO] [stdout] --> src/solution/day23.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Day23; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Graph` is never constructed [INFO] [stdout] --> src/solution/day23.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | struct Graph { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `STATE` is never used [INFO] [stdout] --> src/solution/day23.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | const STATE: &[(isize, isize, char)] = &[(-1, 0, '^'), (0, 1, '>'), (0, -1, '<'), (1, 0, 'v')]; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_DEPTH_LIMIT` is never used [INFO] [stdout] --> src/solution/day23.rs:13:7 [INFO] [stdout] | [INFO] [stdout] 13 | const MAX_DEPTH_LIMIT: i32 = 7000; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `find_longest_path`, and `find_longest_path_optimized` are never used [INFO] [stdout] --> src/solution/day23.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 15 | impl Graph { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 16 | fn new(grid: Vec>) -> Graph { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | fn find_longest_path(&mut self, curr_pos: (isize, isize), curr_dist: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | fn find_longest_path_optimized( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day4` is never constructed [INFO] [stdout] --> src/solution/day4.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Day4; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `parse_card_data` is never used [INFO] [stdout] --> src/solution/day4.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 10 | impl Day4 { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 11 | fn parse_card_data(raw_card_data: &str) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day18` is never constructed [INFO] [stdout] --> src/solution/day18.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Day18; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `parse_line` is never used [INFO] [stdout] --> src/solution/day18.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 8 | impl Day18 { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] 9 | fn parse_line(line: &str) -> (char, u32, String) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day10` is never constructed [INFO] [stdout] --> src/solution/day10.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Day10; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Graph` is never constructed [INFO] [stdout] --> src/solution/day10.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | struct Graph<'a> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DX` is never used [INFO] [stdout] --> src/solution/day10.rs:18:7 [INFO] [stdout] | [INFO] [stdout] 18 | const DX: &[i32] = &[0, 1, 0, -1]; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DY` is never used [INFO] [stdout] --> src/solution/day10.rs:19:7 [INFO] [stdout] | [INFO] [stdout] 19 | const DY: &[i32] = &[-1, 0, 1, 0]; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `GridPos` is never used [INFO] [stdout] --> src/solution/day10.rs:21:6 [INFO] [stdout] | [INFO] [stdout] 21 | type GridPos = (usize, usize); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `GridPosTraits` is never used [INFO] [stdout] --> src/solution/day10.rs:23:7 [INFO] [stdout] | [INFO] [stdout] 23 | trait GridPosTraits { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `is_connected`, `add_edge`, `mark_loop`, `furthest_from`, and `calculate_loop_area` are never used [INFO] [stdout] --> src/solution/day10.rs:68:8 [INFO] [stdout] | [INFO] [stdout] 67 | impl<'a> Graph<'a> { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 68 | fn new(grid: &'a Vec>) -> Graph<'a> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | fn is_connected(&self, grid_pos: &GridPos, parent_pos: &GridPos) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 98 | fn add_edge(&mut self, from: &GridPos, to: &GridPos) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 104 | fn mark_loop(&mut self, start_pos: GridPos) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 116 | fn furthest_from(&self, start_pos: GridPos) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 131 | fn calculate_loop_area(&self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day13` is never constructed [INFO] [stdout] --> src/solution/day13.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Day13; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PatternMap` is never constructed [INFO] [stdout] --> src/solution/day13.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 8 | struct PatternMap { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `match_column`, `match_row`, and `summarize` are never used [INFO] [stdout] --> src/solution/day13.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 12 | impl PatternMap { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 13 | fn new(buffer: &Vec>) -> PatternMap { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 18 | fn match_column(&self, i: usize, j: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 21 | fn match_row(&self, i: usize, j: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | fn summarize( [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `read_pattern_list` is never used [INFO] [stdout] --> src/solution/day13.rs:81:8 [INFO] [stdout] | [INFO] [stdout] 80 | impl Day13 { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] 81 | fn read_pattern_list<'a>(lines: impl Iterator) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day2` is never constructed [INFO] [stdout] --> src/solution/day2.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Day2; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MatchData` is never constructed [INFO] [stdout] --> src/solution/day2.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | struct MatchData { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `parse_match_data` and `parse_game_data` are never used [INFO] [stdout] --> src/solution/day2.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 15 | impl Day2 { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 16 | fn parse_match_data(match_data: &str) -> MatchData { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 36 | fn parse_game_data(game_data: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day5` is never constructed [INFO] [stdout] --> src/solution/day5.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Day5; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `QueueElement` is never used [INFO] [stdout] --> src/solution/day5.rs:10:6 [INFO] [stdout] | [INFO] [stdout] 10 | enum QueueElement { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `parse_seed_data`, `parse_seed_data_p2`, and `parse_map` are never used [INFO] [stdout] --> src/solution/day5.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 15 | impl Day5 { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 16 | fn parse_seed_data(seed_data: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | fn parse_seed_data_p2(raw_seed_data: &Vec) -> Vec<(i64, i64)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | fn parse_map<'a>(lines: &mut impl Iterator) -> Vec<(i64, i64, i64)> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day20` is never constructed [INFO] [stdout] --> src/solution/day20.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Day20; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Broadcaster` is never constructed [INFO] [stdout] --> src/solution/day20.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | struct Broadcaster { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FlipFlop` is never constructed [INFO] [stdout] --> src/solution/day20.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | struct FlipFlop { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Conjunction` is never constructed [INFO] [stdout] --> src/solution/day20.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 19 | struct Conjunction { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ModuleComponent` is never used [INFO] [stdout] --> src/solution/day20.rs:24:6 [INFO] [stdout] | [INFO] [stdout] 24 | enum ModuleComponent { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Module` is never constructed [INFO] [stdout] --> src/solution/day20.rs:30:8 [INFO] [stdout] | [INFO] [stdout] 30 | struct Module { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `receive_input`, `current_output`, and `reset` are never used [INFO] [stdout] --> src/solution/day20.rs:36:8 [INFO] [stdout] | [INFO] [stdout] 35 | impl Module { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] 36 | fn receive_input(&mut self, module_from: &String, input: &PulseType) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | fn current_output(&mut self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | fn reset(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `PulseType` is never used [INFO] [stdout] --> src/solution/day20.rs:106:6 [INFO] [stdout] | [INFO] [stdout] 106 | enum PulseType { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Machine` is never constructed [INFO] [stdout] --> src/solution/day20.rs:111:8 [INFO] [stdout] | [INFO] [stdout] 111 | struct Machine { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/solution/day20.rs:117:8 [INFO] [stdout] | [INFO] [stdout] 116 | impl Machine { [INFO] [stdout] | ------------ associated items in this implementation [INFO] [stdout] 117 | fn new() -> Machine { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 123 | fn add_module(&mut self, module_name: String, module: Module) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 128 | fn build_connection(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 143 | fn has_module(&self, module_name: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 146 | fn push_button(&mut self) -> (u64, u64) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 179 | fn push_until_node_sends_signal(&mut self, module: &String, pulse: &PulseType) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 212 | fn reset(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `parse_module` is never used [INFO] [stdout] --> src/solution/day20.rs:220:8 [INFO] [stdout] | [INFO] [stdout] 219 | impl Day20 { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] 220 | fn parse_module(line: &str) -> (String, Module) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/solution/day15.rs:19:27 [INFO] [stdout] | [INFO] [stdout] 19 | fn parse_operation(s: &str) -> Operation { [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] 19 | fn parse_operation(s: &str) -> Operation<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/solution/day7.rs:68:30 [INFO] [stdout] | [INFO] [stdout] 68 | hand_data [INFO] [stdout] | ______________________________^ [INFO] [stdout] 69 | | .clone() [INFO] [stdout] | |________________________________^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 53.28s [INFO] running `Command { std: "docker" "inspect" "d5ea1a7a0bc606491bf4f4dea996a7e1003c2f26631d237a6939fd39e6e945a4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d5ea1a7a0bc606491bf4f4dea996a7e1003c2f26631d237a6939fd39e6e945a4", kill_on_drop: false }` [INFO] [stdout] d5ea1a7a0bc606491bf4f4dea996a7e1003c2f26631d237a6939fd39e6e945a4