[INFO] cloning repository https://github.com/xjz1842/rust-algorithm
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/xjz1842/rust-algorithm" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fxjz1842%2Frust-algorithm", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fxjz1842%2Frust-algorithm'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 649a1c4fce7241bbce0700ade37b7c48f9d8b0eb
[INFO] checking xjz1842/rust-algorithm against master#3350c1eb3fd8fe1bee1ed4c76944d707bd256876 for pr-140558
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fxjz1842%2Frust-algorithm" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/xjz1842/rust-algorithm on toolchain 3350c1eb3fd8fe1bee1ed4c76944d707bd256876
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+3350c1eb3fd8fe1bee1ed4c76944d707bd256876" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/xjz1842/rust-algorithm
[INFO] finished tweaking git repo https://github.com/xjz1842/rust-algorithm
[INFO] tweaked toml for git repo https://github.com/xjz1842/rust-algorithm written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/xjz1842/rust-algorithm 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" "+3350c1eb3fd8fe1bee1ed4c76944d707bd256876" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:b0b074c097205a61b89e8ad263052f976b2b332c4dc5f02aef1fe52501660d6e" "/opt/rustwide/cargo-home/bin/cargo" "+3350c1eb3fd8fe1bee1ed4c76944d707bd256876" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 7ac6afd7643617559d69a0999cd4c558c4ba37985bd3fc7842b68c101e03445e
[INFO] running `Command { std: "docker" "start" "-a" "7ac6afd7643617559d69a0999cd4c558c4ba37985bd3fc7842b68c101e03445e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7ac6afd7643617559d69a0999cd4c558c4ba37985bd3fc7842b68c101e03445e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7ac6afd7643617559d69a0999cd4c558c4ba37985bd3fc7842b68c101e03445e", kill_on_drop: false }`
[INFO] [stdout] 7ac6afd7643617559d69a0999cd4c558c4ba37985bd3fc7842b68c101e03445e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:b0b074c097205a61b89e8ad263052f976b2b332c4dc5f02aef1fe52501660d6e" "/opt/rustwide/cargo-home/bin/cargo" "+3350c1eb3fd8fe1bee1ed4c76944d707bd256876" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9b702d3e84bb4e6b04269caedaaa87e9f0a0047b91bd124099c018313a0586a9
[INFO] running `Command { std: "docker" "start" "-a" "9b702d3e84bb4e6b04269caedaaa87e9f0a0047b91bd124099c018313a0586a9", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.4.0
[INFO] [stderr]     Checking rand_core v0.4.2
[INFO] [stderr]    Compiling libc v0.2.171
[INFO] [stderr]     Checking rand_core v0.3.1
[INFO] [stderr]     Checking rand_jitter v0.1.4
[INFO] [stderr]     Checking rand_hc v0.1.0
[INFO] [stderr]     Checking rand_xorshift v0.1.1
[INFO] [stderr]     Checking rand_isaac v0.1.1
[INFO] [stderr]    Compiling autocfg v0.1.8
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]     Checking rand_os v0.1.3
[INFO] [stderr]     Checking rust-algorithm v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: function `find_kth_largest` is never used
[INFO] [stdout]  --> src/heap/find_kth_largest.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub fn find_kth_largest(nums: Vec<i32>, k: i32) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sift_up` is never used
[INFO] [stdout]   --> src/heap/find_kth_largest.rs:23:4
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn sift_up(heap: &mut Vec<i32>) {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sift_down` is never used
[INFO] [stdout]   --> src/heap/find_kth_largest.rs:42:4
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn sift_down(heap: &mut Vec<i32>) {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_kth_largest_1` is never used
[INFO] [stdout]   --> src/heap/find_kth_largest.rs:70:8
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub fn find_kth_largest_1(nums: Vec<i32>, k: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Num` is never constructed
[INFO] [stdout]  --> src/heap/top_k_frequent.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct Num {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `top_k_frequent` is never used
[INFO] [stdout]   --> src/heap/top_k_frequent.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub fn top_k_frequent(nums: Vec<i32>, k: i32) -> Vec<i32> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MedianFinder` is never constructed
[INFO] [stdout]  --> src/heap/find_median.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | struct MedianFinder {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add_num`, and `find_median` are never used
[INFO] [stdout]   --> src/heap/find_median.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl MedianFinder {
[INFO] [stdout]    | ----------------- associated items in this implementation
[INFO] [stdout] 14 |
[INFO] [stdout] 15 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     fn add_num(&mut self, num: i32) {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     fn find_median(&self) -> f64 {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::Prefix`
[INFO] [stdout]   --> src/binary_tree/path_sum.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use std::path::Prefix;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time`
[INFO] [stdout]  --> src/backstrace/solve_n_queens.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::time;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::Prefix`
[INFO] [stdout]   --> src/binary_tree/path_sum.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use std::path::Prefix;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `cur` is never read
[INFO] [stdout]   --> src/linklist/add_two_numbers.rs:55:18
[INFO] [stdout]    |
[INFO] [stdout] 55 |                  cur = &mut node.next;
[INFO] [stdout]    |                  ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node`
[INFO] [stdout]   --> src/graph/undirected_graph.rs:45:28
[INFO] [stdout]    |
[INFO] [stdout] 45 |     fn add_node(&mut self, node: &str) -> bool {
[INFO] [stdout]    |                            ^^^^ help: if this is intentional, prefix it with an underscore: `_node`
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/graph/undirected_graph.rs:40:8
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[warn(unused_variables)]
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `edge`
[INFO] [stdout]   --> src/graph/undirected_graph.rs:49:28
[INFO] [stdout]    |
[INFO] [stdout] 49 |     fn add_edge(&mut self, edge: (&str, &str, i32)) {
[INFO] [stdout]    |                            ^^^^ help: if this is intentional, prefix it with an underscore: `_edge`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sort` is never used
[INFO] [stdout]   --> src/array/sort.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn sort<T>(array: &mut [T]) 
[INFO] [stdout]    |    ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `elements` is never read
[INFO] [stdout]  --> src/array/list.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct Queue<T> {
[INFO] [stdout]   |            ----- field in this struct
[INFO] [stdout] 9 |     elements: Vec<T>,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Queue` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `enqueue`, `dequeue`, `peek`, `size`, and `is_empty` are never used
[INFO] [stdout]   --> src/array/list.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl<T> Queue<T> {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 13 |     pub fn new() -> Queue<T> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     pub fn enqueue(&mut self, value: T) {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn dequeue(&mut self) -> Result<T, &str> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub fn peek(&self) -> Result<&T, &str> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn size(&self) -> usize {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn is_empty(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MyStack` is never constructed
[INFO] [stdout]   --> src/array/list.rs:55:12
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub struct MyStack<T>
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `push`, `pop`, and `is_empty` are never used
[INFO] [stdout]   --> src/array/list.rs:62:12
[INFO] [stdout]    |
[INFO] [stdout] 61 | impl<T> MyStack<T> {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 62 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 69 |     pub fn push(&mut self, elem: T) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 85 |     pub fn pop(&mut self) -> Result<T, &str> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 92 |     pub fn is_empty(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `len`, `is_empty`, `add`, and `parent_idx` are never used
[INFO] [stdout]   --> src/array/heap.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | / impl<T> Heap<T>
[INFO] [stdout] 22 | | where
[INFO] [stdout] 23 | |     T: Default,
[INFO] [stdout]    | |_______________- associated items in this implementation
[INFO] [stdout] 24 |   {
[INFO] [stdout] 25 |       pub fn new(comparator: fn(&T, &T) -> bool) -> Self {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |       pub fn len(&self) -> usize {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 37 |       pub fn is_empty(&self) -> bool {
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |       pub fn add(&mut self, value: T) {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 58 |       fn parent_idx(&self, idx: usize) -> usize {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new_min` and `new_max` are never used
[INFO] [stdout]   --> src/array/heap.rs:93:12
[INFO] [stdout]    |
[INFO] [stdout] 88 | / impl<T> Heap<T>
[INFO] [stdout] 89 | | where
[INFO] [stdout] 90 | |     T: Default + Ord,
[INFO] [stdout]    | |_____________________- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 93 |       pub fn new_min() -> Self {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 98 |       pub fn new_max() -> Self {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MinHeap` is never constructed
[INFO] [stdout]    --> src/array/heap.rs:135:12
[INFO] [stdout]     |
[INFO] [stdout] 135 | pub struct MinHeap;
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/array/heap.rs:139:12
[INFO] [stdout]     |
[INFO] [stdout] 137 | impl MinHeap {
[INFO] [stdout]     | ------------ associated function in this implementation
[INFO] [stdout] 138 |     #[allow(clippy::new_ret_no_self)]
[INFO] [stdout] 139 |     pub fn new<T>() -> Heap<T>
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MaxHeap` is never constructed
[INFO] [stdout]    --> src/array/heap.rs:147:12
[INFO] [stdout]     |
[INFO] [stdout] 147 | pub struct MaxHeap;
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/array/heap.rs:151:12
[INFO] [stdout]     |
[INFO] [stdout] 149 | impl MaxHeap {
[INFO] [stdout]     | ------------ associated function in this implementation
[INFO] [stdout] 150 |     #[allow(clippy::new_ret_no_self)]
[INFO] [stdout] 151 |     pub fn new<T>() -> Heap<T>
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_missing_number` is never used
[INFO] [stdout]   --> src/array/find_missing_number.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn find_missing_number(nums: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_palindrome` is never used
[INFO] [stdout]   --> src/array/is_palindrome.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn is_palindrome(s: String) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `are_anagrams` is never used
[INFO] [stdout]   --> src/array/are_anagrams.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn are_anagrams(s1: String, s2: String) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_duplicates` is never used
[INFO] [stdout]   --> src/array/find_duplicate_number.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn find_duplicates(nums: Vec<i32>) -> Vec<i32> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `longest_substring_without_repeating_chars` is never used
[INFO] [stdout]   --> src/array/long_unrepeat_substring.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn longest_substring_without_repeating_chars(s: String) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge` is never used
[INFO] [stdout]  --> src/array/merge_two_sort_array.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn merge(nums1: &mut Vec<i32>, m: i32, nums2: &mut Vec<i32>, n: i32) {
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `remove_element` is never used
[INFO] [stdout]  --> src/array/remove_element.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn remove_element(nums: &mut Vec<i32>, val: i32) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `remove_duplicates` is never used
[INFO] [stdout]  --> src/array/remove_duplicates.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub fn remove_duplicates(nums: &mut Vec<i32>) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `remove_duplicates_1` is never used
[INFO] [stdout]   --> src/array/remove_duplicates.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub fn remove_duplicates_1(nums: &mut Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `h_index` is never used
[INFO] [stdout]  --> src/array/h_index.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn h_index(citations: Vec<i32>) -> i32 {
[INFO] [stdout]   |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RandomizedSet` is never constructed
[INFO] [stdout]  --> src/array/random_set.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct RandomizedSet {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `insert`, `remove`, and `get_random` are never used
[INFO] [stdout]   --> src/array/random_set.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl RandomizedSet {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 15 |
[INFO] [stdout] 16 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     fn insert(&mut self, val: i32) -> bool {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     fn remove(&mut self, val: i32) -> bool {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     fn get_random(&self) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `score_of_string` is never used
[INFO] [stdout]  --> src/array/score_of_string.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn score_of_string(s: String) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `can_complete_circuit` is never used
[INFO] [stdout]  --> src/array/can_complete_circuit.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn can_complete_circuit(gas: Vec<i32>, cost: Vec<i32>) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `candy` is never used
[INFO] [stdout]  --> src/array/candy.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub fn candy(ratings: Vec<i32>) -> i32 {
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `search` is never used
[INFO] [stdout]  --> src/binary_search/search.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn search(nums: Vec<i32>, target: i32) -> i32 {
[INFO] [stdout]   |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_min` is never used
[INFO] [stdout]  --> src/binary_search/find_min.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn find_min(nums: Vec<i32>) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_median_sorted_arrays` is never used
[INFO] [stdout]  --> src/binary_search/find_median_sorted_arrays.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub fn find_median_sorted_arrays(nums1: Vec<i32>, nums2: Vec<i32>) -> f64 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TreeNode` is never constructed
[INFO] [stdout]   --> src/binary_tree/search_tree.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | struct TreeNode<T>
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BinarySearchTree` is never constructed
[INFO] [stdout]   --> src/binary_tree/search_tree.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | struct BinarySearchTree<T>
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/binary_tree/search_tree.rs:33:8
[INFO] [stdout]    |
[INFO] [stdout] 29 | / impl<T> TreeNode<T>
[INFO] [stdout] 30 | | where
[INFO] [stdout] 31 | |     T: Ord,
[INFO] [stdout]    | |___________- associated function in this implementation
[INFO] [stdout] 32 |   {
[INFO] [stdout] 33 |       fn new(value: T) -> Self {
[INFO] [stdout]    |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `insert`, and `search` are never used
[INFO] [stdout]   --> src/binary_tree/search_tree.rs:47:8
[INFO] [stdout]    |
[INFO] [stdout] 42 | / impl<T> BinarySearchTree<T>
[INFO] [stdout] 43 | | where
[INFO] [stdout] 44 | |     T: Ord,
[INFO] [stdout]    | |___________- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 47 |       fn new() -> Self {
[INFO] [stdout]    |          ^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |       fn insert(&mut self, value: T) {
[INFO] [stdout]    |          ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |       fn search(&self, value: T) -> bool {
[INFO] [stdout]    |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `insert` is never used
[INFO] [stdout]   --> src/binary_tree/search_tree.rs:87:8
[INFO] [stdout]    |
[INFO] [stdout] 82 | / impl<T> TreeNode<T>
[INFO] [stdout] 83 | | where
[INFO] [stdout] 84 | |     T: Ord,
[INFO] [stdout]    | |___________- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 87 |       fn insert(&mut self, value: T) {
[INFO] [stdout]    |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/binary_tree/max_depth.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl TreeNode {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 10 |   #[inline]
[INFO] [stdout] 11 |   pub fn new(val: i32) -> Self {
[INFO] [stdout]    |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_depth` is never used
[INFO] [stdout]   --> src/binary_tree/max_depth.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn max_depth(root: Option<Rc<RefCell<TreeNode>>>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/binary_tree/invert_tree.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl TreeNode {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 10 |   #[inline]
[INFO] [stdout] 11 |   pub fn new(val: i32) -> Self {
[INFO] [stdout]    |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `invert_tree` is never used
[INFO] [stdout]   --> src/binary_tree/invert_tree.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn invert_tree(root: Option<Rc<RefCell<TreeNode>>>) -> Option<Rc<RefCell<TreeNode>>> {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/binary_tree/is_symmetric.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl TreeNode {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 10 |   #[inline]
[INFO] [stdout] 11 |   pub fn new(val: i32) -> Self {
[INFO] [stdout]    |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_symmetric` is never used
[INFO] [stdout]   --> src/binary_tree/is_symmetric.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn is_symmetric(root: Option<Rc<RefCell<TreeNode>>>) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `process` is never used
[INFO] [stdout]   --> src/binary_tree/is_symmetric.rs:26:4
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn process(left: &Option<Rc<RefCell<TreeNode>>>, right: &Option<Rc<RefCell<TreeNode>>>)->bool {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/binary_tree/inorder_traversal.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl TreeNode {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 10 |   #[inline]
[INFO] [stdout] 11 |   pub fn new(val: i32) -> Self {
[INFO] [stdout]    |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `inorder_traversal` is never used
[INFO] [stdout]   --> src/binary_tree/inorder_traversal.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn inorder_traversal(root: Option<Rc<RefCell<TreeNode>>>) -> Vec<i32> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `traversal` is never used
[INFO] [stdout]   --> src/binary_tree/inorder_traversal.rs:28:4
[INFO] [stdout]    |
[INFO] [stdout] 28 | fn traversal(root: &Option<Rc<RefCell<TreeNode>>>, inorder_list : &mut Vec<i32>) {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/binary_tree/level_order.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl TreeNode {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 10 |   #[inline]
[INFO] [stdout] 11 |   pub fn new(val: i32) -> Self {
[INFO] [stdout]    |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `level_order` is never used
[INFO] [stdout]   --> src/binary_tree/level_order.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn level_order(root: Option<Rc<RefCell<TreeNode>>>) -> Vec<Vec<i32>> {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/binary_tree/is_valid_bst.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl TreeNode {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 10 |   #[inline]
[INFO] [stdout] 11 |   pub fn new(val: i32) -> Self {
[INFO] [stdout]    |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_valid_bst` is never used
[INFO] [stdout]   --> src/binary_tree/is_valid_bst.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 |  pub fn is_valid_bst(root: Option<Rc<RefCell<TreeNode>>>) -> bool {
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `valid` is never used
[INFO] [stdout]   --> src/binary_tree/is_valid_bst.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 |  fn valid(root: &Option<Rc<RefCell<TreeNode>>>, low : i64, upper : i64) -> bool {
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/binary_tree/lowest_common_ancestor.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl TreeNode {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 10 |   #[inline]
[INFO] [stdout] 11 |   pub fn new(val: i32) -> Self {
[INFO] [stdout]    |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `lowest_common_ancestor` is never used
[INFO] [stdout]   --> src/binary_tree/lowest_common_ancestor.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn lowest_common_ancestor(root: Option<Rc<RefCell<TreeNode>>>,
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/binary_tree/sorted_array_to_bst.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl TreeNode {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 10 |   #[inline]
[INFO] [stdout] 11 |   pub fn new(val: i32) -> Self {
[INFO] [stdout]    |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sorted_array_to_bst` is never used
[INFO] [stdout]   --> src/binary_tree/sorted_array_to_bst.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn sorted_array_to_bst(nums: Vec<i32>) ->
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `build` is never used
[INFO] [stdout]   --> src/binary_tree/sorted_array_to_bst.rs:28:4
[INFO] [stdout]    |
[INFO] [stdout] 28 | fn build(nums: &Vec<i32>,left: i32, right:i32) ->
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/binary_tree/kth_smallest.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl TreeNode {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 10 |   #[inline]
[INFO] [stdout] 11 |   pub fn new(val: i32) -> Self {
[INFO] [stdout]    |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `kth_smallest` is never used
[INFO] [stdout]   --> src/binary_tree/kth_smallest.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn kth_smallest(root: Option<Rc<RefCell<TreeNode>>>, mut k: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dfs` is never used
[INFO] [stdout]   --> src/binary_tree/kth_smallest.rs:26:4
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn dfs(root: Option<Rc<RefCell<TreeNode>>>, k: &mut i32)-> Option<i32>{
[INFO] [stdout]    |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/binary_tree/right_side_view.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl TreeNode {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 10 |   #[inline]
[INFO] [stdout] 11 |   pub fn new(val: i32) -> Self {
[INFO] [stdout]    |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `right_side_view` is never used
[INFO] [stdout]   --> src/binary_tree/right_side_view.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn right_side_view(root: Option<Rc<RefCell<TreeNode>>>) -> Vec<i32> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/binary_tree/flatten.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl TreeNode {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 10 |   #[inline]
[INFO] [stdout] 11 |   pub fn new(val: i32) -> Self {
[INFO] [stdout]    |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `flatten` is never used
[INFO] [stdout]   --> src/binary_tree/flatten.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn flatten(root: &mut Option<Rc<RefCell<TreeNode>>>) {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dfs` is never used
[INFO] [stdout]   --> src/binary_tree/flatten.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn dfs(node: &Option<Rc<RefCell<TreeNode>>>, 
[INFO] [stdout]    |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/binary_tree/max_path_sum.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl TreeNode {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 10 |   #[inline]
[INFO] [stdout] 11 |   pub fn new(val: i32) -> Self {
[INFO] [stdout]    |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_path_sum` is never used
[INFO] [stdout]   --> src/binary_tree/max_path_sum.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn max_path_sum(root: Option<Rc<RefCell<TreeNode>>>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dfs` is never used
[INFO] [stdout]   --> src/binary_tree/max_path_sum.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | fn  dfs(node: &Option<Rc<RefCell<TreeNode>>>, result: &mut i32) -> i32 {
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/binary_tree/path_sum.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl TreeNode {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 10 |   #[inline]
[INFO] [stdout] 11 |   pub fn new(val: i32) -> Self {
[INFO] [stdout]    |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `path_sum` is never used
[INFO] [stdout]   --> src/binary_tree/path_sum.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn path_sum(root: Option<Rc<RefCell<TreeNode>>>, 
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dfs` is never used
[INFO] [stdout]   --> src/binary_tree/path_sum.rs:33:4
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn dfs(root: &Option<Rc<RefCell<TreeNode>>>, sum: i64,
[INFO] [stdout]    |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_profit` is never used
[INFO] [stdout]  --> src/greedy/max_profit.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub fn max_profit(prices: Vec<i32>) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `can_jump` is never used
[INFO] [stdout]  --> src/greedy/can_jump.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn can_jump(nums: Vec<i32>) -> bool {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `jump` is never used
[INFO] [stdout]  --> src/greedy/jump.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn jump(nums: Vec<i32>) -> i32 {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `partition_labels` is never used
[INFO] [stdout]  --> src/greedy/partition_labels.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn partition_labels(s: String) -> Vec<i32> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/linklist/merge_two_lists.rs:13:6
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl ListNode {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 12 |   #[inline]
[INFO] [stdout] 13 |   fn new(val: i32) -> Self {
[INFO] [stdout]    |      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge_two_lists` is never used
[INFO] [stdout]   --> src/linklist/merge_two_lists.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub fn merge_two_lists(mut list1: Option<Box<ListNode>>, mut list2: Option<Box<ListNode>>)
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/linklist/merge_lists.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl<T> Node<T> {
[INFO] [stdout]    | --------------- associated function in this implementation
[INFO] [stdout] 16 |     fn new(t: T) -> Node<T> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `length` and `end` are never read
[INFO] [stdout]   --> src/linklist/merge_lists.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | struct LinkedList<T> {
[INFO] [stdout]    |        ---------- fields in this struct
[INFO] [stdout] 25 |     length: u32,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 26 |     start: Option<NonNull<Node<T>>>,
[INFO] [stdout] 27 |     end: Option<NonNull<Node<T>>>,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LinkedList` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `add`, `get`, `get_ith_node`, and `merge` are never used
[INFO] [stdout]   --> src/linklist/merge_lists.rs:45:12
[INFO] [stdout]    |
[INFO] [stdout] 36 | impl<T> LinkedList<T> {
[INFO] [stdout]    | --------------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub fn add(&mut self, obj: T) {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn get(&mut self, index: i32) -> Option<&T> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |     fn get_ith_node(&mut self, node: Option<NonNull<Node<T>>>, index: i32) -> Option<&T> {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     pub fn merge(list_a:LinkedList<T>,list_b:LinkedList<T>) -> Self
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `prev` is never read
[INFO] [stdout]   --> src/linklist/reverse_dual_list.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | struct Node<T> {
[INFO] [stdout]    |        ---- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 14 |     prev: Option<NonNull<Node<T>>>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Node` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/linklist/reverse_dual_list.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl<T> Node<T> {
[INFO] [stdout]    | --------------- associated function in this implementation
[INFO] [stdout] 18 |     fn new(t: T) -> Node<T> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `length` and `end` are never read
[INFO] [stdout]   --> src/linklist/reverse_dual_list.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | struct LinkedList<T> {
[INFO] [stdout]    |        ---------- fields in this struct
[INFO] [stdout] 28 |     length: u32,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 29 |     start: Option<NonNull<Node<T>>>,
[INFO] [stdout] 30 |     end: Option<NonNull<Node<T>>>,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LinkedList` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `add`, `get`, `get_ith_node`, and `reverse` are never used
[INFO] [stdout]   --> src/linklist/reverse_dual_list.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | impl<T> LinkedList<T> {
[INFO] [stdout]    | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub fn add(&mut self, obj: T) {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |     pub fn get(&mut self, index: i32) -> Option<&T> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |     fn get_ith_node(&mut self, node: Option<NonNull<Node<T>>>, index: i32) -> Option<&T> {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |     pub fn reverse(&mut self){
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/linklist/add_two_numbers.rs:10:6
[INFO] [stdout]    |
[INFO] [stdout] 8  | impl ListNode {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 9  |   #[inline]
[INFO] [stdout] 10 |   fn new(val: i32) -> Self {
[INFO] [stdout]    |      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_two_numbers` is never used
[INFO] [stdout]   --> src/linklist/add_two_numbers.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn add_two_numbers(l1: Option<Box<ListNode>>, 
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Node` is never constructed
[INFO] [stdout]  --> src/linklist/lru_cache.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct Node {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LRUCache` is never constructed
[INFO] [stdout]   --> src/linklist/lru_cache.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | struct LRUCache {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/linklist/lru_cache.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl Node {
[INFO] [stdout]    | --------- associated function in this implementation
[INFO] [stdout] 20 |     fn new(key : i32, value : i32)-> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get`, `put`, `push_front`, `remove`, and `pop_back` are never used
[INFO] [stdout]    --> src/linklist/lru_cache.rs:36:8
[INFO] [stdout]     |
[INFO] [stdout] 34  | impl LRUCache {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] 35  |
[INFO] [stdout] 36  |     fn new(capacity: i32) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 45  |     fn get(&mut self, key: i32) -> i32 {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 58  |     fn put(&mut self, key: i32, value: i32) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 78  |     fn push_front(&mut self, node: &Rc<RefCell<Node>>) {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 93  |     fn remove(&mut self, node: &Rc<RefCell<Node>>) {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |     fn pop_back(&mut self) -> Option<Rc<RefCell<Node>>> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/linklist/remove_nth_from_end.rs:11:6
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl ListNode {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 10 |   #[inline]
[INFO] [stdout] 11 |   fn new(val: i32) -> Self {
[INFO] [stdout]    |      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `remove_nth_from_end` is never used
[INFO] [stdout]   --> src/linklist/remove_nth_from_end.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn remove_nth_from_end(head: Option<Box<ListNode>>, n: i32) -> Option<Box<ListNode>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/linklist/swap_pairs.rs:10:6
[INFO] [stdout]    |
[INFO] [stdout] 8  | impl ListNode {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 9  |   #[inline]
[INFO] [stdout] 10 |   fn new(val: i32) -> Self {
[INFO] [stdout]    |      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `swap_pairs` is never used
[INFO] [stdout]   --> src/linklist/swap_pairs.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn swap_pairs(head: Option<Box<ListNode>>) -> Option<Box<ListNode>> {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/linklist/sort_list.rs:10:6
[INFO] [stdout]    |
[INFO] [stdout] 8  | impl ListNode {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 9  |   #[inline]
[INFO] [stdout] 10 |   fn new(val: i32) -> Self {
[INFO] [stdout]    |      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sort_list` is never used
[INFO] [stdout]   --> src/linklist/sort_list.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn sort_list(head: Option<Box<ListNode>>) ->
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `middle_node` is never used
[INFO] [stdout]   --> src/linklist/sort_list.rs:33:4
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn middle_node(head: &Option<Box<ListNode>>) -> Option<Box<ListNode>> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge_two_sort_list` is never used
[INFO] [stdout]   --> src/linklist/sort_list.rs:46:4
[INFO] [stdout]    |
[INFO] [stdout] 46 | fn merge_two_sort_list(mut head1: Option<Box<ListNode>>,
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/linklist/merge_k_lists.rs:10:6
[INFO] [stdout]    |
[INFO] [stdout] 8  | impl ListNode {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 9  |   #[inline]
[INFO] [stdout] 10 |   fn new(val: i32) -> Self {
[INFO] [stdout]    |      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge_k_lists` is never used
[INFO] [stdout]   --> src/linklist/merge_k_lists.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub fn merge_k_lists(lists: Vec<Option<Box<ListNode>>>) -> Option<Box<ListNode>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/linklist/reverse_k_group.rs:10:6
[INFO] [stdout]    |
[INFO] [stdout] 8  | impl ListNode {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 9  |   #[inline]
[INFO] [stdout] 10 |   fn new(val: i32) -> Self {
[INFO] [stdout]    |      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reverse_k_group` is never used
[INFO] [stdout]   --> src/linklist/reverse_k_group.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn reverse_k_group( head: Option<Box<ListNode>>, k: i32) -> 
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reverse_list` is never used
[INFO] [stdout]   --> src/linklist/reverse_k_group.rs:44:4
[INFO] [stdout]    |
[INFO] [stdout] 44 | fn reverse_list(head: Option<Box<ListNode>>,
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/linklist/build_tree.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl TreeNode {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 10 |   #[inline]
[INFO] [stdout] 11 |   pub fn new(val: i32) -> Self {
[INFO] [stdout]    |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `build_tree` is never used
[INFO] [stdout]   --> src/linklist/build_tree.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn build_tree(preorder: Vec<i32>, 
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MinStack` is never constructed
[INFO] [stdout]  --> src/stack/mini_stack.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 | struct MinStack {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `push`, `pop`, `top`, and `get_min` are never used
[INFO] [stdout]   --> src/stack/mini_stack.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl MinStack {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] 11 |
[INFO] [stdout] 12 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     fn push(&mut self, val: i32) {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     fn pop(&mut self) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     fn top(&self) -> i32 {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     fn get_min(&self) -> i32 {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Stack` is never constructed
[INFO] [stdout]  --> src/stack/stack.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | struct Stack<T> {
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/stack/stack.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl<T> Stack<T> {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 12 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     fn is_empty(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     fn len(&self) -> usize {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     fn clear(&mut self) {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     fn push(&mut self, val: T) {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     fn pop(&mut self) -> Option<T> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     fn peek(&self) -> Option<&T> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     fn peek_mut(&mut self) -> Option<&mut T> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     fn into_iter(self) -> IntoIter<T> {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     fn iter(&self) -> Iter<T> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 58 |     fn iter_mut(&mut self) -> IterMut<T> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `IntoIter` is never constructed
[INFO] [stdout]   --> src/stack/stack.rs:66:8
[INFO] [stdout]    |
[INFO] [stdout] 66 | struct IntoIter<T>(Stack<T>);
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Iter` is never constructed
[INFO] [stdout]   --> src/stack/stack.rs:78:8
[INFO] [stdout]    |
[INFO] [stdout] 78 | struct Iter<'a, T: 'a> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `IterMut` is never constructed
[INFO] [stdout]   --> src/stack/stack.rs:87:8
[INFO] [stdout]    |
[INFO] [stdout] 87 | struct IterMut<'a, T: 'a> {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bracket_match` is never used
[INFO] [stdout]   --> src/stack/stack.rs:97:4
[INFO] [stdout]    |
[INFO] [stdout] 97 | fn bracket_match(bracket: &str) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decode_string` is never used
[INFO] [stdout]  --> src/stack/decode_string.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn decode_string(s: String) -> String {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_valid` is never used
[INFO] [stdout]  --> src/stack/is_valid.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn is_valid(s: String) -> bool {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `largest_rectangle_area` is never used
[INFO] [stdout]  --> src/stack/largest_rectangle_area.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn largest_rectangle_area(heights: Vec<i32>) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `exist` is never used
[INFO] [stdout]  --> src/backstrace/exist.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn exist(board: Vec<Vec<char>>, word: String) -> bool {
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dfs` is never used
[INFO] [stdout]   --> src/backstrace/exist.rs:37:4
[INFO] [stdout]    |
[INFO] [stdout] 37 | fn dfs(board: &Vec<Vec<char>>,visited: &mut Vec<Vec<bool>>,
[INFO] [stdout]    |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `partition` is never used
[INFO] [stdout]  --> src/backstrace/partition.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub fn partition(s: String) -> Vec<Vec<String>> {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dfs` is never used
[INFO] [stdout]   --> src/backstrace/partition.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn dfs(s: &String, candidate: &mut Vec<String>, i: usize,
[INFO] [stdout]    |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `valid` is never used
[INFO] [stdout]   --> src/backstrace/partition.rs:28:4
[INFO] [stdout]    |
[INFO] [stdout] 28 | fn valid(s: &str) -> bool {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solve_n_queens` is never used
[INFO] [stdout]  --> src/backstrace/solve_n_queens.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn solve_n_queens(n: i32) -> Vec<Vec<String>> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dfs` is never used
[INFO] [stdout]   --> src/backstrace/solve_n_queens.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn dfs(row: usize, n: usize, candidate: &mut Vec<Vec<char>>, result: &mut Vec<Vec<String>>) {
[INFO] [stdout]    |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `valid` is never used
[INFO] [stdout]   --> src/backstrace/solve_n_queens.rs:38:4
[INFO] [stdout]    |
[INFO] [stdout] 38 | fn valid(candidate: &mut Vec<Vec<char>>,i: i32, j : i32) -> bool {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `num_squares` is never used
[INFO] [stdout]  --> src/dynamic_program/num_squares.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn num_squares(n: i32) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `word_break` is never used
[INFO] [stdout]  --> src/dynamic_program/word_break.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn word_break(s: String, word_dict: Vec<String>) -> bool {
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_product` is never used
[INFO] [stdout]  --> src/dynamic_program/max_product.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn max_product(nums: Vec<i32>) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `length_of_lis` is never used
[INFO] [stdout]  --> src/dynamic_program/length_of_list.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub fn length_of_lis(nums: Vec<i32>) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `min_distance` is never used
[INFO] [stdout]  --> src/dynamic_program/min_distance.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn min_distance(word1: String, word2: String) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `longest_valid_parentheses` is never used
[INFO] [stdout]  --> src/dynamic_program/longest_valid_parentheses.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn longest_valid_parentheses(s: String) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unique_paths` is never used
[INFO] [stdout]  --> src/dynamic_program/unique_paths.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn unique_paths(m: i32, n: i32) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `min_path_sum` is never used
[INFO] [stdout]  --> src/dynamic_program/min_path_sum.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn min_path_sum(grid: Vec<Vec<i32>>) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `longest_palindrome` is never used
[INFO] [stdout]  --> src/dynamic_program/longest_palindrome.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub fn longest_palindrome(s: String) -> String {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Graph` is never constructed
[INFO] [stdout]  --> src/graph/bfs.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | struct Graph {
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add_edge`, and `bfs_with_return` are never used
[INFO] [stdout]   --> src/graph/bfs.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl Graph {
[INFO] [stdout]    | ---------- associated items in this implementation
[INFO] [stdout] 14 |     // Create a new graph with n vertices
[INFO] [stdout] 15 |     fn new(n: usize) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     fn add_edge(&mut self, src: usize, dest: usize) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     fn bfs_with_return(&self, start: usize) -> Vec<usize> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Graph` is never constructed
[INFO] [stdout]  --> src/graph/graph.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | struct Graph {
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add_edge`, `dfs_util`, and `dfs` are never used
[INFO] [stdout]   --> src/graph/graph.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl Graph {
[INFO] [stdout]    | ---------- associated items in this implementation
[INFO] [stdout] 14 |     fn new(n: usize) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     fn add_edge(&mut self, src: usize, dest: usize) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     fn dfs_util(&self, v: usize, visited: &mut HashSet<usize>, visit_order: &mut Vec<usize>) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     fn dfs(&self, start: usize) -> Vec<usize> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/graph/undirected_graph.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub trait Graph {
[INFO] [stdout]    |           ----- associated items in this trait
[INFO] [stdout] 42 |     fn new() -> Self;
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 43 |     fn adjacency_table_mutable(&mut self) -> &mut HashMap<String, Vec<(String, i32)>>;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 44 |     fn adjacency_table(&self) -> &HashMap<String, Vec<(String, i32)>>;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 45 |     fn add_node(&mut self, node: &str) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     fn add_edge(&mut self, edge: (&str, &str, i32)) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     fn contains(&self, node: &str) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     fn nodes(&self) -> HashSet<&String> {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 58 |     fn edges(&self) -> Vec<(&String, &String, i32)> {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `oranges_rotting` is never used
[INFO] [stdout]  --> src/graph/oranges_rotting.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn oranges_rotting(grid: Vec<Vec<i32>>) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_stat_oranges` is never used
[INFO] [stdout]   --> src/graph/oranges_rotting.rs:44:4
[INFO] [stdout]    |
[INFO] [stdout] 44 | fn get_stat_oranges(grid: &Vec<Vec<i32>>,
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Node` is never constructed
[INFO] [stdout]  --> src/graph/trie.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 | struct Node {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]  --> src/graph/trie.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | impl Node {
[INFO] [stdout]   | --------- associated function in this implementation
[INFO] [stdout] 8 |     fn new () -> Self{
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Trie` is never constructed
[INFO] [stdout]   --> src/graph/trie.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | struct Trie {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `insert`, `search`, and `starts_with` are never used
[INFO] [stdout]   --> src/graph/trie.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl Trie {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] 25 |
[INFO] [stdout] 26 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     fn insert(&mut self, word: String) {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     fn search(&self, word: String) -> bool {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 58 |     fn starts_with(&self, prefix: String) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `longest_common_subsequence` is never used
[INFO] [stdout]  --> src/graph/longest_common_subsequence.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn longest_common_subsequence(text1: String, text2: String) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `can_finish` is never used
[INFO] [stdout]  --> src/graph/can_finish.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn can_finish(mut num_courses:i32, prerequisites: Vec<Vec<i32>>) -> bool {
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sort_colors` is never used
[INFO] [stdout]  --> src/logic/sort_colors.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn sort_colors(nums: &mut Vec<i32>) {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `next_permutation` is never used
[INFO] [stdout]  --> src/logic/next_permutation.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn next_permutation(nums: &mut Vec<i32>) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `cur` is never read
[INFO] [stdout]   --> src/linklist/add_two_numbers.rs:55:18
[INFO] [stdout]    |
[INFO] [stdout] 55 |                  cur = &mut node.next;
[INFO] [stdout]    |                  ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node`
[INFO] [stdout]   --> src/graph/undirected_graph.rs:45:28
[INFO] [stdout]    |
[INFO] [stdout] 45 |     fn add_node(&mut self, node: &str) -> bool {
[INFO] [stdout]    |                            ^^^^ help: if this is intentional, prefix it with an underscore: `_node`
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/graph/undirected_graph.rs:40:8
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[warn(unused_variables)]
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `edge`
[INFO] [stdout]   --> src/graph/undirected_graph.rs:49:28
[INFO] [stdout]    |
[INFO] [stdout] 49 |     fn add_edge(&mut self, edge: (&str, &str, i32)) {
[INFO] [stdout]    |                            ^^^^ help: if this is intentional, prefix it with an underscore: `_edge`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `peek`, `size`, and `is_empty` are never used
[INFO] [stdout]   --> src/array/list.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl<T> Queue<T> {
[INFO] [stdout]    | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub fn peek(&self) -> Result<&T, &str> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn size(&self) -> usize {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn is_empty(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_empty` is never used
[INFO] [stdout]   --> src/array/heap.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | / impl<T> Heap<T>
[INFO] [stdout] 22 | | where
[INFO] [stdout] 23 | |     T: Default,
[INFO] [stdout]    | |_______________- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 37 |       pub fn is_empty(&self) -> bool {
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new_min` and `new_max` are never used
[INFO] [stdout]   --> src/array/heap.rs:93:12
[INFO] [stdout]    |
[INFO] [stdout] 88 | / impl<T> Heap<T>
[INFO] [stdout] 89 | | where
[INFO] [stdout] 90 | |     T: Default + Ord,
[INFO] [stdout]    | |_____________________- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 93 |       pub fn new_min() -> Self {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 98 |       pub fn new_max() -> Self {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_random` is never used
[INFO] [stdout]   --> src/array/random_set.rs:55:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl RandomizedSet {
[INFO] [stdout]    | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 55 |     fn get_random(&self) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `insert` is never used
[INFO] [stdout]   --> src/binary_tree/search_tree.rs:87:8
[INFO] [stdout]    |
[INFO] [stdout] 82 | / impl<T> TreeNode<T>
[INFO] [stdout] 83 | | where
[INFO] [stdout] 84 | |     T: Ord,
[INFO] [stdout]    | |___________- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 87 |       fn insert(&mut self, value: T) {
[INFO] [stdout]    |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/linklist/build_tree.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl TreeNode {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 10 |   #[inline]
[INFO] [stdout] 11 |   pub fn new(val: i32) -> Self {
[INFO] [stdout]    |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `len`, `clear`, `peek_mut`, `into_iter`, `iter`, and `iter_mut` are never used
[INFO] [stdout]   --> src/stack/stack.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl<T> Stack<T> {
[INFO] [stdout]    | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 21 |     fn len(&self) -> usize {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     fn clear(&mut self) {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     fn peek_mut(&mut self) -> Option<&mut T> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     fn into_iter(self) -> IntoIter<T> {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     fn iter(&self) -> Iter<T> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 58 |     fn iter_mut(&mut self) -> IterMut<T> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `IntoIter` is never constructed
[INFO] [stdout]   --> src/stack/stack.rs:66:8
[INFO] [stdout]    |
[INFO] [stdout] 66 | struct IntoIter<T>(Stack<T>);
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Iter` is never constructed
[INFO] [stdout]   --> src/stack/stack.rs:78:8
[INFO] [stdout]    |
[INFO] [stdout] 78 | struct Iter<'a, T: 'a> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `IterMut` is never constructed
[INFO] [stdout]   --> src/stack/stack.rs:87:8
[INFO] [stdout]    |
[INFO] [stdout] 87 | struct IterMut<'a, T: 'a> {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `adjacency_table_mutable`, `add_node`, `contains`, and `nodes` are never used
[INFO] [stdout]   --> src/graph/undirected_graph.rs:43:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub trait Graph {
[INFO] [stdout]    |           ----- methods in this trait
[INFO] [stdout] 42 |     fn new() -> Self;
[INFO] [stdout] 43 |     fn adjacency_table_mutable(&mut self) -> &mut HashMap<String, Vec<(String, i32)>>;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 44 |     fn adjacency_table(&self) -> &HashMap<String, Vec<(String, i32)>>;
[INFO] [stdout] 45 |     fn add_node(&mut self, node: &str) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     fn contains(&self, node: &str) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     fn nodes(&self) -> HashSet<&String> {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.14s
[INFO] running `Command { std: "docker" "inspect" "9b702d3e84bb4e6b04269caedaaa87e9f0a0047b91bd124099c018313a0586a9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9b702d3e84bb4e6b04269caedaaa87e9f0a0047b91bd124099c018313a0586a9", kill_on_drop: false }`
[INFO] [stdout] 9b702d3e84bb4e6b04269caedaaa87e9f0a0047b91bd124099c018313a0586a9
