[INFO] cloning repository https://github.com/u-kai/data-structures
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/u-kai/data-structures" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fu-kai%2Fdata-structures", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fu-kai%2Fdata-structures'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 9abdb4761e9237e1b7d3b16ce127f4d7933ca6ed
[INFO] checking u-kai/data-structures against try#b98202ad067d72e45cec8be3d5c15d86ef0fd086 for pr-155193
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fu-kai%2Fdata-structures" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/u-kai/data-structures
[INFO] finished tweaking git repo https://github.com/u-kai/data-structures
[INFO] tweaked toml for git repo https://github.com/u-kai/data-structures written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/u-kai/data-structures on toolchain b98202ad067d72e45cec8be3d5c15d86ef0fd086
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b98202ad067d72e45cec8be3d5c15d86ef0fd086" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/u-kai/data-structures 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" "+b98202ad067d72e45cec8be3d5c15d86ef0fd086" "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] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+b98202ad067d72e45cec8be3d5c15d86ef0fd086" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] d61fe11fe525e2552dad1decee2b7b3955cbddde8d2d1c87fc42a231aa9f3ec9
[INFO] running `Command { std: "docker" "start" "-a" "d61fe11fe525e2552dad1decee2b7b3955cbddde8d2d1c87fc42a231aa9f3ec9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d61fe11fe525e2552dad1decee2b7b3955cbddde8d2d1c87fc42a231aa9f3ec9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d61fe11fe525e2552dad1decee2b7b3955cbddde8d2d1c87fc42a231aa9f3ec9", kill_on_drop: false }`
[INFO] [stdout] d61fe11fe525e2552dad1decee2b7b3955cbddde8d2d1c87fc42a231aa9f3ec9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+b98202ad067d72e45cec8be3d5c15d86ef0fd086" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5901e869318738313139d364fc4363fa21629ba64cd770cf49c75b8163b1ac32
[INFO] running `Command { std: "docker" "start" "-a" "5901e869318738313139d364fc4363fa21629ba64cd770cf49c75b8163b1ac32", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.126
[INFO] [stderr]     Checking getrandom v0.2.7
[INFO] [stderr]     Checking rand_core v0.6.3
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking data-structures v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `BufReader`, `Read`, `Write`, `fs::File`, `os::unix::thread`, and `stdin`
[INFO] [stdout]  --> src/main.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     fs::File,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 3 |     io::{stdin, BufRead, BufReader, Read, Write},
[INFO] [stdout]   |          ^^^^^           ^^^^^^^^^  ^^^^  ^^^^^
[INFO] [stdout] 4 |     os::unix::thread,
[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: `Fill`, `Rng`, and `thread_rng`
[INFO] [stdout]  --> src/main.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | use rand::{thread_rng, Fill, Rng};
[INFO] [stdout]   |            ^^^^^^^^^^  ^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BinaryTrie`, `binary_tree::binary_easy::BinarySearchTree`, and `x_fast_trie::XFastTrie`
[INFO] [stdout]   --> src/main.rs:9:5
[INFO] [stdout]    |
[INFO] [stdout]  9 |     binary_tree::binary_easy::BinarySearchTree,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 12 |         binary_trie::{BinaryTrie, ToUsize},
[INFO] [stdout]    |                       ^^^^^^^^^^
[INFO] [stdout] 13 |         x_fast_trie::XFastTrie,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `json`
[INFO] [stdout]   --> src/macros/json.rs:23:14
[INFO] [stdout]    |
[INFO] [stdout] 23 | macro_rules! json {
[INFO] [stdout]    |              ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_macros)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DerefMut`, `Deref`, and `rc::Rc`
[INFO] [stdout]  --> src/structs/binary_tree/red_black_tree.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 |     ops::{Deref, DerefMut},
[INFO] [stdout]   |           ^^^^^  ^^^^^^^^
[INFO] [stdout] 4 |     rc::Rc,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]    --> src/structs/external_memory/btree.rs:286:31
[INFO] [stdout]     |
[INFO] [stdout] 286 |         parent_block.children[(*left_index + 1)] = None;
[INFO] [stdout]     |                               ^               ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 286 -         parent_block.children[(*left_index + 1)] = None;
[INFO] [stdout] 286 +         parent_block.children[*left_index + 1 ] = None;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Debug`
[INFO] [stdout]  --> src/structs/linked_lists/se_list.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::Debug;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> src/structs/tries/x_fast_trie_parts/binary_label.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 29 |     use super::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module
[INFO] [stdout]   --> src/structs/tries/x_fast_trie_parts/binary_label.rs:28:1
[INFO] [stdout]    |
[INFO] [stdout] 28 | mod binary_label_test {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufReader`, `Read`, `Write`, `fs::File`, `os::unix::thread`, and `stdin`
[INFO] [stdout]  --> src/main.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     fs::File,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 3 |     io::{stdin, BufRead, BufReader, Read, Write},
[INFO] [stdout]   |          ^^^^^           ^^^^^^^^^  ^^^^  ^^^^^
[INFO] [stdout] 4 |     os::unix::thread,
[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: `Fill`, `Rng`, and `thread_rng`
[INFO] [stdout]  --> src/main.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | use rand::{thread_rng, Fill, Rng};
[INFO] [stdout]   |            ^^^^^^^^^^  ^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BinaryTrie`, `binary_tree::binary_easy::BinarySearchTree`, and `x_fast_trie::XFastTrie`
[INFO] [stdout]   --> src/main.rs:9:5
[INFO] [stdout]    |
[INFO] [stdout]  9 |     binary_tree::binary_easy::BinarySearchTree,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 12 |         binary_trie::{BinaryTrie, ToUsize},
[INFO] [stdout]    |                       ^^^^^^^^^^
[INFO] [stdout] 13 |         x_fast_trie::XFastTrie,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DerefMut`, `Deref`, and `rc::Rc`
[INFO] [stdout]  --> src/structs/binary_tree/red_black_tree.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 |     ops::{Deref, DerefMut},
[INFO] [stdout]   |           ^^^^^  ^^^^^^^^
[INFO] [stdout] 4 |     rc::Rc,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `binary_tree::WrapNode`
[INFO] [stdout]    --> src/structs/binary_tree/red_black_tree.rs:183:39
[INFO] [stdout]     |
[INFO] [stdout] 183 |     use crate::structs::binary_tree::{binary_tree::WrapNode, red_black_tree::*};
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]    --> src/structs/external_memory/btree.rs:286:31
[INFO] [stdout]     |
[INFO] [stdout] 286 |         parent_block.children[(*left_index + 1)] = None;
[INFO] [stdout]     |                               ^               ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 286 -         parent_block.children[(*left_index + 1)] = None;
[INFO] [stdout] 286 +         parent_block.children[*left_index + 1 ] = None;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Debug`
[INFO] [stdout]  --> src/structs/linked_lists/se_list.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::Debug;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BufRead`
[INFO] [stdout]  --> src/main.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 |     io::{stdin, BufRead, BufReader, Read, Write},
[INFO] [stdout]   |                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `next` is never read
[INFO] [stdout]    --> src/structs/binary_tree/binary_tree.rs:418:24
[INFO] [stdout]     |
[INFO] [stdout] 418 |         let mut next = None;
[INFO] [stdout]     |                        ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 440 |                 next = parent
[INFO] [stdout]     |                 ---- `next` is overwritten here before the previous value is read
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `next` is never read
[INFO] [stdout]    --> src/structs/binary_tree/random_binary_search_tree.rs:312:24
[INFO] [stdout]     |
[INFO] [stdout] 312 |         let mut next = None;
[INFO] [stdout]     |                        ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 334 |                 next = parent
[INFO] [stdout]     |                 ---- `next` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/structs/binary_tree/red_black_tree.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 56 |         let mut node = RedBlackNode::new(RedBlackNodeValue {
[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: variable does not need to be mutable
[INFO] [stdout]   --> src/structs/hash_tables/liner_hash_table.rs:42:13
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let mut d = 1;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `d`
[INFO] [stdout]   --> src/structs/hash_tables/liner_hash_table.rs:42:13
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let mut d = 1;
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_d`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s1`
[INFO] [stdout]   --> src/main.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 |     let s1 = " 0 \n 1 \n".to_string();
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_s1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s2`
[INFO] [stdout]   --> src/main.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 51 |     let s2 = " 1 \n 3 \n".to_string();
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_s2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `string_conect` is never used
[INFO] [stdout]   --> src/main.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn string_conect(s1: String, s2: String) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `indent` is never used
[INFO] [stdout]   --> src/main.rs:57:4
[INFO] [stdout]    |
[INFO] [stdout] 57 | fn indent(mut s1: String, mut s2: String) -> String {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Graph` is never used
[INFO] [stdout]  --> src/interfaces/graph.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub trait Graph {
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `List` is never used
[INFO] [stdout]  --> src/interfaces/list.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub trait List<T: Clone + Default + Debug> {
[INFO] [stdout]   |           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Queue` is never used
[INFO] [stdout]  --> src/interfaces/queue.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub trait Queue<T: Clone + Debug + Eq + PartialEq> {
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `SSet` is never used
[INFO] [stdout]  --> src/interfaces/sset.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub trait SSet<T: Clone + Debug + Eq + PartialEq> {
[INFO] [stdout]   |           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `pop` is never used
[INFO] [stdout]  --> src/interfaces/stack.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub trait Stack<T: Clone + Debug + Eq + PartialEq> {
[INFO] [stdout]   |           ----- method in this trait
[INFO] [stdout] 4 |     fn push(&mut self, x: T) -> ();
[INFO] [stdout] 5 |     fn pop(&mut self) -> Option<T>;
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `USet` is never used
[INFO] [stdout]  --> src/interfaces/uset.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub trait USet<T: Clone + Debug + Eq + PartialEq> {
[INFO] [stdout]   |           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Json` is never used
[INFO] [stdout]  --> src/macros/json.rs:4:10
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub enum Json {
[INFO] [stdout]   |          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/structs/arrays/array_stack.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl<T: Debug + Clone + Default> ArrayStack<T> {
[INFO] [stdout]    | ---------------------------------------------- associated items in this implementation
[INFO] [stdout] 19 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn new_with_len(len: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn new_with_default(len: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn size(&self) -> usize {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     pub fn set(&mut self, i: usize, x: T) {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |     pub fn get(&self, i: usize) -> Option<T> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |     pub fn add(&mut self, i: usize, x: T) {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DualArrayDeque` is never constructed
[INFO] [stdout]  --> src/structs/arrays/dual_array_deque.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct DualArrayDeque<T: Clone + Default + Debug> {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `size` is never used
[INFO] [stdout]   --> src/structs/arrays/dual_array_deque.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl<T: Clone + Default + Debug> DualArrayDeque<T> {
[INFO] [stdout]    | -------------------------------------------------- method in this implementation
[INFO] [stdout] 11 |     pub fn size(&self) -> usize {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BinarySearchTree` is never constructed
[INFO] [stdout]  --> src/structs/binary_tree/binary_easy.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct BinarySearchTree<T: Clone + PartialOrd + Ord + PartialEq + Debug> {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add`, and `find` are never used
[INFO] [stdout]   --> src/structs/binary_tree/binary_easy.rs:8:12
[INFO] [stdout]    |
[INFO] [stdout]  7 | impl<T: Clone + PartialOrd + Ord + PartialEq + Debug> BinarySearchTree<T> {
[INFO] [stdout]    | ------------------------------------------------------------------------- associated items in this implementation
[INFO] [stdout]  8 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 11 |     pub fn add(&mut self, x: T) -> bool {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub fn find(&self, x: T) -> bool {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Node` is never constructed
[INFO] [stdout]   --> src/structs/binary_tree/binary_easy.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | struct Node<T: Clone + PartialOrd + Ord + PartialEq + Debug> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `find`, and `add` are never used
[INFO] [stdout]   --> src/structs/binary_tree/binary_easy.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 28 | impl<T: Clone + PartialOrd + Ord + PartialEq + Debug> Node<T> {
[INFO] [stdout]    | ------------------------------------------------------------- associated items in this implementation
[INFO] [stdout] 29 |     fn new(x: T) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     fn find(&self, x: T) -> bool {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     fn add(&mut self, x: T) -> bool {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BTNode` is never constructed
[INFO] [stdout]  --> src/structs/binary_tree/binary_tree.rs:9:19
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub(super) struct BTNode<T: Clone + Debug + Eq + PartialEq + PartialOrd + Ord> {
[INFO] [stdout]   |                   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WrapNode` is never constructed
[INFO] [stdout]   --> src/structs/binary_tree/binary_tree.rs:40:19
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub(super) struct WrapNode<T: Clone + Debug + Eq + PartialEq + PartialOrd + Ord>(
[INFO] [stdout]    |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Tree` is never used
[INFO] [stdout]   --> src/structs/binary_tree/binary_tree.rs:43:18
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub(super) trait Tree<T: Clone + Debug + Eq + PartialEq + PartialOrd + Ord> {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/structs/binary_tree/binary_tree.rs:47:12
[INFO] [stdout]     |
[INFO] [stdout]  46 | impl<T: Clone + Debug + Eq + PartialEq + PartialOrd + Ord> WrapNode<T> {
[INFO] [stdout]     | ---------------------------------------------------------------------- associated items in this implementation
[INFO] [stdout]  47 |     pub fn new(value: T) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  50 |     pub fn rotation_right(tree: &mut impl Tree<T>, mut rotation_node: WrapNode<T>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  72 |     pub fn rotation_left(tree: &mut impl Tree<T>, mut rotation_node: WrapNode<T>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub fn change_value(&self, new_value: T) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  98 |     pub fn value(&self) -> T {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 101 |     pub fn clone(&self) -> Self {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub fn has_child(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub fn set_parent(&mut self, parent: Option<WrapNode<T>>) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn set_right(&mut self, right: Option<WrapNode<T>>) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub fn set_left(&mut self, left: Option<WrapNode<T>>) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 116 |     pub fn parent(&self) -> Option<Self> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 124 |     pub fn left(&self) -> Option<Self> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     pub fn right(&self) -> Option<Self> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 140 |     pub fn from_node(node: Rc<RefCell<BTNode<T>>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 143 |     pub fn to_node(&self) -> Rc<RefCell<BTNode<T>>> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 146 |     pub fn add_child(&mut self, child: WrapNode<T>) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 159 |     pub fn size(&self) -> usize {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 172 |     fn find_node(&self, value: T) -> Option<WrapNode<T>> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 188 |     pub fn find(&self, value: T) -> bool {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 |     pub fn find_parent(&self, value: T) -> Option<WrapNode<T>> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 200 |     pub fn find_last(&self, value: T) -> Option<WrapNode<T>> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 218 |     pub fn depth(&self, value: T) -> Option<usize> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 236 |     pub fn add(&mut self, value: T) -> bool {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 241 |     pub fn remove(&mut self, value: T) -> Option<T> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/structs/binary_tree/binary_tree.rs:377:8
[INFO] [stdout]     |
[INFO] [stdout] 376 | impl<T: Clone + Debug + Eq + PartialEq + PartialOrd + Ord> BTNode<T> {
[INFO] [stdout]     | -------------------------------------------------------------------- associated function in this implementation
[INFO] [stdout] 377 |     fn new(value: T) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BinaryTree` is never constructed
[INFO] [stdout]    --> src/structs/binary_tree/binary_tree.rs:388:12
[INFO] [stdout]     |
[INFO] [stdout] 388 | pub struct BinaryTree<T: Clone + Debug + Eq + PartialEq + PartialOrd + Ord> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/structs/binary_tree/binary_tree.rs:393:12
[INFO] [stdout]     |
[INFO] [stdout] 392 | impl<T: Clone + Debug + Eq + PartialEq + PartialOrd + Ord> BinaryTree<T> {
[INFO] [stdout]     | ------------------------------------------------------------------------ associated items in this implementation
[INFO] [stdout] 393 |     pub fn new(root: T) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 398 |     pub fn remove(&mut self, value: T) -> Option<T> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 408 |     pub fn depth(&self, value: T) -> Option<usize> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 415 |     pub fn size(&self) -> usize {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 447 |     fn find_node(&self, value: T) -> Option<WrapNode<T>> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 454 |     pub fn find(&self, value: T) -> bool {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 457 |     fn find_last(&self, value: T) -> Option<WrapNode<T>> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 464 |     pub fn add(&mut self, value: T) -> bool {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TreapNode` is never constructed
[INFO] [stdout]   --> src/structs/binary_tree/random_binary_search_tree.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | struct TreapNode<T: Clone + Default + Debug + Eq + PartialEq + PartialOrd + Ord> {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/structs/binary_tree/random_binary_search_tree.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 36 | impl<T: Clone + Default + Debug + Eq + PartialEq + PartialOrd + Ord> TreapNode<T> {
[INFO] [stdout]    | --------------------------------------------------------------------------------- associated function in this implementation
[INFO] [stdout] 37 |     fn new(value: T, p: usize) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WrapNode` is never constructed
[INFO] [stdout]   --> src/structs/binary_tree/random_binary_search_tree.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 49 | struct WrapNode<T: Clone + Default + Debug + Eq + PartialEq + PartialOrd + Ord>(
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/structs/binary_tree/random_binary_search_tree.rs:69:8
[INFO] [stdout]     |
[INFO] [stdout]  68 | impl<T: Clone + Default + Debug + Eq + PartialEq + PartialOrd + Ord> WrapNode<T> {
[INFO] [stdout]     | -------------------------------------------------------------------------------- associated items in this implementation
[INFO] [stdout]  69 |     fn new(value: T, p: usize) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout]  72 |     fn clone(&self) -> Self {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  75 |     fn p(&self) -> usize {
[INFO] [stdout]     |        ^
[INFO] [stdout] ...
[INFO] [stdout]  78 |     fn add_use_binary_search_algo(&mut self, child: WrapNode<T>) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |     fn parent(&self) -> Option<Self> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     fn left(&self) -> Option<Self> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |     fn right(&self) -> Option<Self> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |     fn set_parent(&mut self, parent: Option<WrapNode<T>>) {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     fn set_right(&mut self, right: Option<WrapNode<T>>) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 |     fn set_left(&mut self, left: Option<WrapNode<T>>) {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 123 |     fn from_node(node: TreapNode<T>) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 126 |     fn from_rc_node(node: Rc<RefCell<TreapNode<T>>>) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 129 |     fn to_node(&self) -> Rc<RefCell<TreapNode<T>>> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `RandomGenerator` is never used
[INFO] [stdout]    --> src/structs/binary_tree/random_binary_search_tree.rs:134:11
[INFO] [stdout]     |
[INFO] [stdout] 134 | pub trait RandomGenerator {
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Treap` is never constructed
[INFO] [stdout]    --> src/structs/binary_tree/random_binary_search_tree.rs:138:12
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub struct Treap<
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `find_node`, `find_last`, `rotation_right`, and `rotation_left` are never used
[INFO] [stdout]    --> src/structs/binary_tree/random_binary_search_tree.rs:151:8
[INFO] [stdout]     |
[INFO] [stdout] 146 | / impl<
[INFO] [stdout] 147 | |         T: Default + Clone + Default + Debug + Eq + PartialEq + PartialOrd + Ord,
[INFO] [stdout] 148 | |         R: RandomGenerator + Debug,
[INFO] [stdout] 149 | |     > Treap<T, R>
[INFO] [stdout]     | |_________________- associated items in this implementation
[INFO] [stdout] 150 |   {
[INFO] [stdout] 151 |       fn new(root: T, mut random_generator: R) -> Self {
[INFO] [stdout]     |          ^^^
[INFO] [stdout] ...
[INFO] [stdout] 158 |       fn find_node(&self, value: T) -> Option<WrapNode<T>> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 176 |       fn find_last(&self, value: T) -> Option<WrapNode<T>> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 |       fn rotation_right(&mut self, mut rotation_node: WrapNode<T>) {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 219 |       fn rotation_left(&mut self, mut rotation_node: WrapNode<T>) {
[INFO] [stdout]     |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `NodeColor` is never used
[INFO] [stdout]   --> src/structs/binary_tree/red_black_tree.rs:10:6
[INFO] [stdout]    |
[INFO] [stdout] 10 | enum NodeColor {
[INFO] [stdout]    |      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `change_color`, `to_red`, and `to_black` are never used
[INFO] [stdout]   --> src/structs/binary_tree/red_black_tree.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl NodeColor {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 15 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     fn change_color(&mut self, color: NodeColor) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     fn to_red(&mut self) {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     fn to_black(&mut self) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RedBlackNodeValue` is never constructed
[INFO] [stdout]   --> src/structs/binary_tree/red_black_tree.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 30 | struct RedBlackNodeValue<T: Clone + Debug + Eq + PartialEq + PartialOrd + Ord> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `RedBlackNode` is never used
[INFO] [stdout]   --> src/structs/binary_tree/red_black_tree.rs:34:6
[INFO] [stdout]    |
[INFO] [stdout] 34 | type RedBlackNode<T: Clone + Debug + Eq + PartialEq + PartialOrd + Ord> =
[INFO] [stdout]    |      ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RedBlackTree` is never constructed
[INFO] [stdout]   --> src/structs/binary_tree/red_black_tree.rs:38:12
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub struct RedBlackTree<T: Clone + Debug + Eq + PartialEq + PartialOrd + Ord> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add`, and `add_fixup` are never used
[INFO] [stdout]   --> src/structs/binary_tree/red_black_tree.rs:52:12
[INFO] [stdout]    |
[INFO] [stdout] 48 | / impl<T> RedBlackTree<T>
[INFO] [stdout] 49 | | where
[INFO] [stdout] 50 | |     T: Clone + Debug + Eq + PartialEq + PartialOrd + Ord,
[INFO] [stdout]    | |_________________________________________________________- associated items in this implementation
[INFO] [stdout] 51 |   {
[INFO] [stdout] 52 |       pub fn new() -> Self {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |       pub fn add(&mut self, x: T) -> bool {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |       fn add_fixup(&mut self, mut node: RedBlackNode<T>) {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/structs/binary_tree/red_black_tree.rs:115:8
[INFO] [stdout]     |
[INFO] [stdout] 111 | / impl<T> RedBlackNode<T>
[INFO] [stdout] 112 | | where
[INFO] [stdout] 113 | |     T: Clone + Debug + Eq + PartialEq + PartialOrd + Ord,
[INFO] [stdout]     | |_________________________________________________________- methods in this implementation
[INFO] [stdout] 114 |   {
[INFO] [stdout] 115 |       fn flip_left(&mut self, tree: &mut RedBlackTree<T>) {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |       fn flip_right(&mut self, tree: &mut RedBlackTree<T>) {
[INFO] [stdout]     |          ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 129 |       fn push_black(&mut self) {
[INFO] [stdout]     |          ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |       fn pull_black(&mut self) {
[INFO] [stdout]     |          ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 139 |       fn swap_color(&mut self, other: &mut Self) {
[INFO] [stdout]     |          ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 145 |       fn change_left_color(&mut self, color: NodeColor) {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |       fn change_right_color(&mut self, color: NodeColor) {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 159 |       fn change_color(&mut self, color: NodeColor) {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 169 |       fn to_red(&mut self) {
[INFO] [stdout]     |          ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 174 |       fn to_black(&mut self) {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ScapegoatTree` is never constructed
[INFO] [stdout]  --> src/structs/binary_tree/scapegoat_tree.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct ScapegoatTree<T: Clone + Debug + PartialEq + Eq + PartialOrd + Ord> {
[INFO] [stdout]   |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `remove`, `add`, `rebuild`, `build_balanced`, `pack_into_array`, and `log3_2` are never used
[INFO] [stdout]    --> src/structs/binary_tree/scapegoat_tree.rs:12:12
[INFO] [stdout]     |
[INFO] [stdout]  11 | impl<T: Clone + Debug + PartialEq + Eq + PartialOrd + Ord> ScapegoatTree<T> {
[INFO] [stdout]     | --------------------------------------------------------------------------- associated items in this implementation
[INFO] [stdout]  12 |     pub fn remove(&mut self, x: T) -> Option<T> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  26 |     pub fn add(&mut self, x: T) -> bool {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  51 |     fn rebuild(&mut self, node: WrapNode<T>) {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  65 |     fn build_balanced(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  94 |     fn pack_into_array(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 108 |     fn log3_2(q: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `update_block`, `place_data`, `free_block`, and `block_list_len` are never used
[INFO] [stdout]   --> src/structs/external_memory/block_store.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl<T: Clone> BlockStore<T> {
[INFO] [stdout]    | ---------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub fn update_block(&mut self, index: BIndex, data: T) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 69 |     pub fn place_data(&mut self, b: T) -> BIndex {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 81 |     pub fn free_block(&mut self, i: BIndex) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 85 |     pub fn block_list_len(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `index` is never used
[INFO] [stdout]   --> src/structs/external_memory/block_store.rs:98:12
[INFO] [stdout]    |
[INFO] [stdout] 94 | impl<T> Block<T> {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 98 |     pub fn index(&self) -> BIndex {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `child_num`, `key_num`, `last_child`, and `last_key` are never used
[INFO] [stdout]   --> src/structs/external_memory/btree.rs:54:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | / impl<T> Node<T>
[INFO] [stdout] 14 | | where
[INFO] [stdout] 15 | |     T: Clone + Debug + PartialEq + PartialOrd + Ord + Default,
[INFO] [stdout]    | |______________________________________________________________- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 54 |       fn child_num(&self) -> usize {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |       fn key_num(&self) -> usize {
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |       fn last_child(&mut self) -> Option<BIndex> {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |       fn last_key(&mut self) -> Option<T> {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/structs/external_memory/btree.rs:196:12
[INFO] [stdout]     |
[INFO] [stdout] 135 | / impl<T> BTree<T>
[INFO] [stdout] 136 | | where
[INFO] [stdout] 137 | |     T: Clone + Debug + PartialEq + PartialOrd + Ord + Default,
[INFO] [stdout]     | |______________________________________________________________- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 196 |       pub fn remove(&mut self, x: T) -> bool {
[INFO] [stdout]     |              ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 |       fn remove_rec(&mut self, x: T, node_index: Option<BIndex>) -> bool {
[INFO] [stdout]     |          ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |       fn remove_smallest(&mut self, node_index: BIndex) -> T {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 241 |       fn check_underflow(&mut self, block: Block<Node<T>>, child_index: ChildIndex) {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 251 |       fn shift_rl(&mut self, mut underflow_block: Block<Node<T>>, mut helper_block: Block<Node<T>>) {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 264 |       fn merge(
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 294 |       fn check_underflow_zero(&mut self, parent_block: Block<Node<T>>, child_index: ChildIndex) {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 312 |       fn check_underflow_non_zero(&mut self, parent_block: Block<Node<T>>, child_index: ChildIndex) {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AdjacencyMatrix` is never constructed
[INFO] [stdout]  --> src/structs/graphs/adjacency_matrix.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct AdjacencyMatrix {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `is_over_len`, `len_check`, and `i_check` are never used
[INFO] [stdout]   --> src/structs/graphs/adjacency_matrix.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl AdjacencyMatrix {
[INFO] [stdout]    | -------------------- associated items in this implementation
[INFO] [stdout] 11 |     pub fn new(n: usize) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     fn is_over_len(&self, i: usize, j: usize) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     fn len_check(&self, i: usize, j: usize) -> () {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     fn i_check(&self, i: usize) -> () {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AdjacencyList` is never constructed
[INFO] [stdout]  --> src/structs/graphs/adjacency_list.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct AdjacencyList {
[INFO] [stdout]   |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Color` is never used
[INFO] [stdout]   --> src/structs/graphs/adjacency_list.rs:13:6
[INFO] [stdout]    |
[INFO] [stdout] 13 | enum Color {
[INFO] [stdout]    |      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/structs/graphs/adjacency_list.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl AdjacencyList {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 19 |     pub fn new(n: usize) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn dfs2(&self, i: usize) -> Vec<usize> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     fn private_dfs2(&self, i: usize, buffer: &mut Vec<usize>) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn dfs(&self, i: usize) -> Vec<usize> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     fn private_dfs(&self, i: usize, colors: &mut Vec<Color>, buffer: &mut Vec<usize>) {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |     pub fn can_reach(&self, start: usize, target: usize) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 86 |     fn len_check(&self, i: usize) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `w`, `z`, `resize`, `set`, and `hash` are never used
[INFO] [stdout]   --> src/structs/hash_tables/chaned_hash_table.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl<T: Clone + Eq + PartialEq + Debug + Default + ToString> ChanedHashTable<T> {
[INFO] [stdout]    | ------------------------------------------------------------------------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 22 |     fn w() -> usize {
[INFO] [stdout]    |        ^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     fn z() -> usize {
[INFO] [stdout]    |        ^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     fn resize(&mut self) {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     fn set(&mut self, i: usize, x: T) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |     fn hash(x: T) -> usize {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HashGen` is never constructed
[INFO] [stdout]  --> src/structs/hash_tables/hash_gen.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct HashGen {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `from_usize`, and `hash` are never used
[INFO] [stdout]   --> src/structs/hash_tables/hash_gen.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl HashGen {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 11 |     pub fn new(z: usize, w: u32, d: u32) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 14 |     pub fn from_usize(&self, x: usize) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub fn hash<T: Clone + Debug + ToString>(&self, x: T) -> usize {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `DataState` is never used
[INFO] [stdout]  --> src/structs/hash_tables/liner_hash_table.rs:8:6
[INFO] [stdout]   |
[INFO] [stdout] 8 | enum DataState<T: Clone + Debug + Eq + PartialEq + Default> {
[INFO] [stdout]   |      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LinerHashTable` is never constructed
[INFO] [stdout]   --> src/structs/hash_tables/liner_hash_table.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct LinerHashTable<T: Clone + Debug + Eq + PartialEq + Default + ToString> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `resize` are never used
[INFO] [stdout]   --> src/structs/hash_tables/liner_hash_table.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 28 | impl<T: Clone + Debug + Eq + PartialEq + Default + ToString> LinerHashTable<T> {
[INFO] [stdout]    | ------------------------------------------------------------------------------ associated items in this implementation
[INFO] [stdout] 29 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     fn resize(&mut self) {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BinaryHeap` is never constructed
[INFO] [stdout]  --> src/structs/heap/binary_heap.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct BinaryHeap<T: Clone + Debug + PartialEq + PartialOrd> {
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/structs/heap/binary_heap.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout]  9 | impl<T: Clone + Debug + PartialEq + PartialOrd> BinaryHeap<T> {
[INFO] [stdout]    | ------------------------------------------------------------- associated items in this implementation
[INFO] [stdout] 10 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub fn add(&mut self, x: T) -> bool {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn remove(&mut self) -> Option<T> {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     fn trickle_down(&mut self, mut i: usize) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     fn bubble_up(&mut self, mut i: usize) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 75 |     fn left_index(i: usize) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 78 |     fn right_index(i: usize) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 81 |     fn parent_index(i: usize) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 84 |     fn resize(&mut self) {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MeldableHeap` is never constructed
[INFO] [stdout]   --> src/structs/heap/meldable_heap.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct MeldableHeap<T: Clone + PartialEq + PartialOrd + Debug, R: RandomGenerator> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add`, and `remove` are never used
[INFO] [stdout]   --> src/structs/heap/meldable_heap.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl<T: Clone + PartialEq + PartialOrd + Debug, R: RandomGenerator> MeldableHeap<T, R> {
[INFO] [stdout]    | -------------------------------------------------------------------------------------- associated items in this implementation
[INFO] [stdout] 16 |     pub fn new(rand_gen: R) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub fn add(&mut self, x: T) -> bool {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn remove(&mut self) -> Option<T> {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WrapNode` is never constructed
[INFO] [stdout]   --> src/structs/heap/meldable_heap.rs:43:8
[INFO] [stdout]    |
[INFO] [stdout] 43 | struct WrapNode<T: Clone + PartialEq + PartialOrd + Debug>(
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/structs/heap/meldable_heap.rs:53:8
[INFO] [stdout]     |
[INFO] [stdout]  52 | impl<T: Clone + PartialEq + PartialOrd + Debug> WrapNode<T> {
[INFO] [stdout]     | ----------------------------------------------------------- associated items in this implementation
[INFO] [stdout]  53 |     fn new(x: T) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout]  56 |     fn merge(&mut self, mut other: Self, rand: &mut impl RandomGenerator) -> Self {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  81 |     fn value(&self) -> Option<T> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  84 |     fn left(&self) -> Self {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |     fn right(&self) -> Self {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  98 |     fn parent(&self) -> Self {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 121 |     fn set_left(&mut self, left: Self) {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 124 |     fn set_right(&mut self, right: Self) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 127 |     fn set_parent(&mut self, parent: Self) {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     fn clone(&self) -> Self {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MeldableHeapNode` is never constructed
[INFO] [stdout]    --> src/structs/heap/meldable_heap.rs:143:8
[INFO] [stdout]     |
[INFO] [stdout] 143 | struct MeldableHeapNode<T: Clone + PartialEq + PartialOrd + Debug> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/structs/heap/meldable_heap.rs:150:8
[INFO] [stdout]     |
[INFO] [stdout] 149 | impl<T: Clone + PartialEq + PartialOrd + Debug> MeldableHeapNode<T> {
[INFO] [stdout]     | ------------------------------------------------------------------- associated function in this implementation
[INFO] [stdout] 150 |     fn new(x: T) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `n`, `head`, and `tail` are never read
[INFO] [stdout]   --> src/structs/linked_lists/dl_list.rs:9:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct DLList<T: Default + Clone + Debug + Eq + PartialEq> {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout]  9 |     n: isize,
[INFO] [stdout]    |     ^
[INFO] [stdout] 10 |     head: NodeWrapper<T>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 11 |     tail: NodeWrapper<T>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DLList` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_node` is never used
[INFO] [stdout]   --> src/structs/linked_lists/dl_list.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl<T: Clone + Debug + Eq + PartialEq + Default> DLList<T> {
[INFO] [stdout]    | ----------------------------------------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 23 |     fn get_node(&self, index: usize) -> Option<NodeWrapper<T>> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `value`, `delete`, `next`, and `prev` are never used
[INFO] [stdout]   --> src/structs/linked_lists/dl_list.rs:81:8
[INFO] [stdout]    |
[INFO] [stdout] 77 | impl<T: Default + Clone + Debug + Eq + PartialEq> NodeWrapper<T> {
[INFO] [stdout]    | ---------------------------------------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 81 |     fn value(&self) -> T {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 84 |     fn delete(self) {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 92 |     fn next(&self) -> Option<Self> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 99 |     fn prev(&self) -> Option<Self> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `x` is never read
[INFO] [stdout]    --> src/structs/linked_lists/dl_list.rs:138:5
[INFO] [stdout]     |
[INFO] [stdout] 137 | struct Node<T: Default + Clone + Debug + Eq + PartialEq> {
[INFO] [stdout]     |        ---- field in this struct
[INFO] [stdout] 138 |     x: T,
[INFO] [stdout]     |     ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Node` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SEList` is never constructed
[INFO] [stdout]  --> src/structs/linked_lists/se_list.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct SEList {}
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_next`, `get_length`, `set_next`, and `set_length` are never used
[INFO] [stdout]   --> src/structs/skip_lists/skip_list_list.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl<T: Clone + Debug + Default + PartialEq + Eq> Node<T> {
[INFO] [stdout]    | --------------------------------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 21 |     fn get_next(&self, h: usize) -> Option<Rc<RefCell<Node<T>>>> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     fn get_length(&self, h: usize) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     fn set_next(&mut self, h: usize, next: Option<Rc<RefCell<Node<T>>>>) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |     fn set_length(&mut self, h: usize, l: usize) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `find_pred`, `add_base`, `change_height`, `gen_height`, and `height` are never used
[INFO] [stdout]    --> src/structs/skip_lists/skip_list_list.rs:78:8
[INFO] [stdout]     |
[INFO] [stdout]  72 | impl<T: Clone + Debug + Default + PartialEq + Eq> SkipListList<T> {
[INFO] [stdout]     | ----------------------------------------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  78 |     fn find_pred(&self, i: usize) -> Rc<RefCell<Node<T>>> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     fn add_base(&mut self, i: usize, x: T, h: usize) {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 |     fn change_height(&mut self, h: usize) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 164 |     fn gen_height(&self) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 174 |     fn height(&self) -> usize {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_next` and `get_next` are never used
[INFO] [stdout]   --> src/structs/skip_lists/skip_list_sset.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl<T: Clone + Debug + PartialEq + Eq + Default + PartialOrd + Ord> Node<T> {
[INFO] [stdout]    | ---------------------------------------------------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 25 |     fn set_next(&mut self, h: usize, next: Option<Rc<RefCell<Node<T>>>>) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     fn get_next(&self, h: usize) -> Option<Rc<RefCell<Node<T>>>> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/structs/skip_lists/skip_list_sset.rs:57:12
[INFO] [stdout]     |
[INFO] [stdout]  51 | impl<T: Clone + Debug + PartialEq + Eq + Default + PartialOrd + Ord> SkipListSSet<T> {
[INFO] [stdout]     | ------------------------------------------------------------------------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  57 |     pub fn find_pred_node(&self, x: T) -> Option<T> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  84 |     fn add_base(&mut self, x: T, height: usize) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |     fn gen_height(&self) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     fn height(&self) -> usize {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     fn change_height(&mut self, h: usize) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 144 |     fn get_next(&self, h: usize) -> Option<Rc<RefCell<Node<T>>>> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 |     fn set_next(&mut self, h: usize, next: Option<Rc<RefCell<Node<T>>>>) {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ToUsize` is never used
[INFO] [stdout]  --> src/structs/tries/binary_trie.rs:5:11
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub trait ToUsize {
[INFO] [stdout]   |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `num` and `update_jump` are never used
[INFO] [stdout]   --> src/structs/tries/binary_trie.rs:9:12
[INFO] [stdout]    |
[INFO] [stdout]  8 | impl<T: ToUsize + Clone + PartialEq + Debug> StrongLinkNode<T> {
[INFO] [stdout]    | -------------------------------------------------------------- methods in this implementation
[INFO] [stdout]  9 |     pub fn num(&self) -> Option<usize> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 12 |     pub(super) fn update_jump(&mut self, binary: Binary) {
[INFO] [stdout]    |                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `PathNodeOrLeaf` is never used
[INFO] [stdout]   --> src/structs/tries/binary_trie.rs:27:17
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub(super) enum PathNodeOrLeaf<T: Clone + PartialEq> {
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new_leaf`, `new_path`, and `value` are never used
[INFO] [stdout]   --> src/structs/tries/binary_trie.rs:32:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl<T: Clone + PartialEq> PathNodeOrLeaf<T> {
[INFO] [stdout]    | -------------------------------------------- associated items in this implementation
[INFO] [stdout] 32 |     pub fn new_leaf(x: T) -> Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn new_path() -> Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn value(&self) -> Option<&T> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Binary` is never used
[INFO] [stdout]   --> src/structs/tries/binary_trie.rs:46:17
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub(super) enum Binary {
[INFO] [stdout]    |                 ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `calc_binary`, `other`, and `to_num` are never used
[INFO] [stdout]   --> src/structs/tries/binary_trie.rs:51:12
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl Binary {
[INFO] [stdout]    | ----------- associated items in this implementation
[INFO] [stdout] 51 |     pub fn calc_binary(number: usize, digit: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn other(&self) -> Self {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |     pub fn to_num(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BinaryTrie` is never constructed
[INFO] [stdout]   --> src/structs/tries/binary_trie.rs:71:12
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub struct BinaryTrie<T: ToUsize + Clone + PartialEq + Debug> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/structs/tries/binary_trie.rs:87:12
[INFO] [stdout]     |
[INFO] [stdout]  86 | impl<T: ToUsize + Clone + PartialEq + Debug> BinaryTrie<T> {
[INFO] [stdout]     | ---------------------------------------------------------- associated items in this implementation
[INFO] [stdout]  87 |     pub fn new(w: usize) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  99 |     pub fn add(&mut self, x: T) -> bool {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 148 |     pub fn remove(&mut self, x: &T) -> Option<T> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 174 |     pub fn find(&self, x: T) -> bool {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 177 |     fn find_leaf(&self, num: usize) -> StrongLinkNode<T> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 |     fn find_prev(&self, num: usize) -> StrongLinkNode<T> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 207 |     fn in_range(&self, x: &T) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_prev_next` is never used
[INFO] [stdout]  --> src/structs/tries/helper.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn check_prev_next<T: ToUsize + Clone + PartialEq + Debug>(tree: BinaryTrie<T>) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rec_assert` is never used
[INFO] [stdout]   --> src/structs/tries/helper.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn rec_assert<T: ToUsize + Clone + PartialEq + Debug>(
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Node` is never constructed
[INFO] [stdout]  --> src/structs/tries/nodes/node.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct Node<T: Clone + PartialEq + Debug> {
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new_leaf`, `new_path_node`, and `value` are never used
[INFO] [stdout]   --> src/structs/tries/nodes/node.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl<T: Clone + PartialEq + Debug> Node<T> {
[INFO] [stdout]    | ------------------------------------------ associated items in this implementation
[INFO] [stdout] 28 |     pub fn new_leaf(x: T) -> Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn new_path_node() -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub fn value(&self) -> Option<&T> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StrongLinkNode` is never constructed
[INFO] [stdout]  --> src/structs/tries/nodes/strong_link.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct StrongLinkNode<T: Clone + PartialEq + Debug>(Option<Rc<RefCell<Node<T>>>>);
[INFO] [stdout]   |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/structs/tries/nodes/strong_link.rs:10:12
[INFO] [stdout]     |
[INFO] [stdout]   9 | impl<T: Clone + PartialEq + Debug> StrongLinkNode<T> {
[INFO] [stdout]     | ---------------------------------------------------- associated items in this implementation
[INFO] [stdout]  10 |     pub fn new_leaf(x: T) -> Self {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  13 |     pub fn new(node: Option<Rc<RefCell<Node<T>>>>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  16 |     pub fn new_path_node() -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  19 |     pub fn new_none() -> Self {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  22 |     pub fn clone(&self) -> Self {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  25 |     pub fn get_min_child(&self) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  36 |     pub fn get_max_child(&self) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  46 |     pub fn next(&self) -> Self {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  53 |     pub fn prev(&self) -> Self {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  64 |     pub fn to_weak(&self) -> WeakLinkNode<T> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  68 |     pub fn value(&self) -> Option<T> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  78 |     pub fn has_child(&self, index: usize) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  81 |     pub fn has_one_child(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  84 |     pub fn has_two_child(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  87 |     pub fn has_jump(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  90 |     pub fn left(&self) -> Self {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn right(&self) -> Self {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  96 |     pub fn child(&self, index: usize) -> Self {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     pub fn parent(&self) -> Self {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 108 |     pub fn jump(&self) -> Self {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |     pub fn set_jump(&mut self, leaf: Self) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub fn remove_jump(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     pub fn set_next(&mut self, leaf: Self) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |     pub fn set_prev(&mut self, leaf: Self) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 |     pub fn remove_child(&mut self, index: usize) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 146 |     pub fn set_child(&mut self, child: Self, index: usize) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 156 |     pub fn set_left(&mut self, child: Self) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 162 |     pub fn set_right(&mut self, child: Self) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 168 |     pub fn set_parent(&mut self, node: Self) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WeakLinkNode` is never constructed
[INFO] [stdout]  --> src/structs/tries/nodes/weak_link.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct WeakLinkNode<T: Clone + PartialEq + Debug>(Option<Weak<RefCell<Node<T>>>>);
[INFO] [stdout]   |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new_none`, `new`, `value`, `clone`, and `to_node` are never used
[INFO] [stdout]   --> src/structs/tries/nodes/weak_link.rs:8:12
[INFO] [stdout]    |
[INFO] [stdout]  7 | impl<T: Clone + PartialEq + Debug> WeakLinkNode<T> {
[INFO] [stdout]    | -------------------------------------------------- associated items in this implementation
[INFO] [stdout]  8 |     pub fn new_none() -> Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 11 |     pub fn new(weak_link: Option<Weak<RefCell<Node<T>>>>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 14 |     pub fn value(&self) -> Option<T> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub fn clone(&self) -> Self {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn to_node(self) -> StrongLinkNode<T> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `XFastTrie` is never constructed
[INFO] [stdout]   --> src/structs/tries/x_fast_trie.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct XFastTrie<T: ToUsize + Clone + Debug + PartialEq> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/structs/tries/x_fast_trie.rs:27:12
[INFO] [stdout]     |
[INFO] [stdout]  26 | impl<T: ToUsize + Clone + Debug + PartialEq> XFastTrie<T> {
[INFO] [stdout]     | --------------------------------------------------------- associated items in this implementation
[INFO] [stdout]  27 |     pub fn new(w: usize) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  40 |     fn digit_to_depth(&self, digit: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  43 |     pub fn add(&mut self, x: T) -> bool {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     fn find_prev(&self, x: &T) -> StrongLinkNode<T> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 |     fn find_leaf(&self, x: &T) -> StrongLinkNode<T> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 143 |     fn in_range(&self, x: &T) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 |     pub fn find(&self, x: &T) -> bool {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BinaryLabel` is never constructed
[INFO] [stdout]  --> src/structs/tries/x_fast_trie_parts/binary_label.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct BinaryLabel {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `is_same` are never used
[INFO] [stdout]   --> src/structs/tries/x_fast_trie_parts/binary_label.rs:9:12
[INFO] [stdout]    |
[INFO] [stdout]  8 | impl BinaryLabel {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout]  9 |     pub fn new(max_depth: usize, label_depth: usize, usized_data: usize) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     pub fn is_same(&self, label_depth: usize, usized_data: usize) -> bool {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `XFastTrieHashTable` is never constructed
[INFO] [stdout]  --> src/structs/tries/x_fast_trie_parts/hash_table.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct XFastTrieHashTable<T: Clone + Debug + PartialEq> {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/structs/tries/x_fast_trie_parts/hash_table.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl<T: Clone + Debug + PartialEq> XFastTrieHashTable<T> {
[INFO] [stdout]    | -------------------------------------------------------- associated items in this implementation
[INFO] [stdout] 14 |     pub fn new(max_depth: usize) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub fn get(&self, depth: usize, usized_data: &impl ToUsize) -> Option<&T> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn register_binary_labels(&mut self, depth: usize, usized_data: &impl ToUsize, node: T) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn remove(&mut self, depth: usize, usized_data: &impl ToUsize) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn find(&self, depth: usize, usized_data: &impl ToUsize) -> bool {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     fn chaeck_in_range(&self, depth: usize) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     fn in_range(&self, depth: usize) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     fn gen_key(&self, depth: usize, usized_data: &impl ToUsize) -> BinaryLabel {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     fn leaf_parent_depth(&self) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     fn table_index(depth: usize) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     fn containes_all_label_at_data(&self, usized_leaf: usize) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `NodeBoundary` is never used
[INFO] [stdout]  --> src/types/node_boundary.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub trait NodeBoundary: Clone + Debug + Eq + PartialEq {}
[INFO] [stdout]   |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `Eq::assert_receiver_is_total_eq` should never be implemented by hand
[INFO] [stdout]   --> src/structs/binary_tree/binary_tree.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 |     fn assert_receiver_is_total_eq(&self) {}
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method was used to add checks to the `Eq` derive macro
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #152336 <https://github.com/rust-lang/rust/issues/152336>
[INFO] [stdout]    = note: `#[warn(internal_eq_trait_method_impls)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `Eq::assert_receiver_is_total_eq` should never be implemented by hand
[INFO] [stdout]   --> src/structs/binary_tree/random_binary_search_tree.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn assert_receiver_is_total_eq(&self) {}
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method was used to add checks to the `Eq` derive macro
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #152336 <https://github.com/rust-lang/rust/issues/152336>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]   --> src/structs/binary_tree/red_black_tree.rs:34:22
[INFO] [stdout]    |
[INFO] [stdout] 34 | type RedBlackNode<T: Clone + Debug + Eq + PartialEq + PartialOrd + Ord> =
[INFO] [stdout]    |                      ^^^^^   ^^^^^   ^^   ^^^^^^^^^   ^^^^^^^^^^   ^^^ will not be checked at usage sites of the type alias
[INFO] [stdout]    |
[INFO] [stdout]    = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]            see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]    = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout]    = note: `#[warn(type_alias_bounds)]` on by default
[INFO] [stdout] help: remove this bound
[INFO] [stdout]    |
[INFO] [stdout] 34 - type RedBlackNode<T: Clone + Debug + Eq + PartialEq + PartialOrd + Ord> =
[INFO] [stdout] 34 + type RedBlackNode<T> =
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `build_B2_none` should have a snake case name
[INFO] [stdout]  --> src/structs/external_memory/helper.rs:2:14
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub const fn build_B2_none<T>() -> [Option<T>; 2 * B] {
[INFO] [stdout]   |              ^^^^^^^^^^^^^ help: convert the identifier to snake case: `build_b2_none`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BufRead`
[INFO] [stdout]  --> src/main.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 |     io::{stdin, BufRead, BufReader, Read, Write},
[INFO] [stdout]   |                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/structs/binary_tree/binary_easy.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 73 |     let mut v = vec![7, 3, 1, 5, 4, 6, 11, 9, 8, 13, 12, 14];
[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: value assigned to `next` is never read
[INFO] [stdout]    --> src/structs/binary_tree/binary_tree.rs:418:24
[INFO] [stdout]     |
[INFO] [stdout] 418 |         let mut next = None;
[INFO] [stdout]     |                        ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 440 |                 next = parent
[INFO] [stdout]     |                 ---- `next` is overwritten here before the previous value is read
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `next` is never read
[INFO] [stdout]    --> src/structs/binary_tree/random_binary_search_tree.rs:312:24
[INFO] [stdout]     |
[INFO] [stdout] 312 |         let mut next = None;
[INFO] [stdout]     |                        ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 334 |                 next = parent
[INFO] [stdout]     |                 ---- `next` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/structs/binary_tree/red_black_tree.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 56 |         let mut node = RedBlackNode::new(RedBlackNodeValue {
[INFO] [stdout]    |             ----^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/structs/external_memory/btree.rs:594:13
[INFO] [stdout]     |
[INFO] [stdout] 594 |         let mut tree = BTree::<i32>::new();
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tree`
[INFO] [stdout]    --> src/structs/external_memory/btree.rs:594:13
[INFO] [stdout]     |
[INFO] [stdout] 594 |         let mut tree = BTree::<i32>::new();
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tree`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/structs/hash_tables/liner_hash_table.rs:42:13
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let mut d = 1;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `d`
[INFO] [stdout]   --> src/structs/hash_tables/liner_hash_table.rs:42:13
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let mut d = 1;
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_d`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/structs/heap/binary_heap.rs:119:13
[INFO] [stdout]     |
[INFO] [stdout] 119 |         let mut tobe = BinaryHeap {
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s1`
[INFO] [stdout]   --> src/main.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 |     let s1 = " 0 \n 1 \n".to_string();
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_s1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s2`
[INFO] [stdout]   --> src/main.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 51 |     let s2 = " 1 \n 3 \n".to_string();
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_s2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `size` is never used
[INFO] [stdout]  --> src/interfaces/list.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub trait List<T: Clone + Default + Debug> {
[INFO] [stdout]   |           ---- method in this trait
[INFO] [stdout] 4 |     fn size(&self) -> usize;
[INFO] [stdout]   |        ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `size` is never used
[INFO] [stdout]  --> src/interfaces/uset.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub trait USet<T: Clone + Debug + Eq + PartialEq> {
[INFO] [stdout]   |           ---- method in this trait
[INFO] [stdout] 4 |     fn size(&self) -> usize;
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new_with_len` is never used
[INFO] [stdout]   --> src/structs/arrays/array_stack.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl<T: Debug + Clone + Default> ArrayStack<T> {
[INFO] [stdout]    | ---------------------------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn new_with_len(len: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DualArrayDeque` is never constructed
[INFO] [stdout]  --> src/structs/arrays/dual_array_deque.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct DualArrayDeque<T: Clone + Default + Debug> {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `size` is never used
[INFO] [stdout]   --> src/structs/arrays/dual_array_deque.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl<T: Clone + Default + Debug> DualArrayDeque<T> {
[INFO] [stdout]    | -------------------------------------------------- method in this implementation
[INFO] [stdout] 11 |     pub fn size(&self) -> usize {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `find` is never used
[INFO] [stdout]    --> src/structs/binary_tree/binary_tree.rs:188:12
[INFO] [stdout]     |
[INFO] [stdout]  46 | impl<T: Clone + Debug + Eq + PartialEq + PartialOrd + Ord> WrapNode<T> {
[INFO] [stdout]     | ---------------------------------------------------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 188 |     pub fn find(&self, value: T) -> bool {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/structs/binary_tree/red_black_tree.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl NodeColor {
[INFO] [stdout]    | -------------- associated function in this implementation
[INFO] [stdout] 15 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `pull_black` is never used
[INFO] [stdout]    --> src/structs/binary_tree/red_black_tree.rs:134:8
[INFO] [stdout]     |
[INFO] [stdout] 111 | / impl<T> RedBlackNode<T>
[INFO] [stdout] 112 | | where
[INFO] [stdout] 113 | |     T: Clone + Debug + Eq + PartialEq + PartialOrd + Ord,
[INFO] [stdout]     | |_________________________________________________________- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 134 |       fn pull_black(&mut self) {
[INFO] [stdout]     |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `update_block`, `place_data`, `free_block`, and `block_list_len` are never used
[INFO] [stdout]   --> src/structs/external_memory/block_store.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl<T: Clone> BlockStore<T> {
[INFO] [stdout]    | ---------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub fn update_block(&mut self, index: BIndex, data: T) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 69 |     pub fn place_data(&mut self, b: T) -> BIndex {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 81 |     pub fn free_block(&mut self, i: BIndex) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 85 |     pub fn block_list_len(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `index` is never used
[INFO] [stdout]   --> src/structs/external_memory/block_store.rs:98:12
[INFO] [stdout]    |
[INFO] [stdout] 94 | impl<T> Block<T> {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 98 |     pub fn index(&self) -> BIndex {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `child_num`, `key_num`, `last_child`, and `last_key` are never used
[INFO] [stdout]   --> src/structs/external_memory/btree.rs:54:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | / impl<T> Node<T>
[INFO] [stdout] 14 | | where
[INFO] [stdout] 15 | |     T: Clone + Debug + PartialEq + PartialOrd + Ord + Default,
[INFO] [stdout]    | |______________________________________________________________- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 54 |       fn child_num(&self) -> usize {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |       fn key_num(&self) -> usize {
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |       fn last_child(&mut self) -> Option<BIndex> {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |       fn last_key(&mut self) -> Option<T> {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/structs/external_memory/btree.rs:196:12
[INFO] [stdout]     |
[INFO] [stdout] 135 | / impl<T> BTree<T>
[INFO] [stdout] 136 | | where
[INFO] [stdout] 137 | |     T: Clone + Debug + PartialEq + PartialOrd + Ord + Default,
[INFO] [stdout]     | |______________________________________________________________- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 196 |       pub fn remove(&mut self, x: T) -> bool {
[INFO] [stdout]     |              ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 |       fn remove_rec(&mut self, x: T, node_index: Option<BIndex>) -> bool {
[INFO] [stdout]     |          ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |       fn remove_smallest(&mut self, node_index: BIndex) -> T {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 241 |       fn check_underflow(&mut self, block: Block<Node<T>>, child_index: ChildIndex) {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 251 |       fn shift_rl(&mut self, mut underflow_block: Block<Node<T>>, mut helper_block: Block<Node<T>>) {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 264 |       fn merge(
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 294 |       fn check_underflow_zero(&mut self, parent_block: Block<Node<T>>, child_index: ChildIndex) {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 312 |       fn check_underflow_non_zero(&mut self, parent_block: Block<Node<T>>, child_index: ChildIndex) {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `d` is never read
[INFO] [stdout]   --> src/structs/hash_tables/liner_hash_table.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct LinerHashTable<T: Clone + Debug + Eq + PartialEq + Default + ToString> {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 25 |     d: u32,
[INFO] [stdout]    |     ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LinerHashTable` 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/structs/heap/binary_heap.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout]  9 | impl<T: Clone + Debug + PartialEq + PartialOrd> BinaryHeap<T> {
[INFO] [stdout]    | ------------------------------------------------------------- associated function in this implementation
[INFO] [stdout] 10 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `parent` is never used
[INFO] [stdout]   --> src/structs/heap/meldable_heap.rs:98:8
[INFO] [stdout]    |
[INFO] [stdout] 52 | impl<T: Clone + PartialEq + PartialOrd + Debug> WrapNode<T> {
[INFO] [stdout]    | ----------------------------------------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 98 |     fn parent(&self) -> Self {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SEList` is never constructed
[INFO] [stdout]  --> src/structs/linked_lists/se_list.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct SEList {}
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_prev_next` is never used
[INFO] [stdout]  --> src/structs/tries/helper.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn check_prev_next<T: ToUsize + Clone + PartialEq + Debug>(tree: BinaryTrie<T>) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `has_child` is never used
[INFO] [stdout]   --> src/structs/tries/nodes/strong_link.rs:78:12
[INFO] [stdout]    |
[INFO] [stdout]  9 | impl<T: Clone + PartialEq + Debug> StrongLinkNode<T> {
[INFO] [stdout]    | ---------------------------------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 78 |     pub fn has_child(&self, index: usize) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `in_range` is never used
[INFO] [stdout]    --> src/structs/tries/x_fast_trie.rs:143:8
[INFO] [stdout]     |
[INFO] [stdout]  26 | impl<T: ToUsize + Clone + Debug + PartialEq> XFastTrie<T> {
[INFO] [stdout]     | --------------------------------------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 143 |     fn in_range(&self, x: &T) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `leaf_parent_depth` and `containes_all_label_at_data` are never used
[INFO] [stdout]   --> src/structs/tries/x_fast_trie_parts/hash_table.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl<T: Clone + Debug + PartialEq> XFastTrieHashTable<T> {
[INFO] [stdout]    | -------------------------------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 49 |     fn leaf_parent_depth(&self) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     fn containes_all_label_at_data(&self, usized_leaf: usize) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `NodeBoundary` is never used
[INFO] [stdout]  --> src/types/node_boundary.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub trait NodeBoundary: Clone + Debug + Eq + PartialEq {}
[INFO] [stdout]   |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `Eq::assert_receiver_is_total_eq` should never be implemented by hand
[INFO] [stdout]   --> src/structs/binary_tree/binary_tree.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 |     fn assert_receiver_is_total_eq(&self) {}
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method was used to add checks to the `Eq` derive macro
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #152336 <https://github.com/rust-lang/rust/issues/152336>
[INFO] [stdout]    = note: `#[warn(internal_eq_trait_method_impls)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `Eq::assert_receiver_is_total_eq` should never be implemented by hand
[INFO] [stdout]   --> src/structs/binary_tree/random_binary_search_tree.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn assert_receiver_is_total_eq(&self) {}
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method was used to add checks to the `Eq` derive macro
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #152336 <https://github.com/rust-lang/rust/issues/152336>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]   --> src/structs/binary_tree/red_black_tree.rs:34:22
[INFO] [stdout]    |
[INFO] [stdout] 34 | type RedBlackNode<T: Clone + Debug + Eq + PartialEq + PartialOrd + Ord> =
[INFO] [stdout]    |                      ^^^^^   ^^^^^   ^^   ^^^^^^^^^   ^^^^^^^^^^   ^^^ will not be checked at usage sites of the type alias
[INFO] [stdout]    |
[INFO] [stdout]    = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]            see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]    = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout]    = note: `#[warn(type_alias_bounds)]` on by default
[INFO] [stdout] help: remove this bound
[INFO] [stdout]    |
[INFO] [stdout] 34 - type RedBlackNode<T: Clone + Debug + Eq + PartialEq + PartialOrd + Ord> =
[INFO] [stdout] 34 + type RedBlackNode<T> =
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `build_B2_none` should have a snake case name
[INFO] [stdout]  --> src/structs/external_memory/helper.rs:2:14
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub const fn build_B2_none<T>() -> [Option<T>; 2 * B] {
[INFO] [stdout]   |              ^^^^^^^^^^^^^ help: convert the identifier to snake case: `build_b2_none`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.09s
[INFO] running `Command { std: "docker" "inspect" "5901e869318738313139d364fc4363fa21629ba64cd770cf49c75b8163b1ac32", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5901e869318738313139d364fc4363fa21629ba64cd770cf49c75b8163b1ac32", kill_on_drop: false }`
[INFO] [stdout] 5901e869318738313139d364fc4363fa21629ba64cd770cf49c75b8163b1ac32
