[INFO] cloning repository https://github.com/rayniel95/rust-little-projects [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/rayniel95/rust-little-projects" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frayniel95%2Frust-little-projects", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frayniel95%2Frust-little-projects'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 493399f7480e34717d1db07e486cba226a9727a1 [INFO] linting rayniel95/rust-little-projects against nightly for clippy-nonminimal_bool-denied [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frayniel95%2Frust-little-projects" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/rayniel95/rust-little-projects [INFO] finished tweaking git repo https://github.com/rayniel95/rust-little-projects [INFO] tweaked toml for git repo https://github.com/rayniel95/rust-little-projects written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/rayniel95/rust-little-projects on toolchain nightly [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/rayniel95/rust-little-projects 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" "+nightly" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded proc-macro2 v1.0.34 [INFO] [stderr] Downloaded contracts v0.6.2 [INFO] [stderr] Downloaded syn v1.0.84 [INFO] [stderr] Downloaded libc v0.2.112 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] ba671bc8f5d98693b80f73da1f563e142f56e53d9369c2f0848ce839331c9a81 [INFO] running `Command { std: "docker" "start" "-a" "ba671bc8f5d98693b80f73da1f563e142f56e53d9369c2f0848ce839331c9a81", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ba671bc8f5d98693b80f73da1f563e142f56e53d9369c2f0848ce839331c9a81", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ba671bc8f5d98693b80f73da1f563e142f56e53d9369c2f0848ce839331c9a81", kill_on_drop: false }` [INFO] [stdout] ba671bc8f5d98693b80f73da1f563e142f56e53d9369c2f0848ce839331c9a81 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "clippy" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 27d099a7f07ab5184bb460505a70d605387f7826915e6ad0787222a0a448c9a3 [INFO] running `Command { std: "docker" "start" "-a" "27d099a7f07ab5184bb460505a70d605387f7826915e6ad0787222a0a448c9a3", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.112 [INFO] [stderr] Compiling proc-macro2 v1.0.34 [INFO] [stderr] Compiling syn v1.0.84 [INFO] [stderr] Checking ppv-lite86 v0.2.15 [INFO] [stderr] Checking getrandom v0.2.3 [INFO] [stderr] Checking rand_core v0.6.3 [INFO] [stderr] Compiling quote v1.0.10 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking rand v0.8.4 [INFO] [stderr] Compiling contracts v0.6.2 [INFO] [stderr] Checking rust-little-projects v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> src/dsandalgo/linked_list/linked_list.rs:20:13 [INFO] [stdout] | [INFO] [stdout] 20 | value: value, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `value` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] = note: `#[warn(clippy::redundant_field_names)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::linked_list::LinkedList` [INFO] [stdout] --> src/dsandalgo/linked_list/test.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use super::linked_list::LinkedList; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::linked_list::LinkedListError` [INFO] [stdout] --> src/dsandalgo/linked_list/test.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use super::linked_list::LinkedListError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ptr::NonNull` [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:1:42 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{rc::{Rc, Weak}, cell::RefCell, ptr::NonNull}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:127:17 [INFO] [stdout] | [INFO] [stdout] 127 | value: value, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `value` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:128:17 [INFO] [stdout] | [INFO] [stdout] 128 | priority: priority [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `priority` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> src/dsandalgo/linked_list/linked_list.rs:20:13 [INFO] [stdout] | [INFO] [stdout] 20 | value: value, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `value` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] = note: `#[warn(clippy::redundant_field_names)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::linked_list::LinkedListError` [INFO] [stdout] --> src/dsandalgo/linked_list/test.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use super::linked_list::LinkedListError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::heap::HeapTree` [INFO] [stdout] --> src/dsandalgo/heap/test.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use super::heap::HeapTree; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ptr::NonNull` [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:1:42 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{rc::{Rc, Weak}, cell::RefCell, ptr::NonNull}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/dsandalgo/heap/test.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:127:17 [INFO] [stdout] | [INFO] [stdout] 127 | value: value, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `value` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:128:17 [INFO] [stdout] | [INFO] [stdout] 128 | priority: priority [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `priority` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter::Inspect` [INFO] [stdout] --> src/dsandalgo/isAdmissibleOverpayment/isAdmissibleOverpayment.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::iter::Inspect; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `core::num` [INFO] [stdout] --> src/dsandalgo/heap/test.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | use core::num; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `cmp::Ordering` and `vec` [INFO] [stdout] --> src/dsandalgo/heap/test.rs:7:15 [INFO] [stdout] | [INFO] [stdout] 7 | use std::{cmp::Ordering, vec}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter::Inspect` [INFO] [stdout] --> src/dsandalgo/isAdmissibleOverpayment/isAdmissibleOverpayment.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::iter::Inspect; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> src/dsandalgo/disjoint_set/disjoint_set.rs:49:13 [INFO] [stdout] | [INFO] [stdout] 49 | index: index, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `index` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::isAdmissibleOverpayment::solution` [INFO] [stdout] --> src/dsandalgo/isAdmissibleOverpayment/test.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use super::isAdmissibleOverpayment::solution; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `cmp::Ordering` and `convert::TryInto` [INFO] [stdout] --> src/dsandalgo/linked_list_disjoint_set/test.rs:5:15 [INFO] [stdout] | [INFO] [stdout] 5 | use std::{cmp::Ordering, convert::TryInto, vec}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> src/dsandalgo/disjoint_set/disjoint_set.rs:49:13 [INFO] [stdout] | [INFO] [stdout] 49 | index: index, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `index` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::linked_list_disjoint_set::DisjointSet` [INFO] [stdout] --> src/dsandalgo/linked_list_disjoint_set/test.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use super::linked_list_disjoint_set::DisjointSet; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::distributions::uniform::SampleBorrow` [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use rand::distributions::uniform::SampleBorrow; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:77:13 [INFO] [stdout] | [INFO] [stdout] 77 | let mut pointer = Rc::clone(self); [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/dsandalgo/heap/heap.rs:87:13 [INFO] [stdout] | [INFO] [stdout] 87 | let mut pointer = Rc::clone(self); [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/dsandalgo/heap/heap.rs:183:29 [INFO] [stdout] | [INFO] [stdout] 183 | let mut min: HeapPointer; [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::distributions::uniform::SampleBorrow` [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use rand::distributions::uniform::SampleBorrow; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `LinkToNode` is never used [INFO] [stdout] --> src/dsandalgo/linked_list/linked_list.rs:5:6 [INFO] [stdout] | [INFO] [stdout] 5 | type LinkToNode = Rc>>; [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 `newLinkToNode` is never used [INFO] [stdout] --> src/dsandalgo/linked_list/linked_list.rs:7:4 [INFO] [stdout] | [INFO] [stdout] 7 | fn newLinkToNode(value: T) -> LinkToNode{ [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LinkedNode` is never constructed [INFO] [stdout] --> src/dsandalgo/linked_list/linked_list.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | struct LinkedNode{ [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/dsandalgo/linked_list/linked_list.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 17 | impl LinkedNode{ [INFO] [stdout] | --------------------- associated function in this implementation [INFO] [stdout] 18 | fn new(value: T) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `LinkedListError` is never used [INFO] [stdout] --> src/dsandalgo/linked_list/linked_list.rs:26:10 [INFO] [stdout] | [INFO] [stdout] 26 | pub enum LinkedListError{ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LinkedList` is never constructed [INFO] [stdout] --> src/dsandalgo/linked_list/linked_list.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 30 | pub struct LinkedList{ [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/dsandalgo/linked_list/linked_list.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 36 | impl LinkedList{ [INFO] [stdout] | --------------------- associated items in this implementation [INFO] [stdout] 37 | pub fn new() -> Self{ [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | pub fn count(&self) -> u32{ [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | pub fn add_last(& mut self, value: T){ [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 65 | pub fn pop_first(& mut self) -> Result{ [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 85 | pub fn add_first(& mut self, value: T){ [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | pub fn pop_last(& mut self) -> Result{ [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 132 | pub fn peek_first(&self)->Option>{ [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 140 | pub fn peek_last(&self)->Option>{ [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `HeapPointer` is never used [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:7:6 [INFO] [stdout] | [INFO] [stdout] 7 | type HeapPointer = Rc>>; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `LinkedNodePointer` is never used [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:8:6 [INFO] [stdout] | [INFO] [stdout] 8 | type LinkedNodePointer = Rc>>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `HeapWeakPointer` is never used [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:9:6 [INFO] [stdout] | [INFO] [stdout] 9 | type HeapWeakPointer = Weak>>; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `LinkedNodeWeakPointer` is never used [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:10:6 [INFO] [stdout] | [INFO] [stdout] 10 | type LinkedNodeWeakPointer = Weak>>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `OptionalLinkedNodePointer` is never used [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:11:6 [INFO] [stdout] | [INFO] [stdout] 11 | type OptionalLinkedNodePointer = Option>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `OptionalHeapPointer` is never used [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:12:6 [INFO] [stdout] | [INFO] [stdout] 12 | type OptionalHeapPointer = Option>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Heapable` is never used [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | trait Heapable where Self: Sized { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Cell` is never constructed [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:98:8 [INFO] [stdout] | [INFO] [stdout] 98 | struct Cell{ [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LinkedNode` is never constructed [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:103:8 [INFO] [stdout] | [INFO] [stdout] 103 | struct LinkedNode{ [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `HeapTree` is never constructed [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:109:12 [INFO] [stdout] | [INFO] [stdout] 109 | pub struct HeapTree{ [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Heap` is never constructed [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:116:19 [INFO] [stdout] | [INFO] [stdout] 116 | pub(crate) struct Heap{ [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:202:8 [INFO] [stdout] | [INFO] [stdout] 201 | impl LinkedNode { [INFO] [stdout] | --------------------- associated function in this implementation [INFO] [stdout] 202 | fn new(heap: HeapPointer)->LinkedNode{ [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `LinkedNodable` is never used [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:211:7 [INFO] [stdout] | [INFO] [stdout] 211 | trait LinkedNodable where Self: Sized{ [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_heap_structure_and_reachability` is never used [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:446:19 [INFO] [stdout] | [INFO] [stdout] 446 | pub(super) fn test_heap_structure_and_reachability(heap: &HeapPointer) -> i32{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_heap_partial_ordering` is never used [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:476:19 [INFO] [stdout] | [INFO] [stdout] 476 | pub(super) fn test_heap_partial_ordering(heap: &HeapPointer) -> bool{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `solution` is never used [INFO] [stdout] --> src/dsandalgo/isAdmissibleOverpayment/isAdmissibleOverpayment.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn solution(prices: Vec, notes: Vec, x: f64) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `SetLink` is never used [INFO] [stdout] --> src/dsandalgo/disjoint_set/disjoint_set.rs:4:6 [INFO] [stdout] | [INFO] [stdout] 4 | type SetLink = Rc>; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `DisjointSetable` is never used [INFO] [stdout] --> src/dsandalgo/disjoint_set/disjoint_set.rs:6:7 [INFO] [stdout] | [INFO] [stdout] 6 | trait DisjointSetable { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Set` is never constructed [INFO] [stdout] --> src/dsandalgo/disjoint_set/disjoint_set.rs:38:12 [INFO] [stdout] | [INFO] [stdout] 38 | pub struct Set{ [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/dsandalgo/disjoint_set/disjoint_set.rs:45:8 [INFO] [stdout] | [INFO] [stdout] 44 | impl Set{ [INFO] [stdout] | -------- associated function in this implementation [INFO] [stdout] 45 | fn new(index: u32)-> Self{ [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DisjointSet` is never constructed [INFO] [stdout] --> src/dsandalgo/disjoint_set/disjoint_set.rs:60:12 [INFO] [stdout] | [INFO] [stdout] 60 | pub struct DisjointSet{ [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `find_set`, and `merge` are never used [INFO] [stdout] --> src/dsandalgo/disjoint_set/disjoint_set.rs:65:12 [INFO] [stdout] | [INFO] [stdout] 64 | impl DisjointSet{ [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 65 | pub fn new(size: u32)->Self{ [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 72 | pub fn find_set(& mut self, index: usize)->u32{ [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | pub fn merge(&self, index1: usize, index2: usize){ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `SetLink` is never used [INFO] [stdout] --> src/dsandalgo/linked_list_disjoint_set/linked_list_disjoint_set.rs:3:6 [INFO] [stdout] | [INFO] [stdout] 3 | type SetLink = Rc>; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `NodeSet` is never constructed [INFO] [stdout] --> src/dsandalgo/linked_list_disjoint_set/linked_list_disjoint_set.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | struct NodeSet { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/dsandalgo/linked_list_disjoint_set/linked_list_disjoint_set.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 12 | impl NodeSet { [INFO] [stdout] | ------------ associated function in this implementation [INFO] [stdout] 13 | fn new(index: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DisjointSet` is never constructed [INFO] [stdout] --> src/dsandalgo/linked_list_disjoint_set/linked_list_disjoint_set.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 23 | pub struct DisjointSet { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `find_set`, `merge`, and `insert` are never used [INFO] [stdout] --> src/dsandalgo/linked_list_disjoint_set/linked_list_disjoint_set.rs:28:12 [INFO] [stdout] | [INFO] [stdout] 27 | impl DisjointSet { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 28 | pub fn new(lenght: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 36 | pub fn find_set(&self, index: usize) -> usize { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | pub fn merge(&self, index1: usize, index2: usize) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 64 | fn insert(&self, one: usize, two: usize) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module has the same name as its containing module [INFO] [stdout] --> src/dsandalgo/linked_list/mod.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | mod linked_list; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stdout] = note: `#[warn(clippy::module_inception)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: returning the result of a `let` binding from a block [INFO] [stdout] --> src/dsandalgo/linked_list/linked_list.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 8 | let new_node = Rc::new(RefCell::new(LinkedNode::new(value))); [INFO] [stdout] | ------------------------------------------------------------- unnecessary `let` binding [INFO] [stdout] 9 | new_node [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stdout] = note: `#[warn(clippy::let_and_return)]` on by default [INFO] [stdout] help: return the expression directly [INFO] [stdout] | [INFO] [stdout] 8 ~ [INFO] [stdout] 9 ~ Rc::new(RefCell::new(LinkedNode::new(value))) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this loop could be written as a `for` loop [INFO] [stdout] --> src/dsandalgo/linked_list/linked_list.rs:176:9 [INFO] [stdout] | [INFO] [stdout] 176 | while let Some(_) = self.next(){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `for _ in self.by_ref()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_on_iterator [INFO] [stdout] = note: `#[warn(clippy::while_let_on_iterator)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module has the same name as its containing module [INFO] [stdout] --> src/dsandalgo/heap/mod.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | mod heap; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant pattern matching, consider using `is_some()` [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:44:16 [INFO] [stdout] | [INFO] [stdout] 44 | if let Some(_) = self.borrow().left{ [INFO] [stdout] | -------^^^^^^^--------------------- help: try: `if self.borrow().left.is_some()` [INFO] [stdout] | [INFO] [stdout] = note: this will change drop order of the result, as well as all temporaries [INFO] [stdout] = note: add `#[allow(clippy::redundant_pattern_matching)]` if this is important [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stdout] = note: `#[warn(clippy::redundant_pattern_matching)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant pattern matching, consider using `is_some()` [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:50:16 [INFO] [stdout] | [INFO] [stdout] 50 | if let Some(_) = self.borrow().right{ [INFO] [stdout] | -------^^^^^^^---------------------- help: try: `if self.borrow().right.is_some()` [INFO] [stdout] | [INFO] [stdout] = note: this will change drop order of the result, as well as all temporaries [INFO] [stdout] = note: add `#[allow(clippy::redundant_pattern_matching)]` if this is important [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:77:13 [INFO] [stdout] | [INFO] [stdout] 77 | let mut pointer = Rc::clone(self); [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/dsandalgo/heap/heap.rs:87:13 [INFO] [stdout] | [INFO] [stdout] 87 | let mut pointer = Rc::clone(self); [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/dsandalgo/heap/heap.rs:183:29 [INFO] [stdout] | [INFO] [stdout] 183 | let mut min: HeapPointer; [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` can be collapsed into the outer `match` [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:481:17 [INFO] [stdout] | [INFO] [stdout] 481 | / if son.borrow().cell.priority < pointer.borrow().cell.priority || [INFO] [stdout] 482 | | !test_heap_partial_ordering(son){ [INFO] [stdout] 483 | | return false; [INFO] [stdout] 484 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] = note: `#[warn(clippy::collapsible_match)]` on by default [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 480 ~ Some(son) [INFO] [stdout] 481 ~ if (son.borrow().cell.priority < pointer.borrow().cell.priority || [INFO] [stdout] 482 ~ !test_heap_partial_ordering(son)=> ){ [INFO] [stdout] 483 | return false; [INFO] [stdout] 484 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` can be collapsed into the outer `match` [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:490:17 [INFO] [stdout] | [INFO] [stdout] 490 | / if son.borrow().cell.priority < pointer.borrow().cell.priority || [INFO] [stdout] 491 | | !test_heap_partial_ordering(son){ [INFO] [stdout] 492 | | return false; [INFO] [stdout] 493 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 489 ~ Some(son) [INFO] [stdout] 490 ~ if (son.borrow().cell.priority < pointer.borrow().cell.priority || [INFO] [stdout] 491 ~ !test_heap_partial_ordering(son)=> ){ [INFO] [stdout] 492 | return false; [INFO] [stdout] 493 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module has the same name as its containing module [INFO] [stdout] --> src/dsandalgo/isAdmissibleOverpayment/mod.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | mod isAdmissibleOverpayment; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module has the same name as its containing module [INFO] [stdout] --> src/dsandalgo/disjoint_set/mod.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | mod disjoint_set; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant pattern matching, consider using `is_none()` [INFO] [stdout] --> src/dsandalgo/disjoint_set/disjoint_set.rs:13:16 [INFO] [stdout] | [INFO] [stdout] 13 | if let None = self.borrow().parent { [INFO] [stdout] | -------^^^^----------------------- help: try: `if self.borrow().parent.is_none()` [INFO] [stdout] | [INFO] [stdout] = note: this will change drop order of the result, as well as all temporaries [INFO] [stdout] = note: add `#[allow(clippy::redundant_pattern_matching)]` if this is important [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module has the same name as its containing module [INFO] [stdout] --> src/dsandalgo/linked_list_disjoint_set/mod.rs:2:1 [INFO] [stdout] | [INFO] [stdout] 2 | mod linked_list_disjoint_set; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/dsandalgo/heap/test.rs:23:17 [INFO] [stdout] | [INFO] [stdout] 23 | let mut new_min = my_heap.pop().unwrap(); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `isAdmissibleOverpayment` should have a snake case name [INFO] [stdout] --> src/dsandalgo/mod.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | mod isAdmissibleOverpayment; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `is_admissible_overpayment` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `newLinkToNode` should have a snake case name [INFO] [stdout] --> src/dsandalgo/linked_list/linked_list.rs:7:4 [INFO] [stdout] | [INFO] [stdout] 7 | fn newLinkToNode(value: T) -> LinkToNode{ [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `new_link_to_node` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/dsandalgo/linked_list/linked_list.rs:132:23 [INFO] [stdout] | [INFO] [stdout] 132 | pub fn peek_first(&self)->Option>{ [INFO] [stdout] | ^^^^^ ^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 132 | pub fn peek_first(&self)->Option>{ [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/dsandalgo/linked_list/linked_list.rs:140:22 [INFO] [stdout] | [INFO] [stdout] 140 | pub fn peek_last(&self)->Option>{ [INFO] [stdout] | ^^^^^ ^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 140 | pub fn peek_last(&self)->Option>{ [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `parentOfLast` should have a snake case name [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:112:5 [INFO] [stdout] | [INFO] [stdout] 112 | parentOfLast: Option>, [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `parent_of_last` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `isAdmissibleOverpayment` should have a snake case name [INFO] [stdout] --> src/dsandalgo/isAdmissibleOverpayment/mod.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | mod isAdmissibleOverpayment; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `is_admissible_overpayment` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `OptionalLinkedNodePointer` is never used [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:11:6 [INFO] [stdout] | [INFO] [stdout] 11 | type OptionalLinkedNodePointer = Option>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `OptionalHeapPointer` is never used [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:12:6 [INFO] [stdout] | [INFO] [stdout] 12 | type OptionalHeapPointer = Option>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `has_left_child` and `is_right_child` are never used [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:15:8 [INFO] [stdout] | [INFO] [stdout] 14 | trait Heapable where Self: Sized { [INFO] [stdout] | -------- methods in this trait [INFO] [stdout] 15 | fn has_left_child(&self)->bool; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 21 | fn is_right_child(&self, other: &Self)->bool; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_heap_structure_and_reachability` is never used [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:446:19 [INFO] [stdout] | [INFO] [stdout] 446 | pub(super) fn test_heap_structure_and_reachability(heap: &HeapPointer) -> i32{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_heap_partial_ordering` is never used [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:476:19 [INFO] [stdout] | [INFO] [stdout] 476 | pub(super) fn test_heap_partial_ordering(heap: &HeapPointer) -> bool{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `SetLink` is never used [INFO] [stdout] --> src/dsandalgo/disjoint_set/disjoint_set.rs:4:6 [INFO] [stdout] | [INFO] [stdout] 4 | type SetLink = Rc>; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `DisjointSetable` is never used [INFO] [stdout] --> src/dsandalgo/disjoint_set/disjoint_set.rs:6:7 [INFO] [stdout] | [INFO] [stdout] 6 | trait DisjointSetable { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Set` is never constructed [INFO] [stdout] --> src/dsandalgo/disjoint_set/disjoint_set.rs:38:12 [INFO] [stdout] | [INFO] [stdout] 38 | pub struct Set{ [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/dsandalgo/disjoint_set/disjoint_set.rs:45:8 [INFO] [stdout] | [INFO] [stdout] 44 | impl Set{ [INFO] [stdout] | -------- associated function in this implementation [INFO] [stdout] 45 | fn new(index: u32)-> Self{ [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DisjointSet` is never constructed [INFO] [stdout] --> src/dsandalgo/disjoint_set/disjoint_set.rs:60:12 [INFO] [stdout] | [INFO] [stdout] 60 | pub struct DisjointSet{ [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `find_set`, and `merge` are never used [INFO] [stdout] --> src/dsandalgo/disjoint_set/disjoint_set.rs:65:12 [INFO] [stdout] | [INFO] [stdout] 64 | impl DisjointSet{ [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 65 | pub fn new(size: u32)->Self{ [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 72 | pub fn find_set(& mut self, index: usize)->u32{ [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | pub fn merge(&self, index1: usize, index2: usize){ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module has the same name as its containing module [INFO] [stdout] --> src/dsandalgo/linked_list/mod.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | mod linked_list; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stdout] = note: `#[warn(clippy::module_inception)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: returning the result of a `let` binding from a block [INFO] [stdout] --> src/dsandalgo/linked_list/linked_list.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 8 | let new_node = Rc::new(RefCell::new(LinkedNode::new(value))); [INFO] [stdout] | ------------------------------------------------------------- unnecessary `let` binding [INFO] [stdout] 9 | new_node [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stdout] = note: `#[warn(clippy::let_and_return)]` on by default [INFO] [stdout] help: return the expression directly [INFO] [stdout] | [INFO] [stdout] 8 ~ [INFO] [stdout] 9 ~ Rc::new(RefCell::new(LinkedNode::new(value))) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this loop could be written as a `for` loop [INFO] [stdout] --> src/dsandalgo/linked_list/linked_list.rs:176:9 [INFO] [stdout] | [INFO] [stdout] 176 | while let Some(_) = self.next(){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `for _ in self.by_ref()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_on_iterator [INFO] [stdout] = note: `#[warn(clippy::while_let_on_iterator)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module has the same name as its containing module [INFO] [stdout] --> src/dsandalgo/linked_list/test.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | / mod test { [INFO] [stdout] 6 | | use std::{cmp::Ordering, vec}; [INFO] [stdout] 7 | | [INFO] [stdout] 8 | | use super::*; [INFO] [stdout] ... | [INFO] [stdout] 197 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression borrows a value the compiler would automatically borrow [INFO] [stdout] --> src/dsandalgo/linked_list/test.rs:14:20 [INFO] [stdout] | [INFO] [stdout] 14 | assert_eq!((&list).count(), 0); [INFO] [stdout] | ^^^^^^^ help: change this to: `list` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression borrows a value the compiler would automatically borrow [INFO] [stdout] --> src/dsandalgo/linked_list/test.rs:16:20 [INFO] [stdout] | [INFO] [stdout] 16 | assert_eq!((&list).count(), 1); [INFO] [stdout] | ^^^^^^^ help: change this to: `list` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression borrows a value the compiler would automatically borrow [INFO] [stdout] --> src/dsandalgo/linked_list/test.rs:18:20 [INFO] [stdout] | [INFO] [stdout] 18 | assert_eq!((&list).count(), 2); [INFO] [stdout] | ^^^^^^^ help: change this to: `list` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression borrows a value the compiler would automatically borrow [INFO] [stdout] --> src/dsandalgo/linked_list/test.rs:20:20 [INFO] [stdout] | [INFO] [stdout] 20 | assert_eq!((&list).count(), 3); [INFO] [stdout] | ^^^^^^^ help: change this to: `list` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/dsandalgo/linked_list/test.rs:45:9 [INFO] [stdout] | [INFO] [stdout] 45 | assert_eq!(list.peek_first().is_none(), true); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] = note: `#[warn(clippy::bool_assert_comparison)]` on by default [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 45 - assert_eq!(list.peek_first().is_none(), true); [INFO] [stdout] 45 + assert!(list.peek_first().is_none()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression borrows a value the compiler would automatically borrow [INFO] [stdout] --> src/dsandalgo/linked_list/test.rs:53:19 [INFO] [stdout] | [INFO] [stdout] 53 | match (&list).peek_first() { [INFO] [stdout] | ^^^^^^^ help: change this to: `list` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression borrows a value the compiler would automatically borrow [INFO] [stdout] --> src/dsandalgo/linked_list/test.rs:64:20 [INFO] [stdout] | [INFO] [stdout] 64 | assert_eq!((&list).count(), 0); [INFO] [stdout] | ^^^^^^^ help: change this to: `list` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/dsandalgo/linked_list/test.rs:65:9 [INFO] [stdout] | [INFO] [stdout] 65 | assert_eq!(list.peek_first().is_none(), true); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 65 - assert_eq!(list.peek_first().is_none(), true); [INFO] [stdout] 65 + assert!(list.peek_first().is_none()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/dsandalgo/linked_list/test.rs:73:9 [INFO] [stdout] | [INFO] [stdout] 73 | assert_eq!(list.pop_first().is_err(), true); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 73 - assert_eq!(list.pop_first().is_err(), true); [INFO] [stdout] 73 + assert!(list.pop_first().is_err()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression borrows a value the compiler would automatically borrow [INFO] [stdout] --> src/dsandalgo/linked_list/test.rs:87:20 [INFO] [stdout] | [INFO] [stdout] 87 | assert_eq!((&list).count(), 0); [INFO] [stdout] | ^^^^^^^ help: change this to: `list` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/dsandalgo/linked_list/test.rs:88:9 [INFO] [stdout] | [INFO] [stdout] 88 | assert_eq!(list.pop_first().is_err(), true); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 88 - assert_eq!(list.pop_first().is_err(), true); [INFO] [stdout] 88 + assert!(list.pop_first().is_err()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/dsandalgo/linked_list/test.rs:96:9 [INFO] [stdout] | [INFO] [stdout] 96 | assert_eq!(list.peek_last().is_none(), true); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 96 - assert_eq!(list.peek_last().is_none(), true); [INFO] [stdout] 96 + assert!(list.peek_last().is_none()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression borrows a value the compiler would automatically borrow [INFO] [stdout] --> src/dsandalgo/linked_list/test.rs:106:19 [INFO] [stdout] | [INFO] [stdout] 106 | match (&list).peek_last() { [INFO] [stdout] | ^^^^^^^ help: change this to: `list` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression borrows a value the compiler would automatically borrow [INFO] [stdout] --> src/dsandalgo/linked_list/test.rs:117:20 [INFO] [stdout] | [INFO] [stdout] 117 | assert_eq!((&list).count(), 0); [INFO] [stdout] | ^^^^^^^ help: change this to: `list` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/dsandalgo/linked_list/test.rs:118:9 [INFO] [stdout] | [INFO] [stdout] 118 | assert_eq!(list.peek_last().is_none(), true); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 118 - assert_eq!(list.peek_last().is_none(), true); [INFO] [stdout] 118 + assert!(list.peek_last().is_none()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/dsandalgo/linked_list/test.rs:126:9 [INFO] [stdout] | [INFO] [stdout] 126 | assert_eq!(list.pop_last().is_err(), true); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 126 - assert_eq!(list.pop_last().is_err(), true); [INFO] [stdout] 126 + assert!(list.pop_last().is_err()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression borrows a value the compiler would automatically borrow [INFO] [stdout] --> src/dsandalgo/linked_list/test.rs:146:20 [INFO] [stdout] | [INFO] [stdout] 146 | assert_eq!((&list).count(), 0); [INFO] [stdout] | ^^^^^^^ help: change this to: `list` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/dsandalgo/linked_list/test.rs:147:9 [INFO] [stdout] | [INFO] [stdout] 147 | assert_eq!(list.pop_last().is_err(), true); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 147 - assert_eq!(list.pop_last().is_err(), true); [INFO] [stdout] 147 + assert!(list.pop_last().is_err()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression borrows a value the compiler would automatically borrow [INFO] [stdout] --> src/dsandalgo/linked_list/test.rs:158:20 [INFO] [stdout] | [INFO] [stdout] 158 | assert_eq!((&list).count(), vector.len() as u32); [INFO] [stdout] | ^^^^^^^ help: change this to: `list` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression borrows a value the compiler would automatically borrow [INFO] [stdout] --> src/dsandalgo/linked_list/test.rs:183:20 [INFO] [stdout] | [INFO] [stdout] 183 | assert_eq!((&list).count(), vector.len() as u32); [INFO] [stdout] | ^^^^^^^ help: change this to: `list` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `index` is only used to index `vector` [INFO] [stdout] --> src/dsandalgo/linked_list/test.rs:187:22 [INFO] [stdout] | [INFO] [stdout] 187 | for index in 0..vector.len(){ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] = note: `#[warn(clippy::needless_range_loop)]` on by default [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 187 - for index in 0..vector.len(){ [INFO] [stdout] 187 + for in &vector{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `index` is only used to index `vector` [INFO] [stdout] --> src/dsandalgo/linked_list/test.rs:191:22 [INFO] [stdout] | [INFO] [stdout] 191 | for index in 0..vector.len(){ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 191 - for index in 0..vector.len(){ [INFO] [stdout] 191 + for in &vector{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/dsandalgo/linked_list/test.rs:194:9 [INFO] [stdout] | [INFO] [stdout] 194 | assert_eq!(list.pop_first().is_err(), true); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 194 - assert_eq!(list.pop_first().is_err(), true); [INFO] [stdout] 194 + assert!(list.pop_first().is_err()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression borrows a value the compiler would automatically borrow [INFO] [stdout] --> src/dsandalgo/linked_list/test.rs:195:20 [INFO] [stdout] | [INFO] [stdout] 195 | assert_eq!((&list).count(), 0); [INFO] [stdout] | ^^^^^^^ help: change this to: `list` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module has the same name as its containing module [INFO] [stdout] --> src/dsandalgo/heap/mod.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | mod heap; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant pattern matching, consider using `is_some()` [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:44:16 [INFO] [stdout] | [INFO] [stdout] 44 | if let Some(_) = self.borrow().left{ [INFO] [stdout] | -------^^^^^^^--------------------- help: try: `if self.borrow().left.is_some()` [INFO] [stdout] | [INFO] [stdout] = note: this will change drop order of the result, as well as all temporaries [INFO] [stdout] = note: add `#[allow(clippy::redundant_pattern_matching)]` if this is important [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stdout] = note: `#[warn(clippy::redundant_pattern_matching)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant pattern matching, consider using `is_some()` [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:50:16 [INFO] [stdout] | [INFO] [stdout] 50 | if let Some(_) = self.borrow().right{ [INFO] [stdout] | -------^^^^^^^---------------------- help: try: `if self.borrow().right.is_some()` [INFO] [stdout] | [INFO] [stdout] = note: this will change drop order of the result, as well as all temporaries [INFO] [stdout] = note: add `#[allow(clippy::redundant_pattern_matching)]` if this is important [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:141:32 [INFO] [stdout] | [INFO] [stdout] 141 | self.parent.is_some() -> self.parent.as_ref().unwrap().upgrade().is_some() [INFO] [stdout] | ^ help: try: `self.parent.is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:144:32 [INFO] [stdout] | [INFO] [stdout] 144 | self.parent.is_some() -> old(self.parent.is_some() && self.parent.as_ref().unwrap().upgrade().is_some()) [INFO] [stdout] | ^ help: try: `self.parent.is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:147:32 [INFO] [stdout] | [INFO] [stdout] 147 | self.parent.is_some() -> self.cell.priority >= self.parent.as_ref().unwrap().upgrade().unwrap().borrow().cell.priority [INFO] [stdout] | ^ help: try: `self.parent.is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:243:24 [INFO] [stdout] | [INFO] [stdout] 243 | ret.is_some() -> Rc::ptr_eq( [INFO] [stdout] | ^ help: try: `ret.is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:249:39 [INFO] [stdout] | [INFO] [stdout] 249 | self.borrow().next.is_none() -> ret.is_none() [INFO] [stdout] | ^ help: try: `self.borrow().next.is_some()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:294:24 [INFO] [stdout] | [INFO] [stdout] 294 | self.len == 1 -> old(self.parentOfLast.is_none()) && self.parentOfLast.is_none() [INFO] [stdout] | ^ help: try: `(self.len != 1)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:297:24 [INFO] [stdout] | [INFO] [stdout] 297 | self.len == 2 -> old(self.parentOfLast.is_none()) && self.parentOfLast.is_some() [INFO] [stdout] | ^ help: try: `(self.len != 2)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` can be collapsed into the outer `match` [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:481:17 [INFO] [stdout] | [INFO] [stdout] 481 | / if son.borrow().cell.priority < pointer.borrow().cell.priority || [INFO] [stdout] 482 | | !test_heap_partial_ordering(son){ [INFO] [stdout] 483 | | return false; [INFO] [stdout] 484 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] = note: `#[warn(clippy::collapsible_match)]` on by default [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 480 ~ Some(son) [INFO] [stdout] 481 ~ if (son.borrow().cell.priority < pointer.borrow().cell.priority || [INFO] [stdout] 482 ~ !test_heap_partial_ordering(son)=> ){ [INFO] [stdout] 483 | return false; [INFO] [stdout] 484 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` can be collapsed into the outer `match` [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:490:17 [INFO] [stdout] | [INFO] [stdout] 490 | / if son.borrow().cell.priority < pointer.borrow().cell.priority || [INFO] [stdout] 491 | | !test_heap_partial_ordering(son){ [INFO] [stdout] 492 | | return false; [INFO] [stdout] 493 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 489 ~ Some(son) [INFO] [stdout] 490 ~ if (son.borrow().cell.priority < pointer.borrow().cell.priority || [INFO] [stdout] 491 ~ !test_heap_partial_ordering(son)=> ){ [INFO] [stdout] 492 | return false; [INFO] [stdout] 493 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module has the same name as its containing module [INFO] [stdout] --> src/dsandalgo/heap/test.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | / mod test { [INFO] [stdout] 6 | | use core::num; [INFO] [stdout] 7 | | use std::{cmp::Ordering, vec}; [INFO] [stdout] ... | [INFO] [stdout] 66 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module has the same name as its containing module [INFO] [stdout] --> src/dsandalgo/isAdmissibleOverpayment/mod.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | mod isAdmissibleOverpayment; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module has the same name as its containing module [INFO] [stdout] --> src/dsandalgo/isAdmissibleOverpayment/test.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | / mod test { [INFO] [stdout] 5 | | [INFO] [stdout] 6 | | use super::*; [INFO] [stdout] ... | [INFO] [stdout] 168 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/dsandalgo/isAdmissibleOverpayment/test.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 10 | / assert_eq!( [INFO] [stdout] 11 | | true, [INFO] [stdout] 12 | | solution( [INFO] [stdout] 13 | | vec![110.0, 95.0, 70.0], [INFO] [stdout] ... | [INFO] [stdout] 21 | | ); [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 10 ~ assert!( [INFO] [stdout] 11 ~ solution( [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/dsandalgo/isAdmissibleOverpayment/test.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | / assert_eq!( [INFO] [stdout] 27 | | false, [INFO] [stdout] 28 | | solution( [INFO] [stdout] 29 | | vec![48.0, 165.0], [INFO] [stdout] ... | [INFO] [stdout] 36 | | ); [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 26 ~ assert!( [INFO] [stdout] 27 ~ !solution( [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/dsandalgo/isAdmissibleOverpayment/test.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | / assert_eq!( [INFO] [stdout] 42 | | true, [INFO] [stdout] 43 | | solution( [INFO] [stdout] 44 | | vec![24.42, 24.42, 24.2424, 85.23], [INFO] [stdout] ... | [INFO] [stdout] 53 | | ); [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 41 ~ assert!( [INFO] [stdout] 42 ~ solution( [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/dsandalgo/isAdmissibleOverpayment/test.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | / assert_eq!( [INFO] [stdout] 58 | | true, [INFO] [stdout] 59 | | solution( [INFO] [stdout] 60 | | vec![220.0], [INFO] [stdout] ... | [INFO] [stdout] 66 | | ); [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 57 ~ assert!( [INFO] [stdout] 58 ~ solution( [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/dsandalgo/isAdmissibleOverpayment/test.rs:71:9 [INFO] [stdout] | [INFO] [stdout] 71 | / assert_eq!( [INFO] [stdout] 72 | | true, [INFO] [stdout] 73 | | solution( [INFO] [stdout] 74 | | vec![40.0, 40.0, 40.0, 40.0], [INFO] [stdout] ... | [INFO] [stdout] 83 | | ); [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 71 ~ assert!( [INFO] [stdout] 72 ~ solution( [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/dsandalgo/isAdmissibleOverpayment/test.rs:87:9 [INFO] [stdout] | [INFO] [stdout] 87 | / assert_eq!( [INFO] [stdout] 88 | | false, [INFO] [stdout] 89 | | solution( [INFO] [stdout] 90 | | vec![40.0, 40.0, 40.0, 40.0], [INFO] [stdout] ... | [INFO] [stdout] 99 | | ); [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 87 ~ assert!( [INFO] [stdout] 88 ~ !solution( [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/dsandalgo/isAdmissibleOverpayment/test.rs:104:9 [INFO] [stdout] | [INFO] [stdout] 104 | / assert_eq!( [INFO] [stdout] 105 | | true, [INFO] [stdout] 106 | | solution( [INFO] [stdout] 107 | | vec![110.0, 110.0, 110.0, 110.0, 110.0, 110.0, 110.0, 110.0, 110.0, 160.0], [INFO] [stdout] ... | [INFO] [stdout] 122 | | ); [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 104 ~ assert!( [INFO] [stdout] 105 ~ solution( [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/dsandalgo/isAdmissibleOverpayment/test.rs:126:9 [INFO] [stdout] | [INFO] [stdout] 126 | / assert_eq!( [INFO] [stdout] 127 | | false, [INFO] [stdout] 128 | | solution( [INFO] [stdout] 129 | | vec![20.0], [INFO] [stdout] ... | [INFO] [stdout] 135 | | ); [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 126 ~ assert!( [INFO] [stdout] 127 ~ !solution( [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/dsandalgo/isAdmissibleOverpayment/test.rs:140:9 [INFO] [stdout] | [INFO] [stdout] 140 | / assert_eq!( [INFO] [stdout] 141 | | false, [INFO] [stdout] 142 | | solution( [INFO] [stdout] 143 | | vec![ [INFO] [stdout] ... | [INFO] [stdout] 152 | | ); [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 140 ~ assert!( [INFO] [stdout] 141 ~ !solution( [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/dsandalgo/isAdmissibleOverpayment/test.rs:156:9 [INFO] [stdout] | [INFO] [stdout] 156 | / assert_eq!( [INFO] [stdout] 157 | | true, [INFO] [stdout] 158 | | solution( [INFO] [stdout] 159 | | vec![20.0, 20.0], [INFO] [stdout] ... | [INFO] [stdout] 166 | | ); [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 156 ~ assert!( [INFO] [stdout] 157 ~ solution( [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module has the same name as its containing module [INFO] [stdout] --> src/dsandalgo/disjoint_set/mod.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | mod disjoint_set; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant pattern matching, consider using `is_none()` [INFO] [stdout] --> src/dsandalgo/disjoint_set/disjoint_set.rs:13:16 [INFO] [stdout] | [INFO] [stdout] 13 | if let None = self.borrow().parent { [INFO] [stdout] | -------^^^^----------------------- help: try: `if self.borrow().parent.is_none()` [INFO] [stdout] | [INFO] [stdout] = note: this will change drop order of the result, as well as all temporaries [INFO] [stdout] = note: add `#[allow(clippy::redundant_pattern_matching)]` if this is important [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module has the same name as its containing module [INFO] [stdout] --> src/dsandalgo/linked_list_disjoint_set/test.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | / mod test { [INFO] [stdout] 5 | | use std::{cmp::Ordering, convert::TryInto, vec}; [INFO] [stdout] 6 | | [INFO] [stdout] 7 | | use rand::Rng; [INFO] [stdout] ... | [INFO] [stdout] 56 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `index` is used to index `matrix` [INFO] [stdout] --> src/dsandalgo/linked_list_disjoint_set/test.rs:18:22 [INFO] [stdout] | [INFO] [stdout] 18 | for index in 0..nodes { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator and enumerate() [INFO] [stdout] | [INFO] [stdout] 18 - for index in 0..nodes { [INFO] [stdout] 18 + for (index, ) in matrix.iter_mut().enumerate().take(nodes) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `other` is only used to index `matrix` [INFO] [stdout] --> src/dsandalgo/linked_list_disjoint_set/test.rs:35:34 [INFO] [stdout] | [INFO] [stdout] 35 | for other in 0..nodes { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 35 - for other in 0..nodes { [INFO] [stdout] 35 + for in matrix.iter_mut().take(nodes) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module has the same name as its containing module [INFO] [stdout] --> src/dsandalgo/linked_list_disjoint_set/mod.rs:2:1 [INFO] [stdout] | [INFO] [stdout] 2 | mod linked_list_disjoint_set; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `isAdmissibleOverpayment` should have a snake case name [INFO] [stdout] --> src/dsandalgo/mod.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | mod isAdmissibleOverpayment; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `is_admissible_overpayment` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `newLinkToNode` should have a snake case name [INFO] [stdout] --> src/dsandalgo/linked_list/linked_list.rs:7:4 [INFO] [stdout] | [INFO] [stdout] 7 | fn newLinkToNode(value: T) -> LinkToNode{ [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `new_link_to_node` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/dsandalgo/linked_list/linked_list.rs:132:23 [INFO] [stdout] | [INFO] [stdout] 132 | pub fn peek_first(&self)->Option>{ [INFO] [stdout] | ^^^^^ ^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 132 | pub fn peek_first(&self)->Option>{ [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/dsandalgo/linked_list/linked_list.rs:140:22 [INFO] [stdout] | [INFO] [stdout] 140 | pub fn peek_last(&self)->Option>{ [INFO] [stdout] | ^^^^^ ^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 140 | pub fn peek_last(&self)->Option>{ [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/dsandalgo/linked_list/test.rs:60:13 [INFO] [stdout] | [INFO] [stdout] 60 | list.pop_first(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 60 | let _ = list.pop_first(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/dsandalgo/linked_list/test.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 113 | list.pop_last(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 113 | let _ = list.pop_last(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `parentOfLast` should have a snake case name [INFO] [stdout] --> src/dsandalgo/heap/heap.rs:112:5 [INFO] [stdout] | [INFO] [stdout] 112 | parentOfLast: Option>, [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `parent_of_last` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `isAdmissibleOverpayment` should have a snake case name [INFO] [stdout] --> src/dsandalgo/isAdmissibleOverpayment/mod.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | mod isAdmissibleOverpayment; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `is_admissible_overpayment` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 10.13s [INFO] running `Command { std: "docker" "inspect" "27d099a7f07ab5184bb460505a70d605387f7826915e6ad0787222a0a448c9a3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "27d099a7f07ab5184bb460505a70d605387f7826915e6ad0787222a0a448c9a3", kill_on_drop: false }` [INFO] [stdout] 27d099a7f07ab5184bb460505a70d605387f7826915e6ad0787222a0a448c9a3