[INFO] cloning repository https://github.com/killlowkey/rust_example
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/killlowkey/rust_example" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkilllowkey%2Frust_example", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkilllowkey%2Frust_example'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 3113a8c2622b636790d58b98d6921a3f457ecdbc
[INFO] checking killlowkey/rust_example against try#fa4dd1f19bfeb3fd235dc7f1406c42404436bef5 for pr-145108-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkilllowkey%2Frust_example" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/killlowkey/rust_example
[INFO] finished tweaking git repo https://github.com/killlowkey/rust_example
[INFO] tweaked toml for git repo https://github.com/killlowkey/rust_example written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/killlowkey/rust_example on toolchain fa4dd1f19bfeb3fd235dc7f1406c42404436bef5
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+fa4dd1f19bfeb3fd235dc7f1406c42404436bef5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/killlowkey/rust_example 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" "+fa4dd1f19bfeb3fd235dc7f1406c42404436bef5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded half v2.4.0
[INFO] [stderr]   Downloaded criterion v0.4.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+fa4dd1f19bfeb3fd235dc7f1406c42404436bef5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 57b039f82048b90ccdc28b9f766a734c790ecfea8a36f6d4dfa573b8816fea0a
[INFO] running `Command { std: "docker" "start" "-a" "57b039f82048b90ccdc28b9f766a734c790ecfea8a36f6d4dfa573b8816fea0a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "57b039f82048b90ccdc28b9f766a734c790ecfea8a36f6d4dfa573b8816fea0a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "57b039f82048b90ccdc28b9f766a734c790ecfea8a36f6d4dfa573b8816fea0a", kill_on_drop: false }`
[INFO] [stdout] 57b039f82048b90ccdc28b9f766a734c790ecfea8a36f6d4dfa573b8816fea0a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+fa4dd1f19bfeb3fd235dc7f1406c42404436bef5" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8dc6df333d2bd588441dabd90a278d965aa8a0126f2f34f6ccfdcc3d219cc1a4
[INFO] running `Command { std: "docker" "start" "-a" "8dc6df333d2bd588441dabd90a278d965aa8a0126f2f34f6ccfdcc3d219cc1a4", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde v1.0.197
[INFO] [stderr]     Checking either v1.10.0
[INFO] [stderr]    Compiling anyhow v1.0.80
[INFO] [stderr]    Compiling num-traits v0.2.18
[INFO] [stderr]     Checking half v2.4.0
[INFO] [stderr]     Checking ciborium-io v0.2.2
[INFO] [stderr]     Checking plotters-backend v0.3.5
[INFO] [stderr]    Compiling syn v2.0.51
[INFO] [stderr]    Compiling printable v0.1.0 (/opt/rustwide/workdir/printable)
[INFO] [stderr]     Checking regex-automata v0.4.6
[INFO] [stderr]     Checking rayon-core v1.12.1
[INFO] [stderr]     Checking cast v0.3.0
[INFO] [stderr]     Checking anes v0.1.6
[INFO] [stderr]     Checking clap v3.2.25
[INFO] [stderr]     Checking oorandom v11.1.3
[INFO] [stderr]     Checking unicode-ident v1.0.12
[INFO] [stdout] warning: unused import: `quote::quote`
[INFO] [stdout]  --> printable/src/lib.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use quote::quote;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking proc-macro2 v1.0.78
[INFO] [stderr]     Checking ciborium-ll v0.2.2
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking plotters-svg v0.3.5
[INFO] [stderr]     Checking rayon v1.9.0
[INFO] [stderr]     Checking quote v1.0.35
[INFO] [stderr]     Checking syn v1.0.109
[INFO] [stderr]     Checking criterion-plot v0.5.0
[INFO] [stderr]     Checking regex v1.10.3
[INFO] [stderr]     Checking plotters v0.3.5
[INFO] [stderr]    Compiling serde_derive v1.0.197
[INFO] [stderr]    Compiling tokio-macros v2.2.0
[INFO] [stdout] warning: unused import: `quote::quote`
[INFO] [stdout]  --> printable/src/lib.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use quote::quote;
[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 import: `quote::quote`
[INFO] [stdout]  --> printable/src/lib.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use quote::quote;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking tokio v1.36.0
[INFO] [stderr]     Checking rust_example v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: type alias `Err` is never used
[INFO] [stdout]   --> src/abi/business.rs:32:6
[INFO] [stdout]    |
[INFO] [stdout] 32 | type Err = anyhow::Error;
[INFO] [stdout]    |      ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BTreeMap`, `HashMap`, and `HashSet`
[INFO] [stdout]  --> src/use.rs:9:24
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::collections::{HashMap,BTreeMap,HashSet};
[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: `cmp::Ordering` and `io`
[INFO] [stdout]   --> src/use.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::{cmp::Ordering, io};
[INFO] [stdout]    |           ^^^^^^^^^^^^^  ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> src/complex_type_example.rs:42:10
[INFO] [stdout]    |
[INFO] [stdout] 42 |     let (x, y, z) = tup;
[INFO] [stdout]    |          ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `z`
[INFO] [stdout]   --> src/complex_type_example.rs:42:16
[INFO] [stdout]    |
[INFO] [stdout] 42 |     let (x, y, z) = tup;
[INFO] [stdout]    |                ^ help: if this is intentional, prefix it with an underscore: `_z`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `clubs`
[INFO] [stdout]   --> src/complex_type_example.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 60 |     let clubs = PokerSuit::Clubs;
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: you might have meant to pattern match on the similarly named variant `Clubs`
[INFO] [stdout]    |
[INFO] [stdout] 60 |     let complex_type_example::PokerSuit::Clubs = PokerSuit::Clubs;
[INFO] [stdout]    |          +++++++++++++++++++++++++++++++++
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]    |
[INFO] [stdout] 60 |     let _clubs = PokerSuit::Clubs;
[INFO] [stdout]    |         +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `spades`
[INFO] [stdout]   --> src/complex_type_example.rs:61:9
[INFO] [stdout]    |
[INFO] [stdout] 61 |     let spades = PokerSuit::Spades { x: 10, y: "spades" };
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_spades`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `first`
[INFO] [stdout]    --> src/complex_type_example.rs:100:9
[INFO] [stdout]     |
[INFO] [stdout] 100 |     let first = a[0]; // 获取a数组第一个元素
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_first`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `second`
[INFO] [stdout]    --> src/complex_type_example.rs:101:9
[INFO] [stdout]     |
[INFO] [stdout] 101 |     let second = a[1]; // 获取第二个元素
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_second`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `months`
[INFO] [stdout]    --> src/complex_type_example.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |     let months = ["January", "February", "March", "April", "May", "June", "July",
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_months`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]    --> src/complex_type_example.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |     let a: [i32; 5] = [1, 2, 3, 4, 5];
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]   --> src/trait_example.rs:81:24
[INFO] [stdout]    |
[INFO] [stdout] 81 | fn some_function<T, U>(t: &T, u: &U) -> i32
[INFO] [stdout]    |                        ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `u`
[INFO] [stdout]   --> src/trait_example.rs:81:31
[INFO] [stdout]    |
[INFO] [stdout] 81 | fn some_function<T, U>(t: &T, u: &U) -> i32
[INFO] [stdout]    |                               ^ help: if this is intentional, prefix it with an underscore: `_u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/lifetime_example.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 |     let i = ImportantExcerpt {
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]   --> src/result_example.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 |         Ok(file) => {
[INFO] [stdout]    |            ^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f`
[INFO] [stdout]   --> src/result_example.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 42 |     let f = File::open("hello.txt")?;
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_f`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `greet_world` is never used
[INFO] [stdout]  --> src/greet_world.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn greet_world() {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Person` is never constructed
[INFO] [stdout]  --> src/struct_example.rs:5:19
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub(crate) struct Person {
[INFO] [stdout]   |                   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get_name`, and `other_example` are never used
[INFO] [stdout]   --> src/struct_example.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl Person {
[INFO] [stdout]    | ----------- associated items in this implementation
[INFO] [stdout] 18 |     pub fn new(name: &str, age: u8) -> Person {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn get_name(&self) -> String {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub fn other_example(&self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `for_example` is never used
[INFO] [stdout]  --> src/flow_example.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn for_example() {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `while_example` is never used
[INFO] [stdout]   --> src/flow_example.rs:36:8
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub fn while_example() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `loop_example` is never used
[INFO] [stdout]   --> src/flow_example.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub fn loop_example() {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `if_example` is never used
[INFO] [stdout]   --> src/flow_example.rs:66:8
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub fn if_example() {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `string_example` is never used
[INFO] [stdout]  --> src/complex_type_example.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub fn string_example() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tuple_example` is never used
[INFO] [stdout]   --> src/complex_type_example.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn tuple_example() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `PokerSuit` is never used
[INFO] [stdout]   --> src/complex_type_example.rs:52:6
[INFO] [stdout]    |
[INFO] [stdout] 52 | enum PokerSuit<'a> {
[INFO] [stdout]    |      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `enum_example` is never used
[INFO] [stdout]   --> src/complex_type_example.rs:59:8
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub fn enum_example() {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `array_example` is never used
[INFO] [stdout]   --> src/complex_type_example.rs:98:8
[INFO] [stdout]    |
[INFO] [stdout] 98 | pub fn array_example() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vec_example` is never used
[INFO] [stdout]    --> src/complex_type_example.rs:120:8
[INFO] [stdout]     |
[INFO] [stdout] 120 | pub fn vec_example() {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `plus_one` is never used
[INFO] [stdout]  --> src/option.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn plus_one(x: Option<i32>) -> Option<i32> {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `option` is never used
[INFO] [stdout]  --> src/option.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn option() {
[INFO] [stdout]   |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `match_example1` is never used
[INFO] [stdout]  --> src/match_example.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub fn match_example1() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `match_example2` is never used
[INFO] [stdout]   --> src/match_example.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn match_example2() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `match_example3` is never used
[INFO] [stdout]   --> src/match_example.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub fn match_example3() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `match_example4` is never used
[INFO] [stdout]   --> src/match_example.rs:31:8
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub fn match_example4() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `match_example5` is never used
[INFO] [stdout]   --> src/match_example.rs:43:8
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub fn match_example5() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_i8` is never used
[INFO] [stdout]  --> src/generics_example.rs:4:4
[INFO] [stdout]   |
[INFO] [stdout] 4 | fn add_i8(a: i8, b: i8) -> i8 {
[INFO] [stdout]   |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_i32` is never used
[INFO] [stdout]  --> src/generics_example.rs:8:4
[INFO] [stdout]   |
[INFO] [stdout] 8 | fn add_i32(a: i32, b: i32) -> i32 {
[INFO] [stdout]   |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_f64` is never used
[INFO] [stdout]   --> src/generics_example.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn add_f64(a: f64, b: f64) -> f64 {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `old_add_example` is never used
[INFO] [stdout]   --> src/generics_example.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn old_add_example() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_example` is never used
[INFO] [stdout]   --> src/generics_example.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn add_example() {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `result_example` is never used
[INFO] [stdout]   --> src/generics_example.rs:45:8
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub fn result_example() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `display_array` is never used
[INFO] [stdout]   --> src/generics_example.rs:58:4
[INFO] [stdout]    |
[INFO] [stdout] 58 | fn display_array<T: std::fmt::Debug>(arr: &[T]) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `display_array_new` is never used
[INFO] [stdout]   --> src/generics_example.rs:63:4
[INFO] [stdout]    |
[INFO] [stdout] 63 | fn display_array_new<T: std::fmt::Debug, const N: usize>(arr: [T; N]) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `display_example` is never used
[INFO] [stdout]   --> src/generics_example.rs:67:8
[INFO] [stdout]    |
[INFO] [stdout] 67 | pub fn display_example() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `display_array_new_example` is never used
[INFO] [stdout]   --> src/generics_example.rs:75:8
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub fn display_array_new_example() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hashmap_example` is never used
[INFO] [stdout]   --> src/generics_example.rs:84:8
[INFO] [stdout]    |
[INFO] [stdout] 84 | pub fn hashmap_example() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Summary` is never used
[INFO] [stdout]  --> src/trait_example.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub trait Summary {
[INFO] [stdout]   |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Post` is never constructed
[INFO] [stdout]   --> src/trait_example.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct Post {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Weibo` is never constructed
[INFO] [stdout]   --> src/trait_example.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub struct Weibo {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `trait_example` is never used
[INFO] [stdout]   --> src/trait_example.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub fn trait_example() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `notify` is never used
[INFO] [stdout]   --> src/trait_example.rs:47:8
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub fn notify<T: Summary>(item: &T) {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `notify_with_display` is never used
[INFO] [stdout]   --> src/trait_example.rs:53:8
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub fn notify_with_display<T: Summary + Display>(item: &T) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `trait_notify_restraint_example` is never used
[INFO] [stdout]   --> src/trait_example.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub fn trait_notify_restraint_example() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `trait_notify_with_display_restraint_example` is never used
[INFO] [stdout]   --> src/trait_example.rs:71:8
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub fn trait_notify_with_display_restraint_example() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `some_function` is never used
[INFO] [stdout]   --> src/trait_example.rs:81:4
[INFO] [stdout]    |
[INFO] [stdout] 81 | fn some_function<T, U>(t: &T, u: &U) -> i32
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `largest` is never used
[INFO] [stdout]   --> src/trait_example.rs:90:4
[INFO] [stdout]    |
[INFO] [stdout] 90 | fn largest<T: PartialOrd + Copy>(list: &[T]) -> T {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `largest_with_where` is never used
[INFO] [stdout]    --> src/trait_example.rs:102:4
[INFO] [stdout]     |
[INFO] [stdout] 102 | fn largest_with_where<T>(list: &[T]) -> T
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `largest_example` is never used
[INFO] [stdout]    --> src/trait_example.rs:116:8
[INFO] [stdout]     |
[INFO] [stdout] 116 | pub fn largest_example() {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `returns_summary` is never used
[INFO] [stdout]    --> src/trait_example.rs:130:4
[INFO] [stdout]     |
[INFO] [stdout] 130 | fn returns_summary(switch: bool) -> Box<dyn Summary> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `virtual_table` is never used
[INFO] [stdout]    --> src/trait_example.rs:156:8
[INFO] [stdout]     |
[INFO] [stdout] 156 | pub fn virtual_table() {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Parent` is never used
[INFO] [stdout]    --> src/trait_example.rs:175:11
[INFO] [stdout]     |
[INFO] [stdout] 175 | pub trait Parent {
[INFO] [stdout]     |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Child` is never used
[INFO] [stdout]    --> src/trait_example.rs:181:11
[INFO] [stdout]     |
[INFO] [stdout] 181 | pub trait Child: Parent {
[INFO] [stdout]     |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ParentTrait` is never constructed
[INFO] [stdout]    --> src/trait_example.rs:186:12
[INFO] [stdout]     |
[INFO] [stdout] 186 | pub struct ParentTrait(String);
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `longest` is never used
[INFO] [stdout]   --> src/lifetime_example.rs:14:4
[INFO] [stdout]    |
[INFO] [stdout] 14 | fn longest<'a>(x: &'a str, y: &'a str) -> &'a str {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `first_word` is never used
[INFO] [stdout]   --> src/lifetime_example.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn first_word(s: &str) -> &str {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `longest_example` is never used
[INFO] [stdout]   --> src/lifetime_example.rs:28:4
[INFO] [stdout]    |
[INFO] [stdout] 28 | fn longest_example() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ImportantExcerpt` is never constructed
[INFO] [stdout]   --> src/lifetime_example.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | struct ImportantExcerpt<'a> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `important_excerpt_example` is never used
[INFO] [stdout]   --> src/lifetime_example.rs:43:4
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn important_excerpt_example() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Person` is never constructed
[INFO] [stdout]   --> src/lifetime_example.rs:52:8
[INFO] [stdout]    |
[INFO] [stdout] 52 | struct Person {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `return_owner` is never used
[INFO] [stdout]   --> src/lifetime_example.rs:56:4
[INFO] [stdout]    |
[INFO] [stdout] 56 | fn return_owner(a: &Person) -> Person {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `return_owner_example` is never used
[INFO] [stdout]   --> src/lifetime_example.rs:61:8
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub fn return_owner_example() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `say_world` is never used
[INFO] [stdout]   --> src/tokio_example.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 11 | async fn say_world() {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tokio_say_world` is never used
[INFO] [stdout]   --> src/tokio_example.rs:15:14
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub async fn tokio_say_world() {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `result_fn` is never used
[INFO] [stdout]  --> src/result_example.rs:7:4
[INFO] [stdout]   |
[INFO] [stdout] 7 | fn result_fn(arr: &[i32; 4]) -> Option<&i32> {
[INFO] [stdout]   |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `result_fn_example` is never used
[INFO] [stdout]   --> src/result_example.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub fn result_fn_example() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `result_error` is never used
[INFO] [stdout]   --> src/result_example.rs:20:4
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn result_error() -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `result_error_example` is never used
[INFO] [stdout]   --> src/result_example.rs:36:8
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub fn result_error_example() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `result_example` is never used
[INFO] [stdout]   --> src/result_example.rs:41:4
[INFO] [stdout]    |
[INFO] [stdout] 41 | fn result_example() -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `call_with_one` is never used
[INFO] [stdout]  --> src/closure_example.rs:4:4
[INFO] [stdout]   |
[INFO] [stdout] 4 | fn call_with_one<F>(func: F) -> usize
[INFO] [stdout]   |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `closure_example` is never used
[INFO] [stdout]   --> src/closure_example.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn closure_example() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fn_once_example` is never used
[INFO] [stdout]   --> src/closure_example.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn fn_once_example<T>(fn_once: T, str: String) -> usize
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fn_mut_example` is never used
[INFO] [stdout]   --> src/closure_example.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn fn_mut_example<T>(mut fn_mut: T, str: String) -> usize
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Cacher` is never constructed
[INFO] [stdout]   --> src/closure_example.rs:36:8
[INFO] [stdout]    |
[INFO] [stdout] 36 | struct Cacher<T, U: Clone>
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `value` are never used
[INFO] [stdout]   --> src/closure_example.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 44 | / impl<T, U> Cacher<T, U>
[INFO] [stdout] 45 | |     where
[INFO] [stdout] 46 | |         T: Fn(U) -> U,
[INFO] [stdout] 47 | |         U: Clone
[INFO] [stdout]    | |________________- associated items in this implementation
[INFO] [stdout] 48 |   {
[INFO] [stdout] 49 |       fn new(query: T) -> Cacher<T, U> {
[INFO] [stdout]    |          ^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |       fn value(&mut self, arg: U) -> U {
[INFO] [stdout]    |          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parent_method` is never used
[INFO] [stdout]   --> src/mod_example.rs:37:4
[INFO] [stdout]    |
[INFO] [stdout] 37 | fn parent_method() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `using_mod_method` is never used
[INFO] [stdout]   --> src/mod_example.rs:41:4
[INFO] [stdout]    |
[INFO] [stdout] 41 | fn using_mod_method() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `using_outside_mod_method` is never used
[INFO] [stdout]   --> src/mod_example.rs:52:4
[INFO] [stdout]    |
[INFO] [stdout] 52 | fn using_outside_mod_method() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sub_mod1_method` is never used
[INFO] [stdout]  --> src/mod_example.rs:5:16
[INFO] [stdout]   |
[INFO] [stdout] 5 |         pub fn sub_mod1_method() {
[INFO] [stdout]   |                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `current_package_access` is never used
[INFO] [stdout]   --> src/mod_example.rs:10:23
[INFO] [stdout]    |
[INFO] [stdout] 10 |         pub(crate) fn current_package_access() {
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `super_package_access` is never used
[INFO] [stdout]   --> src/mod_example.rs:15:23
[INFO] [stdout]    |
[INFO] [stdout] 15 |         pub(super) fn super_package_access() {
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sub_mod1_inner_method` is never used
[INFO] [stdout]   --> src/mod_example.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 |         fn sub_mod1_inner_method() {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `using_parent_parent_method` is never used
[INFO] [stdout]   --> src/mod_example.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 23 |         fn using_parent_parent_method() {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sub_mod2_method` is never used
[INFO] [stdout]   --> src/mod_example.rs:31:16
[INFO] [stdout]    |
[INFO] [stdout] 31 |         pub fn sub_mod2_method() {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fix_incorrect_order` is never used
[INFO] [stdout]  --> src/mod2.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 |     fn fix_incorrect_order() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cook_order` is never used
[INFO] [stdout]  --> src/mod2.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 |     pub fn cook_order() {}
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PbPerson` is never constructed
[INFO] [stdout]  --> src/abi/pb.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub struct PbPerson {
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]  --> src/abi/pb.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | impl PbPerson {
[INFO] [stdout]   | ------------- associated function in this implementation
[INFO] [stdout] 8 |     pub fn new(name: String, age: u8) -> PbPerson {
[INFO] [stdout]   |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CustomError` is never constructed
[INFO] [stdout]  --> src/abi/business.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct CustomError {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/abi/business.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl CustomError {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] 19 |     fn new(message: String) -> CustomError {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PersonService` is never constructed
[INFO] [stdout]   --> src/abi/business.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct PersonService {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Err` is never used
[INFO] [stdout]   --> src/abi/business.rs:32:6
[INFO] [stdout]    |
[INFO] [stdout] 32 | type Err = anyhow::Error;
[INFO] [stdout]    |      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/abi/business.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | impl PersonService {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 35 |     pub fn new() -> PersonService {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     pub fn add(&mut self, person: PbPerson) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn remove(&mut self, name: &str) -> Result<()> {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 64 |     pub fn get(&mut self, name: &str) -> Option<&PbPerson> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |     pub fn get_mut(&mut self, name: &str) -> Option<&mut PbPerson> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn list(&mut self) -> Option<Vec<&PbPerson>> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 81 |     pub fn is_empty(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking serde_json v1.0.114
[INFO] [stderr]     Checking ciborium v0.2.2
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking criterion v0.4.0
[INFO] [stdout] warning: unused import: `std::ops::Add`
[INFO] [stdout]   --> src/match_example.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 79 |     use std::ops::Add;
[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: `BTreeMap`, `HashMap`, and `HashSet`
[INFO] [stdout]  --> src/use.rs:9:24
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::collections::{HashMap,BTreeMap,HashSet};
[INFO] [stdout]   |                        ^^^^^^^ ^^^^^^^^ ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `cmp::Ordering` and `io`
[INFO] [stdout]   --> src/use.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::{cmp::Ordering, io};
[INFO] [stdout]    |           ^^^^^^^^^^^^^  ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/mutex.rs:40:17
[INFO] [stdout]    |
[INFO] [stdout] 40 |             let mut lock_clone = Arc::clone(&lock);
[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: `handler`
[INFO] [stdout]    --> src/mutex.rs:117:17
[INFO] [stdout]     |
[INFO] [stdout] 117 |             let handler = thread::spawn(move || {
[INFO] [stdout]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_handler`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/mutex.rs:123:13
[INFO] [stdout]     |
[INFO] [stdout] 123 |         for i in 0..5 {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Err` is never used
[INFO] [stdout]   --> src/abi/business.rs:32:6
[INFO] [stdout]    |
[INFO] [stdout] 32 | type Err = anyhow::Error;
[INFO] [stdout]    |      ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> src/complex_type_example.rs:42:10
[INFO] [stdout]    |
[INFO] [stdout] 42 |     let (x, y, z) = tup;
[INFO] [stdout]    |          ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `z`
[INFO] [stdout]   --> src/complex_type_example.rs:42:16
[INFO] [stdout]    |
[INFO] [stdout] 42 |     let (x, y, z) = tup;
[INFO] [stdout]    |                ^ help: if this is intentional, prefix it with an underscore: `_z`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `clubs`
[INFO] [stdout]   --> src/complex_type_example.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 60 |     let clubs = PokerSuit::Clubs;
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: you might have meant to pattern match on the similarly named variant `Clubs`
[INFO] [stdout]    |
[INFO] [stdout] 60 |     let complex_type_example::PokerSuit::Clubs = PokerSuit::Clubs;
[INFO] [stdout]    |          +++++++++++++++++++++++++++++++++
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]    |
[INFO] [stdout] 60 |     let _clubs = PokerSuit::Clubs;
[INFO] [stdout]    |         +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `spades`
[INFO] [stdout]   --> src/complex_type_example.rs:61:9
[INFO] [stdout]    |
[INFO] [stdout] 61 |     let spades = PokerSuit::Spades { x: 10, y: "spades" };
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_spades`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `first`
[INFO] [stdout]    --> src/complex_type_example.rs:100:9
[INFO] [stdout]     |
[INFO] [stdout] 100 |     let first = a[0]; // 获取a数组第一个元素
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_first`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `second`
[INFO] [stdout]    --> src/complex_type_example.rs:101:9
[INFO] [stdout]     |
[INFO] [stdout] 101 |     let second = a[1]; // 获取第二个元素
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_second`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `months`
[INFO] [stdout]    --> src/complex_type_example.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |     let months = ["January", "February", "March", "April", "May", "June", "July",
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_months`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]    --> src/complex_type_example.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |     let a: [i32; 5] = [1, 2, 3, 4, 5];
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]   --> src/trait_example.rs:81:24
[INFO] [stdout]    |
[INFO] [stdout] 81 | fn some_function<T, U>(t: &T, u: &U) -> i32
[INFO] [stdout]    |                        ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `u`
[INFO] [stdout]   --> src/trait_example.rs:81:31
[INFO] [stdout]    |
[INFO] [stdout] 81 | fn some_function<T, U>(t: &T, u: &U) -> i32
[INFO] [stdout]    |                               ^ help: if this is intentional, prefix it with an underscore: `_u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/trait_example.rs:216:13
[INFO] [stdout]     |
[INFO] [stdout] 216 |         let mut parent = ParentTrait::new("ray".into());
[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: `i`
[INFO] [stdout]   --> src/lifetime_example.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 |     let i = ImportantExcerpt {
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]   --> src/result_example.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 |         Ok(file) => {
[INFO] [stdout]    |            ^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f`
[INFO] [stdout]   --> src/result_example.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 42 |     let f = File::open("hello.txt")?;
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_f`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `greet_world` is never used
[INFO] [stdout]  --> src/greet_world.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn greet_world() {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Person` is never constructed
[INFO] [stdout]  --> src/struct_example.rs:5:19
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub(crate) struct Person {
[INFO] [stdout]   |                   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get_name`, and `other_example` are never used
[INFO] [stdout]   --> src/struct_example.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl Person {
[INFO] [stdout]    | ----------- associated items in this implementation
[INFO] [stdout] 18 |     pub fn new(name: &str, age: u8) -> Person {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn get_name(&self) -> String {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub fn other_example(&self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `plus_one` is never used
[INFO] [stdout]  --> src/option.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn plus_one(x: Option<i32>) -> Option<i32> {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `option` is never used
[INFO] [stdout]  --> src/option.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn option() {
[INFO] [stdout]   |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `match_example1` is never used
[INFO] [stdout]  --> src/match_example.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub fn match_example1() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `match_example2` is never used
[INFO] [stdout]   --> src/match_example.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn match_example2() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `match_example3` is never used
[INFO] [stdout]   --> src/match_example.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub fn match_example3() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `match_example4` is never used
[INFO] [stdout]   --> src/match_example.rs:31:8
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub fn match_example4() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `match_example5` is never used
[INFO] [stdout]   --> src/match_example.rs:43:8
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub fn match_example5() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_i8` is never used
[INFO] [stdout]  --> src/generics_example.rs:4:4
[INFO] [stdout]   |
[INFO] [stdout] 4 | fn add_i8(a: i8, b: i8) -> i8 {
[INFO] [stdout]   |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_i32` is never used
[INFO] [stdout]  --> src/generics_example.rs:8:4
[INFO] [stdout]   |
[INFO] [stdout] 8 | fn add_i32(a: i32, b: i32) -> i32 {
[INFO] [stdout]   |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_f64` is never used
[INFO] [stdout]   --> src/generics_example.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn add_f64(a: f64, b: f64) -> f64 {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `old_add_example` is never used
[INFO] [stdout]   --> src/generics_example.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn old_add_example() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_example` is never used
[INFO] [stdout]   --> src/generics_example.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn add_example() {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `result_example` is never used
[INFO] [stdout]   --> src/generics_example.rs:45:8
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub fn result_example() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `display_array` is never used
[INFO] [stdout]   --> src/generics_example.rs:58:4
[INFO] [stdout]    |
[INFO] [stdout] 58 | fn display_array<T: std::fmt::Debug>(arr: &[T]) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `display_array_new` is never used
[INFO] [stdout]   --> src/generics_example.rs:63:4
[INFO] [stdout]    |
[INFO] [stdout] 63 | fn display_array_new<T: std::fmt::Debug, const N: usize>(arr: [T; N]) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `display_example` is never used
[INFO] [stdout]   --> src/generics_example.rs:67:8
[INFO] [stdout]    |
[INFO] [stdout] 67 | pub fn display_example() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `display_array_new_example` is never used
[INFO] [stdout]   --> src/generics_example.rs:75:8
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub fn display_array_new_example() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hashmap_example` is never used
[INFO] [stdout]   --> src/generics_example.rs:84:8
[INFO] [stdout]    |
[INFO] [stdout] 84 | pub fn hashmap_example() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `default` is never used
[INFO] [stdout]  --> src/trait_example.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub trait Summary {
[INFO] [stdout]   |           ------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 7 |     fn default(&self) -> String {
[INFO] [stdout]   |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Weibo` is never constructed
[INFO] [stdout]   --> src/trait_example.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub struct Weibo {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `trait_example` is never used
[INFO] [stdout]   --> src/trait_example.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub fn trait_example() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `notify` is never used
[INFO] [stdout]   --> src/trait_example.rs:47:8
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub fn notify<T: Summary>(item: &T) {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `notify_with_display` is never used
[INFO] [stdout]   --> src/trait_example.rs:53:8
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub fn notify_with_display<T: Summary + Display>(item: &T) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `trait_notify_restraint_example` is never used
[INFO] [stdout]   --> src/trait_example.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub fn trait_notify_restraint_example() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `trait_notify_with_display_restraint_example` is never used
[INFO] [stdout]   --> src/trait_example.rs:71:8
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub fn trait_notify_with_display_restraint_example() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `some_function` is never used
[INFO] [stdout]   --> src/trait_example.rs:81:4
[INFO] [stdout]    |
[INFO] [stdout] 81 | fn some_function<T, U>(t: &T, u: &U) -> i32
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `largest` is never used
[INFO] [stdout]   --> src/trait_example.rs:90:4
[INFO] [stdout]    |
[INFO] [stdout] 90 | fn largest<T: PartialOrd + Copy>(list: &[T]) -> T {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `largest_with_where` is never used
[INFO] [stdout]    --> src/trait_example.rs:102:4
[INFO] [stdout]     |
[INFO] [stdout] 102 | fn largest_with_where<T>(list: &[T]) -> T
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `largest_example` is never used
[INFO] [stdout]    --> src/trait_example.rs:116:8
[INFO] [stdout]     |
[INFO] [stdout] 116 | pub fn largest_example() {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `returns_summary` is never used
[INFO] [stdout]    --> src/trait_example.rs:130:4
[INFO] [stdout]     |
[INFO] [stdout] 130 | fn returns_summary(switch: bool) -> Box<dyn Summary> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `longest` is never used
[INFO] [stdout]   --> src/lifetime_example.rs:14:4
[INFO] [stdout]    |
[INFO] [stdout] 14 | fn longest<'a>(x: &'a str, y: &'a str) -> &'a str {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `first_word` is never used
[INFO] [stdout]   --> src/lifetime_example.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn first_word(s: &str) -> &str {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `longest_example` is never used
[INFO] [stdout]   --> src/lifetime_example.rs:28:4
[INFO] [stdout]    |
[INFO] [stdout] 28 | fn longest_example() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ImportantExcerpt` is never constructed
[INFO] [stdout]   --> src/lifetime_example.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | struct ImportantExcerpt<'a> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `important_excerpt_example` is never used
[INFO] [stdout]   --> src/lifetime_example.rs:43:4
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn important_excerpt_example() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Person` is never constructed
[INFO] [stdout]   --> src/lifetime_example.rs:52:8
[INFO] [stdout]    |
[INFO] [stdout] 52 | struct Person {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `return_owner` is never used
[INFO] [stdout]   --> src/lifetime_example.rs:56:4
[INFO] [stdout]    |
[INFO] [stdout] 56 | fn return_owner(a: &Person) -> Person {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `return_owner_example` is never used
[INFO] [stdout]   --> src/lifetime_example.rs:61:8
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub fn return_owner_example() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `say_world` is never used
[INFO] [stdout]   --> src/tokio_example.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 11 | async fn say_world() {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tokio_say_world` is never used
[INFO] [stdout]   --> src/tokio_example.rs:15:14
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub async fn tokio_say_world() {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `result_fn` is never used
[INFO] [stdout]  --> src/result_example.rs:7:4
[INFO] [stdout]   |
[INFO] [stdout] 7 | fn result_fn(arr: &[i32; 4]) -> Option<&i32> {
[INFO] [stdout]   |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `result_fn_example` is never used
[INFO] [stdout]   --> src/result_example.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub fn result_fn_example() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `result_error` is never used
[INFO] [stdout]   --> src/result_example.rs:20:4
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn result_error() -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `result_error_example` is never used
[INFO] [stdout]   --> src/result_example.rs:36:8
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub fn result_error_example() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `result_example` is never used
[INFO] [stdout]   --> src/result_example.rs:41:4
[INFO] [stdout]    |
[INFO] [stdout] 41 | fn result_example() -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fn_mut_example` is never used
[INFO] [stdout]   --> src/closure_example.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn fn_mut_example<T>(mut fn_mut: T, str: String) -> usize
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parent_method` is never used
[INFO] [stdout]   --> src/mod_example.rs:37:4
[INFO] [stdout]    |
[INFO] [stdout] 37 | fn parent_method() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `using_mod_method` is never used
[INFO] [stdout]   --> src/mod_example.rs:41:4
[INFO] [stdout]    |
[INFO] [stdout] 41 | fn using_mod_method() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `using_outside_mod_method` is never used
[INFO] [stdout]   --> src/mod_example.rs:52:4
[INFO] [stdout]    |
[INFO] [stdout] 52 | fn using_outside_mod_method() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sub_mod1_method` is never used
[INFO] [stdout]  --> src/mod_example.rs:5:16
[INFO] [stdout]   |
[INFO] [stdout] 5 |         pub fn sub_mod1_method() {
[INFO] [stdout]   |                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `current_package_access` is never used
[INFO] [stdout]   --> src/mod_example.rs:10:23
[INFO] [stdout]    |
[INFO] [stdout] 10 |         pub(crate) fn current_package_access() {
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `super_package_access` is never used
[INFO] [stdout]   --> src/mod_example.rs:15:23
[INFO] [stdout]    |
[INFO] [stdout] 15 |         pub(super) fn super_package_access() {
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sub_mod1_inner_method` is never used
[INFO] [stdout]   --> src/mod_example.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 |         fn sub_mod1_inner_method() {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `using_parent_parent_method` is never used
[INFO] [stdout]   --> src/mod_example.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 23 |         fn using_parent_parent_method() {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sub_mod2_method` is never used
[INFO] [stdout]   --> src/mod_example.rs:31:16
[INFO] [stdout]    |
[INFO] [stdout] 31 |         pub fn sub_mod2_method() {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fix_incorrect_order` is never used
[INFO] [stdout]  --> src/mod2.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 |     fn fix_incorrect_order() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cook_order` is never used
[INFO] [stdout]  --> src/mod2.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 |     pub fn cook_order() {}
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PbPerson` is never constructed
[INFO] [stdout]  --> src/abi/pb.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub struct PbPerson {
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]  --> src/abi/pb.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | impl PbPerson {
[INFO] [stdout]   | ------------- associated function in this implementation
[INFO] [stdout] 8 |     pub fn new(name: String, age: u8) -> PbPerson {
[INFO] [stdout]   |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CustomError` is never constructed
[INFO] [stdout]  --> src/abi/business.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct CustomError {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/abi/business.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl CustomError {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] 19 |     fn new(message: String) -> CustomError {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PersonService` is never constructed
[INFO] [stdout]   --> src/abi/business.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct PersonService {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Err` is never used
[INFO] [stdout]   --> src/abi/business.rs:32:6
[INFO] [stdout]    |
[INFO] [stdout] 32 | type Err = anyhow::Error;
[INFO] [stdout]    |      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/abi/business.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | impl PersonService {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 35 |     pub fn new() -> PersonService {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     pub fn add(&mut self, person: PbPerson) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn remove(&mut self, name: &str) -> Result<()> {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 64 |     pub fn get(&mut self, name: &str) -> Option<&PbPerson> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |     pub fn get_mut(&mut self, name: &str) -> Option<&mut PbPerson> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn list(&mut self) -> Option<Vec<&PbPerson>> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 81 |     pub fn is_empty(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 15.13s
[INFO] running `Command { std: "docker" "inspect" "8dc6df333d2bd588441dabd90a278d965aa8a0126f2f34f6ccfdcc3d219cc1a4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8dc6df333d2bd588441dabd90a278d965aa8a0126f2f34f6ccfdcc3d219cc1a4", kill_on_drop: false }`
[INFO] [stdout] 8dc6df333d2bd588441dabd90a278d965aa8a0126f2f34f6ccfdcc3d219cc1a4
