[INFO] cloning repository https://github.com/baconberry/advent-of-code-rust [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/baconberry/advent-of-code-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbaconberry%2Fadvent-of-code-rust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbaconberry%2Fadvent-of-code-rust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 93fe6db76b99294bb1181b2c99e48c290504661b [INFO] checking baconberry/advent-of-code-rust against master#385fa9d845dd326c6bbfd58c22244215e431948a for absurd-question-mark-desugar [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbaconberry%2Fadvent-of-code-rust" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/baconberry/advent-of-code-rust on toolchain 385fa9d845dd326c6bbfd58c22244215e431948a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/baconberry/advent-of-code-rust [INFO] finished tweaking git repo https://github.com/baconberry/advent-of-code-rust [INFO] tweaked toml for git repo https://github.com/baconberry/advent-of-code-rust written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/baconberry/advent-of-code-rust 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" "+385fa9d845dd326c6bbfd58c22244215e431948a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 3e91983350d9018cb89875f646050fb5e8452b8cf30b892ee318c8c9aeecf927 [INFO] running `Command { std: "docker" "start" "-a" "3e91983350d9018cb89875f646050fb5e8452b8cf30b892ee318c8c9aeecf927", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "3e91983350d9018cb89875f646050fb5e8452b8cf30b892ee318c8c9aeecf927", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3e91983350d9018cb89875f646050fb5e8452b8cf30b892ee318c8c9aeecf927", kill_on_drop: false }` [INFO] [stdout] 3e91983350d9018cb89875f646050fb5e8452b8cf30b892ee318c8c9aeecf927 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 5edf3da469c0f0e853b93529468ace6349f90c78a47935fd3b1fd5e13ba6501e [INFO] running `Command { std: "docker" "start" "-a" "5edf3da469c0f0e853b93529468ace6349f90c78a47935fd3b1fd5e13ba6501e", kill_on_drop: false }` [INFO] [stderr] Compiling num-traits v0.2.18 [INFO] [stderr] Compiling num-bigint v0.4.4 [INFO] [stderr] Compiling num-rational v0.4.1 [INFO] [stderr] Checking memchr v2.7.1 [INFO] [stderr] Compiling anyhow v1.0.79 [INFO] [stderr] Checking either v1.10.0 [INFO] [stderr] Checking gcd v2.3.0 [INFO] [stderr] Checking rayon v1.8.1 [INFO] [stderr] Checking aho-corasick v1.1.2 [INFO] [stderr] Checking regex-automata v0.4.5 [INFO] [stderr] Checking num-integer v0.1.46 [INFO] [stderr] Checking num-complex v0.4.5 [INFO] [stderr] Checking num-iter v0.1.44 [INFO] [stderr] Checking regex v1.10.3 [INFO] [stderr] Checking num v0.4.1 [INFO] [stderr] Checking advent_of_code v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `bail` [INFO] [stdout] --> src/day_10_1.rs:3:14 [INFO] [stdout] | [INFO] [stdout] 3 | use anyhow::{bail, Result}; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `rayon` is imported redundantly [INFO] [stdout] --> src/day_5_2.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use rayon; [INFO] [stdout] | ^^^^^ the item `rayon` is already defined by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `rayon` is imported redundantly [INFO] [stdout] --> src/day_8_2.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use rayon; [INFO] [stdout] | ^^^^^ the item `rayon` is already defined by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `number` should have an upper camel case name [INFO] [stdout] --> src/day_9_1.rs:5:6 [INFO] [stdout] | [INFO] [stdout] 5 | type number = i64; [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `Number` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `number` should have an upper camel case name [INFO] [stdout] --> src/day_9_2.rs:4:6 [INFO] [stdout] | [INFO] [stdout] 4 | type number = i64; [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `Number` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bail` [INFO] [stdout] --> src/day_10_1.rs:3:14 [INFO] [stdout] | [INFO] [stdout] 3 | use anyhow::{bail, Result}; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `rayon` is imported redundantly [INFO] [stdout] --> src/day_5_2.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use rayon; [INFO] [stdout] | ^^^^^ the item `rayon` is already defined by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `rayon` is imported redundantly [INFO] [stdout] --> src/day_8_2.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use rayon; [INFO] [stdout] | ^^^^^ the item `rayon` is already defined by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `number` should have an upper camel case name [INFO] [stdout] --> src/day_9_1.rs:5:6 [INFO] [stdout] | [INFO] [stdout] 5 | type number = i64; [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `Number` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `number` should have an upper camel case name [INFO] [stdout] --> src/day_9_2.rs:4:6 [INFO] [stdout] | [INFO] [stdout] 4 | type number = i64; [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `Number` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `day_3_2::Symbol` is more private than the item `find_adjacent_parts` [INFO] [stdout] --> src/day_3_2.rs:70:1 [INFO] [stdout] | [INFO] [stdout] 70 | pub fn find_adjacent_parts(symbol: &Symbol, parts: &Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `find_adjacent_parts` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `day_3_2::Symbol` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/day_3_2.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | struct Symbol { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `day_3_2::Part` is more private than the item `find_adjacent_parts` [INFO] [stdout] --> src/day_3_2.rs:70:1 [INFO] [stdout] | [INFO] [stdout] 70 | pub fn find_adjacent_parts(symbol: &Symbol, parts: &Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `find_adjacent_parts` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `day_3_2::Part` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/day_3_2.rs:12:1 [INFO] [stdout] | [INFO] [stdout] 12 | struct Part { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_above`, `is_below`, `is_left`, and `is_right` are never used [INFO] [stdout] --> src/day_10_1.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 11 | impl Position { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 19 | fn is_above(&self, other: &Position) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | fn is_below(&self, other: &Position) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 25 | fn is_left(&self, other: &Position) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | fn is_right(&self, other: &Position) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RGB` is never constructed [INFO] [stdout] --> src/day_2_1.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct RGB(usize, usize, usize); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `red`, `green`, `blue`, and `is_greater` are never used [INFO] [stdout] --> src/day_2_1.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl RGB { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 14 | pub fn red(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 17 | pub fn green(&self) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 20 | pub fn blue(&self) -> usize { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | pub fn is_greater(&self, color: Color) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `score_lines` is never used [INFO] [stdout] --> src/day_2_1.rs:31:8 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn score_lines(lines: Vec) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `score` is never used [INFO] [stdout] --> src/day_2_1.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn score(limits: &RGB, line: String) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `to_color` is never used [INFO] [stdout] --> src/day_2_1.rs:66:8 [INFO] [stdout] | [INFO] [stdout] 66 | pub fn to_color(name: &str, num: usize) -> Color { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RGB` is never constructed [INFO] [stdout] --> src/day_2_2.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct RGB(usize, usize, usize); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `red`, `green`, `blue`, and `update` are never used [INFO] [stdout] --> src/day_2_2.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl RGB { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 15 | pub fn red(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 18 | pub fn green(&self) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 21 | pub fn blue(&self) -> usize { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | pub fn update(&mut self, color: Color) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `score_lines` is never used [INFO] [stdout] --> src/day_2_2.rs:32:8 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn score_lines(lines: Vec) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `score` is never used [INFO] [stdout] --> src/day_2_2.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn score(line: String) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `to_color` is never used [INFO] [stdout] --> src/day_2_2.rs:65:8 [INFO] [stdout] | [INFO] [stdout] 65 | pub fn to_color(name: &str, num: usize) -> Color { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Part` is never constructed [INFO] [stdout] --> src/day_3_1.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | struct Part { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Symbol` is never constructed [INFO] [stdout] --> src/day_3_1.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | struct Symbol { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Row` is never constructed [INFO] [stdout] --> src/day_3_1.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 23 | struct Row { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `overlaps_columns` and `is_between` are never used [INFO] [stdout] --> src/day_3_1.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 29 | impl Position { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] 30 | pub fn overlaps_columns(&self, other: &Position) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 36 | fn is_between(&self, n: i64) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_overlap_symbol` is never used [INFO] [stdout] --> src/day_3_1.rs:42:12 [INFO] [stdout] | [INFO] [stdout] 41 | impl Part { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] 42 | pub fn is_overlap_symbol(&self, symbol: &Symbol) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_3_1.rs:48:8 [INFO] [stdout] | [INFO] [stdout] 48 | pub fn process_lines(lines: Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_line` is never used [INFO] [stdout] --> src/day_3_1.rs:72:4 [INFO] [stdout] | [INFO] [stdout] 72 | fn parse_line(line: String, row: i64) -> (Vec, Vec) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_symbol` is never used [INFO] [stdout] --> src/day_3_1.rs:103:4 [INFO] [stdout] | [INFO] [stdout] 103 | fn is_symbol(c: char) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Part` is never constructed [INFO] [stdout] --> src/day_3_2.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | struct Part { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Symbol` is never constructed [INFO] [stdout] --> src/day_3_2.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | struct Symbol { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Row` is never constructed [INFO] [stdout] --> src/day_3_2.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 23 | struct Row { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `overlaps_columns` and `is_between` are never used [INFO] [stdout] --> src/day_3_2.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 29 | impl Position { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] 30 | pub fn overlaps_columns(&self, other: &Position) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 36 | fn is_between(&self, n: i64) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_overlap_symbol` is never used [INFO] [stdout] --> src/day_3_2.rs:42:12 [INFO] [stdout] | [INFO] [stdout] 41 | impl Part { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] 42 | pub fn is_overlap_symbol(&self, symbol: &Symbol) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_3_2.rs:48:8 [INFO] [stdout] | [INFO] [stdout] 48 | pub fn process_lines(lines: Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find_adjacent_parts` is never used [INFO] [stdout] --> src/day_3_2.rs:70:8 [INFO] [stdout] | [INFO] [stdout] 70 | pub fn find_adjacent_parts(symbol: &Symbol, parts: &Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_line` is never used [INFO] [stdout] --> src/day_3_2.rs:81:4 [INFO] [stdout] | [INFO] [stdout] 81 | fn parse_line(line: String, row: i64) -> (Vec, Vec) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_symbol` is never used [INFO] [stdout] --> src/day_3_2.rs:112:4 [INFO] [stdout] | [INFO] [stdout] 112 | fn is_symbol(c: char) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_4_2.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | pub fn process_lines(lines: Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_line` is never used [INFO] [stdout] --> src/day_4_2.rs:44:4 [INFO] [stdout] | [INFO] [stdout] 44 | fn parse_line(line: &str) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Mapping` is never constructed [INFO] [stdout] --> src/day_5_1.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | struct Mapping { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_5_1.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | pub fn process_lines(lines: Vec) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find` is never used [INFO] [stdout] --> src/day_5_1.rs:62:4 [INFO] [stdout] | [INFO] [stdout] 62 | fn find(mapping: &Vec, source: usize) -> usize { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_map` is never used [INFO] [stdout] --> src/day_5_1.rs:72:4 [INFO] [stdout] | [INFO] [stdout] 72 | fn parse_map(it: &mut std::slice::Iter) -> Result> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Mapping` is never constructed [INFO] [stdout] --> src/day_5_2.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | struct Mapping { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_5_2.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn process_lines(lines: Vec) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find` is never used [INFO] [stdout] --> src/day_5_2.rs:73:4 [INFO] [stdout] | [INFO] [stdout] 73 | fn find(mapping: &Vec, source: usize) -> usize { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_map` is never used [INFO] [stdout] --> src/day_5_2.rs:83:4 [INFO] [stdout] | [INFO] [stdout] 83 | fn parse_map(it: &mut std::slice::Iter) -> Result> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_6_1.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn process_lines(lines: Vec) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calculate_win_count` is never used [INFO] [stdout] --> src/day_6_1.rs:17:4 [INFO] [stdout] | [INFO] [stdout] 17 | fn calculate_win_count(time: usize, distance: usize) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calculate_distance` is never used [INFO] [stdout] --> src/day_6_1.rs:27:4 [INFO] [stdout] | [INFO] [stdout] 27 | fn calculate_distance(time: usize, pressed_time: usize) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_6_2.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn process_lines(lines: Vec) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calculate_win_count` is never used [INFO] [stdout] --> src/day_6_2.rs:17:4 [INFO] [stdout] | [INFO] [stdout] 17 | fn calculate_win_count(time: usize, distance: usize) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calculate_distance` is never used [INFO] [stdout] --> src/day_6_2.rs:27:4 [INFO] [stdout] | [INFO] [stdout] 27 | fn calculate_distance(time: usize, pressed_time: usize) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Hand` is never used [INFO] [stdout] --> src/day_7_1.rs:5:6 [INFO] [stdout] | [INFO] [stdout] 5 | enum Hand { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Bet` is never constructed [INFO] [stdout] --> src/day_7_1.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 16 | struct Bet { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Value` is never used [INFO] [stdout] --> src/day_7_1.rs:21:7 [INFO] [stdout] | [INFO] [stdout] 21 | trait Value { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `compare_hand_text` is never used [INFO] [stdout] --> src/day_7_1.rs:72:4 [INFO] [stdout] | [INFO] [stdout] 72 | fn compare_hand_text(a: &str, b: &str) -> Ordering { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `char_value` is never used [INFO] [stdout] --> src/day_7_1.rs:86:4 [INFO] [stdout] | [INFO] [stdout] 86 | fn char_value(c: char) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_7_1.rs:100:8 [INFO] [stdout] | [INFO] [stdout] 100 | pub fn process_lines(lines: Vec) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `line_to_bet` is never used [INFO] [stdout] --> src/day_7_1.rs:121:4 [INFO] [stdout] | [INFO] [stdout] 121 | fn line_to_bet(line: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `text_to_hand` is never used [INFO] [stdout] --> src/day_7_1.rs:133:4 [INFO] [stdout] | [INFO] [stdout] 133 | fn text_to_hand(text: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Hand` is never used [INFO] [stdout] --> src/day_7_2.rs:5:6 [INFO] [stdout] | [INFO] [stdout] 5 | enum Hand { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `augment` is never used [INFO] [stdout] --> src/day_7_2.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 15 | impl Hand { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] 16 | fn augment(&self, increase: usize) -> Result { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `HandValue` is never constructed [INFO] [stdout] --> src/day_7_2.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | struct HandValue { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/day_7_2.rs:44:8 [INFO] [stdout] | [INFO] [stdout] 43 | impl HandValue { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 44 | fn new(text: &str, hand: Hand) -> HandValue { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Bet` is never constructed [INFO] [stdout] --> src/day_7_2.rs:53:8 [INFO] [stdout] | [INFO] [stdout] 53 | struct Bet { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Value` is never used [INFO] [stdout] --> src/day_7_2.rs:58:7 [INFO] [stdout] | [INFO] [stdout] 58 | trait Value { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `compare_hand_text` is never used [INFO] [stdout] --> src/day_7_2.rs:103:4 [INFO] [stdout] | [INFO] [stdout] 103 | fn compare_hand_text(a: &str, b: &str) -> Ordering { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `char_value` is never used [INFO] [stdout] --> src/day_7_2.rs:118:4 [INFO] [stdout] | [INFO] [stdout] 118 | fn char_value(c: char) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_7_2.rs:132:8 [INFO] [stdout] | [INFO] [stdout] 132 | pub fn process_lines(lines: Vec) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `line_to_bet` is never used [INFO] [stdout] --> src/day_7_2.rs:153:4 [INFO] [stdout] | [INFO] [stdout] 153 | fn line_to_bet(line: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `count_js` is never used [INFO] [stdout] --> src/day_7_2.rs:172:4 [INFO] [stdout] | [INFO] [stdout] 172 | fn count_js(text: &str) -> usize { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `text_to_hand` is never used [INFO] [stdout] --> src/day_7_2.rs:176:4 [INFO] [stdout] | [INFO] [stdout] 176 | fn text_to_hand(s: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Node` is never constructed [INFO] [stdout] --> src/day_8_1.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | struct Node { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_tuple` is never used [INFO] [stdout] --> src/day_8_1.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 13 | impl Node { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 14 | fn from_tuple(t: (String, String, String)) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_8_1.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn process_lines(lines: Vec) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `navigate` is never used [INFO] [stdout] --> src/day_8_1.rs:47:4 [INFO] [stdout] | [INFO] [stdout] 47 | fn navigate(steps: &str, start: &Node, map: &HashMap) -> Result<(Node, usize)> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_line` is never used [INFO] [stdout] --> src/day_8_1.rs:66:4 [INFO] [stdout] | [INFO] [stdout] 66 | fn parse_line(line: &str) -> Result<(String, String, String)> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Node` is never constructed [INFO] [stdout] --> src/day_8_2.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | struct Node { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_tuple` is never used [INFO] [stdout] --> src/day_8_2.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 16 | impl Node { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 17 | fn from_tuple(t: (String, String, String)) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_8_2.rs:26:8 [INFO] [stdout] | [INFO] [stdout] 26 | pub fn process_lines(lines: Vec) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `navigate_one` is never used [INFO] [stdout] --> src/day_8_2.rs:62:4 [INFO] [stdout] | [INFO] [stdout] 62 | fn navigate_one(steps: &str, start: &Node, map: &HashMap) -> Result<(Node, usize)> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_line` is never used [INFO] [stdout] --> src/day_8_2.rs:84:4 [INFO] [stdout] | [INFO] [stdout] 84 | fn parse_line(line: &str) -> Result<(String, String, String)> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `number` is never used [INFO] [stdout] --> src/day_9_1.rs:5:6 [INFO] [stdout] | [INFO] [stdout] 5 | type number = i64; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Vuz` is never used [INFO] [stdout] --> src/day_9_1.rs:6:6 [INFO] [stdout] | [INFO] [stdout] 6 | type Vuz = Vec; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_9_1.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 8 | pub fn process_lines(lines: Vec) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_line` is never used [INFO] [stdout] --> src/day_9_1.rs:22:4 [INFO] [stdout] | [INFO] [stdout] 22 | fn process_line(line: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_nums` is never used [INFO] [stdout] --> src/day_9_1.rs:28:4 [INFO] [stdout] | [INFO] [stdout] 28 | fn process_nums(nums: &Vuz) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `diff_to_augment` is never used [INFO] [stdout] --> src/day_9_1.rs:47:4 [INFO] [stdout] | [INFO] [stdout] 47 | fn diff_to_augment(val: number, difference: number) -> number { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `diff` is never used [INFO] [stdout] --> src/day_9_1.rs:51:4 [INFO] [stdout] | [INFO] [stdout] 51 | fn diff(a: number, b: number) -> number { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `number` is never used [INFO] [stdout] --> src/day_9_2.rs:4:6 [INFO] [stdout] | [INFO] [stdout] 4 | type number = i64; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Vuz` is never used [INFO] [stdout] --> src/day_9_2.rs:5:6 [INFO] [stdout] | [INFO] [stdout] 5 | type Vuz = Vec; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_9_2.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn process_lines(lines: Vec) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_line` is never used [INFO] [stdout] --> src/day_9_2.rs:21:4 [INFO] [stdout] | [INFO] [stdout] 21 | fn process_line(line: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_nums` is never used [INFO] [stdout] --> src/day_9_2.rs:27:4 [INFO] [stdout] | [INFO] [stdout] 27 | fn process_nums(nums: &Vuz) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `diff_to_augment` is never used [INFO] [stdout] --> src/day_9_2.rs:46:4 [INFO] [stdout] | [INFO] [stdout] 46 | fn diff_to_augment(val: number, difference: number) -> number { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `diff` is never used [INFO] [stdout] --> src/day_9_2.rs:50:4 [INFO] [stdout] | [INFO] [stdout] 50 | fn diff(a: number, b: number) -> number { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_line_numbers` is never used [INFO] [stdout] --> src/re_utils.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn parse_line_numbers(line: &str) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_line_numbers_i64` is never used [INFO] [stdout] --> src/re_utils.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn parse_line_numbers_i64(line: &str) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_3` is never used [INFO] [stdout] --> src/re_utils.rs:24:8 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn parse_3(line: &str) -> Result<(usize, usize, usize)> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main` is never used [INFO] [stdout] --> src/trebuchet.rs:1:4 [INFO] [stdout] | [INFO] [stdout] 1 | fn main() { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_line` is never used [INFO] [stdout] --> src/trebuchet.rs:12:4 [INFO] [stdout] | [INFO] [stdout] 12 | fn parse_line(line: String) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_lines` is never used [INFO] [stdout] --> src/trebuchet_2.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn parse_lines(lines: Vec) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_line` is never used [INFO] [stdout] --> src/trebuchet_2.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | pub fn parse_line(line: String) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `string_to_lines` is never used [INFO] [stdout] --> src/utils.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | pub fn string_to_lines(input: String) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 103 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `day_3_2::Symbol` is more private than the item `find_adjacent_parts` [INFO] [stdout] --> src/day_3_2.rs:70:1 [INFO] [stdout] | [INFO] [stdout] 70 | pub fn find_adjacent_parts(symbol: &Symbol, parts: &Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `find_adjacent_parts` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `day_3_2::Symbol` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/day_3_2.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | struct Symbol { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `day_3_2::Part` is more private than the item `find_adjacent_parts` [INFO] [stdout] --> src/day_3_2.rs:70:1 [INFO] [stdout] | [INFO] [stdout] 70 | pub fn find_adjacent_parts(symbol: &Symbol, parts: &Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `find_adjacent_parts` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `day_3_2::Part` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/day_3_2.rs:12:1 [INFO] [stdout] | [INFO] [stdout] 12 | struct Part { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_above`, `is_below`, `is_left`, and `is_right` are never used [INFO] [stdout] --> src/day_10_1.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 11 | impl Position { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 19 | fn is_above(&self, other: &Position) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | fn is_below(&self, other: &Position) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 25 | fn is_left(&self, other: &Position) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | fn is_right(&self, other: &Position) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RGB` is never constructed [INFO] [stdout] --> src/day_2_1.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct RGB(usize, usize, usize); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `red`, `green`, `blue`, and `is_greater` are never used [INFO] [stdout] --> src/day_2_1.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl RGB { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 14 | pub fn red(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 17 | pub fn green(&self) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 20 | pub fn blue(&self) -> usize { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | pub fn is_greater(&self, color: Color) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `score_lines` is never used [INFO] [stdout] --> src/day_2_1.rs:31:8 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn score_lines(lines: Vec) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `score` is never used [INFO] [stdout] --> src/day_2_1.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn score(limits: &RGB, line: String) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `to_color` is never used [INFO] [stdout] --> src/day_2_1.rs:66:8 [INFO] [stdout] | [INFO] [stdout] 66 | pub fn to_color(name: &str, num: usize) -> Color { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RGB` is never constructed [INFO] [stdout] --> src/day_2_2.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct RGB(usize, usize, usize); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `red`, `green`, `blue`, and `update` are never used [INFO] [stdout] --> src/day_2_2.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl RGB { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 15 | pub fn red(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 18 | pub fn green(&self) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 21 | pub fn blue(&self) -> usize { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | pub fn update(&mut self, color: Color) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `score_lines` is never used [INFO] [stdout] --> src/day_2_2.rs:32:8 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn score_lines(lines: Vec) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `score` is never used [INFO] [stdout] --> src/day_2_2.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn score(line: String) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `to_color` is never used [INFO] [stdout] --> src/day_2_2.rs:65:8 [INFO] [stdout] | [INFO] [stdout] 65 | pub fn to_color(name: &str, num: usize) -> Color { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Part` is never constructed [INFO] [stdout] --> src/day_3_1.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | struct Part { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Symbol` is never constructed [INFO] [stdout] --> src/day_3_1.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | struct Symbol { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Row` is never constructed [INFO] [stdout] --> src/day_3_1.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 23 | struct Row { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `overlaps_columns` and `is_between` are never used [INFO] [stdout] --> src/day_3_1.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 29 | impl Position { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] 30 | pub fn overlaps_columns(&self, other: &Position) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 36 | fn is_between(&self, n: i64) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_overlap_symbol` is never used [INFO] [stdout] --> src/day_3_1.rs:42:12 [INFO] [stdout] | [INFO] [stdout] 41 | impl Part { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] 42 | pub fn is_overlap_symbol(&self, symbol: &Symbol) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_3_1.rs:48:8 [INFO] [stdout] | [INFO] [stdout] 48 | pub fn process_lines(lines: Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_line` is never used [INFO] [stdout] --> src/day_3_1.rs:72:4 [INFO] [stdout] | [INFO] [stdout] 72 | fn parse_line(line: String, row: i64) -> (Vec, Vec) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_symbol` is never used [INFO] [stdout] --> src/day_3_1.rs:103:4 [INFO] [stdout] | [INFO] [stdout] 103 | fn is_symbol(c: char) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Part` is never constructed [INFO] [stdout] --> src/day_3_2.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | struct Part { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Symbol` is never constructed [INFO] [stdout] --> src/day_3_2.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | struct Symbol { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Row` is never constructed [INFO] [stdout] --> src/day_3_2.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 23 | struct Row { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `overlaps_columns` and `is_between` are never used [INFO] [stdout] --> src/day_3_2.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 29 | impl Position { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] 30 | pub fn overlaps_columns(&self, other: &Position) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 36 | fn is_between(&self, n: i64) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_overlap_symbol` is never used [INFO] [stdout] --> src/day_3_2.rs:42:12 [INFO] [stdout] | [INFO] [stdout] 41 | impl Part { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] 42 | pub fn is_overlap_symbol(&self, symbol: &Symbol) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_3_2.rs:48:8 [INFO] [stdout] | [INFO] [stdout] 48 | pub fn process_lines(lines: Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find_adjacent_parts` is never used [INFO] [stdout] --> src/day_3_2.rs:70:8 [INFO] [stdout] | [INFO] [stdout] 70 | pub fn find_adjacent_parts(symbol: &Symbol, parts: &Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_line` is never used [INFO] [stdout] --> src/day_3_2.rs:81:4 [INFO] [stdout] | [INFO] [stdout] 81 | fn parse_line(line: String, row: i64) -> (Vec, Vec) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_symbol` is never used [INFO] [stdout] --> src/day_3_2.rs:112:4 [INFO] [stdout] | [INFO] [stdout] 112 | fn is_symbol(c: char) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_4_2.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | pub fn process_lines(lines: Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_line` is never used [INFO] [stdout] --> src/day_4_2.rs:44:4 [INFO] [stdout] | [INFO] [stdout] 44 | fn parse_line(line: &str) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main` is never used [INFO] [stdout] --> src/trebuchet.rs:1:4 [INFO] [stdout] | [INFO] [stdout] 1 | fn main() { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_line` is never used [INFO] [stdout] --> src/trebuchet.rs:12:4 [INFO] [stdout] | [INFO] [stdout] 12 | fn parse_line(line: String) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_lines` is never used [INFO] [stdout] --> src/trebuchet_2.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn parse_lines(lines: Vec) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_line` is never used [INFO] [stdout] --> src/trebuchet_2.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | pub fn parse_line(line: String) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 41 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.37s [INFO] running `Command { std: "docker" "inspect" "5edf3da469c0f0e853b93529468ace6349f90c78a47935fd3b1fd5e13ba6501e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5edf3da469c0f0e853b93529468ace6349f90c78a47935fd3b1fd5e13ba6501e", kill_on_drop: false }` [INFO] [stdout] 5edf3da469c0f0e853b93529468ace6349f90c78a47935fd3b1fd5e13ba6501e [INFO] checking baconberry/advent-of-code-rust against try#645bb72776a6a56a1a8f52631a44bd082b2ba509 for absurd-question-mark-desugar [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbaconberry%2Fadvent-of-code-rust" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/baconberry/advent-of-code-rust on toolchain 645bb72776a6a56a1a8f52631a44bd082b2ba509 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+645bb72776a6a56a1a8f52631a44bd082b2ba509" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/baconberry/advent-of-code-rust [INFO] finished tweaking git repo https://github.com/baconberry/advent-of-code-rust [INFO] tweaked toml for git repo https://github.com/baconberry/advent-of-code-rust written to /workspace/builds/worker-3-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/baconberry/advent-of-code-rust 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" "+645bb72776a6a56a1a8f52631a44bd082b2ba509" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+645bb72776a6a56a1a8f52631a44bd082b2ba509" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 946b5c3e271a6f1622e24eef01b3c6a43d86e3deef9758b2bb34e87cfd54b5e5 [INFO] running `Command { std: "docker" "start" "-a" "946b5c3e271a6f1622e24eef01b3c6a43d86e3deef9758b2bb34e87cfd54b5e5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "946b5c3e271a6f1622e24eef01b3c6a43d86e3deef9758b2bb34e87cfd54b5e5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "946b5c3e271a6f1622e24eef01b3c6a43d86e3deef9758b2bb34e87cfd54b5e5", kill_on_drop: false }` [INFO] [stdout] 946b5c3e271a6f1622e24eef01b3c6a43d86e3deef9758b2bb34e87cfd54b5e5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+645bb72776a6a56a1a8f52631a44bd082b2ba509" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4f6d54b78d4211dcf1839af1524866b017d71360960e8fbb8cca4e7829055b46 [INFO] running `Command { std: "docker" "start" "-a" "4f6d54b78d4211dcf1839af1524866b017d71360960e8fbb8cca4e7829055b46", kill_on_drop: false }` [INFO] [stderr] Compiling num-traits v0.2.18 [INFO] [stderr] Compiling num-bigint v0.4.4 [INFO] [stderr] Compiling num-rational v0.4.1 [INFO] [stderr] Checking memchr v2.7.1 [INFO] [stderr] Compiling anyhow v1.0.79 [INFO] [stderr] Checking either v1.10.0 [INFO] [stderr] Checking gcd v2.3.0 [INFO] [stderr] Checking rayon v1.8.1 [INFO] [stderr] Checking aho-corasick v1.1.2 [INFO] [stderr] Checking num-integer v0.1.46 [INFO] [stderr] Checking num-complex v0.4.5 [INFO] [stderr] Checking regex-automata v0.4.5 [INFO] [stderr] Checking num-iter v0.1.44 [INFO] [stderr] Checking num v0.4.1 [INFO] [stderr] Checking regex v1.10.3 [INFO] [stderr] Checking advent_of_code v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `bail` [INFO] [stdout] --> src/day_10_1.rs:3:14 [INFO] [stdout] | [INFO] [stdout] 3 | use anyhow::{bail, Result}; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `rayon` is imported redundantly [INFO] [stdout] --> src/day_5_2.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use rayon; [INFO] [stdout] | ^^^^^ the item `rayon` is already defined by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `rayon` is imported redundantly [INFO] [stdout] --> src/day_8_2.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use rayon; [INFO] [stdout] | ^^^^^ the item `rayon` is already defined by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `number` should have an upper camel case name [INFO] [stdout] --> src/day_9_1.rs:5:6 [INFO] [stdout] | [INFO] [stdout] 5 | type number = i64; [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `Number` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `number` should have an upper camel case name [INFO] [stdout] --> src/day_9_2.rs:4:6 [INFO] [stdout] | [INFO] [stdout] 4 | type number = i64; [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `Number` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bail` [INFO] [stdout] --> src/day_10_1.rs:3:14 [INFO] [stdout] | [INFO] [stdout] 3 | use anyhow::{bail, Result}; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `rayon` is imported redundantly [INFO] [stdout] --> src/day_5_2.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use rayon; [INFO] [stdout] | ^^^^^ the item `rayon` is already defined by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `rayon` is imported redundantly [INFO] [stdout] --> src/day_8_2.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use rayon; [INFO] [stdout] | ^^^^^ the item `rayon` is already defined by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `number` should have an upper camel case name [INFO] [stdout] --> src/day_9_1.rs:5:6 [INFO] [stdout] | [INFO] [stdout] 5 | type number = i64; [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `Number` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `number` should have an upper camel case name [INFO] [stdout] --> src/day_9_2.rs:4:6 [INFO] [stdout] | [INFO] [stdout] 4 | type number = i64; [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `Number` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `day_3_2::Symbol` is more private than the item `find_adjacent_parts` [INFO] [stdout] --> src/day_3_2.rs:70:1 [INFO] [stdout] | [INFO] [stdout] 70 | pub fn find_adjacent_parts(symbol: &Symbol, parts: &Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `find_adjacent_parts` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `day_3_2::Symbol` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/day_3_2.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | struct Symbol { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `day_3_2::Part` is more private than the item `find_adjacent_parts` [INFO] [stdout] --> src/day_3_2.rs:70:1 [INFO] [stdout] | [INFO] [stdout] 70 | pub fn find_adjacent_parts(symbol: &Symbol, parts: &Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `find_adjacent_parts` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `day_3_2::Part` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/day_3_2.rs:12:1 [INFO] [stdout] | [INFO] [stdout] 12 | struct Part { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_above`, `is_below`, `is_left`, and `is_right` are never used [INFO] [stdout] --> src/day_10_1.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 11 | impl Position { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 19 | fn is_above(&self, other: &Position) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | fn is_below(&self, other: &Position) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 25 | fn is_left(&self, other: &Position) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | fn is_right(&self, other: &Position) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RGB` is never constructed [INFO] [stdout] --> src/day_2_1.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct RGB(usize, usize, usize); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `red`, `green`, `blue`, and `is_greater` are never used [INFO] [stdout] --> src/day_2_1.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl RGB { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 14 | pub fn red(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 17 | pub fn green(&self) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 20 | pub fn blue(&self) -> usize { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | pub fn is_greater(&self, color: Color) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `score_lines` is never used [INFO] [stdout] --> src/day_2_1.rs:31:8 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn score_lines(lines: Vec) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `score` is never used [INFO] [stdout] --> src/day_2_1.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn score(limits: &RGB, line: String) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `to_color` is never used [INFO] [stdout] --> src/day_2_1.rs:66:8 [INFO] [stdout] | [INFO] [stdout] 66 | pub fn to_color(name: &str, num: usize) -> Color { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RGB` is never constructed [INFO] [stdout] --> src/day_2_2.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct RGB(usize, usize, usize); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `red`, `green`, `blue`, and `update` are never used [INFO] [stdout] --> src/day_2_2.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl RGB { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 15 | pub fn red(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 18 | pub fn green(&self) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 21 | pub fn blue(&self) -> usize { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | pub fn update(&mut self, color: Color) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `score_lines` is never used [INFO] [stdout] --> src/day_2_2.rs:32:8 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn score_lines(lines: Vec) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `score` is never used [INFO] [stdout] --> src/day_2_2.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn score(line: String) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `to_color` is never used [INFO] [stdout] --> src/day_2_2.rs:65:8 [INFO] [stdout] | [INFO] [stdout] 65 | pub fn to_color(name: &str, num: usize) -> Color { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Part` is never constructed [INFO] [stdout] --> src/day_3_1.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | struct Part { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Symbol` is never constructed [INFO] [stdout] --> src/day_3_1.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | struct Symbol { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Row` is never constructed [INFO] [stdout] --> src/day_3_1.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 23 | struct Row { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `overlaps_columns` and `is_between` are never used [INFO] [stdout] --> src/day_3_1.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 29 | impl Position { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] 30 | pub fn overlaps_columns(&self, other: &Position) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 36 | fn is_between(&self, n: i64) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_overlap_symbol` is never used [INFO] [stdout] --> src/day_3_1.rs:42:12 [INFO] [stdout] | [INFO] [stdout] 41 | impl Part { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] 42 | pub fn is_overlap_symbol(&self, symbol: &Symbol) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_3_1.rs:48:8 [INFO] [stdout] | [INFO] [stdout] 48 | pub fn process_lines(lines: Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_line` is never used [INFO] [stdout] --> src/day_3_1.rs:72:4 [INFO] [stdout] | [INFO] [stdout] 72 | fn parse_line(line: String, row: i64) -> (Vec, Vec) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_symbol` is never used [INFO] [stdout] --> src/day_3_1.rs:103:4 [INFO] [stdout] | [INFO] [stdout] 103 | fn is_symbol(c: char) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Part` is never constructed [INFO] [stdout] --> src/day_3_2.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | struct Part { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Symbol` is never constructed [INFO] [stdout] --> src/day_3_2.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | struct Symbol { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Row` is never constructed [INFO] [stdout] --> src/day_3_2.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 23 | struct Row { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `overlaps_columns` and `is_between` are never used [INFO] [stdout] --> src/day_3_2.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 29 | impl Position { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] 30 | pub fn overlaps_columns(&self, other: &Position) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 36 | fn is_between(&self, n: i64) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_overlap_symbol` is never used [INFO] [stdout] --> src/day_3_2.rs:42:12 [INFO] [stdout] | [INFO] [stdout] 41 | impl Part { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] 42 | pub fn is_overlap_symbol(&self, symbol: &Symbol) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_3_2.rs:48:8 [INFO] [stdout] | [INFO] [stdout] 48 | pub fn process_lines(lines: Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find_adjacent_parts` is never used [INFO] [stdout] --> src/day_3_2.rs:70:8 [INFO] [stdout] | [INFO] [stdout] 70 | pub fn find_adjacent_parts(symbol: &Symbol, parts: &Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_line` is never used [INFO] [stdout] --> src/day_3_2.rs:81:4 [INFO] [stdout] | [INFO] [stdout] 81 | fn parse_line(line: String, row: i64) -> (Vec, Vec) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_symbol` is never used [INFO] [stdout] --> src/day_3_2.rs:112:4 [INFO] [stdout] | [INFO] [stdout] 112 | fn is_symbol(c: char) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_4_2.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | pub fn process_lines(lines: Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_line` is never used [INFO] [stdout] --> src/day_4_2.rs:44:4 [INFO] [stdout] | [INFO] [stdout] 44 | fn parse_line(line: &str) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Mapping` is never constructed [INFO] [stdout] --> src/day_5_1.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | struct Mapping { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_5_1.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | pub fn process_lines(lines: Vec) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find` is never used [INFO] [stdout] --> src/day_5_1.rs:62:4 [INFO] [stdout] | [INFO] [stdout] 62 | fn find(mapping: &Vec, source: usize) -> usize { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_map` is never used [INFO] [stdout] --> src/day_5_1.rs:72:4 [INFO] [stdout] | [INFO] [stdout] 72 | fn parse_map(it: &mut std::slice::Iter) -> Result> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Mapping` is never constructed [INFO] [stdout] --> src/day_5_2.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | struct Mapping { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_5_2.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn process_lines(lines: Vec) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find` is never used [INFO] [stdout] --> src/day_5_2.rs:73:4 [INFO] [stdout] | [INFO] [stdout] 73 | fn find(mapping: &Vec, source: usize) -> usize { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_map` is never used [INFO] [stdout] --> src/day_5_2.rs:83:4 [INFO] [stdout] | [INFO] [stdout] 83 | fn parse_map(it: &mut std::slice::Iter) -> Result> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_6_1.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn process_lines(lines: Vec) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calculate_win_count` is never used [INFO] [stdout] --> src/day_6_1.rs:17:4 [INFO] [stdout] | [INFO] [stdout] 17 | fn calculate_win_count(time: usize, distance: usize) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calculate_distance` is never used [INFO] [stdout] --> src/day_6_1.rs:27:4 [INFO] [stdout] | [INFO] [stdout] 27 | fn calculate_distance(time: usize, pressed_time: usize) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_6_2.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn process_lines(lines: Vec) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calculate_win_count` is never used [INFO] [stdout] --> src/day_6_2.rs:17:4 [INFO] [stdout] | [INFO] [stdout] 17 | fn calculate_win_count(time: usize, distance: usize) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calculate_distance` is never used [INFO] [stdout] --> src/day_6_2.rs:27:4 [INFO] [stdout] | [INFO] [stdout] 27 | fn calculate_distance(time: usize, pressed_time: usize) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Hand` is never used [INFO] [stdout] --> src/day_7_1.rs:5:6 [INFO] [stdout] | [INFO] [stdout] 5 | enum Hand { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Bet` is never constructed [INFO] [stdout] --> src/day_7_1.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 16 | struct Bet { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Value` is never used [INFO] [stdout] --> src/day_7_1.rs:21:7 [INFO] [stdout] | [INFO] [stdout] 21 | trait Value { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `compare_hand_text` is never used [INFO] [stdout] --> src/day_7_1.rs:72:4 [INFO] [stdout] | [INFO] [stdout] 72 | fn compare_hand_text(a: &str, b: &str) -> Ordering { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `char_value` is never used [INFO] [stdout] --> src/day_7_1.rs:86:4 [INFO] [stdout] | [INFO] [stdout] 86 | fn char_value(c: char) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_7_1.rs:100:8 [INFO] [stdout] | [INFO] [stdout] 100 | pub fn process_lines(lines: Vec) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `line_to_bet` is never used [INFO] [stdout] --> src/day_7_1.rs:121:4 [INFO] [stdout] | [INFO] [stdout] 121 | fn line_to_bet(line: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `text_to_hand` is never used [INFO] [stdout] --> src/day_7_1.rs:133:4 [INFO] [stdout] | [INFO] [stdout] 133 | fn text_to_hand(text: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Hand` is never used [INFO] [stdout] --> src/day_7_2.rs:5:6 [INFO] [stdout] | [INFO] [stdout] 5 | enum Hand { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `augment` is never used [INFO] [stdout] --> src/day_7_2.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 15 | impl Hand { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] 16 | fn augment(&self, increase: usize) -> Result { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `HandValue` is never constructed [INFO] [stdout] --> src/day_7_2.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | struct HandValue { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/day_7_2.rs:44:8 [INFO] [stdout] | [INFO] [stdout] 43 | impl HandValue { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 44 | fn new(text: &str, hand: Hand) -> HandValue { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Bet` is never constructed [INFO] [stdout] --> src/day_7_2.rs:53:8 [INFO] [stdout] | [INFO] [stdout] 53 | struct Bet { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Value` is never used [INFO] [stdout] --> src/day_7_2.rs:58:7 [INFO] [stdout] | [INFO] [stdout] 58 | trait Value { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `compare_hand_text` is never used [INFO] [stdout] --> src/day_7_2.rs:103:4 [INFO] [stdout] | [INFO] [stdout] 103 | fn compare_hand_text(a: &str, b: &str) -> Ordering { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `char_value` is never used [INFO] [stdout] --> src/day_7_2.rs:118:4 [INFO] [stdout] | [INFO] [stdout] 118 | fn char_value(c: char) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_7_2.rs:132:8 [INFO] [stdout] | [INFO] [stdout] 132 | pub fn process_lines(lines: Vec) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `line_to_bet` is never used [INFO] [stdout] --> src/day_7_2.rs:153:4 [INFO] [stdout] | [INFO] [stdout] 153 | fn line_to_bet(line: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `count_js` is never used [INFO] [stdout] --> src/day_7_2.rs:172:4 [INFO] [stdout] | [INFO] [stdout] 172 | fn count_js(text: &str) -> usize { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `text_to_hand` is never used [INFO] [stdout] --> src/day_7_2.rs:176:4 [INFO] [stdout] | [INFO] [stdout] 176 | fn text_to_hand(s: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Node` is never constructed [INFO] [stdout] --> src/day_8_1.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | struct Node { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_tuple` is never used [INFO] [stdout] --> src/day_8_1.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 13 | impl Node { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 14 | fn from_tuple(t: (String, String, String)) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_8_1.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn process_lines(lines: Vec) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `navigate` is never used [INFO] [stdout] --> src/day_8_1.rs:47:4 [INFO] [stdout] | [INFO] [stdout] 47 | fn navigate(steps: &str, start: &Node, map: &HashMap) -> Result<(Node, usize)> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_line` is never used [INFO] [stdout] --> src/day_8_1.rs:66:4 [INFO] [stdout] | [INFO] [stdout] 66 | fn parse_line(line: &str) -> Result<(String, String, String)> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Node` is never constructed [INFO] [stdout] --> src/day_8_2.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | struct Node { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_tuple` is never used [INFO] [stdout] --> src/day_8_2.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 16 | impl Node { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 17 | fn from_tuple(t: (String, String, String)) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_8_2.rs:26:8 [INFO] [stdout] | [INFO] [stdout] 26 | pub fn process_lines(lines: Vec) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `navigate_one` is never used [INFO] [stdout] --> src/day_8_2.rs:62:4 [INFO] [stdout] | [INFO] [stdout] 62 | fn navigate_one(steps: &str, start: &Node, map: &HashMap) -> Result<(Node, usize)> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_line` is never used [INFO] [stdout] --> src/day_8_2.rs:84:4 [INFO] [stdout] | [INFO] [stdout] 84 | fn parse_line(line: &str) -> Result<(String, String, String)> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `number` is never used [INFO] [stdout] --> src/day_9_1.rs:5:6 [INFO] [stdout] | [INFO] [stdout] 5 | type number = i64; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Vuz` is never used [INFO] [stdout] --> src/day_9_1.rs:6:6 [INFO] [stdout] | [INFO] [stdout] 6 | type Vuz = Vec; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_9_1.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 8 | pub fn process_lines(lines: Vec) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_line` is never used [INFO] [stdout] --> src/day_9_1.rs:22:4 [INFO] [stdout] | [INFO] [stdout] 22 | fn process_line(line: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_nums` is never used [INFO] [stdout] --> src/day_9_1.rs:28:4 [INFO] [stdout] | [INFO] [stdout] 28 | fn process_nums(nums: &Vuz) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `diff_to_augment` is never used [INFO] [stdout] --> src/day_9_1.rs:47:4 [INFO] [stdout] | [INFO] [stdout] 47 | fn diff_to_augment(val: number, difference: number) -> number { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `diff` is never used [INFO] [stdout] --> src/day_9_1.rs:51:4 [INFO] [stdout] | [INFO] [stdout] 51 | fn diff(a: number, b: number) -> number { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `number` is never used [INFO] [stdout] --> src/day_9_2.rs:4:6 [INFO] [stdout] | [INFO] [stdout] 4 | type number = i64; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Vuz` is never used [INFO] [stdout] --> src/day_9_2.rs:5:6 [INFO] [stdout] | [INFO] [stdout] 5 | type Vuz = Vec; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_9_2.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn process_lines(lines: Vec) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_line` is never used [INFO] [stdout] --> src/day_9_2.rs:21:4 [INFO] [stdout] | [INFO] [stdout] 21 | fn process_line(line: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_nums` is never used [INFO] [stdout] --> src/day_9_2.rs:27:4 [INFO] [stdout] | [INFO] [stdout] 27 | fn process_nums(nums: &Vuz) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `diff_to_augment` is never used [INFO] [stdout] --> src/day_9_2.rs:46:4 [INFO] [stdout] | [INFO] [stdout] 46 | fn diff_to_augment(val: number, difference: number) -> number { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `diff` is never used [INFO] [stdout] --> src/day_9_2.rs:50:4 [INFO] [stdout] | [INFO] [stdout] 50 | fn diff(a: number, b: number) -> number { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_line_numbers` is never used [INFO] [stdout] --> src/re_utils.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn parse_line_numbers(line: &str) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_line_numbers_i64` is never used [INFO] [stdout] --> src/re_utils.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn parse_line_numbers_i64(line: &str) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_3` is never used [INFO] [stdout] --> src/re_utils.rs:24:8 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn parse_3(line: &str) -> Result<(usize, usize, usize)> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main` is never used [INFO] [stdout] --> src/trebuchet.rs:1:4 [INFO] [stdout] | [INFO] [stdout] 1 | fn main() { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_line` is never used [INFO] [stdout] --> src/trebuchet.rs:12:4 [INFO] [stdout] | [INFO] [stdout] 12 | fn parse_line(line: String) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_lines` is never used [INFO] [stdout] --> src/trebuchet_2.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn parse_lines(lines: Vec) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_line` is never used [INFO] [stdout] --> src/trebuchet_2.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | pub fn parse_line(line: String) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `string_to_lines` is never used [INFO] [stdout] --> src/utils.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | pub fn string_to_lines(input: String) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 103 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `day_3_2::Symbol` is more private than the item `find_adjacent_parts` [INFO] [stdout] --> src/day_3_2.rs:70:1 [INFO] [stdout] | [INFO] [stdout] 70 | pub fn find_adjacent_parts(symbol: &Symbol, parts: &Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `find_adjacent_parts` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `day_3_2::Symbol` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/day_3_2.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | struct Symbol { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `day_3_2::Part` is more private than the item `find_adjacent_parts` [INFO] [stdout] --> src/day_3_2.rs:70:1 [INFO] [stdout] | [INFO] [stdout] 70 | pub fn find_adjacent_parts(symbol: &Symbol, parts: &Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `find_adjacent_parts` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `day_3_2::Part` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/day_3_2.rs:12:1 [INFO] [stdout] | [INFO] [stdout] 12 | struct Part { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_above`, `is_below`, `is_left`, and `is_right` are never used [INFO] [stdout] --> src/day_10_1.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 11 | impl Position { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 19 | fn is_above(&self, other: &Position) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | fn is_below(&self, other: &Position) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 25 | fn is_left(&self, other: &Position) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | fn is_right(&self, other: &Position) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RGB` is never constructed [INFO] [stdout] --> src/day_2_1.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct RGB(usize, usize, usize); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `red`, `green`, `blue`, and `is_greater` are never used [INFO] [stdout] --> src/day_2_1.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl RGB { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 14 | pub fn red(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 17 | pub fn green(&self) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 20 | pub fn blue(&self) -> usize { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | pub fn is_greater(&self, color: Color) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `score_lines` is never used [INFO] [stdout] --> src/day_2_1.rs:31:8 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn score_lines(lines: Vec) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `score` is never used [INFO] [stdout] --> src/day_2_1.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn score(limits: &RGB, line: String) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `to_color` is never used [INFO] [stdout] --> src/day_2_1.rs:66:8 [INFO] [stdout] | [INFO] [stdout] 66 | pub fn to_color(name: &str, num: usize) -> Color { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RGB` is never constructed [INFO] [stdout] --> src/day_2_2.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct RGB(usize, usize, usize); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `red`, `green`, `blue`, and `update` are never used [INFO] [stdout] --> src/day_2_2.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl RGB { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 15 | pub fn red(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 18 | pub fn green(&self) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 21 | pub fn blue(&self) -> usize { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | pub fn update(&mut self, color: Color) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `score_lines` is never used [INFO] [stdout] --> src/day_2_2.rs:32:8 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn score_lines(lines: Vec) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `score` is never used [INFO] [stdout] --> src/day_2_2.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn score(line: String) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `to_color` is never used [INFO] [stdout] --> src/day_2_2.rs:65:8 [INFO] [stdout] | [INFO] [stdout] 65 | pub fn to_color(name: &str, num: usize) -> Color { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Part` is never constructed [INFO] [stdout] --> src/day_3_1.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | struct Part { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Symbol` is never constructed [INFO] [stdout] --> src/day_3_1.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | struct Symbol { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Row` is never constructed [INFO] [stdout] --> src/day_3_1.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 23 | struct Row { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `overlaps_columns` and `is_between` are never used [INFO] [stdout] --> src/day_3_1.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 29 | impl Position { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] 30 | pub fn overlaps_columns(&self, other: &Position) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 36 | fn is_between(&self, n: i64) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_overlap_symbol` is never used [INFO] [stdout] --> src/day_3_1.rs:42:12 [INFO] [stdout] | [INFO] [stdout] 41 | impl Part { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] 42 | pub fn is_overlap_symbol(&self, symbol: &Symbol) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_3_1.rs:48:8 [INFO] [stdout] | [INFO] [stdout] 48 | pub fn process_lines(lines: Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_line` is never used [INFO] [stdout] --> src/day_3_1.rs:72:4 [INFO] [stdout] | [INFO] [stdout] 72 | fn parse_line(line: String, row: i64) -> (Vec, Vec) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_symbol` is never used [INFO] [stdout] --> src/day_3_1.rs:103:4 [INFO] [stdout] | [INFO] [stdout] 103 | fn is_symbol(c: char) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Part` is never constructed [INFO] [stdout] --> src/day_3_2.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | struct Part { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Symbol` is never constructed [INFO] [stdout] --> src/day_3_2.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | struct Symbol { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Row` is never constructed [INFO] [stdout] --> src/day_3_2.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 23 | struct Row { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `overlaps_columns` and `is_between` are never used [INFO] [stdout] --> src/day_3_2.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 29 | impl Position { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] 30 | pub fn overlaps_columns(&self, other: &Position) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 36 | fn is_between(&self, n: i64) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_overlap_symbol` is never used [INFO] [stdout] --> src/day_3_2.rs:42:12 [INFO] [stdout] | [INFO] [stdout] 41 | impl Part { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] 42 | pub fn is_overlap_symbol(&self, symbol: &Symbol) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_3_2.rs:48:8 [INFO] [stdout] | [INFO] [stdout] 48 | pub fn process_lines(lines: Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find_adjacent_parts` is never used [INFO] [stdout] --> src/day_3_2.rs:70:8 [INFO] [stdout] | [INFO] [stdout] 70 | pub fn find_adjacent_parts(symbol: &Symbol, parts: &Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_line` is never used [INFO] [stdout] --> src/day_3_2.rs:81:4 [INFO] [stdout] | [INFO] [stdout] 81 | fn parse_line(line: String, row: i64) -> (Vec, Vec) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_symbol` is never used [INFO] [stdout] --> src/day_3_2.rs:112:4 [INFO] [stdout] | [INFO] [stdout] 112 | fn is_symbol(c: char) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_lines` is never used [INFO] [stdout] --> src/day_4_2.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | pub fn process_lines(lines: Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_line` is never used [INFO] [stdout] --> src/day_4_2.rs:44:4 [INFO] [stdout] | [INFO] [stdout] 44 | fn parse_line(line: &str) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main` is never used [INFO] [stdout] --> src/trebuchet.rs:1:4 [INFO] [stdout] | [INFO] [stdout] 1 | fn main() { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_line` is never used [INFO] [stdout] --> src/trebuchet.rs:12:4 [INFO] [stdout] | [INFO] [stdout] 12 | fn parse_line(line: String) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_lines` is never used [INFO] [stdout] --> src/trebuchet_2.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn parse_lines(lines: Vec) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_line` is never used [INFO] [stdout] --> src/trebuchet_2.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | pub fn parse_line(line: String) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 41 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.21s [INFO] running `Command { std: "docker" "inspect" "4f6d54b78d4211dcf1839af1524866b017d71360960e8fbb8cca4e7829055b46", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4f6d54b78d4211dcf1839af1524866b017d71360960e8fbb8cca4e7829055b46", kill_on_drop: false }` [INFO] [stdout] 4f6d54b78d4211dcf1839af1524866b017d71360960e8fbb8cca4e7829055b46