[INFO] cloning repository https://github.com/landrzejewski/rust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/landrzejewski/rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flandrzejewski%2Frust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flandrzejewski%2Frust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 1ccbedf4cd1b23200743f3c3a19c611d807ba9dc
[INFO] checking landrzejewski/rust against master#36b21637e93b038453924d3c66821089e71d8baa for pr-143164
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flandrzejewski%2Frust" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/landrzejewski/rust
[INFO] finished tweaking git repo https://github.com/landrzejewski/rust
[INFO] tweaked toml for git repo https://github.com/landrzejewski/rust written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/landrzejewski/rust on toolchain 36b21637e93b038453924d3c66821089e71d8baa
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+36b21637e93b038453924d3c66821089e71d8baa" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/landrzejewski/rust already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+36b21637e93b038453924d3c66821089e71d8baa" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+36b21637e93b038453924d3c66821089e71d8baa" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 40958224ac6925cf9bbf4ca44fac2efb41373e09971b7d1cf66f0d52b735761e
[INFO] running `Command { std: "docker" "start" "-a" "40958224ac6925cf9bbf4ca44fac2efb41373e09971b7d1cf66f0d52b735761e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "40958224ac6925cf9bbf4ca44fac2efb41373e09971b7d1cf66f0d52b735761e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "40958224ac6925cf9bbf4ca44fac2efb41373e09971b7d1cf66f0d52b735761e", kill_on_drop: false }`
[INFO] [stdout] 40958224ac6925cf9bbf4ca44fac2efb41373e09971b7d1cf66f0d52b735761e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+36b21637e93b038453924d3c66821089e71d8baa" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 425154c7c78bca8f1113d4e99e1fb2287bd60799f5190823f34c60295264259e
[INFO] running `Command { std: "docker" "start" "-a" "425154c7c78bca8f1113d4e99e1fb2287bd60799f5190823f34c60295264259e", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.174
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stderr]    Compiling zerocopy v0.8.26
[INFO] [stderr]    Compiling autocfg v1.5.0
[INFO] [stderr]     Checking cfg-if v1.0.1
[INFO] [stderr]     Checking memchr v2.7.5
[INFO] [stderr]     Checking regex-syntax v0.8.5
[INFO] [stderr]     Checking iana-time-zone v0.1.63
[INFO] [stderr]     Checking same-file v1.0.6
[INFO] [stderr]     Checking once_cell v1.21.3
[INFO] [stderr]     Checking walkdir v2.5.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]     Checking chrono v0.4.41
[INFO] [stderr]     Checking rand_core v0.9.3
[INFO] [stderr]     Checking regex-automata v0.4.9
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]     Checking regex v1.11.1
[INFO] [stderr]     Checking rust v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `crate::exercises::tic_tac_toe`
[INFO] [stdout]   --> src/main.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | use crate::exercises::tic_tac_toe;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Debug`, `Display`, `Formatter`, `format`, and `write`
[INFO] [stdout]  --> src/exercises/wc.rs:3:16
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::fmt::{format, write, Debug, Display, Formatter};
[INFO] [stdout]   |                ^^^^^^  ^^^^^  ^^^^^  ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::exercises::tic_tac_toe`
[INFO] [stdout]   --> src/main.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | use crate::exercises::tic_tac_toe;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Debug`, `Display`, `Formatter`, `format`, and `write`
[INFO] [stdout]  --> src/exercises/wc.rs:3:16
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::fmt::{format, write, Debug, Display, Formatter};
[INFO] [stdout]   |                ^^^^^^  ^^^^^  ^^^^^  ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/language_basics.rs:466:17
[INFO] [stdout]     |
[INFO] [stdout] 466 |     for (index, value) in elements.iter().enumerate() {
[INFO] [stdout]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fibonacci_recursive` is never used
[INFO] [stdout]  --> src/exercises/fibonacci.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn fibonacci_recursive(n: u32) -> u64 {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fibonacci` is never used
[INFO] [stdout]  --> src/exercises/fibonacci.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn fibonacci(n: u32) -> u64 {
[INFO] [stdout]   |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/exercises/fibonacci.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn run() {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EUR` is never used
[INFO] [stdout]  --> src/exercises/money.rs:1:7
[INFO] [stdout]   |
[INFO] [stdout] 1 | const EUR: &str = "EUR";
[INFO] [stdout]   |       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PLN` is never used
[INFO] [stdout]  --> src/exercises/money.rs:2:7
[INFO] [stdout]   |
[INFO] [stdout] 2 | const PLN: &str = "PLN";
[INFO] [stdout]   |       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MonetaryAmount` is never constructed
[INFO] [stdout]  --> src/exercises/money.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |  struct MonetaryAmount {
[INFO] [stdout]   |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `add`, `subtract`, `check_currency`, `convert`, and `new` are never used
[INFO] [stdout]   --> src/exercises/money.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl MonetaryAmount {
[INFO] [stdout]    | ------------------- associated items in this implementation
[INFO] [stdout] 11 |     
[INFO] [stdout] 12 |     fn add(&mut self, other: &MonetaryAmount) -> Result<(), String> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     fn subtract(&mut self, other: &MonetaryAmount) -> Result<(), String> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     fn check_currency(&self, other: &MonetaryAmount) -> Result<(), String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     fn convert(amount: &MonetaryAmount, exchange_rate: f64, currency: &String) -> Self {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     fn new(value: f64, currency: &str) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/exercises/money.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub fn run() {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Currency` is never used
[INFO] [stdout]  --> src/exercises/money_with_enums.rs:2:6
[INFO] [stdout]   |
[INFO] [stdout] 2 | enum Currency {
[INFO] [stdout]   |      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MonetaryAmount` is never constructed
[INFO] [stdout]  --> src/exercises/money_with_enums.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |  struct MonetaryAmount {
[INFO] [stdout]   |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `add`, `subtract`, `check_currency`, `convert`, and `new` are never used
[INFO] [stdout]   --> src/exercises/money_with_enums.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl MonetaryAmount {
[INFO] [stdout]    | ------------------- associated items in this implementation
[INFO] [stdout] 14 |     
[INFO] [stdout] 15 |     fn add(&mut self, other: &MonetaryAmount) -> Result<(), String> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     fn subtract(&mut self, other: &MonetaryAmount) -> Result<(), String> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     fn check_currency(&self, other: &MonetaryAmount) -> Result<(), String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     fn convert(amount: &MonetaryAmount, exchange_rate: f64, currency: &Currency) -> Self {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     fn new(value: f64, currency: &Currency) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/exercises/money_with_enums.rs:47:8
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub fn run() {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/exercises/guess_game.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn run() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BOARD_SIZE` is never used
[INFO] [stdout]  --> src/exercises/tic_tac_toe.rs:4:7
[INFO] [stdout]   |
[INFO] [stdout] 4 | const BOARD_SIZE: usize = 3;
[INFO] [stdout]   |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Player` is never used
[INFO] [stdout]  --> src/exercises/tic_tac_toe.rs:7:6
[INFO] [stdout]   |
[INFO] [stdout] 7 | enum Player {
[INFO] [stdout]   |      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Cell` is never used
[INFO] [stdout]   --> src/exercises/tic_tac_toe.rs:23:6
[INFO] [stdout]    |
[INFO] [stdout] 23 | enum Cell {
[INFO] [stdout]    |      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TicTacToe` is never constructed
[INFO] [stdout]   --> src/exercises/tic_tac_toe.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | struct TicTacToe {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/exercises/tic_tac_toe.rs:43:8
[INFO] [stdout]     |
[INFO] [stdout] 42  | impl TicTacToe {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 43  |     fn new() -> TicTacToe {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 50  |     fn toggle_player(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57  |     fn display(&self) {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 80  |     fn make_move(&mut self, col: usize, row: usize, player: Player) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 89  |     fn is_valid_move(&self, col: usize, row: usize) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 93  |     fn is_board_full(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 133 |     fn is_winner(&self, player: Player) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_coordinates` is never used
[INFO] [stdout]    --> src/exercises/tic_tac_toe.rs:160:4
[INFO] [stdout]     |
[INFO] [stdout] 160 | fn read_coordinates() -> Option<(usize, usize)> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]    --> src/exercises/tic_tac_toe.rs:178:8
[INFO] [stdout]     |
[INFO] [stdout] 178 | pub fn run() {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/exercises/basic_io.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn run() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DEPOSIT` is never used
[INFO] [stdout]  --> src/exercises/budget.rs:7:7
[INFO] [stdout]   |
[INFO] [stdout] 7 | const DEPOSIT: &str = "DEPOSIT";
[INFO] [stdout]   |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `WITHDRAW` is never used
[INFO] [stdout]  --> src/exercises/budget.rs:8:7
[INFO] [stdout]   |
[INFO] [stdout] 8 | const WITHDRAW: &str = "WITHDRAW";
[INFO] [stdout]   |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SEPARATOR` is never used
[INFO] [stdout]  --> src/exercises/budget.rs:9:7
[INFO] [stdout]   |
[INFO] [stdout] 9 | const SEPARATOR: &str = ";";
[INFO] [stdout]   |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FIELDS_COUNT` is never used
[INFO] [stdout]   --> src/exercises/budget.rs:10:7
[INFO] [stdout]    |
[INFO] [stdout] 10 | const FIELDS_COUNT: usize = 3;
[INFO] [stdout]    |       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FILE_NAME` is never used
[INFO] [stdout]   --> src/exercises/budget.rs:11:7
[INFO] [stdout]    |
[INFO] [stdout] 11 | const FILE_NAME: &str = "budget.csv";
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `OperationType` is never used
[INFO] [stdout]   --> src/exercises/budget.rs:13:6
[INFO] [stdout]    |
[INFO] [stdout] 13 | enum OperationType {
[INFO] [stdout]    |      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Operation` is never constructed
[INFO] [stdout]   --> src/exercises/budget.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | struct Operation {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_args` is never used
[INFO] [stdout]   --> src/exercises/budget.rs:75:4
[INFO] [stdout]    |
[INFO] [stdout] 75 | fn get_args() -> Vec<String> {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `display_summary` is never used
[INFO] [stdout]   --> src/exercises/budget.rs:79:4
[INFO] [stdout]    |
[INFO] [stdout] 79 | fn display_summary(operations: &Vec<Operation>) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `save` is never used
[INFO] [stdout]    --> src/exercises/budget.rs:103:4
[INFO] [stdout]     |
[INFO] [stdout] 103 | fn save(operations: &Vec<Operation>) {
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load` is never used
[INFO] [stdout]    --> src/exercises/budget.rs:115:4
[INFO] [stdout]     |
[INFO] [stdout] 115 | fn load() -> Result<Vec<Operation>, String> {
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]    --> src/exercises/budget.rs:127:8
[INFO] [stdout]     |
[INFO] [stdout] 127 | pub fn run() {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SEPARATOR` is never used
[INFO] [stdout]  --> src/exercises/echo.rs:3:7
[INFO] [stdout]   |
[INFO] [stdout] 3 | const SEPARATOR: &str = " ";
[INFO] [stdout]   |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/exercises/echo.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn run() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_arg` is never used
[INFO] [stdout]   --> src/exercises/echo.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn print_arg(arg: String) {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `AGR_PREFIX` is never used
[INFO] [stdout]  --> src/exercises/cat.rs:6:7
[INFO] [stdout]   |
[INFO] [stdout] 6 | const AGR_PREFIX: &str = "-";
[INFO] [stdout]   |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `NUMBERING_ARG` is never used
[INFO] [stdout]  --> src/exercises/cat.rs:7:7
[INFO] [stdout]   |
[INFO] [stdout] 7 | const NUMBERING_ARG: &str = "-n";
[INFO] [stdout]   |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `NUMBERING_IGNORE_EMPTY_ARG` is never used
[INFO] [stdout]  --> src/exercises/cat.rs:8:7
[INFO] [stdout]   |
[INFO] [stdout] 8 | const NUMBERING_IGNORE_EMPTY_ARG: &str = "-nb";
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Mode` is never used
[INFO] [stdout]   --> src/exercises/cat.rs:10:6
[INFO] [stdout]    |
[INFO] [stdout] 10 | enum Mode {
[INFO] [stdout]    |      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_help` is never used
[INFO] [stdout]   --> src/exercises/cat.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn show_help() {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_config` is never used
[INFO] [stdout]   --> src/exercises/cat.rs:35:4
[INFO] [stdout]    |
[INFO] [stdout] 35 | fn get_config() -> (Vec<String>, Vec<String>) {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cat` is never used
[INFO] [stdout]   --> src/exercises/cat.rs:41:4
[INFO] [stdout]    |
[INFO] [stdout] 41 | fn cat(paths: &Vec<String>, mode: &Mode) {
[INFO] [stdout]    |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Printer` is never used
[INFO] [stdout]   --> src/exercises/cat.rs:65:6
[INFO] [stdout]    |
[INFO] [stdout] 65 | type Printer = fn(usize, &String);
[INFO] [stdout]    |      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print` is never used
[INFO] [stdout]   --> src/exercises/cat.rs:67:4
[INFO] [stdout]    |
[INFO] [stdout] 67 | fn print(_line_numer: usize, line: &String) {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_with_numbering` is never used
[INFO] [stdout]   --> src/exercises/cat.rs:71:4
[INFO] [stdout]    |
[INFO] [stdout] 71 | fn print_with_numbering(line_numer: usize, line: &String) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_with_numbering_ignoring_empty` is never used
[INFO] [stdout]   --> src/exercises/cat.rs:75:4
[INFO] [stdout]    |
[INFO] [stdout] 75 | fn print_with_numbering_ignoring_empty(line_numer: usize, line: &String) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/exercises/cat.rs:83:8
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub fn run() {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FileStats` is never constructed
[INFO] [stdout]  --> src/exercises/wc.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | struct FileStats {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_args` is never used
[INFO] [stdout]   --> src/exercises/wc.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn get_args() -> Vec<String> {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_help` is never used
[INFO] [stdout]   --> src/exercises/wc.rs:31:4
[INFO] [stdout]    |
[INFO] [stdout] 31 | fn show_help() {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `wc` is never used
[INFO] [stdout]   --> src/exercises/wc.rs:36:4
[INFO] [stdout]    |
[INFO] [stdout] 36 | fn wc(paths: &Vec<String>) {
[INFO] [stdout]    |    ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_file_stats` is never used
[INFO] [stdout]   --> src/exercises/wc.rs:50:4
[INFO] [stdout]    |
[INFO] [stdout] 50 | fn get_file_stats(file: &File) -> Result<FileStats, Box<dyn Error>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_file_stats` is never used
[INFO] [stdout]   --> src/exercises/wc.rs:68:4
[INFO] [stdout]    |
[INFO] [stdout] 68 | fn print_file_stats(file_name: &String, stats: &FileStats) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/exercises/wc.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub fn run() {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/memory_management.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn run() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `memory_management` is never used
[INFO] [stdout]   --> src/memory_management.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn memory_management() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show` is never used
[INFO] [stdout]    --> src/memory_management.rs:104:4
[INFO] [stdout]     |
[INFO] [stdout] 104 | fn show(text: String) {
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_with_result` is never used
[INFO] [stdout]    --> src/memory_management.rs:108:4
[INFO] [stdout]     |
[INFO] [stdout] 108 | fn show_with_result(text: String) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_with_ref` is never used
[INFO] [stdout]    --> src/memory_management.rs:113:4
[INFO] [stdout]     |
[INFO] [stdout] 113 | fn show_with_ref(text: &String) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_with_mut_ref` is never used
[INFO] [stdout]    --> src/memory_management.rs:117:4
[INFO] [stdout]     |
[INFO] [stdout] 117 | fn show_with_mut_ref(text: &mut String) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Test` is never constructed
[INFO] [stdout]    --> src/memory_management.rs:123:8
[INFO] [stdout]     |
[INFO] [stdout] 123 | struct Test {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mutate_test` is never used
[INFO] [stdout]    --> src/memory_management.rs:127:4
[INFO] [stdout]     |
[INFO] [stdout] 127 | fn mutate_test(mut test: Test) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `defining_many_immutable_references` is never used
[INFO] [stdout]    --> src/memory_management.rs:134:4
[INFO] [stdout]     |
[INFO] [stdout] 134 | fn defining_many_immutable_references() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `restrictions_after_defining_mutable_reference` is never used
[INFO] [stdout]    --> src/memory_management.rs:143:4
[INFO] [stdout]     |
[INFO] [stdout] 143 | fn restrictions_after_defining_mutable_reference() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `restrictions_after_defining_immutable_reference` is never used
[INFO] [stdout]    --> src/memory_management.rs:157:4
[INFO] [stdout]     |
[INFO] [stdout] 157 | fn restrictions_after_defining_immutable_reference() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `lifetimes` is never used
[INFO] [stdout]    --> src/memory_management.rs:172:4
[INFO] [stdout]     |
[INFO] [stdout] 172 | fn lifetimes() {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_longer` is never used
[INFO] [stdout]    --> src/memory_management.rs:219:4
[INFO] [stdout]     |
[INFO] [stdout] 219 | fn get_longer<'a>(text: &'a str, other_text: &'a str) -> &'a str {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Person` is never constructed
[INFO] [stdout]    --> src/memory_management.rs:229:8
[INFO] [stdout]     |
[INFO] [stdout] 229 | struct Person<'a> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_ref` is never used
[INFO] [stdout]    --> src/memory_management.rs:241:4
[INFO] [stdout]     |
[INFO] [stdout] 241 | fn get_ref(aa: &i32) -> &i32 {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_ref2` is never used
[INFO] [stdout]    --> src/memory_management.rs:246:4
[INFO] [stdout]     |
[INFO] [stdout] 246 | fn get_ref2<'a>(aa: &'a i32) -> &'a i32 {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pointers` is never used
[INFO] [stdout]    --> src/memory_management.rs:250:4
[INFO] [stdout]     |
[INFO] [stdout] 250 | fn pointers() {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Employee` is never constructed
[INFO] [stdout]    --> src/memory_management.rs:284:8
[INFO] [stdout]     |
[INFO] [stdout] 284 | struct Employee {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `use_employee` is never used
[INFO] [stdout]    --> src/memory_management.rs:289:4
[INFO] [stdout]     |
[INFO] [stdout] 289 | fn use_employee(rc_emp: &Rc<Employee>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/language_basics.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn run() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `variable_declaration` is never used
[INFO] [stdout]   --> src/language_basics.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn variable_declaration() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MONTH_OF_THE_YEAR` is never used
[INFO] [stdout]   --> src/language_basics.rs:62:7
[INFO] [stdout]    |
[INFO] [stdout] 62 | const MONTH_OF_THE_YEAR: i8 = 4;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `constant_declaration` is never used
[INFO] [stdout]   --> src/language_basics.rs:64:4
[INFO] [stdout]    |
[INFO] [stdout] 64 | fn constant_declaration() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `APP_NAME` is never used
[INFO] [stdout]   --> src/language_basics.rs:77:8
[INFO] [stdout]    |
[INFO] [stdout] 77 | static APP_NAME: &str = "Training app";
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `GLOBAL_TIMESTAMP` is never used
[INFO] [stdout]   --> src/language_basics.rs:79:8
[INFO] [stdout]    |
[INFO] [stdout] 79 | static GLOBAL_TIMESTAMP: Lazy<DateTime<Utc>> = Lazy::new(|| {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `static_values` is never used
[INFO] [stdout]   --> src/language_basics.rs:88:4
[INFO] [stdout]    |
[INFO] [stdout] 88 | fn static_values() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `data_types` is never used
[INFO] [stdout]    --> src/language_basics.rs:110:4
[INFO] [stdout]     |
[INFO] [stdout] 110 | fn data_types() {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `control_flow` is never used
[INFO] [stdout]    --> src/language_basics.rs:364:4
[INFO] [stdout]     |
[INFO] [stdout] 364 | fn control_flow() {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `functions` is never used
[INFO] [stdout]    --> src/language_basics.rs:479:4
[INFO] [stdout]     |
[INFO] [stdout] 479 | fn functions() {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add` is never used
[INFO] [stdout]    --> src/language_basics.rs:494:4
[INFO] [stdout]     |
[INFO] [stdout] 494 | fn add(value: i32, other_value: i32) -> i32 {
[INFO] [stdout]     |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate` is never used
[INFO] [stdout]    --> src/language_basics.rs:499:4
[INFO] [stdout]     |
[INFO] [stdout] 499 | fn validate<T>(value: T, predicate: fn(T) -> bool) -> bool {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_even` is never used
[INFO] [stdout]    --> src/language_basics.rs:503:4
[INFO] [stdout]     |
[INFO] [stdout] 503 | fn is_even(value: i32) -> bool {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `structs` is never used
[INFO] [stdout]    --> src/language_basics.rs:515:4
[INFO] [stdout]     |
[INFO] [stdout] 515 | fn structs() {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Directory` is never constructed
[INFO] [stdout]    --> src/language_basics.rs:576:8
[INFO] [stdout]     |
[INFO] [stdout] 576 | struct Directory;
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Point` is never constructed
[INFO] [stdout]    --> src/language_basics.rs:579:8
[INFO] [stdout]     |
[INFO] [stdout] 579 | struct Point(i32, i32);
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Point3d` is never constructed
[INFO] [stdout]    --> src/language_basics.rs:581:8
[INFO] [stdout]     |
[INFO] [stdout] 581 | struct Point3d {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Account` is never constructed
[INFO] [stdout]    --> src/language_basics.rs:588:8
[INFO] [stdout]     |
[INFO] [stdout] 588 | struct Account {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Rectangle` is never constructed
[INFO] [stdout]    --> src/language_basics.rs:595:8
[INFO] [stdout]     |
[INFO] [stdout] 595 | struct Rectangle {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/language_basics.rs:601:11
[INFO] [stdout]     |
[INFO] [stdout] 600 | impl Rectangle {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 601 |     const DEFAULT_SIZE: u32 = 100;
[INFO] [stdout]     |           ^^^^^^^^^^^^
[INFO] [stdout] 602 |
[INFO] [stdout] 603 |     fn area(&self) -> u32 {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 608 |     fn resize(&mut self, by: u32) {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 613 |     fn is_bigger(&self, other: &Rectangle) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 617 |     fn new(width: u32, height: u32) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 621 |     fn square(size: u32) -> Self {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 630 |     fn square_with_default_size() -> Self {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `width` is never used
[INFO] [stdout]    --> src/language_basics.rs:636:8
[INFO] [stdout]     |
[INFO] [stdout] 635 | impl Rectangle {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] 636 |     fn width(&self) -> u32 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `enums` is never used
[INFO] [stdout]    --> src/language_basics.rs:648:4
[INFO] [stdout]     |
[INFO] [stdout] 648 | fn enums() -> Result<(), String> {
[INFO] [stdout]     |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_first_char` is never used
[INFO] [stdout]    --> src/language_basics.rs:770:4
[INFO] [stdout]     |
[INFO] [stdout] 770 | fn get_first_char(input: &str) -> Option<char> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Currency` is never used
[INFO] [stdout]    --> src/language_basics.rs:775:6
[INFO] [stdout]     |
[INFO] [stdout] 775 | enum Currency {
[INFO] [stdout]     |      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Values` is never used
[INFO] [stdout]    --> src/language_basics.rs:782:6
[INFO] [stdout]     |
[INFO] [stdout] 782 | enum Values {
[INFO] [stdout]     |      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Money` is never constructed
[INFO] [stdout]    --> src/language_basics.rs:788:8
[INFO] [stdout]     |
[INFO] [stdout] 788 | struct Money {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Barcode` is never used
[INFO] [stdout]    --> src/language_basics.rs:794:6
[INFO] [stdout]     |
[INFO] [stdout] 794 | enum Barcode {
[INFO] [stdout]     |      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_info` is never used
[INFO] [stdout]    --> src/language_basics.rs:802:8
[INFO] [stdout]     |
[INFO] [stdout] 801 | impl Barcode {
[INFO] [stdout]     | ------------ method in this implementation
[INFO] [stdout] 802 |     fn get_info(&self) -> String {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `safe_div` is never used
[INFO] [stdout]    --> src/language_basics.rs:807:4
[INFO] [stdout]     |
[INFO] [stdout] 807 | fn safe_div(value: f64, dividend: f64) -> Option<f64> {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `safe_div_with_result` is never used
[INFO] [stdout]    --> src/language_basics.rs:815:4
[INFO] [stdout]     |
[INFO] [stdout] 815 | fn safe_div_with_result(value: f64, dividend: f64) -> Result<f64, String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/collections_generics_traits.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn run() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `collections` is never used
[INFO] [stdout]   --> src/collections_generics_traits.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn collections() {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generics_and_traits` is never used
[INFO] [stdout]   --> src/collections_generics_traits.rs:74:4
[INFO] [stdout]    |
[INFO] [stdout] 74 | fn generics_and_traits() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `i32_to_string` is never used
[INFO] [stdout]    --> src/collections_generics_traits.rs:101:4
[INFO] [stdout]     |
[INFO] [stdout] 101 | fn i32_to_string(value: i32) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `f64_to_string` is never used
[INFO] [stdout]    --> src/collections_generics_traits.rs:105:4
[INFO] [stdout]     |
[INFO] [stdout] 105 | fn f64_to_string(value: f64) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_string` is never used
[INFO] [stdout]    --> src/collections_generics_traits.rs:110:4
[INFO] [stdout]     |
[INFO] [stdout] 110 | fn to_string<A: Display>(value: A) -> String {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Point` is never constructed
[INFO] [stdout]    --> src/collections_generics_traits.rs:114:8
[INFO] [stdout]     |
[INFO] [stdout] 114 | struct Point<T> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `show` is never used
[INFO] [stdout]    --> src/collections_generics_traits.rs:130:8
[INFO] [stdout]     |
[INFO] [stdout] 129 | impl<A: Display> Point<A> {
[INFO] [stdout]     | ------------------------- method in this implementation
[INFO] [stdout] 130 |     fn show(&self) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Show` is never used
[INFO] [stdout]    --> src/collections_generics_traits.rs:135:7
[INFO] [stdout]     |
[INFO] [stdout] 135 | trait Show {
[INFO] [stdout]     |       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Shape` is never used
[INFO] [stdout]    --> src/collections_generics_traits.rs:166:7
[INFO] [stdout]     |
[INFO] [stdout] 166 | trait Shape {
[INFO] [stdout]     |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Rectangle` is never constructed
[INFO] [stdout]    --> src/collections_generics_traits.rs:170:8
[INFO] [stdout]     |
[INFO] [stdout] 170 | struct Rectangle;
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Circle` is never constructed
[INFO] [stdout]    --> src/collections_generics_traits.rs:172:8
[INFO] [stdout]     |
[INFO] [stdout] 172 | struct Circle;
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `shape_factory` is never used
[INFO] [stdout]    --> src/collections_generics_traits.rs:186:4
[INFO] [stdout]     |
[INFO] [stdout] 186 | fn shape_factory(is_rectangle: bool) -> Box<dyn Shape> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `draw_shape` is never used
[INFO] [stdout]    --> src/collections_generics_traits.rs:194:4
[INFO] [stdout]     |
[INFO] [stdout] 194 | fn draw_shape(shape: &dyn Shape) {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generic_ops` is never used
[INFO] [stdout]    --> src/collections_generics_traits.rs:199:4
[INFO] [stdout]     |
[INFO] [stdout] 199 | fn generic_ops<T: Add<Output = T> + Sub<Output = T> + Display>(
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Coord` is never constructed
[INFO] [stdout]    --> src/collections_generics_traits.rs:210:12
[INFO] [stdout]     |
[INFO] [stdout] 210 | pub struct Coord {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/collections_generics_traits.rs:216:12
[INFO] [stdout]     |
[INFO] [stdout] 215 | impl Coord {
[INFO] [stdout]     | ---------- associated function in this implementation
[INFO] [stdout] 216 |     pub fn new(long: f32, lat: f32) -> Coord {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_user` is never used
[INFO] [stdout]    --> src/collections_generics_traits.rs:243:4
[INFO] [stdout]     |
[INFO] [stdout] 243 | fn create_user<T: Repository>(repository: &T) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Repository` is never used
[INFO] [stdout]    --> src/collections_generics_traits.rs:247:7
[INFO] [stdout]     |
[INFO] [stdout] 247 | trait Repository {
[INFO] [stdout]     |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SqlRepository` is never constructed
[INFO] [stdout]    --> src/collections_generics_traits.rs:251:8
[INFO] [stdout]     |
[INFO] [stdout] 251 | struct SqlRepository;
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `InMemoryRepository` is never constructed
[INFO] [stdout]    --> src/collections_generics_traits.rs:259:8
[INFO] [stdout]     |
[INFO] [stdout] 259 | struct InMemoryRepository;
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/language_basics.rs:466:17
[INFO] [stdout]     |
[INFO] [stdout] 466 |     for (index, value) in elements.iter().enumerate() {
[INFO] [stdout]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fibonacci_recursive` is never used
[INFO] [stdout]  --> src/exercises/fibonacci.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn fibonacci_recursive(n: u32) -> u64 {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fibonacci` is never used
[INFO] [stdout]  --> src/exercises/fibonacci.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn fibonacci(n: u32) -> u64 {
[INFO] [stdout]   |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/exercises/fibonacci.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn run() {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EUR` is never used
[INFO] [stdout]  --> src/exercises/money.rs:1:7
[INFO] [stdout]   |
[INFO] [stdout] 1 | const EUR: &str = "EUR";
[INFO] [stdout]   |       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PLN` is never used
[INFO] [stdout]  --> src/exercises/money.rs:2:7
[INFO] [stdout]   |
[INFO] [stdout] 2 | const PLN: &str = "PLN";
[INFO] [stdout]   |       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MonetaryAmount` is never constructed
[INFO] [stdout]  --> src/exercises/money.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |  struct MonetaryAmount {
[INFO] [stdout]   |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `add`, `subtract`, `check_currency`, `convert`, and `new` are never used
[INFO] [stdout]   --> src/exercises/money.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl MonetaryAmount {
[INFO] [stdout]    | ------------------- associated items in this implementation
[INFO] [stdout] 11 |     
[INFO] [stdout] 12 |     fn add(&mut self, other: &MonetaryAmount) -> Result<(), String> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     fn subtract(&mut self, other: &MonetaryAmount) -> Result<(), String> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     fn check_currency(&self, other: &MonetaryAmount) -> Result<(), String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     fn convert(amount: &MonetaryAmount, exchange_rate: f64, currency: &String) -> Self {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     fn new(value: f64, currency: &str) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/exercises/money.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub fn run() {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Currency` is never used
[INFO] [stdout]  --> src/exercises/money_with_enums.rs:2:6
[INFO] [stdout]   |
[INFO] [stdout] 2 | enum Currency {
[INFO] [stdout]   |      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MonetaryAmount` is never constructed
[INFO] [stdout]  --> src/exercises/money_with_enums.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |  struct MonetaryAmount {
[INFO] [stdout]   |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `add`, `subtract`, `check_currency`, `convert`, and `new` are never used
[INFO] [stdout]   --> src/exercises/money_with_enums.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl MonetaryAmount {
[INFO] [stdout]    | ------------------- associated items in this implementation
[INFO] [stdout] 14 |     
[INFO] [stdout] 15 |     fn add(&mut self, other: &MonetaryAmount) -> Result<(), String> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     fn subtract(&mut self, other: &MonetaryAmount) -> Result<(), String> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     fn check_currency(&self, other: &MonetaryAmount) -> Result<(), String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     fn convert(amount: &MonetaryAmount, exchange_rate: f64, currency: &Currency) -> Self {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     fn new(value: f64, currency: &Currency) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/exercises/money_with_enums.rs:47:8
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub fn run() {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/exercises/guess_game.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn run() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BOARD_SIZE` is never used
[INFO] [stdout]  --> src/exercises/tic_tac_toe.rs:4:7
[INFO] [stdout]   |
[INFO] [stdout] 4 | const BOARD_SIZE: usize = 3;
[INFO] [stdout]   |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Player` is never used
[INFO] [stdout]  --> src/exercises/tic_tac_toe.rs:7:6
[INFO] [stdout]   |
[INFO] [stdout] 7 | enum Player {
[INFO] [stdout]   |      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Cell` is never used
[INFO] [stdout]   --> src/exercises/tic_tac_toe.rs:23:6
[INFO] [stdout]    |
[INFO] [stdout] 23 | enum Cell {
[INFO] [stdout]    |      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TicTacToe` is never constructed
[INFO] [stdout]   --> src/exercises/tic_tac_toe.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | struct TicTacToe {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/exercises/tic_tac_toe.rs:43:8
[INFO] [stdout]     |
[INFO] [stdout] 42  | impl TicTacToe {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 43  |     fn new() -> TicTacToe {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 50  |     fn toggle_player(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57  |     fn display(&self) {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 80  |     fn make_move(&mut self, col: usize, row: usize, player: Player) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 89  |     fn is_valid_move(&self, col: usize, row: usize) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 93  |     fn is_board_full(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 133 |     fn is_winner(&self, player: Player) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_coordinates` is never used
[INFO] [stdout]    --> src/exercises/tic_tac_toe.rs:160:4
[INFO] [stdout]     |
[INFO] [stdout] 160 | fn read_coordinates() -> Option<(usize, usize)> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]    --> src/exercises/tic_tac_toe.rs:178:8
[INFO] [stdout]     |
[INFO] [stdout] 178 | pub fn run() {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/exercises/basic_io.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn run() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DEPOSIT` is never used
[INFO] [stdout]  --> src/exercises/budget.rs:7:7
[INFO] [stdout]   |
[INFO] [stdout] 7 | const DEPOSIT: &str = "DEPOSIT";
[INFO] [stdout]   |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `WITHDRAW` is never used
[INFO] [stdout]  --> src/exercises/budget.rs:8:7
[INFO] [stdout]   |
[INFO] [stdout] 8 | const WITHDRAW: &str = "WITHDRAW";
[INFO] [stdout]   |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SEPARATOR` is never used
[INFO] [stdout]  --> src/exercises/budget.rs:9:7
[INFO] [stdout]   |
[INFO] [stdout] 9 | const SEPARATOR: &str = ";";
[INFO] [stdout]   |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FIELDS_COUNT` is never used
[INFO] [stdout]   --> src/exercises/budget.rs:10:7
[INFO] [stdout]    |
[INFO] [stdout] 10 | const FIELDS_COUNT: usize = 3;
[INFO] [stdout]    |       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FILE_NAME` is never used
[INFO] [stdout]   --> src/exercises/budget.rs:11:7
[INFO] [stdout]    |
[INFO] [stdout] 11 | const FILE_NAME: &str = "budget.csv";
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `OperationType` is never used
[INFO] [stdout]   --> src/exercises/budget.rs:13:6
[INFO] [stdout]    |
[INFO] [stdout] 13 | enum OperationType {
[INFO] [stdout]    |      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Operation` is never constructed
[INFO] [stdout]   --> src/exercises/budget.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | struct Operation {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_args` is never used
[INFO] [stdout]   --> src/exercises/budget.rs:75:4
[INFO] [stdout]    |
[INFO] [stdout] 75 | fn get_args() -> Vec<String> {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `display_summary` is never used
[INFO] [stdout]   --> src/exercises/budget.rs:79:4
[INFO] [stdout]    |
[INFO] [stdout] 79 | fn display_summary(operations: &Vec<Operation>) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `save` is never used
[INFO] [stdout]    --> src/exercises/budget.rs:103:4
[INFO] [stdout]     |
[INFO] [stdout] 103 | fn save(operations: &Vec<Operation>) {
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load` is never used
[INFO] [stdout]    --> src/exercises/budget.rs:115:4
[INFO] [stdout]     |
[INFO] [stdout] 115 | fn load() -> Result<Vec<Operation>, String> {
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]    --> src/exercises/budget.rs:127:8
[INFO] [stdout]     |
[INFO] [stdout] 127 | pub fn run() {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SEPARATOR` is never used
[INFO] [stdout]  --> src/exercises/echo.rs:3:7
[INFO] [stdout]   |
[INFO] [stdout] 3 | const SEPARATOR: &str = " ";
[INFO] [stdout]   |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/exercises/echo.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn run() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_arg` is never used
[INFO] [stdout]   --> src/exercises/echo.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn print_arg(arg: String) {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `AGR_PREFIX` is never used
[INFO] [stdout]  --> src/exercises/cat.rs:6:7
[INFO] [stdout]   |
[INFO] [stdout] 6 | const AGR_PREFIX: &str = "-";
[INFO] [stdout]   |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `NUMBERING_ARG` is never used
[INFO] [stdout]  --> src/exercises/cat.rs:7:7
[INFO] [stdout]   |
[INFO] [stdout] 7 | const NUMBERING_ARG: &str = "-n";
[INFO] [stdout]   |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `NUMBERING_IGNORE_EMPTY_ARG` is never used
[INFO] [stdout]  --> src/exercises/cat.rs:8:7
[INFO] [stdout]   |
[INFO] [stdout] 8 | const NUMBERING_IGNORE_EMPTY_ARG: &str = "-nb";
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Mode` is never used
[INFO] [stdout]   --> src/exercises/cat.rs:10:6
[INFO] [stdout]    |
[INFO] [stdout] 10 | enum Mode {
[INFO] [stdout]    |      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_help` is never used
[INFO] [stdout]   --> src/exercises/cat.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn show_help() {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_config` is never used
[INFO] [stdout]   --> src/exercises/cat.rs:35:4
[INFO] [stdout]    |
[INFO] [stdout] 35 | fn get_config() -> (Vec<String>, Vec<String>) {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cat` is never used
[INFO] [stdout]   --> src/exercises/cat.rs:41:4
[INFO] [stdout]    |
[INFO] [stdout] 41 | fn cat(paths: &Vec<String>, mode: &Mode) {
[INFO] [stdout]    |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Printer` is never used
[INFO] [stdout]   --> src/exercises/cat.rs:65:6
[INFO] [stdout]    |
[INFO] [stdout] 65 | type Printer = fn(usize, &String);
[INFO] [stdout]    |      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print` is never used
[INFO] [stdout]   --> src/exercises/cat.rs:67:4
[INFO] [stdout]    |
[INFO] [stdout] 67 | fn print(_line_numer: usize, line: &String) {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_with_numbering` is never used
[INFO] [stdout]   --> src/exercises/cat.rs:71:4
[INFO] [stdout]    |
[INFO] [stdout] 71 | fn print_with_numbering(line_numer: usize, line: &String) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_with_numbering_ignoring_empty` is never used
[INFO] [stdout]   --> src/exercises/cat.rs:75:4
[INFO] [stdout]    |
[INFO] [stdout] 75 | fn print_with_numbering_ignoring_empty(line_numer: usize, line: &String) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/exercises/cat.rs:83:8
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub fn run() {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FileStats` is never constructed
[INFO] [stdout]  --> src/exercises/wc.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | struct FileStats {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_args` is never used
[INFO] [stdout]   --> src/exercises/wc.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn get_args() -> Vec<String> {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_help` is never used
[INFO] [stdout]   --> src/exercises/wc.rs:31:4
[INFO] [stdout]    |
[INFO] [stdout] 31 | fn show_help() {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `wc` is never used
[INFO] [stdout]   --> src/exercises/wc.rs:36:4
[INFO] [stdout]    |
[INFO] [stdout] 36 | fn wc(paths: &Vec<String>) {
[INFO] [stdout]    |    ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_file_stats` is never used
[INFO] [stdout]   --> src/exercises/wc.rs:50:4
[INFO] [stdout]    |
[INFO] [stdout] 50 | fn get_file_stats(file: &File) -> Result<FileStats, Box<dyn Error>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_file_stats` is never used
[INFO] [stdout]   --> src/exercises/wc.rs:68:4
[INFO] [stdout]    |
[INFO] [stdout] 68 | fn print_file_stats(file_name: &String, stats: &FileStats) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/exercises/wc.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub fn run() {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/memory_management.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn run() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `memory_management` is never used
[INFO] [stdout]   --> src/memory_management.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn memory_management() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show` is never used
[INFO] [stdout]    --> src/memory_management.rs:104:4
[INFO] [stdout]     |
[INFO] [stdout] 104 | fn show(text: String) {
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_with_result` is never used
[INFO] [stdout]    --> src/memory_management.rs:108:4
[INFO] [stdout]     |
[INFO] [stdout] 108 | fn show_with_result(text: String) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_with_ref` is never used
[INFO] [stdout]    --> src/memory_management.rs:113:4
[INFO] [stdout]     |
[INFO] [stdout] 113 | fn show_with_ref(text: &String) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_with_mut_ref` is never used
[INFO] [stdout]    --> src/memory_management.rs:117:4
[INFO] [stdout]     |
[INFO] [stdout] 117 | fn show_with_mut_ref(text: &mut String) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Test` is never constructed
[INFO] [stdout]    --> src/memory_management.rs:123:8
[INFO] [stdout]     |
[INFO] [stdout] 123 | struct Test {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mutate_test` is never used
[INFO] [stdout]    --> src/memory_management.rs:127:4
[INFO] [stdout]     |
[INFO] [stdout] 127 | fn mutate_test(mut test: Test) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `defining_many_immutable_references` is never used
[INFO] [stdout]    --> src/memory_management.rs:134:4
[INFO] [stdout]     |
[INFO] [stdout] 134 | fn defining_many_immutable_references() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `restrictions_after_defining_mutable_reference` is never used
[INFO] [stdout]    --> src/memory_management.rs:143:4
[INFO] [stdout]     |
[INFO] [stdout] 143 | fn restrictions_after_defining_mutable_reference() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `restrictions_after_defining_immutable_reference` is never used
[INFO] [stdout]    --> src/memory_management.rs:157:4
[INFO] [stdout]     |
[INFO] [stdout] 157 | fn restrictions_after_defining_immutable_reference() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `lifetimes` is never used
[INFO] [stdout]    --> src/memory_management.rs:172:4
[INFO] [stdout]     |
[INFO] [stdout] 172 | fn lifetimes() {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_longer` is never used
[INFO] [stdout]    --> src/memory_management.rs:219:4
[INFO] [stdout]     |
[INFO] [stdout] 219 | fn get_longer<'a>(text: &'a str, other_text: &'a str) -> &'a str {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Person` is never constructed
[INFO] [stdout]    --> src/memory_management.rs:229:8
[INFO] [stdout]     |
[INFO] [stdout] 229 | struct Person<'a> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_ref` is never used
[INFO] [stdout]    --> src/memory_management.rs:241:4
[INFO] [stdout]     |
[INFO] [stdout] 241 | fn get_ref(aa: &i32) -> &i32 {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_ref2` is never used
[INFO] [stdout]    --> src/memory_management.rs:246:4
[INFO] [stdout]     |
[INFO] [stdout] 246 | fn get_ref2<'a>(aa: &'a i32) -> &'a i32 {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pointers` is never used
[INFO] [stdout]    --> src/memory_management.rs:250:4
[INFO] [stdout]     |
[INFO] [stdout] 250 | fn pointers() {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Employee` is never constructed
[INFO] [stdout]    --> src/memory_management.rs:284:8
[INFO] [stdout]     |
[INFO] [stdout] 284 | struct Employee {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `use_employee` is never used
[INFO] [stdout]    --> src/memory_management.rs:289:4
[INFO] [stdout]     |
[INFO] [stdout] 289 | fn use_employee(rc_emp: &Rc<Employee>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/language_basics.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn run() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `variable_declaration` is never used
[INFO] [stdout]   --> src/language_basics.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn variable_declaration() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MONTH_OF_THE_YEAR` is never used
[INFO] [stdout]   --> src/language_basics.rs:62:7
[INFO] [stdout]    |
[INFO] [stdout] 62 | const MONTH_OF_THE_YEAR: i8 = 4;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `constant_declaration` is never used
[INFO] [stdout]   --> src/language_basics.rs:64:4
[INFO] [stdout]    |
[INFO] [stdout] 64 | fn constant_declaration() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `APP_NAME` is never used
[INFO] [stdout]   --> src/language_basics.rs:77:8
[INFO] [stdout]    |
[INFO] [stdout] 77 | static APP_NAME: &str = "Training app";
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `GLOBAL_TIMESTAMP` is never used
[INFO] [stdout]   --> src/language_basics.rs:79:8
[INFO] [stdout]    |
[INFO] [stdout] 79 | static GLOBAL_TIMESTAMP: Lazy<DateTime<Utc>> = Lazy::new(|| {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `static_values` is never used
[INFO] [stdout]   --> src/language_basics.rs:88:4
[INFO] [stdout]    |
[INFO] [stdout] 88 | fn static_values() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `data_types` is never used
[INFO] [stdout]    --> src/language_basics.rs:110:4
[INFO] [stdout]     |
[INFO] [stdout] 110 | fn data_types() {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `control_flow` is never used
[INFO] [stdout]    --> src/language_basics.rs:364:4
[INFO] [stdout]     |
[INFO] [stdout] 364 | fn control_flow() {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `functions` is never used
[INFO] [stdout]    --> src/language_basics.rs:479:4
[INFO] [stdout]     |
[INFO] [stdout] 479 | fn functions() {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add` is never used
[INFO] [stdout]    --> src/language_basics.rs:494:4
[INFO] [stdout]     |
[INFO] [stdout] 494 | fn add(value: i32, other_value: i32) -> i32 {
[INFO] [stdout]     |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate` is never used
[INFO] [stdout]    --> src/language_basics.rs:499:4
[INFO] [stdout]     |
[INFO] [stdout] 499 | fn validate<T>(value: T, predicate: fn(T) -> bool) -> bool {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_even` is never used
[INFO] [stdout]    --> src/language_basics.rs:503:4
[INFO] [stdout]     |
[INFO] [stdout] 503 | fn is_even(value: i32) -> bool {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `structs` is never used
[INFO] [stdout]    --> src/language_basics.rs:515:4
[INFO] [stdout]     |
[INFO] [stdout] 515 | fn structs() {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Directory` is never constructed
[INFO] [stdout]    --> src/language_basics.rs:576:8
[INFO] [stdout]     |
[INFO] [stdout] 576 | struct Directory;
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Point` is never constructed
[INFO] [stdout]    --> src/language_basics.rs:579:8
[INFO] [stdout]     |
[INFO] [stdout] 579 | struct Point(i32, i32);
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Point3d` is never constructed
[INFO] [stdout]    --> src/language_basics.rs:581:8
[INFO] [stdout]     |
[INFO] [stdout] 581 | struct Point3d {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Account` is never constructed
[INFO] [stdout]    --> src/language_basics.rs:588:8
[INFO] [stdout]     |
[INFO] [stdout] 588 | struct Account {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Rectangle` is never constructed
[INFO] [stdout]    --> src/language_basics.rs:595:8
[INFO] [stdout]     |
[INFO] [stdout] 595 | struct Rectangle {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/language_basics.rs:601:11
[INFO] [stdout]     |
[INFO] [stdout] 600 | impl Rectangle {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 601 |     const DEFAULT_SIZE: u32 = 100;
[INFO] [stdout]     |           ^^^^^^^^^^^^
[INFO] [stdout] 602 |
[INFO] [stdout] 603 |     fn area(&self) -> u32 {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 608 |     fn resize(&mut self, by: u32) {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 613 |     fn is_bigger(&self, other: &Rectangle) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 617 |     fn new(width: u32, height: u32) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 621 |     fn square(size: u32) -> Self {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 630 |     fn square_with_default_size() -> Self {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `width` is never used
[INFO] [stdout]    --> src/language_basics.rs:636:8
[INFO] [stdout]     |
[INFO] [stdout] 635 | impl Rectangle {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] 636 |     fn width(&self) -> u32 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `enums` is never used
[INFO] [stdout]    --> src/language_basics.rs:648:4
[INFO] [stdout]     |
[INFO] [stdout] 648 | fn enums() -> Result<(), String> {
[INFO] [stdout]     |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_first_char` is never used
[INFO] [stdout]    --> src/language_basics.rs:770:4
[INFO] [stdout]     |
[INFO] [stdout] 770 | fn get_first_char(input: &str) -> Option<char> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Currency` is never used
[INFO] [stdout]    --> src/language_basics.rs:775:6
[INFO] [stdout]     |
[INFO] [stdout] 775 | enum Currency {
[INFO] [stdout]     |      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Values` is never used
[INFO] [stdout]    --> src/language_basics.rs:782:6
[INFO] [stdout]     |
[INFO] [stdout] 782 | enum Values {
[INFO] [stdout]     |      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Money` is never constructed
[INFO] [stdout]    --> src/language_basics.rs:788:8
[INFO] [stdout]     |
[INFO] [stdout] 788 | struct Money {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Barcode` is never used
[INFO] [stdout]    --> src/language_basics.rs:794:6
[INFO] [stdout]     |
[INFO] [stdout] 794 | enum Barcode {
[INFO] [stdout]     |      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_info` is never used
[INFO] [stdout]    --> src/language_basics.rs:802:8
[INFO] [stdout]     |
[INFO] [stdout] 801 | impl Barcode {
[INFO] [stdout]     | ------------ method in this implementation
[INFO] [stdout] 802 |     fn get_info(&self) -> String {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `safe_div` is never used
[INFO] [stdout]    --> src/language_basics.rs:807:4
[INFO] [stdout]     |
[INFO] [stdout] 807 | fn safe_div(value: f64, dividend: f64) -> Option<f64> {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `safe_div_with_result` is never used
[INFO] [stdout]    --> src/language_basics.rs:815:4
[INFO] [stdout]     |
[INFO] [stdout] 815 | fn safe_div_with_result(value: f64, dividend: f64) -> Result<f64, String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/collections_generics_traits.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn run() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `collections` is never used
[INFO] [stdout]   --> src/collections_generics_traits.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn collections() {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generics_and_traits` is never used
[INFO] [stdout]   --> src/collections_generics_traits.rs:74:4
[INFO] [stdout]    |
[INFO] [stdout] 74 | fn generics_and_traits() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `i32_to_string` is never used
[INFO] [stdout]    --> src/collections_generics_traits.rs:101:4
[INFO] [stdout]     |
[INFO] [stdout] 101 | fn i32_to_string(value: i32) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `f64_to_string` is never used
[INFO] [stdout]    --> src/collections_generics_traits.rs:105:4
[INFO] [stdout]     |
[INFO] [stdout] 105 | fn f64_to_string(value: f64) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_string` is never used
[INFO] [stdout]    --> src/collections_generics_traits.rs:110:4
[INFO] [stdout]     |
[INFO] [stdout] 110 | fn to_string<A: Display>(value: A) -> String {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Point` is never constructed
[INFO] [stdout]    --> src/collections_generics_traits.rs:114:8
[INFO] [stdout]     |
[INFO] [stdout] 114 | struct Point<T> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `show` is never used
[INFO] [stdout]    --> src/collections_generics_traits.rs:130:8
[INFO] [stdout]     |
[INFO] [stdout] 129 | impl<A: Display> Point<A> {
[INFO] [stdout]     | ------------------------- method in this implementation
[INFO] [stdout] 130 |     fn show(&self) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Show` is never used
[INFO] [stdout]    --> src/collections_generics_traits.rs:135:7
[INFO] [stdout]     |
[INFO] [stdout] 135 | trait Show {
[INFO] [stdout]     |       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Shape` is never used
[INFO] [stdout]    --> src/collections_generics_traits.rs:166:7
[INFO] [stdout]     |
[INFO] [stdout] 166 | trait Shape {
[INFO] [stdout]     |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Rectangle` is never constructed
[INFO] [stdout]    --> src/collections_generics_traits.rs:170:8
[INFO] [stdout]     |
[INFO] [stdout] 170 | struct Rectangle;
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Circle` is never constructed
[INFO] [stdout]    --> src/collections_generics_traits.rs:172:8
[INFO] [stdout]     |
[INFO] [stdout] 172 | struct Circle;
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `shape_factory` is never used
[INFO] [stdout]    --> src/collections_generics_traits.rs:186:4
[INFO] [stdout]     |
[INFO] [stdout] 186 | fn shape_factory(is_rectangle: bool) -> Box<dyn Shape> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `draw_shape` is never used
[INFO] [stdout]    --> src/collections_generics_traits.rs:194:4
[INFO] [stdout]     |
[INFO] [stdout] 194 | fn draw_shape(shape: &dyn Shape) {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generic_ops` is never used
[INFO] [stdout]    --> src/collections_generics_traits.rs:199:4
[INFO] [stdout]     |
[INFO] [stdout] 199 | fn generic_ops<T: Add<Output = T> + Sub<Output = T> + Display>(
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Coord` is never constructed
[INFO] [stdout]    --> src/collections_generics_traits.rs:210:12
[INFO] [stdout]     |
[INFO] [stdout] 210 | pub struct Coord {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/collections_generics_traits.rs:216:12
[INFO] [stdout]     |
[INFO] [stdout] 215 | impl Coord {
[INFO] [stdout]     | ---------- associated function in this implementation
[INFO] [stdout] 216 |     pub fn new(long: f32, lat: f32) -> Coord {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_user` is never used
[INFO] [stdout]    --> src/collections_generics_traits.rs:243:4
[INFO] [stdout]     |
[INFO] [stdout] 243 | fn create_user<T: Repository>(repository: &T) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Repository` is never used
[INFO] [stdout]    --> src/collections_generics_traits.rs:247:7
[INFO] [stdout]     |
[INFO] [stdout] 247 | trait Repository {
[INFO] [stdout]     |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SqlRepository` is never constructed
[INFO] [stdout]    --> src/collections_generics_traits.rs:251:8
[INFO] [stdout]     |
[INFO] [stdout] 251 | struct SqlRepository;
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `InMemoryRepository` is never constructed
[INFO] [stdout]    --> src/collections_generics_traits.rs:259:8
[INFO] [stdout]     |
[INFO] [stdout] 259 | struct InMemoryRepository;
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.97s
[INFO] running `Command { std: "docker" "inspect" "425154c7c78bca8f1113d4e99e1fb2287bd60799f5190823f34c60295264259e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "425154c7c78bca8f1113d4e99e1fb2287bd60799f5190823f34c60295264259e", kill_on_drop: false }`
[INFO] [stdout] 425154c7c78bca8f1113d4e99e1fb2287bd60799f5190823f34c60295264259e
