[INFO] cloning repository https://github.com/Niashi24/aoc2023 [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Niashi24/aoc2023" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FNiashi24%2Faoc2023", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FNiashi24%2Faoc2023'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 845bcca6021d59e087dee53b25189e465f08fa00 [INFO] building Niashi24/aoc2023 against try#d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6 for pr-146237-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FNiashi24%2Faoc2023" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/Niashi24/aoc2023 [INFO] finished tweaking git repo https://github.com/Niashi24/aoc2023 [INFO] tweaked toml for git repo https://github.com/Niashi24/aoc2023 written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/Niashi24/aoc2023 on toolchain d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/Niashi24/aoc2023 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 14eb7eea35414cde9dc7c34a7fc69ed20864df18767f88754edc9f83dfad2653 [INFO] running `Command { std: "docker" "start" "-a" "14eb7eea35414cde9dc7c34a7fc69ed20864df18767f88754edc9f83dfad2653", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "14eb7eea35414cde9dc7c34a7fc69ed20864df18767f88754edc9f83dfad2653", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "14eb7eea35414cde9dc7c34a7fc69ed20864df18767f88754edc9f83dfad2653", kill_on_drop: false }` [INFO] [stdout] 14eb7eea35414cde9dc7c34a7fc69ed20864df18767f88754edc9f83dfad2653 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] feab313718741eef08bee017808273c32b6867f7f1df601a33167014191abbd2 [INFO] running `Command { std: "docker" "start" "-a" "feab313718741eef08bee017808273c32b6867f7f1df601a33167014191abbd2", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.79 [INFO] [stderr] Compiling libc v0.2.151 [INFO] [stderr] Compiling num-bigint v0.4.4 [INFO] [stderr] Compiling num-rational v0.4.1 [INFO] [stderr] Compiling bytemuck v1.14.0 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling paste v1.0.14 [INFO] [stderr] Compiling semver v1.0.20 [INFO] [stderr] Compiling num-complex v0.4.4 [INFO] [stderr] Compiling matrixmultiply v0.3.8 [INFO] [stderr] Compiling safe_arch v0.7.1 [INFO] [stderr] Compiling num-iter v0.1.43 [INFO] [stderr] Compiling typenum v1.17.0 [INFO] [stderr] Compiling thiserror v1.0.50 [INFO] [stderr] Compiling serde v1.0.197 [INFO] [stderr] Compiling quote v1.0.35 [INFO] [stderr] Compiling wide v0.7.13 [INFO] [stderr] Compiling approx v0.5.1 [INFO] [stderr] Compiling syn v2.0.53 [INFO] [stderr] Compiling hashbrown v0.14.3 [INFO] [stderr] Compiling rawpointer v0.2.1 [INFO] [stderr] Compiling ppv-lite86 v0.2.17 [INFO] [stderr] Compiling serde_json v1.0.114 [INFO] [stderr] Compiling either v1.9.0 [INFO] [stderr] Compiling getrandom v0.2.11 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling indexmap v2.1.0 [INFO] [stderr] Compiling integer-sqrt v0.1.5 [INFO] [stderr] Compiling itoa v1.0.10 [INFO] [stderr] Compiling ryu v1.0.17 [INFO] [stderr] Compiling fixedbitset v0.4.2 [INFO] [stderr] Compiling rustc-hash v1.1.0 [INFO] [stderr] Compiling colored v2.1.0 [INFO] [stderr] Compiling num v0.4.1 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling simba v0.8.1 [INFO] [stderr] Compiling rayon v1.8.0 [INFO] [stderr] Compiling itertools v0.12.0 [INFO] [stderr] Compiling horner v0.2.2 [INFO] [stderr] Compiling thiserror-impl v1.0.50 [INFO] [stderr] Compiling serde_derive v1.0.197 [INFO] [stderr] Compiling deprecate-until v0.1.1 [INFO] [stderr] Compiling pathfinding v4.4.0 [INFO] [stderr] Compiling nalgebra-macros v0.2.1 [INFO] [stderr] Compiling nalgebra v0.32.3 [INFO] [stderr] Compiling aoc2023 v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `pathfinding::prelude::separate_components` [INFO] [stdout] --> src/main.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use pathfinding::prelude::separate_components; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HashMap` and `HashSet` [INFO] [stdout] --> src/day3.rs:1:24 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/day4.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `regex::Regex` [INFO] [stdout] --> src/day4.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use regex::Regex; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::hash_map::Entry` [INFO] [stdout] --> src/day8.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::hash_map::Entry; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Hasher` [INFO] [stdout] --> src/day8.rs:3:23 [INFO] [stdout] | [INFO] [stdout] 3 | use std::hash::{Hash, Hasher}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Cycle` and `Enumerate` [INFO] [stdout] --> src/day8.rs:4:17 [INFO] [stdout] | [INFO] [stdout] 4 | use std::iter::{Cycle, Enumerate}; [INFO] [stdout] | ^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::slice::Iter` [INFO] [stdout] --> src/day8.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::slice::Iter; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `bfs`, `brent`, and `dfs` [INFO] [stdout] --> src/day10.rs:4:28 [INFO] [stdout] | [INFO] [stdout] 4 | use pathfinding::prelude::{bfs, brent, dfs}; [INFO] [stdout] | ^^^ ^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::hash_map::Entry` [INFO] [stdout] --> src/day12.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::hash_map::Entry; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `itertools::Itertools` [INFO] [stdout] --> src/day12.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use itertools::Itertools; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp::min` [INFO] [stdout] --> src/day13.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cmp::min; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::hash::Hash` [INFO] [stdout] --> src/day14.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::hash::Hash; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `itertools::Itertools` [INFO] [stdout] --> src/day18.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use itertools::Itertools; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `itertools::FoldWhile::Continue` [INFO] [stdout] --> src/day19.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use itertools::FoldWhile::Continue; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `FoldWhile` [INFO] [stdout] --> src/day19.rs:8:17 [INFO] [stdout] | [INFO] [stdout] 8 | use itertools::{FoldWhile, Itertools}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::combinations::CombinationIterator` [INFO] [stdout] --> src/day19.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::combinations::CombinationIterator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::day5::Map` [INFO] [stdout] --> src/day19.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::day5::Map; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::hash_map::RandomState` [INFO] [stdout] --> src/ranges.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::hash_map::RandomState; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashSet` [INFO] [stdout] --> src/day20.rs:4:33 [INFO] [stdout] | [INFO] [stdout] 4 | use std::collections::{HashMap, HashSet, VecDeque}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `thread` and `time` [INFO] [stdout] --> src/day20.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | use std::{thread, time}; [INFO] [stdout] | ^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `colored::Colorize` [INFO] [stdout] --> src/day20.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use colored::Colorize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `join` [INFO] [stdout] --> src/day20.rs:8:28 [INFO] [stdout] | [INFO] [stdout] 8 | use itertools::{Itertools, join}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `bfs_reach`, `brent`, and `topological_sort` [INFO] [stdout] --> src/day20.rs:10:28 [INFO] [stdout] | [INFO] [stdout] 10 | use pathfinding::prelude::{bfs_reach, brent, topological_sort}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^ ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HashMap` and `HashSet` [INFO] [stdout] --> src/day21.rs:1:24 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter::repeat` [INFO] [stdout] --> src/day21.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::iter::repeat; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `num::Integer` [INFO] [stdout] --> src/day21.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use num::Integer; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `astar` and `brent` [INFO] [stdout] --> src/day21.rs:8:28 [INFO] [stdout] | [INFO] [stdout] 8 | use pathfinding::prelude::{astar, brent}; [INFO] [stdout] | ^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Direction` [INFO] [stdout] --> src/day21.rs:9:20 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::day10::{Direction, DIRECTIONS}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/day22.rs:78:80 [INFO] [stdout] | [INFO] [stdout] 78 | let mut supported_blocks: HashSet<_, RandomState> = HashSet::from_iter((0..blocks.len())); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 78 - let mut supported_blocks: HashSet<_, RandomState> = HashSet::from_iter((0..blocks.len())); [INFO] [stdout] 78 + let mut supported_blocks: HashSet<_, RandomState> = HashSet::from_iter(0..blocks.len()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/day22.rs:161:80 [INFO] [stdout] | [INFO] [stdout] 161 | let mut supported_blocks: HashSet<_, RandomState> = HashSet::from_iter((0..blocks.len())); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 161 - let mut supported_blocks: HashSet<_, RandomState> = HashSet::from_iter((0..blocks.len())); [INFO] [stdout] 161 + let mut supported_blocks: HashSet<_, RandomState> = HashSet::from_iter(0..blocks.len()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `bfs`, `dfs_reach`, `dfs`, and `yen` [INFO] [stdout] --> src/day23.rs:3:28 [INFO] [stdout] | [INFO] [stdout] 3 | use pathfinding::prelude::{bfs, dfs, dfs_reach, yen}; [INFO] [stdout] | ^^^ ^^^ ^^^^^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Matrix3`, `Matrix3x1`, `Matrix4`, and `Matrix4x1` [INFO] [stdout] --> src/day24.rs:2:36 [INFO] [stdout] | [INFO] [stdout] 2 | use nalgebra::{Matrix2, Matrix2x1, Matrix3, Matrix3x1, Matrix4, Matrix4x1, Matrix5, Matrix5x1}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^ ^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Range` [INFO] [stdout] --> src/slope_descent.rs:4:36 [INFO] [stdout] | [INFO] [stdout] 4 | use std::ops::{Add, Div, Mul, Neg, Range, Sub}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Num` and `Zero` [INFO] [stdout] --> src/slope_descent.rs:6:18 [INFO] [stdout] | [INFO] [stdout] 6 | use num::{Float, Num, Zero}; [INFO] [stdout] | ^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp::Ordering` [INFO] [stdout] --> src/day25.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cmp::Ordering; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `kruskal`, `separate_components`, and `strongly_connected_components` [INFO] [stdout] --> src/day25.rs:7:33 [INFO] [stdout] | [INFO] [stdout] 7 | use pathfinding::prelude::{bfs, kruskal, separate_components, strongly_connected_components}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::combinations::CombinationIterator` [INFO] [stdout] --> src/day25.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::combinations::CombinationIterator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `bfs` and `dijkstra` [INFO] [stdout] --> src/graph.rs:7:28 [INFO] [stdout] | [INFO] [stdout] 7 | use pathfinding::prelude::{bfs, dijkstra}; [INFO] [stdout] | ^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `backtracking` [INFO] [stdout] --> src/backtracking/sudoku.rs:4:49 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::backtracking::backtracking::{Action, backtracking, backtracking_iterative}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `num::traits::Euclid` [INFO] [stdout] --> src/grid.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use num::traits::Euclid; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `num::Num` [INFO] [stdout] --> src/day18.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use num::Num; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `itertools::Itertools` [INFO] [stdout] --> src/day21.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use itertools::Itertools; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Float` [INFO] [stdout] --> src/slope_descent.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | use num::{Float, Num, Zero}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `vz` [INFO] [stdout] --> src/day24.rs:113:14 [INFO] [stdout] | [INFO] [stdout] 113 | let [pz, vz] = a.lu().solve(&b)?.data.0[0]; [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 113 | let [pz, _vz] = a.lu().solve(&b)?.data.0[0]; [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `c` [INFO] [stdout] | [INFO] [stdout] 113 - let [pz, vz] = a.lu().solve(&b)?.data.0[0]; [INFO] [stdout] 113 + let [pz, slope_descent::test_grad_descent::test_2::c] = a.lu().solve(&b)?.data.0[0]; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day24.rs:85:10 [INFO] [stdout] | [INFO] [stdout] 85 | fn solve(mut hails: [Hail; 5]) -> Option { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ackley_fn` [INFO] [stdout] --> src/slope_descent.rs:81:9 [INFO] [stdout] | [INFO] [stdout] 81 | let ackley_fn = |&[x, y]: &[f64; 2]| { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ackley_fn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/slope_descent.rs:91:9 [INFO] [stdout] | [INFO] [stdout] 91 | let y = target.steepest_descent(&[1.0, 0.0], 100, 0.001) [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `n_round` is never read [INFO] [stdout] --> src/day21.rs:93:13 [INFO] [stdout] | [INFO] [stdout] 93 | let mut n_round = indexset![]; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day23.rs:84:9 [INFO] [stdout] | [INFO] [stdout] 84 | let mut map: Map = generate_map(&grid); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data` [INFO] [stdout] --> src/day25.rs:89:22 [INFO] [stdout] | [INFO] [stdout] 89 | fn part_2(&self, data: &Vec) -> i64 { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `board` [INFO] [stdout] --> src/backtracking/sudoku.rs:164:9 [INFO] [stdout] | [INFO] [stdout] 164 | let board = [ [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_board` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/backtracking/sudoku.rs:201:23 [INFO] [stdout] | [INFO] [stdout] 201 | .filter_map(|(y, b)| b.iter().enumerate() [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 201 | .filter_map(|(_y, b)| b.iter().enumerate() [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `CAP` [INFO] [stdout] | [INFO] [stdout] 201 - .filter_map(|(y, b)| b.iter().enumerate() [INFO] [stdout] 201 + .filter_map(|(day21::step_positions::CAP, b)| b.iter().enumerate() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/backtracking/sudoku.rs:202:21 [INFO] [stdout] | [INFO] [stdout] 202 | .find(|(x, c)| **c == 0)).next().unwrap().0; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `full_test` is never used [INFO] [stdout] --> src/main.rs:76:4 [INFO] [stdout] | [INFO] [stdout] 76 | fn full_test() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Day` is never used [INFO] [stdout] --> src/day.rs:3:11 [INFO] [stdout] | [INFO] [stdout] 3 | pub trait Day { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run_with_test` is never used [INFO] [stdout] --> src/day.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | pub fn run_with_test>( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run_with_test_2` is never used [INFO] [stdout] --> src/day.rs:35:8 [INFO] [stdout] | [INFO] [stdout] 35 | pub fn run_with_test_2>( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_part_1` is never used [INFO] [stdout] --> src/day.rs:60:4 [INFO] [stdout] | [INFO] [stdout] 60 | fn test_part_1>(day: &TDay, data: &TData) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_part_2` is never used [INFO] [stdout] --> src/day.rs:71:4 [INFO] [stdout] | [INFO] [stdout] 71 | fn test_part_2>(day: &TDay, data: &TData) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_parse_data` is never used [INFO] [stdout] --> src/day.rs:82:4 [INFO] [stdout] | [INFO] [stdout] 82 | fn test_parse_data>(day: &TDay, file_content: String) -> TData { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run_2` is never used [INFO] [stdout] --> src/day.rs:93:8 [INFO] [stdout] | [INFO] [stdout] 93 | pub fn run_2>(day: &TDay, file_name_1: &str, file_name_2: &str) -> std::io::Result<(i64, i64)> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run` is never used [INFO] [stdout] --> src/day.rs:105:8 [INFO] [stdout] | [INFO] [stdout] 105 | pub fn run>(day: &TDay, file_name: &str) -> std::io::Result<(i64, i64)> { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day1` is never constructed [INFO] [stdout] --> src/day1.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct Day1; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Info` is never constructed [INFO] [stdout] --> src/day1.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Info { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `solve` is never used [INFO] [stdout] --> src/day1.rs:42:4 [INFO] [stdout] | [INFO] [stdout] 42 | fn solve(lines: &Vec, digits: Vec<(&str, i64)>) -> i64 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/grid.rs:55:17 [INFO] [stdout] | [INFO] [stdout] 55 | pub fn iter(&self) -> GridIter { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 55 | pub fn iter(&self) -> GridIter<'_, T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/ranges.rs:162:17 [INFO] [stdout] | [INFO] [stdout] 162 | pub fn iter(&self) -> RangeDIterator { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 162 | pub fn iter(&self) -> RangeDIterator<'_, N> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day12` is never constructed [INFO] [stdout] --> src/day12.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Day12; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Data` is never constructed [INFO] [stdout] --> src/day12.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct Data { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Game` is never constructed [INFO] [stdout] --> src/day12.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Game { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Tile` is never used [INFO] [stdout] --> src/day12.rs:22:10 [INFO] [stdout] | [INFO] [stdout] 22 | pub enum Tile { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `matches` is never used [INFO] [stdout] --> src/day12.rs:28:12 [INFO] [stdout] | [INFO] [stdout] 27 | impl Tile { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] 28 | pub fn matches(&self, other: &bool) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_matches` is never used [INFO] [stdout] --> src/day12.rs:70:4 [INFO] [stdout] | [INFO] [stdout] 70 | fn create_matches(game: &Game) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_num_solutions` is never used [INFO] [stdout] --> src/day12.rs:74:4 [INFO] [stdout] | [INFO] [stdout] 74 | fn get_num_solutions(game: &Game) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `generate_solutions_recursive` is never used [INFO] [stdout] --> src/day12.rs:82:4 [INFO] [stdout] | [INFO] [stdout] 82 | fn generate_solutions_recursive( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day13` is never constructed [INFO] [stdout] --> src/day13.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Day13; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Data` is never constructed [INFO] [stdout] --> src/day13.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Data { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RowIterator` is never constructed [INFO] [stdout] --> src/day13.rs:60:8 [INFO] [stdout] | [INFO] [stdout] 60 | struct RowIterator { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/day13.rs:69:12 [INFO] [stdout] | [INFO] [stdout] 68 | impl RowIterator { [INFO] [stdout] | ---------------- associated function in this implementation [INFO] [stdout] 69 | pub fn new(i: usize, w: usize, h: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ColumnIterator` is never constructed [INFO] [stdout] --> src/day13.rs:100:8 [INFO] [stdout] | [INFO] [stdout] 100 | struct ColumnIterator { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/day13.rs:128:12 [INFO] [stdout] | [INFO] [stdout] 127 | impl ColumnIterator { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 128 | pub fn new(i: usize, w: usize, h: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_1` is never used [INFO] [stdout] --> src/day13.rs:139:4 [INFO] [stdout] | [INFO] [stdout] 139 | fn test_1(mut it: IT, grid: &Vec>) -> bool [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_2` is never used [INFO] [stdout] --> src/day13.rs:149:4 [INFO] [stdout] | [INFO] [stdout] 149 | fn test_2(it: IT, grid: &Vec>) -> bool [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day14` is never constructed [INFO] [stdout] --> src/day14.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Day14; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Data` is never constructed [INFO] [stdout] --> src/day14.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Data { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Tile` is never used [INFO] [stdout] --> src/day14.rs:14:10 [INFO] [stdout] | [INFO] [stdout] 14 | pub enum Tile { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `filled` is never used [INFO] [stdout] --> src/day14.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl Tile { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] 21 | pub fn filled(&self) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_grid` is never used [INFO] [stdout] --> src/day14.rs:66:4 [INFO] [stdout] | [INFO] [stdout] 66 | fn print_grid(grid: &Vec>) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `grid_score` is never used [INFO] [stdout] --> src/day14.rs:80:4 [INFO] [stdout] | [INFO] [stdout] 80 | fn grid_score(grid: &Vec>) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `cycle` is never used [INFO] [stdout] --> src/day14.rs:93:4 [INFO] [stdout] | [INFO] [stdout] 93 | fn cycle(mut grid: Vec>, data: &Data) -> Vec> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `slide_up` is never used [INFO] [stdout] --> src/day14.rs:102:4 [INFO] [stdout] | [INFO] [stdout] 102 | fn slide_up(grid: &mut Vec>, data: &Data) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `slide_down` is never used [INFO] [stdout] --> src/day14.rs:122:4 [INFO] [stdout] | [INFO] [stdout] 122 | fn slide_down(grid: &mut Vec>, data: &Data) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `slide_left` is never used [INFO] [stdout] --> src/day14.rs:142:4 [INFO] [stdout] | [INFO] [stdout] 142 | fn slide_left(grid: &mut Vec>, data: &Data) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `slide_right` is never used [INFO] [stdout] --> src/day14.rs:162:4 [INFO] [stdout] | [INFO] [stdout] 162 | fn slide_right(grid: &mut Vec>, data: &Data) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day2` is never constructed [INFO] [stdout] --> src/day2.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Day2; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Info` is never constructed [INFO] [stdout] --> src/day2.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Info { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Game` is never constructed [INFO] [stdout] --> src/day2.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct Game { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Color` is never used [INFO] [stdout] --> src/day2.rs:18:10 [INFO] [stdout] | [INFO] [stdout] 18 | pub enum Color { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `total_in_round` is never used [INFO] [stdout] --> src/day2.rs:68:4 [INFO] [stdout] | [INFO] [stdout] 68 | fn total_in_round(round: &Vec<(u32, Color)>) -> (u32, u32, u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day3` is never constructed [INFO] [stdout] --> src/day3.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Day3; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Info` is never constructed [INFO] [stdout] --> src/day3.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Info { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Number` is never constructed [INFO] [stdout] --> src/day3.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Number { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day4` is never constructed [INFO] [stdout] --> src/day4.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Day4; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Info` is never constructed [INFO] [stdout] --> src/day4.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Info { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Card` is never constructed [INFO] [stdout] --> src/day4.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct Card { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_num_winning` is never used [INFO] [stdout] --> src/day4.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl Card { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] 17 | #[inline] [INFO] [stdout] 18 | pub fn get_num_winning(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day5` is never constructed [INFO] [stdout] --> src/day5.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Day5; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Info` is never constructed [INFO] [stdout] --> src/day5.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Info { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `transform` and `inv_transform` are never used [INFO] [stdout] --> src/day5.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl Info { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] 14 | #[inline] [INFO] [stdout] 15 | pub fn transform(&self, n: i64) -> i64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 20 | pub fn inv_transform(&self, n: i64) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Map` is never constructed [INFO] [stdout] --> src/day5.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct Map { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day1` is never used [INFO] [stdout] --> src/main.rs:87:4 [INFO] [stdout] | [INFO] [stdout] 87 | fn test_day1() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day2` is never used [INFO] [stdout] --> src/main.rs:98:4 [INFO] [stdout] | [INFO] [stdout] 98 | fn test_day2() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day3` is never used [INFO] [stdout] --> src/main.rs:108:4 [INFO] [stdout] | [INFO] [stdout] 108 | fn test_day3() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day4` is never used [INFO] [stdout] --> src/main.rs:118:4 [INFO] [stdout] | [INFO] [stdout] 118 | fn test_day4() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day5` is never used [INFO] [stdout] --> src/main.rs:128:4 [INFO] [stdout] | [INFO] [stdout] 128 | fn test_day5() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day6` is never used [INFO] [stdout] --> src/main.rs:138:4 [INFO] [stdout] | [INFO] [stdout] 138 | fn test_day6() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day7` is never used [INFO] [stdout] --> src/main.rs:148:4 [INFO] [stdout] | [INFO] [stdout] 148 | fn test_day7() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day8` is never used [INFO] [stdout] --> src/main.rs:158:4 [INFO] [stdout] | [INFO] [stdout] 158 | fn test_day8() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day9` is never used [INFO] [stdout] --> src/main.rs:169:4 [INFO] [stdout] | [INFO] [stdout] 169 | fn test_day9() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day10` is never used [INFO] [stdout] --> src/main.rs:179:4 [INFO] [stdout] | [INFO] [stdout] 179 | fn test_day10() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day11` is never used [INFO] [stdout] --> src/main.rs:190:4 [INFO] [stdout] | [INFO] [stdout] 190 | fn test_day11() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day12` is never used [INFO] [stdout] --> src/main.rs:200:4 [INFO] [stdout] | [INFO] [stdout] 200 | fn test_day12() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day13` is never used [INFO] [stdout] --> src/main.rs:210:4 [INFO] [stdout] | [INFO] [stdout] 210 | fn test_day13() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day14` is never used [INFO] [stdout] --> src/main.rs:220:4 [INFO] [stdout] | [INFO] [stdout] 220 | fn test_day14() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day15` is never used [INFO] [stdout] --> src/main.rs:230:4 [INFO] [stdout] | [INFO] [stdout] 230 | fn test_day15() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day16` is never used [INFO] [stdout] --> src/main.rs:240:4 [INFO] [stdout] | [INFO] [stdout] 240 | fn test_day16() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day17` is never used [INFO] [stdout] --> src/main.rs:250:4 [INFO] [stdout] | [INFO] [stdout] 250 | fn test_day17() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day18` is never used [INFO] [stdout] --> src/main.rs:260:4 [INFO] [stdout] | [INFO] [stdout] 260 | fn test_day18() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day19` is never used [INFO] [stdout] --> src/main.rs:270:4 [INFO] [stdout] | [INFO] [stdout] 270 | fn test_day19() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day20` is never used [INFO] [stdout] --> src/main.rs:280:4 [INFO] [stdout] | [INFO] [stdout] 280 | fn test_day20() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day21` is never used [INFO] [stdout] --> src/main.rs:290:4 [INFO] [stdout] | [INFO] [stdout] 290 | fn test_day21() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day22` is never used [INFO] [stdout] --> src/main.rs:300:4 [INFO] [stdout] | [INFO] [stdout] 300 | fn test_day22() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day23` is never used [INFO] [stdout] --> src/main.rs:310:4 [INFO] [stdout] | [INFO] [stdout] 310 | fn test_day23() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day24` is never used [INFO] [stdout] --> src/main.rs:320:4 [INFO] [stdout] | [INFO] [stdout] 320 | fn test_day24() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day25` is never used [INFO] [stdout] --> src/main.rs:330:4 [INFO] [stdout] | [INFO] [stdout] 330 | fn test_day25() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day13_22` is never used [INFO] [stdout] --> src/main.rs:340:4 [INFO] [stdout] | [INFO] [stdout] 340 | fn test_day13_22() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `V2I` is never constructed [INFO] [stdout] --> src/vector.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct V2I { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/vector.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 9 | impl V2I { [INFO] [stdout] | -------- associated function in this implementation [INFO] [stdout] 10 | pub fn new(x: i32, y: i32) -> V2I { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day11` is never constructed [INFO] [stdout] --> src/day11.rs:3:12 [INFO] [stdout] | [INFO] [stdout] 3 | pub struct Day11; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Data` is never constructed [INFO] [stdout] --> src/day11.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Data { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `solve` is never used [INFO] [stdout] --> src/day11.rs:28:4 [INFO] [stdout] | [INFO] [stdout] 28 | fn solve(galaxies: &Vec<(usize, usize)>, multiplier: usize) -> i64 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CombinationIterator` is never constructed [INFO] [stdout] --> src/combinations.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct CombinationIterator<'a, T, const N: usize> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/combinations.rs:36:19 [INFO] [stdout] | [INFO] [stdout] 35 | impl<'a, T, const N: usize> CombinationIterator<'a, T, N> { [INFO] [stdout] | --------------------------------------------------------- associated function in this implementation [INFO] [stdout] 36 | pub(crate) fn new(slice: &'a [T]) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CartesianIterator` is never constructed [INFO] [stdout] --> src/combinations.rs:49:12 [INFO] [stdout] | [INFO] [stdout] 49 | pub struct CartesianIterator<'a, T, const N: usize> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/combinations.rs:55:19 [INFO] [stdout] | [INFO] [stdout] 54 | impl<'a, T, const N: usize> CartesianIterator<'a, T, N> { [INFO] [stdout] | ------------------------------------------------------- associated function in this implementation [INFO] [stdout] 55 | pub(crate) fn new(slice: &'a [T]) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day9` is never constructed [INFO] [stdout] --> src/day9.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Day9; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Data` is never constructed [INFO] [stdout] --> src/day9.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Data { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `take_differences` is never used [INFO] [stdout] --> src/day9.rs:47:4 [INFO] [stdout] | [INFO] [stdout] 47 | fn take_differences(vec: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day10` is never constructed [INFO] [stdout] --> src/day10.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Day10; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Data` is never constructed [INFO] [stdout] --> src/day10.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Data { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_start_neighbors` is never used [INFO] [stdout] --> src/day10.rs:107:4 [INFO] [stdout] | [INFO] [stdout] 107 | fn get_start_neighbors(x: usize, y: usize, grid: &Vec>) -> (Direction, Direction) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_full_path_length` is never used [INFO] [stdout] --> src/day10.rs:120:4 [INFO] [stdout] | [INFO] [stdout] 120 | fn get_full_path_length Pos>(start: Pos, end: &(usize, usize), successor: FN) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_full_path` is never used [INFO] [stdout] --> src/day10.rs:130:4 [INFO] [stdout] | [INFO] [stdout] 130 | fn get_full_path Pos>(start: Pos, end: &(usize, usize), successor: FN) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Pos` is never constructed [INFO] [stdout] --> src/day10.rs:143:8 [INFO] [stdout] | [INFO] [stdout] 143 | struct Pos((usize, usize), Direction); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find_start` is never used [INFO] [stdout] --> src/day10.rs:145:4 [INFO] [stdout] | [INFO] [stdout] 145 | fn find_start(grid: &Vec>) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_grid` is never used [INFO] [stdout] --> src/day10.rs:153:4 [INFO] [stdout] | [INFO] [stdout] 153 | fn get_grid(pos: &(usize, usize), grid: &Vec>) -> char { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day15` is never constructed [INFO] [stdout] --> src/day15.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Day15; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day7` is never constructed [INFO] [stdout] --> src/day7.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Day7; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Data` is never constructed [INFO] [stdout] --> src/day7.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Data { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Hand` is never constructed [INFO] [stdout] --> src/day7.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct Hand([u32; 5], HandType); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `HandType` is never used [INFO] [stdout] --> src/day7.rs:17:10 [INFO] [stdout] | [INFO] [stdout] 17 | pub enum HandType {Five = 7, Four = 6, Full = 5, Three = 4, Two = 3, One = 2, High = 1} [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `cards_to_type_1` is never used [INFO] [stdout] --> src/day7.rs:19:4 [INFO] [stdout] | [INFO] [stdout] 19 | fn cards_to_type_1(cards: &[u32; 5]) -> HandType { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `cards_to_type_2` is never used [INFO] [stdout] --> src/day7.rs:30:4 [INFO] [stdout] | [INFO] [stdout] 30 | fn cards_to_type_2(cards: &[u32; 5]) -> HandType { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `top_two_to_type` is never used [INFO] [stdout] --> src/day7.rs:44:4 [INFO] [stdout] | [INFO] [stdout] 44 | fn top_two_to_type(first: u32, second: u32) -> HandType { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `JOKER` is never used [INFO] [stdout] --> src/day7.rs:66:7 [INFO] [stdout] | [INFO] [stdout] 66 | const JOKER: u32 = 11; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `char_to_value` is never used [INFO] [stdout] --> src/day7.rs:67:4 [INFO] [stdout] | [INFO] [stdout] 67 | fn char_to_value(c: char) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day8` is never constructed [INFO] [stdout] --> src/day8.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct Day8; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Data` is never constructed [INFO] [stdout] --> src/day8.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct Data { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Node` is never constructed [INFO] [stdout] --> src/day8.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct Node([char; 3]); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `START` is never used [INFO] [stdout] --> src/day8.rs:23:7 [INFO] [stdout] | [INFO] [stdout] 23 | const START: Node = Node(['A', 'A', 'A']); [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `END` is never used [INFO] [stdout] --> src/day8.rs:24:7 [INFO] [stdout] | [INFO] [stdout] 24 | const END: Node = Node(['Z', 'Z', 'Z']); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Direction` is never used [INFO] [stdout] --> src/day8.rs:27:10 [INFO] [stdout] | [INFO] [stdout] 27 | pub enum Direction {Left, Right} [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Data` is never constructed [INFO] [stdout] --> src/day15.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Data { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `hash` is never used [INFO] [stdout] --> src/day15.rs:63:4 [INFO] [stdout] | [INFO] [stdout] 63 | fn hash(str: &str) -> usize { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Operation` is never used [INFO] [stdout] --> src/day15.rs:73:6 [INFO] [stdout] | [INFO] [stdout] 73 | enum Operation { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `label` is never used [INFO] [stdout] --> src/day15.rs:79:12 [INFO] [stdout] | [INFO] [stdout] 78 | impl Operation { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] 79 | pub fn label(&self) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day16` is never constructed [INFO] [stdout] --> src/day16.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Day16; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `successor` is never used [INFO] [stdout] --> src/day10.rs:157:4 [INFO] [stdout] | [INFO] [stdout] 157 | fn successor(pos: Pos, grid: &Vec>) -> Pos { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Direction` is never used [INFO] [stdout] --> src/day10.rs:173:10 [INFO] [stdout] | [INFO] [stdout] 173 | pub enum Direction {North, South, West, East} [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DIRECTIONS` is never used [INFO] [stdout] --> src/day10.rs:174:18 [INFO] [stdout] | [INFO] [stdout] 174 | pub(crate) const DIRECTIONS: [Direction; 4] = [Direction::North, Direction::South, Direction::East, Direction::West]; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/day10.rs:177:19 [INFO] [stdout] | [INFO] [stdout] 176 | impl Direction { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] 177 | pub(crate) fn transform(&self, pos: (usize, usize)) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 187 | pub(crate) fn transform_range(&self, pos: (usize, usize), x_range: &Range, y_range: &Range) -> Option<(usize, usize)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 197 | pub(crate) fn transform_i(&self, pos: (i64, i64)) -> (i64, i64) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 207 | pub(crate) fn unit_i(&self, length: i64) -> (i64, i64) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | pub(crate) fn opposite_dir(&self) -> Direction { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 225 | fn rotate_90_anticlockwise(&self) -> Direction { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 234 | fn rotate_90_clockwise(&self) -> Direction { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `pipe_to_connections` is never used [INFO] [stdout] --> src/day10.rs:244:4 [INFO] [stdout] | [INFO] [stdout] 244 | fn pipe_to_connections(c: char) -> Option<(Direction, Direction)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `transform` and `inv_transform` are never used [INFO] [stdout] --> src/day5.rs:32:12 [INFO] [stdout] | [INFO] [stdout] 30 | impl Map { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 31 | #[inline] [INFO] [stdout] 32 | pub fn transform(&self, n: i64) -> i64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn inv_transform(&self, n: i64) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `offset` is never used [INFO] [stdout] --> src/day5.rs:258:8 [INFO] [stdout] | [INFO] [stdout] 258 | pub fn offset(a: &Range, d: i64) -> Range { (a.start+d)..(a.end+d) } [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `intersect` is never used [INFO] [stdout] --> src/day5.rs:265:8 [INFO] [stdout] | [INFO] [stdout] 265 | pub fn intersect(a: (Range, i64), b: (Range, i64)) [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `difference_intersect` is never used [INFO] [stdout] --> src/day5.rs:304:4 [INFO] [stdout] | [INFO] [stdout] 304 | fn difference_intersect(a: Range, b: (Range, i64)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Multi` is never used [INFO] [stdout] --> src/day5.rs:384:6 [INFO] [stdout] | [INFO] [stdout] 384 | enum Multi { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `push_to` is never used [INFO] [stdout] --> src/day5.rs:391:12 [INFO] [stdout] | [INFO] [stdout] 390 | impl Multi { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] 391 | pub fn push_to(self, vec: &mut Vec) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day6` is never constructed [INFO] [stdout] --> src/day6.rs:3:12 [INFO] [stdout] | [INFO] [stdout] 3 | pub struct Day6; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Info` is never constructed [INFO] [stdout] --> src/day6.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Info { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `solve` is never used [INFO] [stdout] --> src/day6.rs:49:4 [INFO] [stdout] | [INFO] [stdout] 49 | fn solve(t: f64, d: f64) -> f64 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Tile` is never used [INFO] [stdout] --> src/day16.rs:9:10 [INFO] [stdout] | [INFO] [stdout] 9 | pub enum Tile { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `char_to_tile` and `successors` are never used [INFO] [stdout] --> src/day16.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 25 | impl Tile { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 26 | pub fn char_to_tile(c: char) -> Tile { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn successors(&self, mut pos: Pos) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Data` is never constructed [INFO] [stdout] --> src/day16.rs:88:12 [INFO] [stdout] | [INFO] [stdout] 88 | pub struct Data { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Pos` is never constructed [INFO] [stdout] --> src/day16.rs:93:12 [INFO] [stdout] | [INFO] [stdout] 93 | pub struct Pos { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `step` and `in_bounds` are never used [INFO] [stdout] --> src/day16.rs:99:12 [INFO] [stdout] | [INFO] [stdout] 98 | impl Pos { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 99 | pub fn step(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 104 | pub fn in_bounds(&self, grid: &Grid) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `solve` is never used [INFO] [stdout] --> src/day16.rs:167:4 [INFO] [stdout] | [INFO] [stdout] 167 | fn solve(start: Pos, grid: &Grid) -> i64 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Grid` is never constructed [INFO] [stdout] --> src/grid.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Grid { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/grid.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl Grid { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 12 | pub fn new(grid: Vec>) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | pub fn get(&self, x: usize, y: usize) -> Option<&T> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn get_mut(&mut self, x: usize, y: usize) -> Option<&mut T> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | pub fn get_i(&self, x: i64, y: i64) -> Option<&T> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn get_cycle(&self, mut x: i64, mut y: i64) -> Option<&T> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn positions bool>(&self, predicate: FN) -> Vec<(usize, usize)> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 55 | pub fn iter(&self) -> GridIter { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn map X>(self, func: FN) -> Grid { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GridIter` is never constructed [INFO] [stdout] --> src/grid.rs:68:12 [INFO] [stdout] | [INFO] [stdout] 68 | pub struct GridIter<'a, T> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day17` is never constructed [INFO] [stdout] --> src/day17.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Day17; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Data` is never used [INFO] [stdout] --> src/day17.rs:7:10 [INFO] [stdout] | [INFO] [stdout] 7 | pub type Data = Grid; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Pos` is never constructed [INFO] [stdout] --> src/day17.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct Pos { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `turn_left_and_step`, `turn_right_and_step`, and `move_forward` are never used [INFO] [stdout] --> src/day17.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 17 | impl Pos { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 18 | fn turn_left_and_step(&self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | fn turn_right_and_step(&self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | fn move_forward(&self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day18` is never constructed [INFO] [stdout] --> src/day18.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Day18; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Trench` is never constructed [INFO] [stdout] --> src/day18.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Trench { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Data` is never used [INFO] [stdout] --> src/day18.rs:16:10 [INFO] [stdout] | [INFO] [stdout] 16 | pub type Data = Vec; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `solve` is never used [INFO] [stdout] --> src/day18.rs:62:4 [INFO] [stdout] | [INFO] [stdout] 62 | fn solve<'a, IT: Iterator>(iter: IT) -> i64 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day19` is never constructed [INFO] [stdout] --> src/day19.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Day19; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Data` is never constructed [INFO] [stdout] --> src/day19.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 17 | pub struct Data { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Part` is never used [INFO] [stdout] --> src/day19.rs:23:10 [INFO] [stdout] | [INFO] [stdout] 23 | pub enum Part { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Rating` is never constructed [INFO] [stdout] --> src/day19.rs:55:12 [INFO] [stdout] | [INFO] [stdout] 55 | pub struct Rating { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `total` and `is_accepted` are never used [INFO] [stdout] --> src/day19.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 62 | impl Rating { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] 63 | pub fn total(&self) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 67 | pub fn is_accepted(&self, workflows: &HashMap) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Workflow` is never constructed [INFO] [stdout] --> src/day19.rs:77:12 [INFO] [stdout] | [INFO] [stdout] 77 | pub struct Workflow { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_result` is never used [INFO] [stdout] --> src/day19.rs:83:12 [INFO] [stdout] | [INFO] [stdout] 82 | impl Workflow { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] 83 | pub fn get_result(&self, rating: &Rating) -> &WorkResult { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Rule` is never constructed [INFO] [stdout] --> src/day19.rs:91:12 [INFO] [stdout] | [INFO] [stdout] 91 | pub struct Rule { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `applies_val`, `applies_rating`, `apply_range`, `apply_ranges`, and `negate` are never used [INFO] [stdout] --> src/day19.rs:137:12 [INFO] [stdout] | [INFO] [stdout] 136 | impl Rule { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] 137 | pub fn applies_val(&self, val: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 141 | pub fn applies_rating(&self, rating: &Rating) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn apply_range(&self, range: &Range) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 158 | pub fn apply_ranges(&self, mut ranges: [Range; 4]) -> Option<[Range; 4]> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 168 | pub fn negate(&self) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `WorkResult` is never used [INFO] [stdout] --> src/day19.rs:177:10 [INFO] [stdout] | [INFO] [stdout] 177 | pub enum WorkResult { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_workflow` is never used [INFO] [stdout] --> src/day19.rs:192:12 [INFO] [stdout] | [INFO] [stdout] 191 | impl WorkResult { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] 192 | pub fn is_workflow(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `total` is never used [INFO] [stdout] --> src/day19.rs:212:4 [INFO] [stdout] | [INFO] [stdout] 212 | fn total(ranges: [Range; 4]) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `inclusion_exclusion` is never used [INFO] [stdout] --> src/day19.rs:216:4 [INFO] [stdout] | [INFO] [stdout] 216 | fn inclusion_exclusion(ranges: &Vec>) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `intersect` is never used [INFO] [stdout] --> src/ranges.rs:7:15 [INFO] [stdout] | [INFO] [stdout] 7 | pub(crate) fn intersect(a: &Range, b: &Range) -> Option> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `intersects` is never used [INFO] [stdout] --> src/ranges.rs:12:15 [INFO] [stdout] | [INFO] [stdout] 12 | pub(crate) fn intersects(a: &Range, b: &Range) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `intersect_n` is never used [INFO] [stdout] --> src/ranges.rs:16:15 [INFO] [stdout] | [INFO] [stdout] 16 | pub(crate) fn intersect_n(a: &[Range; N], b: &[Range; N]) -> Option<[Range; N]> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `min_max_xy` is never used [INFO] [stdout] --> src/ranges.rs:31:15 [INFO] [stdout] | [INFO] [stdout] 31 | pub(crate) fn min_max_xy(iter: Iter) -> Option<(Range, Range)> [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `min_max_comp` is never used [INFO] [stdout] --> src/ranges.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | pub(crate) fn min_max_comp(iter: Iter) -> Option<([Idx; N], [Idx; N])> [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `increment` is never used [INFO] [stdout] --> src/ranges.rs:189:12 [INFO] [stdout] | [INFO] [stdout] 189 | fn increment(indices: &mut [usize; N], ranges: &RangeD, i: usize) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day20` is never constructed [INFO] [stdout] --> src/day20.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct Day20; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ModuleType` is never used [INFO] [stdout] --> src/day20.rs:15:10 [INFO] [stdout] | [INFO] [stdout] 15 | pub enum ModuleType { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DISABLED` is never used [INFO] [stdout] --> src/day20.rs:26:7 [INFO] [stdout] | [INFO] [stdout] 26 | const DISABLED: &str = "□"; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ENABLED` is never used [INFO] [stdout] --> src/day20.rs:27:7 [INFO] [stdout] | [INFO] [stdout] 27 | const ENABLED: &str = "■"; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Module` is never constructed [INFO] [stdout] --> src/day20.rs:61:12 [INFO] [stdout] | [INFO] [stdout] 61 | pub struct Module { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `label_fmt` is never used [INFO] [stdout] --> src/day20.rs:74:12 [INFO] [stdout] | [INFO] [stdout] 73 | impl Module { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] 74 | pub fn label_fmt(&self) -> String { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Pulse` is never constructed [INFO] [stdout] --> src/day20.rs:95:12 [INFO] [stdout] | [INFO] [stdout] 95 | pub struct Pulse { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/day20.rs:101:12 [INFO] [stdout] | [INFO] [stdout] 100 | impl Pulse { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] 101 | pub fn new(from: String, pulse: bool) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `process_signal` is never used [INFO] [stdout] --> src/day20.rs:107:12 [INFO] [stdout] | [INFO] [stdout] 106 | impl Module { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] 107 | pub fn process_signal(&mut self, pulse: Pulse) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Data` is never used [INFO] [stdout] --> src/day20.rs:126:10 [INFO] [stdout] | [INFO] [stdout] 126 | pub type Data = HashMap; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day22` is never constructed [INFO] [stdout] --> src/day22.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Day22; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Data` is never used [INFO] [stdout] --> src/day22.rs:8:10 [INFO] [stdout] | [INFO] [stdout] 8 | pub type Data = Vec>; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day23` is never constructed [INFO] [stdout] --> src/day23.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Day23; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Pos` is never constructed [INFO] [stdout] --> src/day23.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct Pos { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Tile` is never used [INFO] [stdout] --> src/day23.rs:17:10 [INFO] [stdout] | [INFO] [stdout] 17 | pub enum Tile { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `can_walk_on` and `is_walkable` are never used [INFO] [stdout] --> src/day23.rs:24:12 [INFO] [stdout] | [INFO] [stdout] 23 | impl Tile { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] 24 | pub fn can_walk_on(&self, dir: Direction) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | pub fn is_walkable(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Map` is never used [INFO] [stdout] --> src/day23.rs:69:6 [INFO] [stdout] | [INFO] [stdout] 69 | type Map = HashMap<(usize, usize), Vec<((usize, usize), i64)>>; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `solve` is never used [INFO] [stdout] --> src/day23.rs:71:4 [INFO] [stdout] | [INFO] [stdout] 71 | fn solve(grid: &Grid) -> i64 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `generate_map` is never used [INFO] [stdout] --> src/day23.rs:164:4 [INFO] [stdout] | [INFO] [stdout] 164 | fn generate_map(grid: &Grid) -> Map { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `successors` is never used [INFO] [stdout] --> src/day23.rs:203:4 [INFO] [stdout] | [INFO] [stdout] 203 | fn successors(pos: Pos, grid: &Grid) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day24` is never constructed [INFO] [stdout] --> src/day24.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Day24; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Hail` is never constructed [INFO] [stdout] --> src/day24.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Hail { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/day24.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl Hail { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] 14 | pub fn intersect_2d(&self, other: &Self) -> Option<([f64; 2], f64, f64)> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | pub fn eval(&self, t: f64) -> [f64; 3] { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | pub fn sx(&self) -> f64 { self.pos[0] } [INFO] [stdout] | ^^ [INFO] [stdout] 30 | pub fn sy(&self) -> f64 { self.pos[1] } [INFO] [stdout] | ^^ [INFO] [stdout] 31 | pub fn sz(&self) -> f64 { self.pos[2] } [INFO] [stdout] | ^^ [INFO] [stdout] 32 | pub fn ux(&self) -> f64 { self.vel[0] } [INFO] [stdout] | ^^ [INFO] [stdout] 33 | pub fn uy(&self) -> f64 { self.vel[1] } [INFO] [stdout] | ^^ [INFO] [stdout] 34 | pub fn uz(&self) -> f64 { self.vel[2] } [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `intersect_2d` is never used [INFO] [stdout] --> src/day24.rs:37:4 [INFO] [stdout] | [INFO] [stdout] 37 | fn intersect_2d(v1: [f64; 2], v2: [f64; 2], v3: [f64; 2], v4: [f64; 2]) -> Option<([f64; 2], f64, f64)> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `solve` is never used [INFO] [stdout] --> src/day24.rs:85:4 [INFO] [stdout] | [INFO] [stdout] 85 | fn solve(mut hails: [Hail; 5]) -> Option { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `step_modules` is never used [INFO] [stdout] --> src/day20.rs:128:4 [INFO] [stdout] | [INFO] [stdout] 128 | fn step_modules(mut data: Data) -> (Data, (usize, usize)) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `step_modules_2` is never used [INFO] [stdout] --> src/day20.rs:145:4 [INFO] [stdout] | [INFO] [stdout] 145 | fn step_modules_2(mut data: Data) -> (Data, Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day21` is never constructed [INFO] [stdout] --> src/day21.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct Day21; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Tile` is never used [INFO] [stdout] --> src/day21.rs:17:10 [INFO] [stdout] | [INFO] [stdout] 17 | pub enum Tile { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_garden` is never used [INFO] [stdout] --> src/day21.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl Tile { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] 23 | pub fn is_garden(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Data` is never constructed [INFO] [stdout] --> src/day21.rs:32:12 [INFO] [stdout] | [INFO] [stdout] 32 | pub struct Data { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `solve_and_eval_polynomial` is never used [INFO] [stdout] --> src/day21.rs:78:4 [INFO] [stdout] | [INFO] [stdout] 78 | fn solve_and_eval_polynomial(points: &[(f64, f64); 3], x: f64) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `improved_solution` is never used [INFO] [stdout] --> src/day21.rs:88:4 [INFO] [stdout] | [INFO] [stdout] 88 | fn improved_solution(data: &Data, num_steps: usize, start_set: IndexSet<(i64, i64)>) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `naive` is never used [INFO] [stdout] --> src/day21.rs:121:4 [INFO] [stdout] | [INFO] [stdout] 121 | fn naive(data: &Data, num_steps: usize) -> IndexSet<(i64, i64)> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `step_positions` is never used [INFO] [stdout] --> src/day21.rs:138:4 [INFO] [stdout] | [INFO] [stdout] 138 | fn step_positions(mut positions: IndexSet<(usize, usize)>, grid: &Grid) -> IndexSet<(usize, usize)> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_grid` is never used [INFO] [stdout] --> src/day21.rs:153:4 [INFO] [stdout] | [INFO] [stdout] 153 | fn print_grid(grid: &Grid, positions: &IndexSet<(usize, usize)>) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_grid_cycle` is never used [INFO] [stdout] --> src/day21.rs:169:4 [INFO] [stdout] | [INFO] [stdout] 169 | fn print_grid_cycle(grid: &Grid, positions: &IndexSet<(i64, i64)>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `a` should have an upper case name [INFO] [stdout] --> src/slope_descent.rs:71:15 [INFO] [stdout] | [INFO] [stdout] 71 | const a: f64 = -2.5; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] help: convert the identifier to upper case [INFO] [stdout] | [INFO] [stdout] 71 - const a: f64 = -2.5; [INFO] [stdout] 71 + const A: f64 = -2.5; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `b` should have an upper case name [INFO] [stdout] --> src/slope_descent.rs:72:15 [INFO] [stdout] | [INFO] [stdout] 72 | const b: f64 = 3.0; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] help: convert the identifier to upper case [INFO] [stdout] | [INFO] [stdout] 72 - const b: f64 = 3.0; [INFO] [stdout] 72 + const B: f64 = 3.0; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `c` should have an upper case name [INFO] [stdout] --> src/slope_descent.rs:73:15 [INFO] [stdout] | [INFO] [stdout] 73 | const c: f64 = 1.95; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] help: convert the identifier to upper case (notice the capitalization) [INFO] [stdout] | [INFO] [stdout] 73 - const c: f64 = 1.95; [INFO] [stdout] 73 + const C: f64 = 1.95; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `gradient_descent` is never used [INFO] [stdout] --> src/slope_descent.rs:9:15 [INFO] [stdout] | [INFO] [stdout] 9 | pub(crate) fn gradient_descent( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_grad_descent` is never used [INFO] [stdout] --> src/slope_descent.rs:61:15 [INFO] [stdout] | [INFO] [stdout] 61 | pub(crate) fn test_grad_descent() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find_minimum` is never used [INFO] [stdout] --> src/slope_descent.rs:97:8 [INFO] [stdout] | [INFO] [stdout] 97 | pub fn find_minimum(func: FN, start: Option<[f64; N]>) -> ([f64; N], f64) [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Target` is never constructed [INFO] [stdout] --> src/slope_descent.rs:154:12 [INFO] [stdout] | [INFO] [stdout] 154 | pub struct Target [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `SteepestDescent` is never used [INFO] [stdout] --> src/slope_descent.rs:164:11 [INFO] [stdout] | [INFO] [stdout] 164 | pub trait SteepestDescent { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `first_order` is never used [INFO] [stdout] --> src/slope_descent.rs:231:4 [INFO] [stdout] | [INFO] [stdout] 231 | fn first_order(f: &FN, x: X, h: X) -> X [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `partial` is never used [INFO] [stdout] --> src/slope_descent.rs:239:4 [INFO] [stdout] | [INFO] [stdout] 239 | fn partial(f: &FN, x: &[X; N], i: usize, h: X) -> X [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `gradient` is never used [INFO] [stdout] --> src/slope_descent.rs:253:4 [INFO] [stdout] | [INFO] [stdout] 253 | fn gradient(f: &FN, x: &[X; N], h: X) -> [X; N] [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `newton` is never used [INFO] [stdout] --> src/slope_descent.rs:266:4 [INFO] [stdout] | [INFO] [stdout] 266 | fn newton(points: &[(X, X); N]) -> [X; N] [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `rec_newton` is never used [INFO] [stdout] --> src/slope_descent.rs:283:4 [INFO] [stdout] | [INFO] [stdout] 283 | fn rec_newton(points: &[(X, X); N], coefs: &mut Vec) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `evaluate` is never used [INFO] [stdout] --> src/slope_descent.rs:305:4 [INFO] [stdout] | [INFO] [stdout] 305 | fn evaluate(x: X, coefs: &Vec, points: &[(X, X); N]) -> X [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day25` is never constructed [INFO] [stdout] --> src/day25.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct Day25; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Component` is never constructed [INFO] [stdout] --> src/day25.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 17 | pub struct Component { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `to_group` and `to_range` are never used [INFO] [stdout] --> src/day25.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl Component { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] 23 | pub fn to_group(self) -> Vec { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | pub fn to_range(&self) -> Range { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `add_edge` is never used [INFO] [stdout] --> src/day25.rs:94:4 [INFO] [stdout] | [INFO] [stdout] 94 | fn add_edge(map: &mut HashMap>, a: N, b: N) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `remove_edge` is never used [INFO] [stdout] --> src/day25.rs:99:4 [INFO] [stdout] | [INFO] [stdout] 99 | fn remove_edge(map: &mut HashMap>, a: &N, b: &N) -> (N, N) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `remove_triple_edges` is never used [INFO] [stdout] --> src/day25.rs:108:4 [INFO] [stdout] | [INFO] [stdout] 108 | fn remove_triple_edges(map: &mut HashMap>, start: &String, end: &String) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `all_expand` is never used [INFO] [stdout] --> src/graph.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | pub fn all_expand(start: N, mut successors: FN) -> Vec> [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `floyd_warshall` is never used [INFO] [stdout] --> src/graph.rs:34:8 [INFO] [stdout] | [INFO] [stdout] 34 | pub fn floyd_warshall(adjacency_matrix: &[Vec]) -> Vec> [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `unwrap_or_inf` is never used [INFO] [stdout] --> src/graph.rs:51:16 [INFO] [stdout] | [INFO] [stdout] 50 | impl> Grid { [INFO] [stdout] | -------------------------------------- method in this implementation [INFO] [stdout] 51 | pub fn unwrap_or_inf(self, def: C) -> C { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_adjacency_matrix` is never used [INFO] [stdout] --> src/graph.rs:89:8 [INFO] [stdout] | [INFO] [stdout] 89 | pub fn create_adjacency_matrix( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_adjacency_matrix` is never used [INFO] [stdout] --> src/graph.rs:124:8 [INFO] [stdout] | [INFO] [stdout] 124 | pub fn test_adjacency_matrix() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day1322` is never constructed [INFO] [stdout] --> src/day13_22.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Day1322; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `PacketData` is never used [INFO] [stdout] --> src/day13_22.rs:9:10 [INFO] [stdout] | [INFO] [stdout] 9 | pub enum PacketData { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `backtracking` is never used [INFO] [stdout] --> src/backtracking/backtracking.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn backtracking(start: S, mut successors: FN, mut success: FS) -> Option [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `step` is never used [INFO] [stdout] --> src/backtracking/backtracking.rs:17:4 [INFO] [stdout] | [INFO] [stdout] 17 | fn step(mut state: S, successors: &mut FN, success: &mut FS) -> Result [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `states_explored` should have an upper case name [INFO] [stdout] --> src/backtracking/sudoku.rs:91:12 [INFO] [stdout] | [INFO] [stdout] 91 | static mut states_explored: i32 = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: convert the identifier to upper case [INFO] [stdout] | [INFO] [stdout] 91 - static mut states_explored: i32 = 0; [INFO] [stdout] 91 + static mut STATES_EXPLORED: i32 = 0; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 54.52s [INFO] running `Command { std: "docker" "inspect" "feab313718741eef08bee017808273c32b6867f7f1df601a33167014191abbd2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "feab313718741eef08bee017808273c32b6867f7f1df601a33167014191abbd2", kill_on_drop: false }` [INFO] [stdout] feab313718741eef08bee017808273c32b6867f7f1df601a33167014191abbd2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ba034e40a4dd9db37e730d5557568cfc2996cdf1a3598ce2dd34b57fbcd5a6f2 [INFO] running `Command { std: "docker" "start" "-a" "ba034e40a4dd9db37e730d5557568cfc2996cdf1a3598ce2dd34b57fbcd5a6f2", kill_on_drop: false }` [INFO] [stderr] Compiling aoc2023 v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `pathfinding::prelude::separate_components` [INFO] [stdout] --> src/main.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use pathfinding::prelude::separate_components; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HashMap` and `HashSet` [INFO] [stdout] --> src/day3.rs:1:24 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/day4.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `regex::Regex` [INFO] [stdout] --> src/day4.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use regex::Regex; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::hash_map::Entry` [INFO] [stdout] --> src/day8.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::hash_map::Entry; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Hasher` [INFO] [stdout] --> src/day8.rs:3:23 [INFO] [stdout] | [INFO] [stdout] 3 | use std::hash::{Hash, Hasher}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Cycle` and `Enumerate` [INFO] [stdout] --> src/day8.rs:4:17 [INFO] [stdout] | [INFO] [stdout] 4 | use std::iter::{Cycle, Enumerate}; [INFO] [stdout] | ^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::slice::Iter` [INFO] [stdout] --> src/day8.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::slice::Iter; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `bfs`, `brent`, and `dfs` [INFO] [stdout] --> src/day10.rs:4:28 [INFO] [stdout] | [INFO] [stdout] 4 | use pathfinding::prelude::{bfs, brent, dfs}; [INFO] [stdout] | ^^^ ^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::hash_map::Entry` [INFO] [stdout] --> src/day12.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::hash_map::Entry; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `itertools::Itertools` [INFO] [stdout] --> src/day12.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use itertools::Itertools; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp::min` [INFO] [stdout] --> src/day13.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cmp::min; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::hash::Hash` [INFO] [stdout] --> src/day14.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::hash::Hash; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `itertools::Itertools` [INFO] [stdout] --> src/day18.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use itertools::Itertools; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `itertools::FoldWhile::Continue` [INFO] [stdout] --> src/day19.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use itertools::FoldWhile::Continue; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `FoldWhile` [INFO] [stdout] --> src/day19.rs:8:17 [INFO] [stdout] | [INFO] [stdout] 8 | use itertools::{FoldWhile, Itertools}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::combinations::CombinationIterator` [INFO] [stdout] --> src/day19.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::combinations::CombinationIterator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::day5::Map` [INFO] [stdout] --> src/day19.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::day5::Map; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::hash_map::RandomState` [INFO] [stdout] --> src/ranges.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::hash_map::RandomState; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashSet` [INFO] [stdout] --> src/day20.rs:4:33 [INFO] [stdout] | [INFO] [stdout] 4 | use std::collections::{HashMap, HashSet, VecDeque}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `thread` and `time` [INFO] [stdout] --> src/day20.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | use std::{thread, time}; [INFO] [stdout] | ^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `colored::Colorize` [INFO] [stdout] --> src/day20.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use colored::Colorize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `join` [INFO] [stdout] --> src/day20.rs:8:28 [INFO] [stdout] | [INFO] [stdout] 8 | use itertools::{Itertools, join}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `bfs_reach`, `brent`, and `topological_sort` [INFO] [stdout] --> src/day20.rs:10:28 [INFO] [stdout] | [INFO] [stdout] 10 | use pathfinding::prelude::{bfs_reach, brent, topological_sort}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^ ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HashMap` and `HashSet` [INFO] [stdout] --> src/day21.rs:1:24 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter::repeat` [INFO] [stdout] --> src/day21.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::iter::repeat; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `num::Integer` [INFO] [stdout] --> src/day21.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use num::Integer; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `astar` and `brent` [INFO] [stdout] --> src/day21.rs:8:28 [INFO] [stdout] | [INFO] [stdout] 8 | use pathfinding::prelude::{astar, brent}; [INFO] [stdout] | ^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Direction` [INFO] [stdout] --> src/day21.rs:9:20 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::day10::{Direction, DIRECTIONS}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/day22.rs:78:80 [INFO] [stdout] | [INFO] [stdout] 78 | let mut supported_blocks: HashSet<_, RandomState> = HashSet::from_iter((0..blocks.len())); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 78 - let mut supported_blocks: HashSet<_, RandomState> = HashSet::from_iter((0..blocks.len())); [INFO] [stdout] 78 + let mut supported_blocks: HashSet<_, RandomState> = HashSet::from_iter(0..blocks.len()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/day22.rs:161:80 [INFO] [stdout] | [INFO] [stdout] 161 | let mut supported_blocks: HashSet<_, RandomState> = HashSet::from_iter((0..blocks.len())); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 161 - let mut supported_blocks: HashSet<_, RandomState> = HashSet::from_iter((0..blocks.len())); [INFO] [stdout] 161 + let mut supported_blocks: HashSet<_, RandomState> = HashSet::from_iter(0..blocks.len()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `bfs`, `dfs_reach`, `dfs`, and `yen` [INFO] [stdout] --> src/day23.rs:3:28 [INFO] [stdout] | [INFO] [stdout] 3 | use pathfinding::prelude::{bfs, dfs, dfs_reach, yen}; [INFO] [stdout] | ^^^ ^^^ ^^^^^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Matrix3`, `Matrix3x1`, `Matrix4`, and `Matrix4x1` [INFO] [stdout] --> src/day24.rs:2:36 [INFO] [stdout] | [INFO] [stdout] 2 | use nalgebra::{Matrix2, Matrix2x1, Matrix3, Matrix3x1, Matrix4, Matrix4x1, Matrix5, Matrix5x1}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^ ^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Range` [INFO] [stdout] --> src/slope_descent.rs:4:36 [INFO] [stdout] | [INFO] [stdout] 4 | use std::ops::{Add, Div, Mul, Neg, Range, Sub}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Num` and `Zero` [INFO] [stdout] --> src/slope_descent.rs:6:18 [INFO] [stdout] | [INFO] [stdout] 6 | use num::{Float, Num, Zero}; [INFO] [stdout] | ^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp::Ordering` [INFO] [stdout] --> src/day25.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cmp::Ordering; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `kruskal`, `separate_components`, and `strongly_connected_components` [INFO] [stdout] --> src/day25.rs:7:33 [INFO] [stdout] | [INFO] [stdout] 7 | use pathfinding::prelude::{bfs, kruskal, separate_components, strongly_connected_components}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::combinations::CombinationIterator` [INFO] [stdout] --> src/day25.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::combinations::CombinationIterator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `bfs` and `dijkstra` [INFO] [stdout] --> src/graph.rs:7:28 [INFO] [stdout] | [INFO] [stdout] 7 | use pathfinding::prelude::{bfs, dijkstra}; [INFO] [stdout] | ^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `backtracking` [INFO] [stdout] --> src/backtracking/sudoku.rs:4:49 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::backtracking::backtracking::{Action, backtracking, backtracking_iterative}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `num::traits::Euclid` [INFO] [stdout] --> src/grid.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use num::traits::Euclid; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `num::Num` [INFO] [stdout] --> src/day18.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use num::Num; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `itertools::Itertools` [INFO] [stdout] --> src/day21.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use itertools::Itertools; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Float` [INFO] [stdout] --> src/slope_descent.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | use num::{Float, Num, Zero}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `board` [INFO] [stdout] --> src/backtracking/sudoku.rs:164:9 [INFO] [stdout] | [INFO] [stdout] 164 | let board = [ [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_board` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/backtracking/sudoku.rs:201:23 [INFO] [stdout] | [INFO] [stdout] 201 | .filter_map(|(y, b)| b.iter().enumerate() [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 201 | .filter_map(|(_y, b)| b.iter().enumerate() [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `CAP` [INFO] [stdout] | [INFO] [stdout] 201 - .filter_map(|(y, b)| b.iter().enumerate() [INFO] [stdout] 201 + .filter_map(|(day21::step_positions::CAP, b)| b.iter().enumerate() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/backtracking/sudoku.rs:202:21 [INFO] [stdout] | [INFO] [stdout] 202 | .find(|(x, c)| **c == 0)).next().unwrap().0; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `vz` [INFO] [stdout] --> src/day24.rs:113:14 [INFO] [stdout] | [INFO] [stdout] 113 | let [pz, vz] = a.lu().solve(&b)?.data.0[0]; [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 113 | let [pz, _vz] = a.lu().solve(&b)?.data.0[0]; [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `c` [INFO] [stdout] | [INFO] [stdout] 113 - let [pz, vz] = a.lu().solve(&b)?.data.0[0]; [INFO] [stdout] 113 + let [pz, slope_descent::test_grad_descent::test_2::c] = a.lu().solve(&b)?.data.0[0]; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day24.rs:85:10 [INFO] [stdout] | [INFO] [stdout] 85 | fn solve(mut hails: [Hail; 5]) -> Option { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ackley_fn` [INFO] [stdout] --> src/slope_descent.rs:81:9 [INFO] [stdout] | [INFO] [stdout] 81 | let ackley_fn = |&[x, y]: &[f64; 2]| { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ackley_fn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/slope_descent.rs:91:9 [INFO] [stdout] | [INFO] [stdout] 91 | let y = target.steepest_descent(&[1.0, 0.0], 100, 0.001) [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `n_round` is never read [INFO] [stdout] --> src/day21.rs:93:13 [INFO] [stdout] | [INFO] [stdout] 93 | let mut n_round = indexset![]; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data` [INFO] [stdout] --> src/day25.rs:89:22 [INFO] [stdout] | [INFO] [stdout] 89 | fn part_2(&self, data: &Vec) -> i64 { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day23.rs:84:9 [INFO] [stdout] | [INFO] [stdout] 84 | let mut map: Map = generate_map(&grid); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `full_test` is never used [INFO] [stdout] --> src/main.rs:76:4 [INFO] [stdout] | [INFO] [stdout] 76 | fn full_test() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day1` is never used [INFO] [stdout] --> src/main.rs:87:4 [INFO] [stdout] | [INFO] [stdout] 87 | fn test_day1() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day2` is never used [INFO] [stdout] --> src/main.rs:98:4 [INFO] [stdout] | [INFO] [stdout] 98 | fn test_day2() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day3` is never used [INFO] [stdout] --> src/main.rs:108:4 [INFO] [stdout] | [INFO] [stdout] 108 | fn test_day3() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day4` is never used [INFO] [stdout] --> src/main.rs:118:4 [INFO] [stdout] | [INFO] [stdout] 118 | fn test_day4() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day5` is never used [INFO] [stdout] --> src/main.rs:128:4 [INFO] [stdout] | [INFO] [stdout] 128 | fn test_day5() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day6` is never used [INFO] [stdout] --> src/main.rs:138:4 [INFO] [stdout] | [INFO] [stdout] 138 | fn test_day6() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day7` is never used [INFO] [stdout] --> src/main.rs:148:4 [INFO] [stdout] | [INFO] [stdout] 148 | fn test_day7() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day8` is never used [INFO] [stdout] --> src/main.rs:158:4 [INFO] [stdout] | [INFO] [stdout] 158 | fn test_day8() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day9` is never used [INFO] [stdout] --> src/main.rs:169:4 [INFO] [stdout] | [INFO] [stdout] 169 | fn test_day9() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day10` is never used [INFO] [stdout] --> src/main.rs:179:4 [INFO] [stdout] | [INFO] [stdout] 179 | fn test_day10() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day11` is never used [INFO] [stdout] --> src/main.rs:190:4 [INFO] [stdout] | [INFO] [stdout] 190 | fn test_day11() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day12` is never used [INFO] [stdout] --> src/main.rs:200:4 [INFO] [stdout] | [INFO] [stdout] 200 | fn test_day12() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day13` is never used [INFO] [stdout] --> src/main.rs:210:4 [INFO] [stdout] | [INFO] [stdout] 210 | fn test_day13() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day14` is never used [INFO] [stdout] --> src/main.rs:220:4 [INFO] [stdout] | [INFO] [stdout] 220 | fn test_day14() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day15` is never used [INFO] [stdout] --> src/main.rs:230:4 [INFO] [stdout] | [INFO] [stdout] 230 | fn test_day15() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day16` is never used [INFO] [stdout] --> src/main.rs:240:4 [INFO] [stdout] | [INFO] [stdout] 240 | fn test_day16() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day17` is never used [INFO] [stdout] --> src/main.rs:250:4 [INFO] [stdout] | [INFO] [stdout] 250 | fn test_day17() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day18` is never used [INFO] [stdout] --> src/main.rs:260:4 [INFO] [stdout] | [INFO] [stdout] 260 | fn test_day18() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day19` is never used [INFO] [stdout] --> src/main.rs:270:4 [INFO] [stdout] | [INFO] [stdout] 270 | fn test_day19() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day20` is never used [INFO] [stdout] --> src/main.rs:280:4 [INFO] [stdout] | [INFO] [stdout] 280 | fn test_day20() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day21` is never used [INFO] [stdout] --> src/main.rs:290:4 [INFO] [stdout] | [INFO] [stdout] 290 | fn test_day21() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day22` is never used [INFO] [stdout] --> src/main.rs:300:4 [INFO] [stdout] | [INFO] [stdout] 300 | fn test_day22() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day23` is never used [INFO] [stdout] --> src/main.rs:310:4 [INFO] [stdout] | [INFO] [stdout] 310 | fn test_day23() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day24` is never used [INFO] [stdout] --> src/main.rs:320:4 [INFO] [stdout] | [INFO] [stdout] 320 | fn test_day24() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day25` is never used [INFO] [stdout] --> src/main.rs:330:4 [INFO] [stdout] | [INFO] [stdout] 330 | fn test_day25() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_day13_22` is never used [INFO] [stdout] --> src/main.rs:340:4 [INFO] [stdout] | [INFO] [stdout] 340 | fn test_day13_22() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `V2I` is never constructed [INFO] [stdout] --> src/vector.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct V2I { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/vector.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 9 | impl V2I { [INFO] [stdout] | -------- associated function in this implementation [INFO] [stdout] 10 | pub fn new(x: i32, y: i32) -> V2I { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Day` is never used [INFO] [stdout] --> src/day.rs:3:11 [INFO] [stdout] | [INFO] [stdout] 3 | pub trait Day { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run_with_test` is never used [INFO] [stdout] --> src/day.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | pub fn run_with_test>( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run_with_test_2` is never used [INFO] [stdout] --> src/day.rs:35:8 [INFO] [stdout] | [INFO] [stdout] 35 | pub fn run_with_test_2>( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_part_1` is never used [INFO] [stdout] --> src/day.rs:60:4 [INFO] [stdout] | [INFO] [stdout] 60 | fn test_part_1>(day: &TDay, data: &TData) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_part_2` is never used [INFO] [stdout] --> src/day.rs:71:4 [INFO] [stdout] | [INFO] [stdout] 71 | fn test_part_2>(day: &TDay, data: &TData) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_parse_data` is never used [INFO] [stdout] --> src/day.rs:82:4 [INFO] [stdout] | [INFO] [stdout] 82 | fn test_parse_data>(day: &TDay, file_content: String) -> TData { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run_2` is never used [INFO] [stdout] --> src/day.rs:93:8 [INFO] [stdout] | [INFO] [stdout] 93 | pub fn run_2>(day: &TDay, file_name_1: &str, file_name_2: &str) -> std::io::Result<(i64, i64)> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day15` is never constructed [INFO] [stdout] --> src/day15.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Day15; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Data` is never constructed [INFO] [stdout] --> src/day15.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Data { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `hash` is never used [INFO] [stdout] --> src/day15.rs:63:4 [INFO] [stdout] | [INFO] [stdout] 63 | fn hash(str: &str) -> usize { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Operation` is never used [INFO] [stdout] --> src/day15.rs:73:6 [INFO] [stdout] | [INFO] [stdout] 73 | enum Operation { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `label` is never used [INFO] [stdout] --> src/day15.rs:79:12 [INFO] [stdout] | [INFO] [stdout] 78 | impl Operation { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] 79 | pub fn label(&self) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day16` is never constructed [INFO] [stdout] --> src/day16.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Day16; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Tile` is never used [INFO] [stdout] --> src/day16.rs:9:10 [INFO] [stdout] | [INFO] [stdout] 9 | pub enum Tile { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `char_to_tile` and `successors` are never used [INFO] [stdout] --> src/day16.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 25 | impl Tile { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 26 | pub fn char_to_tile(c: char) -> Tile { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn successors(&self, mut pos: Pos) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Data` is never constructed [INFO] [stdout] --> src/day16.rs:88:12 [INFO] [stdout] | [INFO] [stdout] 88 | pub struct Data { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Pos` is never constructed [INFO] [stdout] --> src/day16.rs:93:12 [INFO] [stdout] | [INFO] [stdout] 93 | pub struct Pos { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `step` and `in_bounds` are never used [INFO] [stdout] --> src/day16.rs:99:12 [INFO] [stdout] | [INFO] [stdout] 98 | impl Pos { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 99 | pub fn step(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 104 | pub fn in_bounds(&self, grid: &Grid) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `solve` is never used [INFO] [stdout] --> src/day16.rs:167:4 [INFO] [stdout] | [INFO] [stdout] 167 | fn solve(start: Pos, grid: &Grid) -> i64 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Grid` is never constructed [INFO] [stdout] --> src/grid.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Grid { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/grid.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl Grid { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 12 | pub fn new(grid: Vec>) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | pub fn get(&self, x: usize, y: usize) -> Option<&T> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn get_mut(&mut self, x: usize, y: usize) -> Option<&mut T> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | pub fn get_i(&self, x: i64, y: i64) -> Option<&T> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn get_cycle(&self, mut x: i64, mut y: i64) -> Option<&T> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn positions bool>(&self, predicate: FN) -> Vec<(usize, usize)> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 55 | pub fn iter(&self) -> GridIter { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn map X>(self, func: FN) -> Grid { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GridIter` is never constructed [INFO] [stdout] --> src/grid.rs:68:12 [INFO] [stdout] | [INFO] [stdout] 68 | pub struct GridIter<'a, T> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day17` is never constructed [INFO] [stdout] --> src/day17.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Day17; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Data` is never used [INFO] [stdout] --> src/day17.rs:7:10 [INFO] [stdout] | [INFO] [stdout] 7 | pub type Data = Grid; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Pos` is never constructed [INFO] [stdout] --> src/day17.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct Pos { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `turn_left_and_step`, `turn_right_and_step`, and `move_forward` are never used [INFO] [stdout] --> src/day17.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 17 | impl Pos { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 18 | fn turn_left_and_step(&self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | fn turn_right_and_step(&self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | fn move_forward(&self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day18` is never constructed [INFO] [stdout] --> src/day18.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Day18; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Trench` is never constructed [INFO] [stdout] --> src/day18.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Trench { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Data` is never used [INFO] [stdout] --> src/day18.rs:16:10 [INFO] [stdout] | [INFO] [stdout] 16 | pub type Data = Vec; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `solve` is never used [INFO] [stdout] --> src/day18.rs:62:4 [INFO] [stdout] | [INFO] [stdout] 62 | fn solve<'a, IT: Iterator>(iter: IT) -> i64 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day19` is never constructed [INFO] [stdout] --> src/day19.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Day19; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Data` is never constructed [INFO] [stdout] --> src/day19.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 17 | pub struct Data { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Part` is never used [INFO] [stdout] --> src/day19.rs:23:10 [INFO] [stdout] | [INFO] [stdout] 23 | pub enum Part { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Rating` is never constructed [INFO] [stdout] --> src/day19.rs:55:12 [INFO] [stdout] | [INFO] [stdout] 55 | pub struct Rating { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `total` and `is_accepted` are never used [INFO] [stdout] --> src/day19.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 62 | impl Rating { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] 63 | pub fn total(&self) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 67 | pub fn is_accepted(&self, workflows: &HashMap) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Workflow` is never constructed [INFO] [stdout] --> src/day19.rs:77:12 [INFO] [stdout] | [INFO] [stdout] 77 | pub struct Workflow { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_result` is never used [INFO] [stdout] --> src/day19.rs:83:12 [INFO] [stdout] | [INFO] [stdout] 82 | impl Workflow { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] 83 | pub fn get_result(&self, rating: &Rating) -> &WorkResult { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Rule` is never constructed [INFO] [stdout] --> src/day19.rs:91:12 [INFO] [stdout] | [INFO] [stdout] 91 | pub struct Rule { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `applies_val`, `applies_rating`, `apply_range`, `apply_ranges`, and `negate` are never used [INFO] [stdout] --> src/day19.rs:137:12 [INFO] [stdout] | [INFO] [stdout] 136 | impl Rule { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] 137 | pub fn applies_val(&self, val: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 141 | pub fn applies_rating(&self, rating: &Rating) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn apply_range(&self, range: &Range) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 158 | pub fn apply_ranges(&self, mut ranges: [Range; 4]) -> Option<[Range; 4]> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 168 | pub fn negate(&self) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `WorkResult` is never used [INFO] [stdout] --> src/day19.rs:177:10 [INFO] [stdout] | [INFO] [stdout] 177 | pub enum WorkResult { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_workflow` is never used [INFO] [stdout] --> src/day19.rs:192:12 [INFO] [stdout] | [INFO] [stdout] 191 | impl WorkResult { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] 192 | pub fn is_workflow(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `total` is never used [INFO] [stdout] --> src/day19.rs:212:4 [INFO] [stdout] | [INFO] [stdout] 212 | fn total(ranges: [Range; 4]) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `inclusion_exclusion` is never used [INFO] [stdout] --> src/day19.rs:216:4 [INFO] [stdout] | [INFO] [stdout] 216 | fn inclusion_exclusion(ranges: &Vec>) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `intersect` is never used [INFO] [stdout] --> src/ranges.rs:7:15 [INFO] [stdout] | [INFO] [stdout] 7 | pub(crate) fn intersect(a: &Range, b: &Range) -> Option> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `intersects` is never used [INFO] [stdout] --> src/ranges.rs:12:15 [INFO] [stdout] | [INFO] [stdout] 12 | pub(crate) fn intersects(a: &Range, b: &Range) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `intersect_n` is never used [INFO] [stdout] --> src/ranges.rs:16:15 [INFO] [stdout] | [INFO] [stdout] 16 | pub(crate) fn intersect_n(a: &[Range; N], b: &[Range; N]) -> Option<[Range; N]> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `min_max_xy` is never used [INFO] [stdout] --> src/ranges.rs:31:15 [INFO] [stdout] | [INFO] [stdout] 31 | pub(crate) fn min_max_xy(iter: Iter) -> Option<(Range, Range)> [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `min_max_comp` is never used [INFO] [stdout] --> src/ranges.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | pub(crate) fn min_max_comp(iter: Iter) -> Option<([Idx; N], [Idx; N])> [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `increment` is never used [INFO] [stdout] --> src/ranges.rs:189:12 [INFO] [stdout] | [INFO] [stdout] 189 | fn increment(indices: &mut [usize; N], ranges: &RangeD, i: usize) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day20` is never constructed [INFO] [stdout] --> src/day20.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct Day20; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ModuleType` is never used [INFO] [stdout] --> src/day20.rs:15:10 [INFO] [stdout] | [INFO] [stdout] 15 | pub enum ModuleType { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DISABLED` is never used [INFO] [stdout] --> src/day20.rs:26:7 [INFO] [stdout] | [INFO] [stdout] 26 | const DISABLED: &str = "□"; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ENABLED` is never used [INFO] [stdout] --> src/day20.rs:27:7 [INFO] [stdout] | [INFO] [stdout] 27 | const ENABLED: &str = "■"; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Module` is never constructed [INFO] [stdout] --> src/day20.rs:61:12 [INFO] [stdout] | [INFO] [stdout] 61 | pub struct Module { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `label_fmt` is never used [INFO] [stdout] --> src/day20.rs:74:12 [INFO] [stdout] | [INFO] [stdout] 73 | impl Module { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] 74 | pub fn label_fmt(&self) -> String { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Pulse` is never constructed [INFO] [stdout] --> src/day20.rs:95:12 [INFO] [stdout] | [INFO] [stdout] 95 | pub struct Pulse { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/day20.rs:101:12 [INFO] [stdout] | [INFO] [stdout] 100 | impl Pulse { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] 101 | pub fn new(from: String, pulse: bool) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `process_signal` is never used [INFO] [stdout] --> src/day20.rs:107:12 [INFO] [stdout] | [INFO] [stdout] 106 | impl Module { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] 107 | pub fn process_signal(&mut self, pulse: Pulse) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Data` is never used [INFO] [stdout] --> src/day20.rs:126:10 [INFO] [stdout] | [INFO] [stdout] 126 | pub type Data = HashMap; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `step_modules` is never used [INFO] [stdout] --> src/day20.rs:128:4 [INFO] [stdout] | [INFO] [stdout] 128 | fn step_modules(mut data: Data) -> (Data, (usize, usize)) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `step_modules_2` is never used [INFO] [stdout] --> src/day20.rs:145:4 [INFO] [stdout] | [INFO] [stdout] 145 | fn step_modules_2(mut data: Data) -> (Data, Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day21` is never constructed [INFO] [stdout] --> src/day21.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct Day21; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Tile` is never used [INFO] [stdout] --> src/day21.rs:17:10 [INFO] [stdout] | [INFO] [stdout] 17 | pub enum Tile { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_garden` is never used [INFO] [stdout] --> src/day21.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl Tile { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] 23 | pub fn is_garden(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Data` is never constructed [INFO] [stdout] --> src/day21.rs:32:12 [INFO] [stdout] | [INFO] [stdout] 32 | pub struct Data { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `solve_and_eval_polynomial` is never used [INFO] [stdout] --> src/day21.rs:78:4 [INFO] [stdout] | [INFO] [stdout] 78 | fn solve_and_eval_polynomial(points: &[(f64, f64); 3], x: f64) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `improved_solution` is never used [INFO] [stdout] --> src/day21.rs:88:4 [INFO] [stdout] | [INFO] [stdout] 88 | fn improved_solution(data: &Data, num_steps: usize, start_set: IndexSet<(i64, i64)>) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `naive` is never used [INFO] [stdout] --> src/day21.rs:121:4 [INFO] [stdout] | [INFO] [stdout] 121 | fn naive(data: &Data, num_steps: usize) -> IndexSet<(i64, i64)> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `step_positions` is never used [INFO] [stdout] --> src/day21.rs:138:4 [INFO] [stdout] | [INFO] [stdout] 138 | fn step_positions(mut positions: IndexSet<(usize, usize)>, grid: &Grid) -> IndexSet<(usize, usize)> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_grid` is never used [INFO] [stdout] --> src/day21.rs:153:4 [INFO] [stdout] | [INFO] [stdout] 153 | fn print_grid(grid: &Grid, positions: &IndexSet<(usize, usize)>) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_grid_cycle` is never used [INFO] [stdout] --> src/day21.rs:169:4 [INFO] [stdout] | [INFO] [stdout] 169 | fn print_grid_cycle(grid: &Grid, positions: &IndexSet<(i64, i64)>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day22` is never constructed [INFO] [stdout] --> src/day22.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Day22; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Data` is never used [INFO] [stdout] --> src/day22.rs:8:10 [INFO] [stdout] | [INFO] [stdout] 8 | pub type Data = Vec>; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day23` is never constructed [INFO] [stdout] --> src/day23.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Day23; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Pos` is never constructed [INFO] [stdout] --> src/day23.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct Pos { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Tile` is never used [INFO] [stdout] --> src/day23.rs:17:10 [INFO] [stdout] | [INFO] [stdout] 17 | pub enum Tile { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `can_walk_on` and `is_walkable` are never used [INFO] [stdout] --> src/day23.rs:24:12 [INFO] [stdout] | [INFO] [stdout] 23 | impl Tile { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] 24 | pub fn can_walk_on(&self, dir: Direction) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | pub fn is_walkable(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Map` is never used [INFO] [stdout] --> src/day23.rs:69:6 [INFO] [stdout] | [INFO] [stdout] 69 | type Map = HashMap<(usize, usize), Vec<((usize, usize), i64)>>; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `solve` is never used [INFO] [stdout] --> src/day23.rs:71:4 [INFO] [stdout] | [INFO] [stdout] 71 | fn solve(grid: &Grid) -> i64 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `generate_map` is never used [INFO] [stdout] --> src/day23.rs:164:4 [INFO] [stdout] | [INFO] [stdout] 164 | fn generate_map(grid: &Grid) -> Map { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `successors` is never used [INFO] [stdout] --> src/day23.rs:203:4 [INFO] [stdout] | [INFO] [stdout] 203 | fn successors(pos: Pos, grid: &Grid) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day24` is never constructed [INFO] [stdout] --> src/day24.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Day24; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Hail` is never constructed [INFO] [stdout] --> src/day24.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Hail { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/day24.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl Hail { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] 14 | pub fn intersect_2d(&self, other: &Self) -> Option<([f64; 2], f64, f64)> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | pub fn eval(&self, t: f64) -> [f64; 3] { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | pub fn sx(&self) -> f64 { self.pos[0] } [INFO] [stdout] | ^^ [INFO] [stdout] 30 | pub fn sy(&self) -> f64 { self.pos[1] } [INFO] [stdout] | ^^ [INFO] [stdout] 31 | pub fn sz(&self) -> f64 { self.pos[2] } [INFO] [stdout] | ^^ [INFO] [stdout] 32 | pub fn ux(&self) -> f64 { self.vel[0] } [INFO] [stdout] | ^^ [INFO] [stdout] 33 | pub fn uy(&self) -> f64 { self.vel[1] } [INFO] [stdout] | ^^ [INFO] [stdout] 34 | pub fn uz(&self) -> f64 { self.vel[2] } [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day2` is never constructed [INFO] [stdout] --> src/day2.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Day2; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Info` is never constructed [INFO] [stdout] --> src/day2.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Info { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Game` is never constructed [INFO] [stdout] --> src/day2.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct Game { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Color` is never used [INFO] [stdout] --> src/day2.rs:18:10 [INFO] [stdout] | [INFO] [stdout] 18 | pub enum Color { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `total_in_round` is never used [INFO] [stdout] --> src/day2.rs:68:4 [INFO] [stdout] | [INFO] [stdout] 68 | fn total_in_round(round: &Vec<(u32, Color)>) -> (u32, u32, u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day3` is never constructed [INFO] [stdout] --> src/day3.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Day3; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Info` is never constructed [INFO] [stdout] --> src/day3.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Info { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Number` is never constructed [INFO] [stdout] --> src/day3.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Number { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run` is never used [INFO] [stdout] --> src/day.rs:105:8 [INFO] [stdout] | [INFO] [stdout] 105 | pub fn run>(day: &TDay, file_name: &str) -> std::io::Result<(i64, i64)> { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day1` is never constructed [INFO] [stdout] --> src/day1.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct Day1; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Info` is never constructed [INFO] [stdout] --> src/day1.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Info { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `solve` is never used [INFO] [stdout] --> src/day1.rs:42:4 [INFO] [stdout] | [INFO] [stdout] 42 | fn solve(lines: &Vec, digits: Vec<(&str, i64)>) -> i64 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `intersect_2d` is never used [INFO] [stdout] --> src/day24.rs:37:4 [INFO] [stdout] | [INFO] [stdout] 37 | fn intersect_2d(v1: [f64; 2], v2: [f64; 2], v3: [f64; 2], v4: [f64; 2]) -> Option<([f64; 2], f64, f64)> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `solve` is never used [INFO] [stdout] --> src/day24.rs:85:4 [INFO] [stdout] | [INFO] [stdout] 85 | fn solve(mut hails: [Hail; 5]) -> Option { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `gradient_descent` is never used [INFO] [stdout] --> src/slope_descent.rs:9:15 [INFO] [stdout] | [INFO] [stdout] 9 | pub(crate) fn gradient_descent( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_grad_descent` is never used [INFO] [stdout] --> src/slope_descent.rs:61:15 [INFO] [stdout] | [INFO] [stdout] 61 | pub(crate) fn test_grad_descent() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find_minimum` is never used [INFO] [stdout] --> src/slope_descent.rs:97:8 [INFO] [stdout] | [INFO] [stdout] 97 | pub fn find_minimum(func: FN, start: Option<[f64; N]>) -> ([f64; N], f64) [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Target` is never constructed [INFO] [stdout] --> src/slope_descent.rs:154:12 [INFO] [stdout] | [INFO] [stdout] 154 | pub struct Target [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `SteepestDescent` is never used [INFO] [stdout] --> src/slope_descent.rs:164:11 [INFO] [stdout] | [INFO] [stdout] 164 | pub trait SteepestDescent { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `first_order` is never used [INFO] [stdout] --> src/slope_descent.rs:231:4 [INFO] [stdout] | [INFO] [stdout] 231 | fn first_order(f: &FN, x: X, h: X) -> X [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `partial` is never used [INFO] [stdout] --> src/slope_descent.rs:239:4 [INFO] [stdout] | [INFO] [stdout] 239 | fn partial(f: &FN, x: &[X; N], i: usize, h: X) -> X [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `gradient` is never used [INFO] [stdout] --> src/slope_descent.rs:253:4 [INFO] [stdout] | [INFO] [stdout] 253 | fn gradient(f: &FN, x: &[X; N], h: X) -> [X; N] [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `newton` is never used [INFO] [stdout] --> src/slope_descent.rs:266:4 [INFO] [stdout] | [INFO] [stdout] 266 | fn newton(points: &[(X, X); N]) -> [X; N] [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `rec_newton` is never used [INFO] [stdout] --> src/slope_descent.rs:283:4 [INFO] [stdout] | [INFO] [stdout] 283 | fn rec_newton(points: &[(X, X); N], coefs: &mut Vec) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `evaluate` is never used [INFO] [stdout] --> src/slope_descent.rs:305:4 [INFO] [stdout] | [INFO] [stdout] 305 | fn evaluate(x: X, coefs: &Vec, points: &[(X, X); N]) -> X [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day25` is never constructed [INFO] [stdout] --> src/day25.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct Day25; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Component` is never constructed [INFO] [stdout] --> src/day25.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 17 | pub struct Component { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `to_group` and `to_range` are never used [INFO] [stdout] --> src/day25.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl Component { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] 23 | pub fn to_group(self) -> Vec { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | pub fn to_range(&self) -> Range { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `add_edge` is never used [INFO] [stdout] --> src/day25.rs:94:4 [INFO] [stdout] | [INFO] [stdout] 94 | fn add_edge(map: &mut HashMap>, a: N, b: N) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `remove_edge` is never used [INFO] [stdout] --> src/day25.rs:99:4 [INFO] [stdout] | [INFO] [stdout] 99 | fn remove_edge(map: &mut HashMap>, a: &N, b: &N) -> (N, N) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `remove_triple_edges` is never used [INFO] [stdout] --> src/day25.rs:108:4 [INFO] [stdout] | [INFO] [stdout] 108 | fn remove_triple_edges(map: &mut HashMap>, start: &String, end: &String) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `all_expand` is never used [INFO] [stdout] --> src/graph.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | pub fn all_expand(start: N, mut successors: FN) -> Vec> [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `floyd_warshall` is never used [INFO] [stdout] --> src/graph.rs:34:8 [INFO] [stdout] | [INFO] [stdout] 34 | pub fn floyd_warshall(adjacency_matrix: &[Vec]) -> Vec> [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `unwrap_or_inf` is never used [INFO] [stdout] --> src/graph.rs:51:16 [INFO] [stdout] | [INFO] [stdout] 50 | impl> Grid { [INFO] [stdout] | -------------------------------------- method in this implementation [INFO] [stdout] 51 | pub fn unwrap_or_inf(self, def: C) -> C { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_adjacency_matrix` is never used [INFO] [stdout] --> src/graph.rs:89:8 [INFO] [stdout] | [INFO] [stdout] 89 | pub fn create_adjacency_matrix( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_adjacency_matrix` is never used [INFO] [stdout] --> src/graph.rs:124:8 [INFO] [stdout] | [INFO] [stdout] 124 | pub fn test_adjacency_matrix() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day1322` is never constructed [INFO] [stdout] --> src/day13_22.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Day1322; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `PacketData` is never used [INFO] [stdout] --> src/day13_22.rs:9:10 [INFO] [stdout] | [INFO] [stdout] 9 | pub enum PacketData { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `backtracking` is never used [INFO] [stdout] --> src/backtracking/backtracking.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn backtracking(start: S, mut successors: FN, mut success: FS) -> Option [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `step` is never used [INFO] [stdout] --> src/backtracking/backtracking.rs:17:4 [INFO] [stdout] | [INFO] [stdout] 17 | fn step(mut state: S, successors: &mut FN, success: &mut FS) -> Result [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day11` is never constructed [INFO] [stdout] --> src/day11.rs:3:12 [INFO] [stdout] | [INFO] [stdout] 3 | pub struct Day11; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/grid.rs:55:17 [INFO] [stdout] | [INFO] [stdout] 55 | pub fn iter(&self) -> GridIter { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 55 | pub fn iter(&self) -> GridIter<'_, T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day5` is never constructed [INFO] [stdout] --> src/day5.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Day5; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Info` is never constructed [INFO] [stdout] --> src/day5.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Info { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `transform` and `inv_transform` are never used [INFO] [stdout] --> src/day5.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl Info { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] 14 | #[inline] [INFO] [stdout] 15 | pub fn transform(&self, n: i64) -> i64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 20 | pub fn inv_transform(&self, n: i64) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Map` is never constructed [INFO] [stdout] --> src/day5.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct Map { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `transform` and `inv_transform` are never used [INFO] [stdout] --> src/day5.rs:32:12 [INFO] [stdout] | [INFO] [stdout] 30 | impl Map { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 31 | #[inline] [INFO] [stdout] 32 | pub fn transform(&self, n: i64) -> i64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn inv_transform(&self, n: i64) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `intersect` is never used [INFO] [stdout] --> src/day5.rs:265:8 [INFO] [stdout] | [INFO] [stdout] 265 | pub fn intersect(a: (Range, i64), b: (Range, i64)) [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `difference_intersect` is never used [INFO] [stdout] --> src/day5.rs:304:4 [INFO] [stdout] | [INFO] [stdout] 304 | fn difference_intersect(a: Range, b: (Range, i64)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Multi` is never used [INFO] [stdout] --> src/day5.rs:384:6 [INFO] [stdout] | [INFO] [stdout] 384 | enum Multi { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `push_to` is never used [INFO] [stdout] --> src/day5.rs:391:12 [INFO] [stdout] | [INFO] [stdout] 390 | impl Multi { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] 391 | pub fn push_to(self, vec: &mut Vec) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day6` is never constructed [INFO] [stdout] --> src/day6.rs:3:12 [INFO] [stdout] | [INFO] [stdout] 3 | pub struct Day6; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Info` is never constructed [INFO] [stdout] --> src/day6.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Info { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `solve` is never used [INFO] [stdout] --> src/day6.rs:49:4 [INFO] [stdout] | [INFO] [stdout] 49 | fn solve(t: f64, d: f64) -> f64 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day12` is never constructed [INFO] [stdout] --> src/day12.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Day12; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Data` is never constructed [INFO] [stdout] --> src/day12.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct Data { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Game` is never constructed [INFO] [stdout] --> src/day12.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Game { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Tile` is never used [INFO] [stdout] --> src/day12.rs:22:10 [INFO] [stdout] | [INFO] [stdout] 22 | pub enum Tile { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `matches` is never used [INFO] [stdout] --> src/day12.rs:28:12 [INFO] [stdout] | [INFO] [stdout] 27 | impl Tile { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] 28 | pub fn matches(&self, other: &bool) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_matches` is never used [INFO] [stdout] --> src/day12.rs:70:4 [INFO] [stdout] | [INFO] [stdout] 70 | fn create_matches(game: &Game) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_num_solutions` is never used [INFO] [stdout] --> src/day12.rs:74:4 [INFO] [stdout] | [INFO] [stdout] 74 | fn get_num_solutions(game: &Game) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `generate_solutions_recursive` is never used [INFO] [stdout] --> src/day12.rs:82:4 [INFO] [stdout] | [INFO] [stdout] 82 | fn generate_solutions_recursive( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day13` is never constructed [INFO] [stdout] --> src/day13.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Day13; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Data` is never constructed [INFO] [stdout] --> src/day13.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Data { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RowIterator` is never constructed [INFO] [stdout] --> src/day13.rs:60:8 [INFO] [stdout] | [INFO] [stdout] 60 | struct RowIterator { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/day13.rs:69:12 [INFO] [stdout] | [INFO] [stdout] 68 | impl RowIterator { [INFO] [stdout] | ---------------- associated function in this implementation [INFO] [stdout] 69 | pub fn new(i: usize, w: usize, h: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ColumnIterator` is never constructed [INFO] [stdout] --> src/day13.rs:100:8 [INFO] [stdout] | [INFO] [stdout] 100 | struct ColumnIterator { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/day13.rs:128:12 [INFO] [stdout] | [INFO] [stdout] 127 | impl ColumnIterator { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 128 | pub fn new(i: usize, w: usize, h: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_1` is never used [INFO] [stdout] --> src/day13.rs:139:4 [INFO] [stdout] | [INFO] [stdout] 139 | fn test_1(mut it: IT, grid: &Vec>) -> bool [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_2` is never used [INFO] [stdout] --> src/day13.rs:149:4 [INFO] [stdout] | [INFO] [stdout] 149 | fn test_2(it: IT, grid: &Vec>) -> bool [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day14` is never constructed [INFO] [stdout] --> src/day14.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Day14; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Data` is never constructed [INFO] [stdout] --> src/day14.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Data { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Tile` is never used [INFO] [stdout] --> src/day14.rs:14:10 [INFO] [stdout] | [INFO] [stdout] 14 | pub enum Tile { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `filled` is never used [INFO] [stdout] --> src/day14.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl Tile { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] 21 | pub fn filled(&self) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_grid` is never used [INFO] [stdout] --> src/day14.rs:66:4 [INFO] [stdout] | [INFO] [stdout] 66 | fn print_grid(grid: &Vec>) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `grid_score` is never used [INFO] [stdout] --> src/day14.rs:80:4 [INFO] [stdout] | [INFO] [stdout] 80 | fn grid_score(grid: &Vec>) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `cycle` is never used [INFO] [stdout] --> src/day14.rs:93:4 [INFO] [stdout] | [INFO] [stdout] 93 | fn cycle(mut grid: Vec>, data: &Data) -> Vec> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `slide_up` is never used [INFO] [stdout] --> src/day14.rs:102:4 [INFO] [stdout] | [INFO] [stdout] 102 | fn slide_up(grid: &mut Vec>, data: &Data) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `slide_down` is never used [INFO] [stdout] --> src/day14.rs:122:4 [INFO] [stdout] | [INFO] [stdout] 122 | fn slide_down(grid: &mut Vec>, data: &Data) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `slide_left` is never used [INFO] [stdout] --> src/day14.rs:142:4 [INFO] [stdout] | [INFO] [stdout] 142 | fn slide_left(grid: &mut Vec>, data: &Data) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `slide_right` is never used [INFO] [stdout] --> src/day14.rs:162:4 [INFO] [stdout] | [INFO] [stdout] 162 | fn slide_right(grid: &mut Vec>, data: &Data) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `a` should have an upper case name [INFO] [stdout] --> src/slope_descent.rs:71:15 [INFO] [stdout] | [INFO] [stdout] 71 | const a: f64 = -2.5; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] help: convert the identifier to upper case [INFO] [stdout] | [INFO] [stdout] 71 - const a: f64 = -2.5; [INFO] [stdout] 71 + const A: f64 = -2.5; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day4` is never constructed [INFO] [stdout] --> src/day4.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Day4; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Info` is never constructed [INFO] [stdout] --> src/day4.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Info { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Card` is never constructed [INFO] [stdout] --> src/day4.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct Card { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_num_winning` is never used [INFO] [stdout] --> src/day4.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl Card { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] 17 | #[inline] [INFO] [stdout] 18 | pub fn get_num_winning(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day7` is never constructed [INFO] [stdout] --> src/day7.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Day7; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Data` is never constructed [INFO] [stdout] --> src/day7.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Data { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Hand` is never constructed [INFO] [stdout] --> src/day7.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct Hand([u32; 5], HandType); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `HandType` is never used [INFO] [stdout] --> src/day7.rs:17:10 [INFO] [stdout] | [INFO] [stdout] 17 | pub enum HandType {Five = 7, Four = 6, Full = 5, Three = 4, Two = 3, One = 2, High = 1} [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `cards_to_type_1` is never used [INFO] [stdout] --> src/day7.rs:19:4 [INFO] [stdout] | [INFO] [stdout] 19 | fn cards_to_type_1(cards: &[u32; 5]) -> HandType { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `cards_to_type_2` is never used [INFO] [stdout] --> src/day7.rs:30:4 [INFO] [stdout] | [INFO] [stdout] 30 | fn cards_to_type_2(cards: &[u32; 5]) -> HandType { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `top_two_to_type` is never used [INFO] [stdout] --> src/day7.rs:44:4 [INFO] [stdout] | [INFO] [stdout] 44 | fn top_two_to_type(first: u32, second: u32) -> HandType { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `JOKER` is never used [INFO] [stdout] --> src/day7.rs:66:7 [INFO] [stdout] | [INFO] [stdout] 66 | const JOKER: u32 = 11; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `char_to_value` is never used [INFO] [stdout] --> src/day7.rs:67:4 [INFO] [stdout] | [INFO] [stdout] 67 | fn char_to_value(c: char) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day8` is never constructed [INFO] [stdout] --> src/day8.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct Day8; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Data` is never constructed [INFO] [stdout] --> src/day8.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct Data { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Node` is never constructed [INFO] [stdout] --> src/day8.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct Node([char; 3]); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `START` is never used [INFO] [stdout] --> src/day8.rs:23:7 [INFO] [stdout] | [INFO] [stdout] 23 | const START: Node = Node(['A', 'A', 'A']); [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `END` is never used [INFO] [stdout] --> src/day8.rs:24:7 [INFO] [stdout] | [INFO] [stdout] 24 | const END: Node = Node(['Z', 'Z', 'Z']); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Direction` is never used [INFO] [stdout] --> src/day8.rs:27:10 [INFO] [stdout] | [INFO] [stdout] 27 | pub enum Direction {Left, Right} [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/ranges.rs:162:17 [INFO] [stdout] | [INFO] [stdout] 162 | pub fn iter(&self) -> RangeDIterator { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 162 | pub fn iter(&self) -> RangeDIterator<'_, N> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day10` is never constructed [INFO] [stdout] --> src/day10.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Day10; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Data` is never constructed [INFO] [stdout] --> src/day10.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Data { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_start_neighbors` is never used [INFO] [stdout] --> src/day10.rs:107:4 [INFO] [stdout] | [INFO] [stdout] 107 | fn get_start_neighbors(x: usize, y: usize, grid: &Vec>) -> (Direction, Direction) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_full_path_length` is never used [INFO] [stdout] --> src/day10.rs:120:4 [INFO] [stdout] | [INFO] [stdout] 120 | fn get_full_path_length Pos>(start: Pos, end: &(usize, usize), successor: FN) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_full_path` is never used [INFO] [stdout] --> src/day10.rs:130:4 [INFO] [stdout] | [INFO] [stdout] 130 | fn get_full_path Pos>(start: Pos, end: &(usize, usize), successor: FN) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Pos` is never constructed [INFO] [stdout] --> src/day10.rs:143:8 [INFO] [stdout] | [INFO] [stdout] 143 | struct Pos((usize, usize), Direction); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find_start` is never used [INFO] [stdout] --> src/day10.rs:145:4 [INFO] [stdout] | [INFO] [stdout] 145 | fn find_start(grid: &Vec>) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_grid` is never used [INFO] [stdout] --> src/day10.rs:153:4 [INFO] [stdout] | [INFO] [stdout] 153 | fn get_grid(pos: &(usize, usize), grid: &Vec>) -> char { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `successor` is never used [INFO] [stdout] --> src/day10.rs:157:4 [INFO] [stdout] | [INFO] [stdout] 157 | fn successor(pos: Pos, grid: &Vec>) -> Pos { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Direction` is never used [INFO] [stdout] --> src/day10.rs:173:10 [INFO] [stdout] | [INFO] [stdout] 173 | pub enum Direction {North, South, West, East} [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DIRECTIONS` is never used [INFO] [stdout] --> src/day10.rs:174:18 [INFO] [stdout] | [INFO] [stdout] 174 | pub(crate) const DIRECTIONS: [Direction; 4] = [Direction::North, Direction::South, Direction::East, Direction::West]; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/day10.rs:177:19 [INFO] [stdout] | [INFO] [stdout] 176 | impl Direction { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] 177 | pub(crate) fn transform(&self, pos: (usize, usize)) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 187 | pub(crate) fn transform_range(&self, pos: (usize, usize), x_range: &Range, y_range: &Range) -> Option<(usize, usize)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 197 | pub(crate) fn transform_i(&self, pos: (i64, i64)) -> (i64, i64) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 207 | pub(crate) fn unit_i(&self, length: i64) -> (i64, i64) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | pub(crate) fn opposite_dir(&self) -> Direction { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 225 | fn rotate_90_anticlockwise(&self) -> Direction { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 234 | fn rotate_90_clockwise(&self) -> Direction { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `pipe_to_connections` is never used [INFO] [stdout] --> src/day10.rs:244:4 [INFO] [stdout] | [INFO] [stdout] 244 | fn pipe_to_connections(c: char) -> Option<(Direction, Direction)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CombinationIterator` is never constructed [INFO] [stdout] --> src/combinations.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct CombinationIterator<'a, T, const N: usize> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/combinations.rs:36:19 [INFO] [stdout] | [INFO] [stdout] 35 | impl<'a, T, const N: usize> CombinationIterator<'a, T, N> { [INFO] [stdout] | --------------------------------------------------------- associated function in this implementation [INFO] [stdout] 36 | pub(crate) fn new(slice: &'a [T]) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CartesianIterator` is never constructed [INFO] [stdout] --> src/combinations.rs:49:12 [INFO] [stdout] | [INFO] [stdout] 49 | pub struct CartesianIterator<'a, T, const N: usize> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/combinations.rs:55:19 [INFO] [stdout] | [INFO] [stdout] 54 | impl<'a, T, const N: usize> CartesianIterator<'a, T, N> { [INFO] [stdout] | ------------------------------------------------------- associated function in this implementation [INFO] [stdout] 55 | pub(crate) fn new(slice: &'a [T]) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Data` is never constructed [INFO] [stdout] --> src/day11.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Data { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `solve` is never used [INFO] [stdout] --> src/day11.rs:28:4 [INFO] [stdout] | [INFO] [stdout] 28 | fn solve(galaxies: &Vec<(usize, usize)>, multiplier: usize) -> i64 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Day9` is never constructed [INFO] [stdout] --> src/day9.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Day9; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Data` is never constructed [INFO] [stdout] --> src/day9.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Data { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `take_differences` is never used [INFO] [stdout] --> src/day9.rs:47:4 [INFO] [stdout] | [INFO] [stdout] 47 | fn take_differences(vec: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `b` should have an upper case name [INFO] [stdout] --> src/slope_descent.rs:72:15 [INFO] [stdout] | [INFO] [stdout] 72 | const b: f64 = 3.0; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] help: convert the identifier to upper case [INFO] [stdout] | [INFO] [stdout] 72 - const b: f64 = 3.0; [INFO] [stdout] 72 + const B: f64 = 3.0; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `c` should have an upper case name [INFO] [stdout] --> src/slope_descent.rs:73:15 [INFO] [stdout] | [INFO] [stdout] 73 | const c: f64 = 1.95; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] help: convert the identifier to upper case (notice the capitalization) [INFO] [stdout] | [INFO] [stdout] 73 - const c: f64 = 1.95; [INFO] [stdout] 73 + const C: f64 = 1.95; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `states_explored` should have an upper case name [INFO] [stdout] --> src/backtracking/sudoku.rs:91:12 [INFO] [stdout] | [INFO] [stdout] 91 | static mut states_explored: i32 = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: convert the identifier to upper case [INFO] [stdout] | [INFO] [stdout] 91 - static mut states_explored: i32 = 0; [INFO] [stdout] 91 + static mut STATES_EXPLORED: i32 = 0; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1.71s [INFO] running `Command { std: "docker" "inspect" "ba034e40a4dd9db37e730d5557568cfc2996cdf1a3598ce2dd34b57fbcd5a6f2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ba034e40a4dd9db37e730d5557568cfc2996cdf1a3598ce2dd34b57fbcd5a6f2", kill_on_drop: false }` [INFO] [stdout] ba034e40a4dd9db37e730d5557568cfc2996cdf1a3598ce2dd34b57fbcd5a6f2