[INFO] crate time_calc 0.13.0 is already in cache [INFO] extracting crate time_calc 0.13.0 into work/ex/clippy-test-run/sources/stable/reg/time_calc/0.13.0 [INFO] extracting crate time_calc 0.13.0 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/time_calc/0.13.0 [INFO] validating manifest of time_calc-0.13.0 on toolchain stable [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of time_calc-0.13.0 on toolchain stable+rustflags=-Dclippy::into_iter_on_array [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing time_calc-0.13.0 [INFO] finished frobbing time_calc-0.13.0 [INFO] frobbed toml for time_calc-0.13.0 written to work/ex/clippy-test-run/sources/stable/reg/time_calc/0.13.0/Cargo.toml [INFO] started frobbing time_calc-0.13.0 [INFO] finished frobbing time_calc-0.13.0 [INFO] frobbed toml for time_calc-0.13.0 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/time_calc/0.13.0/Cargo.toml [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting time_calc-0.13.0 against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-5/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/reg/time_calc/0.13.0:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+stable" "clippy" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 16c3d48651afa35ac645cb9639ad30b59391c7019afb0209e4b0e355c8f862aa [INFO] running `"docker" "start" "-a" "16c3d48651afa35ac645cb9639ad30b59391c7019afb0209e4b0e355c8f862aa"` [INFO] [stderr] Checking time_calc v0.13.0 (/opt/crater/workdir) [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bars.rs:38:17 [INFO] [stderr] | [INFO] [stderr] 38 | pub fn bars(&self) -> NumDiv { let Bars(num) = *self; num } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bars.rs:42:18 [INFO] [stderr] | [INFO] [stderr] 42 | pub fn beats(&self, ts: TimeSig) -> f64 { Division::Bar.beats(ts) } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bars.rs:46:20 [INFO] [stderr] | [INFO] [stderr] 46 | pub fn measure(&self) -> Measure { Measure(self.bars(), Division::Bar, DivType::Whole) } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bars.rs:50:15 [INFO] [stderr] | [INFO] [stderr] 50 | pub fn ms(&self, bpm: Bpm, ts: TimeSig) -> calc::Ms { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bars.rs:55:18 [INFO] [stderr] | [INFO] [stderr] 55 | pub fn to_ms(&self, bpm: Bpm, ts: TimeSig) -> Ms { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bars.rs:61:20 [INFO] [stderr] | [INFO] [stderr] 61 | pub fn samples(&self, bpm: Bpm, ts: TimeSig, sample_hz: SampleHz) -> calc::Samples { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bars.rs:66:23 [INFO] [stderr] | [INFO] [stderr] 66 | pub fn to_samples(&self, bpm: Bpm, ts: TimeSig, sample_hz: SampleHz) -> Samples { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bars.rs:72:18 [INFO] [stderr] | [INFO] [stderr] 72 | pub fn ticks(&self, ts: TimeSig, ppqn: Ppqn) -> calc::Ticks { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bars.rs:77:21 [INFO] [stderr] | [INFO] [stderr] 77 | pub fn to_ticks(&self, ts: TimeSig, ppqn: Ppqn) -> Ticks { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/beats.rs:37:18 [INFO] [stderr] | [INFO] [stderr] 37 | pub fn beats(&self) -> NumDiv { let Beats(num) = *self; num } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/beats.rs:41:17 [INFO] [stderr] | [INFO] [stderr] 41 | pub fn bars(&self, ts: TimeSig) -> f64 { Division::Beat.bars(ts) } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/beats.rs:45:20 [INFO] [stderr] | [INFO] [stderr] 45 | pub fn measure(&self) -> Measure { Measure(self.beats(), Division::Beat, DivType::Whole) } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/beats.rs:49:15 [INFO] [stderr] | [INFO] [stderr] 49 | pub fn ms(&self, bpm: Bpm) -> calc::Ms { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/beats.rs:54:18 [INFO] [stderr] | [INFO] [stderr] 54 | pub fn to_ms(&self, bpm: Bpm) -> Ms { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/beats.rs:60:20 [INFO] [stderr] | [INFO] [stderr] 60 | pub fn samples(&self, bpm: Bpm, sample_hz: SampleHz) -> calc::Samples { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/beats.rs:65:23 [INFO] [stderr] | [INFO] [stderr] 65 | pub fn to_samples(&self, bpm: Bpm, sample_hz: SampleHz) -> Samples { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/beats.rs:71:18 [INFO] [stderr] | [INFO] [stderr] 71 | pub fn ticks(&self, ppqn: Ppqn) -> calc::Ticks { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: casting u32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/beats.rs:72:39 [INFO] [stderr] | [INFO] [stderr] 72 | self.beats() as calc::Ticks * ppqn as calc::Ticks [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(ppqn)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/beats.rs:77:21 [INFO] [stderr] | [INFO] [stderr] 77 | pub fn to_ticks(&self, ppqn: Ppqn) -> Ticks { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/calc.rs:80:23 [INFO] [stderr] | [INFO] [stderr] 80 | beat_in_ms(bpm) / ppqn as Ms [INFO] [stderr] | ^^^^^^^^^^ help: try: `f64::from(ppqn)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/calc.rs:91:21 [INFO] [stderr] | [INFO] [stderr] 91 | (num_quarters * ppqn as f64).round() as Ticks [INFO] [stderr] | ^^^^^^^^^^^ help: try: `f64::from(ppqn)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/division.rs:42:18 [INFO] [stderr] | [INFO] [stderr] 42 | pub fn beats(&self, ts: TimeSig) -> f64 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/division.rs:51:17 [INFO] [stderr] | [INFO] [stderr] 51 | pub fn bars(&self, ts: TimeSig) -> f64 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/division.rs:59:20 [INFO] [stderr] | [INFO] [stderr] 59 | pub fn zoom_in(&self, steps: u8) -> Option { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/division.rs:69:21 [INFO] [stderr] | [INFO] [stderr] 69 | pub fn zoom_out(&self, steps: u8) -> Option { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/division.rs:80:18 [INFO] [stderr] | [INFO] [stderr] 80 | pub fn to_u8(&self) -> u8 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/division.rs:85:18 [INFO] [stderr] | [INFO] [stderr] 85 | pub fn to_i8(&self) -> i8 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/division.rs:195:14 [INFO] [stderr] | [INFO] [stderr] 195 | Some(match self { [INFO] [stderr] | ______________^ [INFO] [stderr] 196 | | &DivType::Whole => 0, [INFO] [stderr] 197 | | &DivType::TwoThirds => 1, [INFO] [stderr] 198 | | }) [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_ref_pats)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 195 | Some(match *self { [INFO] [stderr] 196 | DivType::Whole => 0, [INFO] [stderr] 197 | DivType::TwoThirds => 1, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/ms.rs:34:15 [INFO] [stderr] | [INFO] [stderr] 34 | pub fn ms(&self) -> calc::Ms { let Ms(ms) = *self; ms } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/ms.rs:38:17 [INFO] [stderr] | [INFO] [stderr] 38 | pub fn bars(&self, bpm: Bpm, ts: TimeSig) -> f64 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/ms.rs:44:18 [INFO] [stderr] | [INFO] [stderr] 44 | pub fn beats(&self, bpm: Bpm) -> f64 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/ms.rs:50:20 [INFO] [stderr] | [INFO] [stderr] 50 | pub fn samples(&self, sample_hz: SampleHz) -> calc::Samples { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/ms.rs:55:23 [INFO] [stderr] | [INFO] [stderr] 55 | pub fn to_samples(&self, sample_hz: SampleHz) -> Samples { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/ms.rs:61:18 [INFO] [stderr] | [INFO] [stderr] 61 | pub fn ticks(&self, bpm: Bpm, ppqn: Ppqn) -> calc::Ticks { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/ms.rs:66:21 [INFO] [stderr] | [INFO] [stderr] 66 | pub fn to_ticks(&self, bpm: Bpm, ppqn: Ppqn) -> Ticks { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/samples.rs:34:20 [INFO] [stderr] | [INFO] [stderr] 34 | pub fn samples(&self) -> calc::Samples { let Samples(samples) = *self; samples } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/samples.rs:38:17 [INFO] [stderr] | [INFO] [stderr] 38 | pub fn bars(&self, bpm: Bpm, ts: TimeSig, sample_hz: SampleHz) -> f64 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/samples.rs:44:18 [INFO] [stderr] | [INFO] [stderr] 44 | pub fn beats(&self, bpm: Bpm, sample_hz: SampleHz) -> f64 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/samples.rs:50:15 [INFO] [stderr] | [INFO] [stderr] 50 | pub fn ms(&self, sample_hz: SampleHz) -> calc::Ms { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/samples.rs:55:18 [INFO] [stderr] | [INFO] [stderr] 55 | pub fn to_ms(&self, sample_hz: SampleHz) -> Ms { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/samples.rs:61:18 [INFO] [stderr] | [INFO] [stderr] 61 | pub fn ticks(&self, bpm: Bpm, ppqn: Ppqn, sample_hz: SampleHz) -> calc::Ticks { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/samples.rs:66:21 [INFO] [stderr] | [INFO] [stderr] 66 | pub fn to_ticks(&self, bpm: Bpm, ppqn: Ppqn, sample_hz: SampleHz) -> Ticks { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/ticks.rs:33:18 [INFO] [stderr] | [INFO] [stderr] 33 | pub fn ticks(&self) -> calc::Ticks { let Ticks(ticks) = *self; ticks } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/ticks.rs:37:17 [INFO] [stderr] | [INFO] [stderr] 37 | pub fn bars(&self, ts: TimeSig, ppqn: Ppqn) -> f64 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/ticks.rs:42:18 [INFO] [stderr] | [INFO] [stderr] 42 | pub fn beats(&self, ppqn: Ppqn) -> f64 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/ticks.rs:43:31 [INFO] [stderr] | [INFO] [stderr] 43 | self.ticks() as f64 / ppqn as f64 [INFO] [stderr] | ^^^^^^^^^^^ help: try: `f64::from(ppqn)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/ticks.rs:48:15 [INFO] [stderr] | [INFO] [stderr] 48 | pub fn ms(&self, bpm: Bpm, ppqn: Ppqn) -> calc::Ms { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/ticks.rs:53:18 [INFO] [stderr] | [INFO] [stderr] 53 | pub fn to_ms(&self, bpm: Bpm, ppqn: Ppqn) -> Ms { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/ticks.rs:59:20 [INFO] [stderr] | [INFO] [stderr] 59 | pub fn samples(&self, bpm: Bpm, ppqn: Ppqn, sample_hz: SampleHz) -> calc::Samples { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/ticks.rs:65:23 [INFO] [stderr] | [INFO] [stderr] 65 | pub fn to_samples(&self, bpm: Bpm, ppqn: Ppqn, sample_hz: SampleHz) -> Samples { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/time_sig.rs:18:26 [INFO] [stderr] | [INFO] [stderr] 18 | pub fn beats_per_bar(&self) -> f64 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: casting u16 to f64 may become silently lossy if types change [INFO] [stderr] --> src/time_sig.rs:19:15 [INFO] [stderr] | [INFO] [stderr] 19 | 4.0 * self.top as f64 / self.bottom as f64 [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `f64::from(self.top)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to f64 may become silently lossy if types change [INFO] [stderr] --> src/time_sig.rs:19:33 [INFO] [stderr] | [INFO] [stderr] 19 | 4.0 * self.top as f64 / self.bottom as f64 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.bottom)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/time_sig.rs:24:26 [INFO] [stderr] | [INFO] [stderr] 24 | pub fn ticks_per_bar(&self, ppqn: Ppqn) -> Ticks { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bars.rs:38:17 [INFO] [stderr] | [INFO] [stderr] 38 | pub fn bars(&self) -> NumDiv { let Bars(num) = *self; num } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bars.rs:42:18 [INFO] [stderr] | [INFO] [stderr] 42 | pub fn beats(&self, ts: TimeSig) -> f64 { Division::Bar.beats(ts) } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bars.rs:46:20 [INFO] [stderr] | [INFO] [stderr] 46 | pub fn measure(&self) -> Measure { Measure(self.bars(), Division::Bar, DivType::Whole) } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bars.rs:50:15 [INFO] [stderr] | [INFO] [stderr] 50 | pub fn ms(&self, bpm: Bpm, ts: TimeSig) -> calc::Ms { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bars.rs:55:18 [INFO] [stderr] | [INFO] [stderr] 55 | pub fn to_ms(&self, bpm: Bpm, ts: TimeSig) -> Ms { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bars.rs:61:20 [INFO] [stderr] | [INFO] [stderr] 61 | pub fn samples(&self, bpm: Bpm, ts: TimeSig, sample_hz: SampleHz) -> calc::Samples { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bars.rs:66:23 [INFO] [stderr] | [INFO] [stderr] 66 | pub fn to_samples(&self, bpm: Bpm, ts: TimeSig, sample_hz: SampleHz) -> Samples { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bars.rs:72:18 [INFO] [stderr] | [INFO] [stderr] 72 | pub fn ticks(&self, ts: TimeSig, ppqn: Ppqn) -> calc::Ticks { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bars.rs:77:21 [INFO] [stderr] | [INFO] [stderr] 77 | pub fn to_ticks(&self, ts: TimeSig, ppqn: Ppqn) -> Ticks { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/beats.rs:37:18 [INFO] [stderr] | [INFO] [stderr] 37 | pub fn beats(&self) -> NumDiv { let Beats(num) = *self; num } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/beats.rs:41:17 [INFO] [stderr] | [INFO] [stderr] 41 | pub fn bars(&self, ts: TimeSig) -> f64 { Division::Beat.bars(ts) } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/beats.rs:45:20 [INFO] [stderr] | [INFO] [stderr] 45 | pub fn measure(&self) -> Measure { Measure(self.beats(), Division::Beat, DivType::Whole) } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/beats.rs:49:15 [INFO] [stderr] | [INFO] [stderr] 49 | pub fn ms(&self, bpm: Bpm) -> calc::Ms { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/beats.rs:54:18 [INFO] [stderr] | [INFO] [stderr] 54 | pub fn to_ms(&self, bpm: Bpm) -> Ms { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/beats.rs:60:20 [INFO] [stderr] | [INFO] [stderr] 60 | pub fn samples(&self, bpm: Bpm, sample_hz: SampleHz) -> calc::Samples { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/beats.rs:65:23 [INFO] [stderr] | [INFO] [stderr] 65 | pub fn to_samples(&self, bpm: Bpm, sample_hz: SampleHz) -> Samples { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/beats.rs:71:18 [INFO] [stderr] | [INFO] [stderr] 71 | pub fn ticks(&self, ppqn: Ppqn) -> calc::Ticks { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: casting u32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/beats.rs:72:39 [INFO] [stderr] | [INFO] [stderr] 72 | self.beats() as calc::Ticks * ppqn as calc::Ticks [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(ppqn)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/beats.rs:77:21 [INFO] [stderr] | [INFO] [stderr] 77 | pub fn to_ticks(&self, ppqn: Ppqn) -> Ticks { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/calc.rs:80:23 [INFO] [stderr] | [INFO] [stderr] 80 | beat_in_ms(bpm) / ppqn as Ms [INFO] [stderr] | ^^^^^^^^^^ help: try: `f64::from(ppqn)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/calc.rs:91:21 [INFO] [stderr] | [INFO] [stderr] 91 | (num_quarters * ppqn as f64).round() as Ticks [INFO] [stderr] | ^^^^^^^^^^^ help: try: `f64::from(ppqn)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/division.rs:42:18 [INFO] [stderr] | [INFO] [stderr] 42 | pub fn beats(&self, ts: TimeSig) -> f64 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/division.rs:51:17 [INFO] [stderr] | [INFO] [stderr] 51 | pub fn bars(&self, ts: TimeSig) -> f64 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/division.rs:59:20 [INFO] [stderr] | [INFO] [stderr] 59 | pub fn zoom_in(&self, steps: u8) -> Option { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/division.rs:69:21 [INFO] [stderr] | [INFO] [stderr] 69 | pub fn zoom_out(&self, steps: u8) -> Option { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/division.rs:80:18 [INFO] [stderr] | [INFO] [stderr] 80 | pub fn to_u8(&self) -> u8 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/division.rs:85:18 [INFO] [stderr] | [INFO] [stderr] 85 | pub fn to_i8(&self) -> i8 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/division.rs:195:14 [INFO] [stderr] | [INFO] [stderr] 195 | Some(match self { [INFO] [stderr] | ______________^ [INFO] [stderr] 196 | | &DivType::Whole => 0, [INFO] [stderr] 197 | | &DivType::TwoThirds => 1, [INFO] [stderr] 198 | | }) [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_ref_pats)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 195 | Some(match *self { [INFO] [stderr] 196 | DivType::Whole => 0, [INFO] [stderr] 197 | DivType::TwoThirds => 1, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/ms.rs:34:15 [INFO] [stderr] | [INFO] [stderr] 34 | pub fn ms(&self) -> calc::Ms { let Ms(ms) = *self; ms } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/ms.rs:38:17 [INFO] [stderr] | [INFO] [stderr] 38 | pub fn bars(&self, bpm: Bpm, ts: TimeSig) -> f64 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/ms.rs:44:18 [INFO] [stderr] | [INFO] [stderr] 44 | pub fn beats(&self, bpm: Bpm) -> f64 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/ms.rs:50:20 [INFO] [stderr] | [INFO] [stderr] 50 | pub fn samples(&self, sample_hz: SampleHz) -> calc::Samples { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/ms.rs:55:23 [INFO] [stderr] | [INFO] [stderr] 55 | pub fn to_samples(&self, sample_hz: SampleHz) -> Samples { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/ms.rs:61:18 [INFO] [stderr] | [INFO] [stderr] 61 | pub fn ticks(&self, bpm: Bpm, ppqn: Ppqn) -> calc::Ticks { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/ms.rs:66:21 [INFO] [stderr] | [INFO] [stderr] 66 | pub fn to_ticks(&self, bpm: Bpm, ppqn: Ppqn) -> Ticks { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/samples.rs:34:20 [INFO] [stderr] | [INFO] [stderr] 34 | pub fn samples(&self) -> calc::Samples { let Samples(samples) = *self; samples } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/samples.rs:38:17 [INFO] [stderr] | [INFO] [stderr] 38 | pub fn bars(&self, bpm: Bpm, ts: TimeSig, sample_hz: SampleHz) -> f64 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/samples.rs:44:18 [INFO] [stderr] | [INFO] [stderr] 44 | pub fn beats(&self, bpm: Bpm, sample_hz: SampleHz) -> f64 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/samples.rs:50:15 [INFO] [stderr] | [INFO] [stderr] 50 | pub fn ms(&self, sample_hz: SampleHz) -> calc::Ms { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/samples.rs:55:18 [INFO] [stderr] | [INFO] [stderr] 55 | pub fn to_ms(&self, sample_hz: SampleHz) -> Ms { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/samples.rs:61:18 [INFO] [stderr] | [INFO] [stderr] 61 | pub fn ticks(&self, bpm: Bpm, ppqn: Ppqn, sample_hz: SampleHz) -> calc::Ticks { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/samples.rs:66:21 [INFO] [stderr] | [INFO] [stderr] 66 | pub fn to_ticks(&self, bpm: Bpm, ppqn: Ppqn, sample_hz: SampleHz) -> Ticks { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/ticks.rs:33:18 [INFO] [stderr] | [INFO] [stderr] 33 | pub fn ticks(&self) -> calc::Ticks { let Ticks(ticks) = *self; ticks } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/ticks.rs:37:17 [INFO] [stderr] | [INFO] [stderr] 37 | pub fn bars(&self, ts: TimeSig, ppqn: Ppqn) -> f64 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/ticks.rs:42:18 [INFO] [stderr] | [INFO] [stderr] 42 | pub fn beats(&self, ppqn: Ppqn) -> f64 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/ticks.rs:43:31 [INFO] [stderr] | [INFO] [stderr] 43 | self.ticks() as f64 / ppqn as f64 [INFO] [stderr] | ^^^^^^^^^^^ help: try: `f64::from(ppqn)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/ticks.rs:48:15 [INFO] [stderr] | [INFO] [stderr] 48 | pub fn ms(&self, bpm: Bpm, ppqn: Ppqn) -> calc::Ms { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/ticks.rs:53:18 [INFO] [stderr] | [INFO] [stderr] 53 | pub fn to_ms(&self, bpm: Bpm, ppqn: Ppqn) -> Ms { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/ticks.rs:59:20 [INFO] [stderr] | [INFO] [stderr] 59 | pub fn samples(&self, bpm: Bpm, ppqn: Ppqn, sample_hz: SampleHz) -> calc::Samples { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/ticks.rs:65:23 [INFO] [stderr] | [INFO] [stderr] 65 | pub fn to_samples(&self, bpm: Bpm, ppqn: Ppqn, sample_hz: SampleHz) -> Samples { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/time_sig.rs:18:26 [INFO] [stderr] | [INFO] [stderr] 18 | pub fn beats_per_bar(&self) -> f64 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: casting u16 to f64 may become silently lossy if types change [INFO] [stderr] --> src/time_sig.rs:19:15 [INFO] [stderr] | [INFO] [stderr] 19 | 4.0 * self.top as f64 / self.bottom as f64 [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `f64::from(self.top)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to f64 may become silently lossy if types change [INFO] [stderr] --> src/time_sig.rs:19:33 [INFO] [stderr] | [INFO] [stderr] 19 | 4.0 * self.top as f64 / self.bottom as f64 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.bottom)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/time_sig.rs:24:26 [INFO] [stderr] | [INFO] [stderr] 24 | pub fn ticks_per_bar(&self, ppqn: Ppqn) -> Ticks { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 3.77s [INFO] running `"docker" "inspect" "16c3d48651afa35ac645cb9639ad30b59391c7019afb0209e4b0e355c8f862aa"` [INFO] running `"docker" "rm" "-f" "16c3d48651afa35ac645cb9639ad30b59391c7019afb0209e4b0e355c8f862aa"` [INFO] [stdout] 16c3d48651afa35ac645cb9639ad30b59391c7019afb0209e4b0e355c8f862aa