[INFO] fetching crate related_intervals 0.1.0... [INFO] linting related_intervals-0.1.0 against nightly for clippy-nonminimal_bool-denied [INFO] extracting crate related_intervals 0.1.0 into /workspace/builds/worker-5-tc1/source [INFO] started tweaking crates.io crate related_intervals 0.1.0 [INFO] finished tweaking crates.io crate related_intervals 0.1.0 [INFO] tweaked toml for crates.io crate related_intervals 0.1.0 written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate related_intervals 0.1.0 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] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [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] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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] 1b4a6d6a12007eaa05a0f09ead581dfcc0e5af953b98e857cf26606bf41903ac [INFO] running `Command { std: "docker" "start" "-a" "1b4a6d6a12007eaa05a0f09ead581dfcc0e5af953b98e857cf26606bf41903ac", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "1b4a6d6a12007eaa05a0f09ead581dfcc0e5af953b98e857cf26606bf41903ac", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1b4a6d6a12007eaa05a0f09ead581dfcc0e5af953b98e857cf26606bf41903ac", kill_on_drop: false }` [INFO] [stdout] 1b4a6d6a12007eaa05a0f09ead581dfcc0e5af953b98e857cf26606bf41903ac [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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] d9e01cd378334dced5d43c1eb69fb4366f6cbc67ace2dcac917563dedf65e4a1 [INFO] running `Command { std: "docker" "start" "-a" "d9e01cd378334dced5d43c1eb69fb4366f6cbc67ace2dcac917563dedf65e4a1", kill_on_drop: false }` [INFO] [stderr] Checking related_intervals v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> src/lib.rs:20:13 [INFO] [stdout] | [INFO] [stdout] 20 | parent: parent, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `parent` [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: unnecessary parentheses around closure body [INFO] [stdout] --> src/lib.rs:221:30 [INFO] [stdout] | [INFO] [stdout] 221 | intervals.sort_by(|a, b| (a.0.cmp(&b.0).then(b.1.cmp(&a.1)))); [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] 221 - intervals.sort_by(|a, b| (a.0.cmp(&b.0).then(b.1.cmp(&a.1)))); [INFO] [stdout] 221 + intervals.sort_by(|a, b| a.0.cmp(&b.0).then(b.1.cmp(&a.1)) ); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> src/lib.rs:20:13 [INFO] [stdout] | [INFO] [stdout] 20 | parent: parent, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `parent` [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: unnecessary parentheses around closure body [INFO] [stdout] --> src/lib.rs:221:30 [INFO] [stdout] | [INFO] [stdout] 221 | intervals.sort_by(|a, b| (a.0.cmp(&b.0).then(b.1.cmp(&a.1)))); [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] 221 - intervals.sort_by(|a, b| (a.0.cmp(&b.0).then(b.1.cmp(&a.1)))); [INFO] [stdout] 221 + intervals.sort_by(|a, b| a.0.cmp(&b.0).then(b.1.cmp(&a.1)) ); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you should consider adding a `Default` implementation for `Network` [INFO] [stdout] --> src/lib.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | / pub fn new() -> Self{ [INFO] [stdout] 17 | | let parent: Vec<(u32, u32)> = Vec::new(); [INFO] [stdout] 18 | | let children: Vec<(u32, u32)> = Vec::new(); [INFO] [stdout] 19 | | Self{ [INFO] [stdout] ... | [INFO] [stdout] 23 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stdout] = note: `#[warn(clippy::new_without_default)]` on by default [INFO] [stdout] help: try adding this [INFO] [stdout] | [INFO] [stdout] 14 + impl Default for Network { [INFO] [stdout] 15 + fn default() -> Self { [INFO] [stdout] 16 + Self::new() [INFO] [stdout] 17 + } [INFO] [stdout] 18 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/lib.rs:32:8 [INFO] [stdout] | [INFO] [stdout] 32 | if hm.get(start).unwrap().parent.len() != 0{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!hm.get(start).unwrap().parent.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] = note: `#[warn(clippy::len_zero)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the method `union` doesn't need a mutable reference [INFO] [stdout] --> src/lib.rs:34:23 [INFO] [stdout] | [INFO] [stdout] 34 | hh = hh.union(& mut j).cloned().collect(); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] = note: `#[warn(clippy::unnecessary_mut_passed)]` on by default [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 34 - hh = hh.union(& mut j).cloned().collect(); [INFO] [stdout] 34 + hh = hh.union(&j).cloned().collect(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the method `union` doesn't need a mutable reference [INFO] [stdout] --> src/lib.rs:37:27 [INFO] [stdout] | [INFO] [stdout] 37 | hh = hh.union(& mut o).cloned().collect(); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 37 - hh = hh.union(& mut o).cloned().collect(); [INFO] [stdout] 37 + hh = hh.union(&o).cloned().collect(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/lib.rs:46:45 [INFO] [stdout] | [INFO] [stdout] 46 | pub fn make_nested_simple(intervals_sorted: & Vec<(u32, u32)>, order: & mut HashMap<(u32, u32), Network>){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 46 - pub fn make_nested_simple(intervals_sorted: & Vec<(u32, u32)>, order: & mut HashMap<(u32, u32), Network>){ [INFO] [stdout] 46 + pub fn make_nested_simple(intervals_sorted: &[(u32, u32)], order: & mut HashMap<(u32, u32), Network>){ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:50:30 [INFO] [stdout] | [INFO] [stdout] 50 | open_interval = (start.clone(), end.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try dereferencing it: `*start` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] = note: `#[warn(clippy::clone_on_copy)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:50:45 [INFO] [stdout] | [INFO] [stdout] 50 | open_interval = (start.clone(), end.clone()); [INFO] [stdout] | ^^^^^^^^^^^ help: try dereferencing it: `*end` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:54:56 [INFO] [stdout] | [INFO] [stdout] 54 | let result = fast_helper(&open_interval, &(start.clone(), end.clone()), order); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try dereferencing it: `*start` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:54:71 [INFO] [stdout] | [INFO] [stdout] 54 | let result = fast_helper(&open_interval, &(start.clone(), end.clone()), order); [INFO] [stdout] | ^^^^^^^^^^^ help: try dereferencing it: `*end` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you should consider adding a `Default` implementation for `Network` [INFO] [stdout] --> src/lib.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | / pub fn new() -> Self{ [INFO] [stdout] 17 | | let parent: Vec<(u32, u32)> = Vec::new(); [INFO] [stdout] 18 | | let children: Vec<(u32, u32)> = Vec::new(); [INFO] [stdout] 19 | | Self{ [INFO] [stdout] ... | [INFO] [stdout] 23 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stdout] = note: `#[warn(clippy::new_without_default)]` on by default [INFO] [stdout] help: try adding this [INFO] [stdout] | [INFO] [stdout] 14 + impl Default for Network { [INFO] [stdout] 15 + fn default() -> Self { [INFO] [stdout] 16 + Self::new() [INFO] [stdout] 17 + } [INFO] [stdout] 18 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:56:33 [INFO] [stdout] | [INFO] [stdout] 56 | order.get_mut(&(start.clone(), end.clone())).unwrap().parent.push(result[0]); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try dereferencing it: `*start` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:56:48 [INFO] [stdout] | [INFO] [stdout] 56 | order.get_mut(&(start.clone(), end.clone())).unwrap().parent.push(result[0]); [INFO] [stdout] | ^^^^^^^^^^^ help: try dereferencing it: `*end` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:57:64 [INFO] [stdout] | [INFO] [stdout] 57 | order.get_mut(&result[0]).unwrap().child.push((start.clone(), end.clone())); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try dereferencing it: `*start` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:57:79 [INFO] [stdout] | [INFO] [stdout] 57 | order.get_mut(&result[0]).unwrap().child.push((start.clone(), end.clone())); [INFO] [stdout] | ^^^^^^^^^^^ help: try dereferencing it: `*end` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:59:30 [INFO] [stdout] | [INFO] [stdout] 59 | open_interval = (start.clone(), end.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try dereferencing it: `*start` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:59:45 [INFO] [stdout] | [INFO] [stdout] 59 | open_interval = (start.clone(), end.clone()); [INFO] [stdout] | ^^^^^^^^^^^ help: try dereferencing it: `*end` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `(u32, u32)` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:69:17 [INFO] [stdout] | [INFO] [stdout] 69 | ss.push(old.clone()); [INFO] [stdout] | ^^^^^^^^^^^ help: try dereferencing it: `*old` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/lib.rs:70:15 [INFO] [stdout] | [INFO] [stdout] 70 | } else if hm.get(old).unwrap().parent.len() == 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `hm.get(old).unwrap().parent.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/lib.rs:32:8 [INFO] [stdout] | [INFO] [stdout] 32 | if hm.get(start).unwrap().parent.len() != 0{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!hm.get(start).unwrap().parent.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] = note: `#[warn(clippy::len_zero)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `(u32, u32)` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:73:22 [INFO] [stdout] | [INFO] [stdout] 73 | let parent = hm.get(old).unwrap().parent[0].clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `hm.get(old).unwrap().parent[0]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the method `union` doesn't need a mutable reference [INFO] [stdout] --> src/lib.rs:34:23 [INFO] [stdout] | [INFO] [stdout] 34 | hh = hh.union(& mut j).cloned().collect(); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] = note: `#[warn(clippy::unnecessary_mut_passed)]` on by default [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 34 - hh = hh.union(& mut j).cloned().collect(); [INFO] [stdout] 34 + hh = hh.union(&j).cloned().collect(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/lib.rs:86:38 [INFO] [stdout] | [INFO] [stdout] 86 | pub fn make_nested(intervals_sorted: & Vec<(u32, u32)>, order: & mut HashMap<(u32, u32), Network>){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 86 - pub fn make_nested(intervals_sorted: & Vec<(u32, u32)>, order: & mut HashMap<(u32, u32), Network>){ [INFO] [stdout] 86 + pub fn make_nested(intervals_sorted: &[(u32, u32)], order: & mut HashMap<(u32, u32), Network>){ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the method `union` doesn't need a mutable reference [INFO] [stdout] --> src/lib.rs:37:27 [INFO] [stdout] | [INFO] [stdout] 37 | hh = hh.union(& mut o).cloned().collect(); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 37 - hh = hh.union(& mut o).cloned().collect(); [INFO] [stdout] 37 + hh = hh.union(&o).cloned().collect(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/lib.rs:94:12 [INFO] [stdout] | [INFO] [stdout] 94 | if open_intervals.len() == 0{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `open_intervals.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:95:34 [INFO] [stdout] | [INFO] [stdout] 95 | open_intervals.push((start.clone(), end.clone())); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try dereferencing it: `*start` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:95:49 [INFO] [stdout] | [INFO] [stdout] 95 | open_intervals.push((start.clone(), end.clone())); [INFO] [stdout] | ^^^^^^^^^^^ help: try dereferencing it: `*end` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/lib.rs:46:45 [INFO] [stdout] | [INFO] [stdout] 46 | pub fn make_nested_simple(intervals_sorted: & Vec<(u32, u32)>, order: & mut HashMap<(u32, u32), Network>){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 46 - pub fn make_nested_simple(intervals_sorted: & Vec<(u32, u32)>, order: & mut HashMap<(u32, u32), Network>){ [INFO] [stdout] 46 + pub fn make_nested_simple(intervals_sorted: &[(u32, u32)], order: & mut HashMap<(u32, u32), Network>){ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:103:50 [INFO] [stdout] | [INFO] [stdout] 103 | let mut solution = checker_rec(&(oldstart.clone(), oldend.clone()), &(start.clone(), end.clone()), order, false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try dereferencing it: `*oldstart` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:103:68 [INFO] [stdout] | [INFO] [stdout] 103 | let mut solution = checker_rec(&(oldstart.clone(), oldend.clone()), &(start.clone(), end.clone()), order, false); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: try dereferencing it: `*oldend` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:50:30 [INFO] [stdout] | [INFO] [stdout] 50 | open_interval = (start.clone(), end.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try dereferencing it: `*start` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] = note: `#[warn(clippy::clone_on_copy)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:50:45 [INFO] [stdout] | [INFO] [stdout] 50 | open_interval = (start.clone(), end.clone()); [INFO] [stdout] | ^^^^^^^^^^^ help: try dereferencing it: `*end` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:103:87 [INFO] [stdout] | [INFO] [stdout] 103 | let mut solution = checker_rec(&(oldstart.clone(), oldend.clone()), &(start.clone(), end.clone()), order, false); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try dereferencing it: `*start` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:103:102 [INFO] [stdout] | [INFO] [stdout] 103 | let mut solution = checker_rec(&(oldstart.clone(), oldend.clone()), &(start.clone(), end.clone()), order, false); [INFO] [stdout] | ^^^^^^^^^^^ help: try dereferencing it: `*end` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/lib.rs:110:16 [INFO] [stdout] | [INFO] [stdout] 110 | if hits.len() == 0{ [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `hits.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:54:56 [INFO] [stdout] | [INFO] [stdout] 54 | let result = fast_helper(&open_interval, &(start.clone(), end.clone()), order); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try dereferencing it: `*start` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:54:71 [INFO] [stdout] | [INFO] [stdout] 54 | let result = fast_helper(&open_interval, &(start.clone(), end.clone()), order); [INFO] [stdout] | ^^^^^^^^^^^ help: try dereferencing it: `*end` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:56:33 [INFO] [stdout] | [INFO] [stdout] 56 | order.get_mut(&(start.clone(), end.clone())).unwrap().parent.push(result[0]); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try dereferencing it: `*start` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:56:48 [INFO] [stdout] | [INFO] [stdout] 56 | order.get_mut(&(start.clone(), end.clone())).unwrap().parent.push(result[0]); [INFO] [stdout] | ^^^^^^^^^^^ help: try dereferencing it: `*end` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:57:64 [INFO] [stdout] | [INFO] [stdout] 57 | order.get_mut(&result[0]).unwrap().child.push((start.clone(), end.clone())); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try dereferencing it: `*start` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:57:79 [INFO] [stdout] | [INFO] [stdout] 57 | order.get_mut(&result[0]).unwrap().child.push((start.clone(), end.clone())); [INFO] [stdout] | ^^^^^^^^^^^ help: try dereferencing it: `*end` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:59:30 [INFO] [stdout] | [INFO] [stdout] 59 | open_interval = (start.clone(), end.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try dereferencing it: `*start` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:115:33 [INFO] [stdout] | [INFO] [stdout] 115 | order.get_mut(&(start.clone(), end.clone())).unwrap().parent.push(hits[0]); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try dereferencing it: `*start` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:115:48 [INFO] [stdout] | [INFO] [stdout] 115 | order.get_mut(&(start.clone(), end.clone())).unwrap().parent.push(hits[0]); [INFO] [stdout] | ^^^^^^^^^^^ help: try dereferencing it: `*end` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:116:62 [INFO] [stdout] | [INFO] [stdout] 116 | order.get_mut(&hits[0]).unwrap().child.push((start.clone(), end.clone())); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try dereferencing it: `*start` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:116:77 [INFO] [stdout] | [INFO] [stdout] 116 | order.get_mut(&hits[0]).unwrap().child.push((start.clone(), end.clone())); [INFO] [stdout] | ^^^^^^^^^^^ help: try dereferencing it: `*end` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:121:37 [INFO] [stdout] | [INFO] [stdout] 121 | order.get_mut(&(start.clone(), end.clone())).unwrap().parent.push(x); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try dereferencing it: `*start` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:121:52 [INFO] [stdout] | [INFO] [stdout] 121 | order.get_mut(&(start.clone(), end.clone())).unwrap().parent.push(x); [INFO] [stdout] | ^^^^^^^^^^^ help: try dereferencing it: `*end` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:59:45 [INFO] [stdout] | [INFO] [stdout] 59 | open_interval = (start.clone(), end.clone()); [INFO] [stdout] | ^^^^^^^^^^^ help: try dereferencing it: `*end` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:122:60 [INFO] [stdout] | [INFO] [stdout] 122 | order.get_mut(&x).unwrap().child.push((start.clone(), end.clone())); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try dereferencing it: `*start` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:122:75 [INFO] [stdout] | [INFO] [stdout] 122 | order.get_mut(&x).unwrap().child.push((start.clone(), end.clone())); [INFO] [stdout] | ^^^^^^^^^^^ help: try dereferencing it: `*end` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `(u32, u32)` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:69:17 [INFO] [stdout] | [INFO] [stdout] 69 | ss.push(old.clone()); [INFO] [stdout] | ^^^^^^^^^^^ help: try dereferencing it: `*old` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `(u32, u32)` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:130:37 [INFO] [stdout] | [INFO] [stdout] 130 | open_intervals.push(x.clone()); [INFO] [stdout] | ^^^^^^^^^ help: try dereferencing it: `*x` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:132:34 [INFO] [stdout] | [INFO] [stdout] 132 | open_intervals.push((start.clone(), end.clone())); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try dereferencing it: `*start` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:132:49 [INFO] [stdout] | [INFO] [stdout] 132 | open_intervals.push((start.clone(), end.clone())); [INFO] [stdout] | ^^^^^^^^^^^ help: try dereferencing it: `*end` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/lib.rs:70:15 [INFO] [stdout] | [INFO] [stdout] 70 | } else if hm.get(old).unwrap().parent.len() == 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `hm.get(old).unwrap().parent.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `(u32, u32)` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:73:22 [INFO] [stdout] | [INFO] [stdout] 73 | let parent = hm.get(old).unwrap().parent[0].clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `hm.get(old).unwrap().parent[0]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/lib.rs:86:38 [INFO] [stdout] | [INFO] [stdout] 86 | pub fn make_nested(intervals_sorted: & Vec<(u32, u32)>, order: & mut HashMap<(u32, u32), Network>){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 86 - pub fn make_nested(intervals_sorted: & Vec<(u32, u32)>, order: & mut HashMap<(u32, u32), Network>){ [INFO] [stdout] 86 + pub fn make_nested(intervals_sorted: &[(u32, u32)], order: & mut HashMap<(u32, u32), Network>){ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/lib.rs:94:12 [INFO] [stdout] | [INFO] [stdout] 94 | if open_intervals.len() == 0{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `open_intervals.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:95:34 [INFO] [stdout] | [INFO] [stdout] 95 | open_intervals.push((start.clone(), end.clone())); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try dereferencing it: `*start` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:95:49 [INFO] [stdout] | [INFO] [stdout] 95 | open_intervals.push((start.clone(), end.clone())); [INFO] [stdout] | ^^^^^^^^^^^ help: try dereferencing it: `*end` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:103:50 [INFO] [stdout] | [INFO] [stdout] 103 | let mut solution = checker_rec(&(oldstart.clone(), oldend.clone()), &(start.clone(), end.clone()), order, false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try dereferencing it: `*oldstart` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:103:68 [INFO] [stdout] | [INFO] [stdout] 103 | let mut solution = checker_rec(&(oldstart.clone(), oldend.clone()), &(start.clone(), end.clone()), order, false); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: try dereferencing it: `*oldend` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:103:87 [INFO] [stdout] | [INFO] [stdout] 103 | let mut solution = checker_rec(&(oldstart.clone(), oldend.clone()), &(start.clone(), end.clone()), order, false); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try dereferencing it: `*start` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:103:102 [INFO] [stdout] | [INFO] [stdout] 103 | let mut solution = checker_rec(&(oldstart.clone(), oldend.clone()), &(start.clone(), end.clone()), order, false); [INFO] [stdout] | ^^^^^^^^^^^ help: try dereferencing it: `*end` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/lib.rs:110:16 [INFO] [stdout] | [INFO] [stdout] 110 | if hits.len() == 0{ [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `hits.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:115:33 [INFO] [stdout] | [INFO] [stdout] 115 | order.get_mut(&(start.clone(), end.clone())).unwrap().parent.push(hits[0]); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try dereferencing it: `*start` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:115:48 [INFO] [stdout] | [INFO] [stdout] 115 | order.get_mut(&(start.clone(), end.clone())).unwrap().parent.push(hits[0]); [INFO] [stdout] | ^^^^^^^^^^^ help: try dereferencing it: `*end` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:116:62 [INFO] [stdout] | [INFO] [stdout] 116 | order.get_mut(&hits[0]).unwrap().child.push((start.clone(), end.clone())); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try dereferencing it: `*start` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:116:77 [INFO] [stdout] | [INFO] [stdout] 116 | order.get_mut(&hits[0]).unwrap().child.push((start.clone(), end.clone())); [INFO] [stdout] | ^^^^^^^^^^^ help: try dereferencing it: `*end` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stdout] --> src/lib.rs:179:122 [INFO] [stdout] | [INFO] [stdout] 179 | ...u32, u32), Network>, overlaps_parent: bool) -> (Vec<(u32, u32)>, Vec<(u32, u32)>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stdout] = note: `#[warn(clippy::type_complexity)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:121:37 [INFO] [stdout] | [INFO] [stdout] 121 | order.get_mut(&(start.clone(), end.clone())).unwrap().parent.push(x); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try dereferencing it: `*start` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:189:20 [INFO] [stdout] | [INFO] [stdout] 189 | hits.push((old.0.clone(), old.1.clone())); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try removing the `clone` call: `old.0` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:189:35 [INFO] [stdout] | [INFO] [stdout] 189 | hits.push((old.0.clone(), old.1.clone())); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try removing the `clone` call: `old.1` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:192:28 [INFO] [stdout] | [INFO] [stdout] 192 | overlaps.push((old.0.clone(), old.1.clone())); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try removing the `clone` call: `old.0` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:192:43 [INFO] [stdout] | [INFO] [stdout] 192 | overlaps.push((old.0.clone(), old.1.clone())); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try removing the `clone` call: `old.1` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/lib.rs:196:12 [INFO] [stdout] | [INFO] [stdout] 196 | if hm.get(old).unwrap().parent.len() != 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!hm.get(old).unwrap().parent.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `(u32, u32)` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:200:29 [INFO] [stdout] | [INFO] [stdout] 200 | vecc_p.push(x.clone()); [INFO] [stdout] | ^^^^^^^^^ help: try dereferencing it: `*x` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:121:52 [INFO] [stdout] | [INFO] [stdout] 121 | order.get_mut(&(start.clone(), end.clone())).unwrap().parent.push(x); [INFO] [stdout] | ^^^^^^^^^^^ help: try dereferencing it: `*end` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:122:60 [INFO] [stdout] | [INFO] [stdout] 122 | order.get_mut(&x).unwrap().child.push((start.clone(), end.clone())); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try dereferencing it: `*start` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:122:75 [INFO] [stdout] | [INFO] [stdout] 122 | order.get_mut(&x).unwrap().child.push((start.clone(), end.clone())); [INFO] [stdout] | ^^^^^^^^^^^ help: try dereferencing it: `*end` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `(u32, u32)` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:130:37 [INFO] [stdout] | [INFO] [stdout] 130 | open_intervals.push(x.clone()); [INFO] [stdout] | ^^^^^^^^^ help: try dereferencing it: `*x` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:132:34 [INFO] [stdout] | [INFO] [stdout] 132 | open_intervals.push((start.clone(), end.clone())); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try dereferencing it: `*start` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:132:49 [INFO] [stdout] | [INFO] [stdout] 132 | open_intervals.push((start.clone(), end.clone())); [INFO] [stdout] | ^^^^^^^^^^^ help: try dereferencing it: `*end` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&mut Vec` instead of `&mut [_]` involves a new object where a slice will do [INFO] [stdout] --> src/lib.rs:220:31 [INFO] [stdout] | [INFO] [stdout] 220 | pub fn sort_vector(intervals: &mut Vec<(u32, u32)>){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 220 - pub fn sort_vector(intervals: &mut Vec<(u32, u32)>){ [INFO] [stdout] 220 + pub fn sort_vector(intervals: &mut [(u32, u32)]){ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/lib.rs:227:49 [INFO] [stdout] | [INFO] [stdout] 227 | pub fn create_network_hashmap(intervals_sorted: & Vec<(u32, u32)>) -> HashMap<(u32, u32), Network>{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 227 - pub fn create_network_hashmap(intervals_sorted: & Vec<(u32, u32)>) -> HashMap<(u32, u32), Network>{ [INFO] [stdout] 227 + pub fn create_network_hashmap(intervals_sorted: &[(u32, u32)]) -> HashMap<(u32, u32), Network>{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stdout] --> src/lib.rs:179:122 [INFO] [stdout] | [INFO] [stdout] 179 | ...u32, u32), Network>, overlaps_parent: bool) -> (Vec<(u32, u32)>, Vec<(u32, u32)>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stdout] = note: `#[warn(clippy::type_complexity)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:230:23 [INFO] [stdout] | [INFO] [stdout] 230 | order.insert((start.clone(), end.clone()), Network::new()); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try dereferencing it: `*start` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:230:38 [INFO] [stdout] | [INFO] [stdout] 230 | order.insert((start.clone(), end.clone()), Network::new()); [INFO] [stdout] | ^^^^^^^^^^^ help: try dereferencing it: `*end` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:189:20 [INFO] [stdout] | [INFO] [stdout] 189 | hits.push((old.0.clone(), old.1.clone())); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try removing the `clone` call: `old.0` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:189:35 [INFO] [stdout] | [INFO] [stdout] 189 | hits.push((old.0.clone(), old.1.clone())); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try removing the `clone` call: `old.1` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/lib.rs:238:32 [INFO] [stdout] | [INFO] [stdout] 238 | pub fn check_unique(intervals: & Vec<(u32, u32)>) -> bool{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 238 - pub fn check_unique(intervals: & Vec<(u32, u32)>) -> bool{ [INFO] [stdout] 238 + pub fn check_unique(intervals: &[(u32, u32)]) -> bool{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:192:28 [INFO] [stdout] | [INFO] [stdout] 192 | overlaps.push((old.0.clone(), old.1.clone())); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try removing the `clone` call: `old.0` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this if-then-else expression returns a bool literal [INFO] [stdout] --> src/lib.rs:240:5 [INFO] [stdout] | [INFO] [stdout] 240 | / if intervals.len() == hs.len(){ [INFO] [stdout] 241 | | true [INFO] [stdout] 242 | | } else { [INFO] [stdout] 243 | | false [INFO] [stdout] 244 | | } [INFO] [stdout] | |_____^ help: you can reduce it to: `intervals.len() == hs.len()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stdout] = note: `#[warn(clippy::needless_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/lib.rs:254:8 [INFO] [stdout] | [INFO] [stdout] 254 | if ! (k2.len() == intervals.len()){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `(k2.len() != intervals.len())` [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: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:192:43 [INFO] [stdout] | [INFO] [stdout] 192 | overlaps.push((old.0.clone(), old.1.clone())); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try removing the `clone` call: `old.1` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/lib.rs:196:12 [INFO] [stdout] | [INFO] [stdout] 196 | if hm.get(old).unwrap().parent.len() != 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!hm.get(old).unwrap().parent.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/lib.rs:265:36 [INFO] [stdout] | [INFO] [stdout] 265 | pub fn start_stop_check(intervals: & Vec<(u32, u32)>) -> bool{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 265 - pub fn start_stop_check(intervals: & Vec<(u32, u32)>) -> bool{ [INFO] [stdout] 265 + pub fn start_stop_check(intervals: &[(u32, u32)]) -> bool{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&mut Vec` instead of `&mut [_]` involves a new object where a slice will do [INFO] [stdout] --> src/lib.rs:276:36 [INFO] [stdout] | [INFO] [stdout] 276 | pub fn start_stop_order(intervals: &mut Vec<(u32, u32)>){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 276 - pub fn start_stop_order(intervals: &mut Vec<(u32, u32)>){ [INFO] [stdout] 276 + pub fn start_stop_order(intervals: &mut [(u32, u32)]){ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `(u32, u32)` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:200:29 [INFO] [stdout] | [INFO] [stdout] 200 | vecc_p.push(x.clone()); [INFO] [stdout] | ^^^^^^^^^ help: try dereferencing it: `*x` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&mut Vec` instead of `&mut [_]` involves a new object where a slice will do [INFO] [stdout] --> src/lib.rs:220:31 [INFO] [stdout] | [INFO] [stdout] 220 | pub fn sort_vector(intervals: &mut Vec<(u32, u32)>){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 220 - pub fn sort_vector(intervals: &mut Vec<(u32, u32)>){ [INFO] [stdout] 220 + pub fn sort_vector(intervals: &mut [(u32, u32)]){ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/lib.rs:227:49 [INFO] [stdout] | [INFO] [stdout] 227 | pub fn create_network_hashmap(intervals_sorted: & Vec<(u32, u32)>) -> HashMap<(u32, u32), Network>{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 227 - pub fn create_network_hashmap(intervals_sorted: & Vec<(u32, u32)>) -> HashMap<(u32, u32), Network>{ [INFO] [stdout] 227 + pub fn create_network_hashmap(intervals_sorted: &[(u32, u32)]) -> HashMap<(u32, u32), Network>{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&mut Vec` instead of `&mut [_]` involves a new object where a slice will do [INFO] [stdout] --> src/lib.rs:294:37 [INFO] [stdout] | [INFO] [stdout] 294 | pub fn check_overlapping(intervals: &mut Vec<(u32, u32)>) -> bool{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 294 - pub fn check_overlapping(intervals: &mut Vec<(u32, u32)>) -> bool{ [INFO] [stdout] 294 + pub fn check_overlapping(intervals: &mut [(u32, u32)]) -> bool{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:230:23 [INFO] [stdout] | [INFO] [stdout] 230 | order.insert((start.clone(), end.clone()), Network::new()); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try dereferencing it: `*start` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/lib.rs:230:38 [INFO] [stdout] | [INFO] [stdout] 230 | order.insert((start.clone(), end.clone()), Network::new()); [INFO] [stdout] | ^^^^^^^^^^^ help: try dereferencing it: `*end` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/lib.rs:238:32 [INFO] [stdout] | [INFO] [stdout] 238 | pub fn check_unique(intervals: & Vec<(u32, u32)>) -> bool{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 238 - pub fn check_unique(intervals: & Vec<(u32, u32)>) -> bool{ [INFO] [stdout] 238 + pub fn check_unique(intervals: &[(u32, u32)]) -> bool{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this if-then-else expression returns a bool literal [INFO] [stdout] --> src/lib.rs:240:5 [INFO] [stdout] | [INFO] [stdout] 240 | / if intervals.len() == hs.len(){ [INFO] [stdout] 241 | | true [INFO] [stdout] 242 | | } else { [INFO] [stdout] 243 | | false [INFO] [stdout] 244 | | } [INFO] [stdout] | |_____^ help: you can reduce it to: `intervals.len() == hs.len()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stdout] = note: `#[warn(clippy::needless_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/lib.rs:254:8 [INFO] [stdout] | [INFO] [stdout] 254 | if ! (k2.len() == intervals.len()){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `(k2.len() != intervals.len())` [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: calls to `push` immediately after creation [INFO] [stdout] --> src/lib.rs:326:9 [INFO] [stdout] | [INFO] [stdout] 326 | / let mut intervals: Vec<(u32, u32)> = Vec::new(); [INFO] [stdout] 327 | | [INFO] [stdout] 328 | | [INFO] [stdout] 329 | | intervals.push(i1); [INFO] [stdout] ... | [INFO] [stdout] 332 | | intervals.push(i4); [INFO] [stdout] 333 | | intervals.push(i5); [INFO] [stdout] | |___________________________^ help: consider using the `vec![]` macro: `let mut intervals: Vec<(u32, u32)> = vec![..];` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_init_then_push [INFO] [stdout] = note: `#[warn(clippy::vec_init_then_push)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/lib.rs:265:36 [INFO] [stdout] | [INFO] [stdout] 265 | pub fn start_stop_check(intervals: & Vec<(u32, u32)>) -> bool{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 265 - pub fn start_stop_check(intervals: & Vec<(u32, u32)>) -> bool{ [INFO] [stdout] 265 + pub fn start_stop_check(intervals: &[(u32, u32)]) -> bool{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&mut Vec` instead of `&mut [_]` involves a new object where a slice will do [INFO] [stdout] --> src/lib.rs:276:36 [INFO] [stdout] | [INFO] [stdout] 276 | pub fn start_stop_order(intervals: &mut Vec<(u32, u32)>){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 276 - pub fn start_stop_order(intervals: &mut Vec<(u32, u32)>){ [INFO] [stdout] 276 + pub fn start_stop_order(intervals: &mut [(u32, u32)]){ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `push` immediately after creation [INFO] [stdout] --> src/lib.rs:353:9 [INFO] [stdout] | [INFO] [stdout] 353 | / let mut k: Vec<(u32, u32)> = Vec::new(); [INFO] [stdout] 354 | | k.push(i1); [INFO] [stdout] 355 | | k.push(i2); [INFO] [stdout] 356 | | k.push(i3); [INFO] [stdout] 357 | | k.push(i4); [INFO] [stdout] 358 | | k.push(i5); [INFO] [stdout] | |___________________^ help: consider using the `vec![]` macro: `let mut k: Vec<(u32, u32)> = vec![..];` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_init_then_push [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&mut Vec` instead of `&mut [_]` involves a new object where a slice will do [INFO] [stdout] --> src/lib.rs:294:37 [INFO] [stdout] | [INFO] [stdout] 294 | pub fn check_overlapping(intervals: &mut Vec<(u32, u32)>) -> bool{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 294 - pub fn check_overlapping(intervals: &mut Vec<(u32, u32)>) -> bool{ [INFO] [stdout] 294 + pub fn check_overlapping(intervals: &mut [(u32, u32)]) -> bool{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `push` immediately after creation [INFO] [stdout] --> src/lib.rs:372:9 [INFO] [stdout] | [INFO] [stdout] 372 | / let mut k: Vec<(u32, u32)> = Vec::new(); [INFO] [stdout] 373 | | k.push(i1); [INFO] [stdout] 374 | | k.push(i2); [INFO] [stdout] 375 | | k.push(i3); [INFO] [stdout] 376 | | k.push(i4); [INFO] [stdout] 377 | | k.push(i5); [INFO] [stdout] | |___________________^ help: consider using the `vec![]` macro: `let mut k: Vec<(u32, u32)> = vec![..];` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_init_then_push [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `push` immediately after creation [INFO] [stdout] --> src/lib.rs:396:9 [INFO] [stdout] | [INFO] [stdout] 396 | / let mut k: Vec<(u32, u32)> = Vec::new(); [INFO] [stdout] 397 | | k.push(i1); [INFO] [stdout] 398 | | k.push(i2); [INFO] [stdout] 399 | | k.push(i4); [INFO] [stdout] 400 | | k.push(i5); [INFO] [stdout] 401 | | k.push(i6); [INFO] [stdout] | |___________________^ help: consider using the `vec![]` macro: `let mut k: Vec<(u32, u32)> = vec![..];` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_init_then_push [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `push` immediately after creation [INFO] [stdout] --> src/lib.rs:422:9 [INFO] [stdout] | [INFO] [stdout] 422 | / let mut k: Vec<(u32, u32)> = Vec::new(); [INFO] [stdout] 423 | | k.push(i1); [INFO] [stdout] 424 | | k.push(i2); [INFO] [stdout] 425 | | k.push(i3); [INFO] [stdout] 426 | | k.push(i4); [INFO] [stdout] 427 | | k.push(i5); [INFO] [stdout] | |___________________^ help: consider using the `vec![]` macro: `let mut k: Vec<(u32, u32)> = vec![..];` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_init_then_push [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `push` immediately after creation [INFO] [stdout] --> src/lib.rs:430:9 [INFO] [stdout] | [INFO] [stdout] 430 | / let mut k2: Vec<(u32, u32)> = Vec::new(); [INFO] [stdout] 431 | | k2.push(i1); [INFO] [stdout] 432 | | k2.push(i2); [INFO] [stdout] 433 | | k2.push(i4); [INFO] [stdout] 434 | | k2.push(i5); [INFO] [stdout] 435 | | k2.push(i6); [INFO] [stdout] | |____________________^ help: consider using the `vec![]` macro: `let mut k2: Vec<(u32, u32)> = vec![..];` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_init_then_push [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/lib.rs:442:9 [INFO] [stdout] | [INFO] [stdout] 442 | assert_eq!(k10, 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] 442 - assert_eq!(k10, true); [INFO] [stdout] 442 + assert!(k10); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/lib.rs:443:9 [INFO] [stdout] | [INFO] [stdout] 443 | assert_eq!(k11, false); [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] 443 - assert_eq!(k11, false); [INFO] [stdout] 443 + assert!(!k11); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `push` immediately after creation [INFO] [stdout] --> src/lib.rs:461:9 [INFO] [stdout] | [INFO] [stdout] 461 | / let mut k: Vec<(u32, u32)> = Vec::new(); [INFO] [stdout] 462 | | k.push(i1); [INFO] [stdout] 463 | | k.push(i2); [INFO] [stdout] 464 | | k.push(i3); [INFO] [stdout] 465 | | k.push(i4); [INFO] [stdout] 466 | | k.push(i5); [INFO] [stdout] | |___________________^ help: consider using the `vec![]` macro: `let mut k: Vec<(u32, u32)> = vec![..];` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_init_then_push [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `push` immediately after creation [INFO] [stdout] --> src/lib.rs:468:9 [INFO] [stdout] | [INFO] [stdout] 468 | / let mut k2: Vec<(u32, u32)> = Vec::new(); [INFO] [stdout] 469 | | k2.push(i6); [INFO] [stdout] 470 | | k2.push(i2); [INFO] [stdout] 471 | | k2.push(i3); [INFO] [stdout] 472 | | k2.push(i4); [INFO] [stdout] 473 | | k2.push(i5); [INFO] [stdout] | |____________________^ help: consider using the `vec![]` macro: `let k2: Vec<(u32, u32)> = vec![..];` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_init_then_push [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/lib.rs:475:9 [INFO] [stdout] | [INFO] [stdout] 475 | assert_eq!(start_stop_check(&k), false); [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] 475 - assert_eq!(start_stop_check(&k), false); [INFO] [stdout] 475 + assert!(!start_stop_check(&k)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/lib.rs:476:9 [INFO] [stdout] | [INFO] [stdout] 476 | assert_eq!(start_stop_check(&k2), false); [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] 476 - assert_eq!(start_stop_check(&k2), false); [INFO] [stdout] 476 + assert!(!start_stop_check(&k2)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.18s [INFO] running `Command { std: "docker" "inspect" "d9e01cd378334dced5d43c1eb69fb4366f6cbc67ace2dcac917563dedf65e4a1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d9e01cd378334dced5d43c1eb69fb4366f6cbc67ace2dcac917563dedf65e4a1", kill_on_drop: false }` [INFO] [stdout] d9e01cd378334dced5d43c1eb69fb4366f6cbc67ace2dcac917563dedf65e4a1