[INFO] crate xbee_s2c 0.1.0 is already in cache [INFO] extracting crate xbee_s2c 0.1.0 into work/ex/clippy-test-run/sources/stable/reg/xbee_s2c/0.1.0 [INFO] extracting crate xbee_s2c 0.1.0 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/xbee_s2c/0.1.0 [INFO] validating manifest of xbee_s2c-0.1.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 xbee_s2c-0.1.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 xbee_s2c-0.1.0 [INFO] finished frobbing xbee_s2c-0.1.0 [INFO] frobbed toml for xbee_s2c-0.1.0 written to work/ex/clippy-test-run/sources/stable/reg/xbee_s2c/0.1.0/Cargo.toml [INFO] started frobbing xbee_s2c-0.1.0 [INFO] finished frobbing xbee_s2c-0.1.0 [INFO] frobbed toml for xbee_s2c-0.1.0 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/xbee_s2c/0.1.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 xbee_s2c-0.1.0 against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-3/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/reg/xbee_s2c/0.1.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] e9f1169a669802c5a02025a389435172f8bc82a3eeed5f76920b492f12dc5ca1 [INFO] running `"docker" "start" "-a" "e9f1169a669802c5a02025a389435172f8bc82a3eeed5f76920b492f12dc5ca1"` [INFO] [stderr] Compiling arrayvec v0.4.10 [INFO] [stderr] Checking nb v0.1.1 [INFO] [stderr] Checking arraydeque v0.4.3 [INFO] [stderr] Checking embedded-hal v0.2.2 [INFO] [stderr] Checking xbee_s2c v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/api_frame.rs:864:9 [INFO] [stderr] | [INFO] [stderr] 864 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::deprecated_cfg_attr)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] warning: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/api_frame.rs:887:9 [INFO] [stderr] | [INFO] [stderr] 887 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] warning: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/api_frame.rs:895:9 [INFO] [stderr] | [INFO] [stderr] 895 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] warning: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/api_frame.rs:864:9 [INFO] [stderr] | [INFO] [stderr] 864 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::deprecated_cfg_attr)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] warning: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/api_frame.rs:887:9 [INFO] [stderr] | [INFO] [stderr] 887 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] warning: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/api_frame.rs:895:9 [INFO] [stderr] | [INFO] [stderr] 895 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/api_frame.rs:164:20 [INFO] [stderr] | [INFO] [stderr] 164 | const A3 = 0b0001000000000000; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0b0001_0000_0000_0000` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/api_frame.rs:165:20 [INFO] [stderr] | [INFO] [stderr] 165 | const A2 = 0b0000100000000000; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0b0000_1000_0000_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/api_frame.rs:166:20 [INFO] [stderr] | [INFO] [stderr] 166 | const A1 = 0b0000010000000000; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0b0000_0100_0000_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/api_frame.rs:167:20 [INFO] [stderr] | [INFO] [stderr] 167 | const A0 = 0b0000001000000000; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0b0000_0010_0000_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/api_frame.rs:168:20 [INFO] [stderr] | [INFO] [stderr] 168 | const D8 = 0b0000000100000000; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0b0000_0001_0000_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/api_frame.rs:169:20 [INFO] [stderr] | [INFO] [stderr] 169 | const D7 = 0b0000000010000000; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0b0000_0000_1000_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/api_frame.rs:170:20 [INFO] [stderr] | [INFO] [stderr] 170 | const D6 = 0b0000000001000000; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0b0000_0000_0100_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/api_frame.rs:171:20 [INFO] [stderr] | [INFO] [stderr] 171 | const D5 = 0b0000000000100000; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0b0000_0000_0010_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/api_frame.rs:172:20 [INFO] [stderr] | [INFO] [stderr] 172 | const D4 = 0b0000000000010000; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0b0000_0000_0001_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/api_frame.rs:173:20 [INFO] [stderr] | [INFO] [stderr] 173 | const D3 = 0b0000000000001000; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0b0000_0000_0000_1000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/api_frame.rs:174:20 [INFO] [stderr] | [INFO] [stderr] 174 | const D2 = 0b0000000000000100; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0b0000_0000_0000_0100` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/api_frame.rs:175:20 [INFO] [stderr] | [INFO] [stderr] 175 | const D1 = 0b0000000000000010; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0b0000_0000_0000_0010` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/api_frame.rs:176:20 [INFO] [stderr] | [INFO] [stderr] 176 | const D0 = 0b0000000000000001; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0b0000_0000_0000_0001` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/lib.rs:359:9 [INFO] [stderr] | [INFO] [stderr] 359 | ret [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::let_and_return)] on by default [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/lib.rs:354:19 [INFO] [stderr] | [INFO] [stderr] 354 | let ret = match api_frame::unpack_frame(self.rx_queue.as_slice(), false, false) { [INFO] [stderr] | ___________________^ [INFO] [stderr] 355 | | Ok((frame, _rem)) => ApiData::parse(frame).map_err(|err| XBeeApiError::Parse(err)), [INFO] [stderr] 356 | | Err(err) => Err(XBeeApiError::Unpack(err)), [INFO] [stderr] 357 | | }; [INFO] [stderr] | |_________^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: unused variable: `frame_id` [INFO] [stderr] --> src/lib.rs:321:34 [INFO] [stderr] | [INFO] [stderr] 321 | pub fn at_command(&mut self, frame_id: u8, at_cmd: [u8; 2], params: &[u8]) { [INFO] [stderr] | ^^^^^^^^ help: consider using `_frame_id` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `at_cmd` [INFO] [stderr] --> src/lib.rs:321:48 [INFO] [stderr] | [INFO] [stderr] 321 | pub fn at_command(&mut self, frame_id: u8, at_cmd: [u8; 2], params: &[u8]) { [INFO] [stderr] | ^^^^^^ help: consider using `_at_cmd` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `params` [INFO] [stderr] --> src/lib.rs:321:65 [INFO] [stderr] | [INFO] [stderr] 321 | pub fn at_command(&mut self, frame_id: u8, at_cmd: [u8; 2], params: &[u8]) { [INFO] [stderr] | ^^^^^^ help: consider using `_params` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `frame_id` [INFO] [stderr] --> src/lib.rs:325:38 [INFO] [stderr] | [INFO] [stderr] 325 | pub fn at_queue_param(&mut self, frame_id: u8, at_cmd: [u8; 2], params: &[u8]) { [INFO] [stderr] | ^^^^^^^^ help: consider using `_frame_id` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `at_cmd` [INFO] [stderr] --> src/lib.rs:325:52 [INFO] [stderr] | [INFO] [stderr] 325 | pub fn at_queue_param(&mut self, frame_id: u8, at_cmd: [u8; 2], params: &[u8]) { [INFO] [stderr] | ^^^^^^ help: consider using `_at_cmd` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `params` [INFO] [stderr] --> src/lib.rs:325:69 [INFO] [stderr] | [INFO] [stderr] 325 | pub fn at_queue_param(&mut self, frame_id: u8, at_cmd: [u8; 2], params: &[u8]) { [INFO] [stderr] | ^^^^^^ help: consider using `_params` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `frame_id` [INFO] [stderr] --> src/lib.rs:329:41 [INFO] [stderr] | [INFO] [stderr] 329 | pub fn remote_at_command(&mut self, frame_id: u8, addr: Addr, at_cmd: [u8; 2], params: &[u8]) { [INFO] [stderr] | ^^^^^^^^ help: consider using `_frame_id` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `addr` [INFO] [stderr] --> src/lib.rs:329:55 [INFO] [stderr] | [INFO] [stderr] 329 | pub fn remote_at_command(&mut self, frame_id: u8, addr: Addr, at_cmd: [u8; 2], params: &[u8]) { [INFO] [stderr] | ^^^^ help: consider using `_addr` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `at_cmd` [INFO] [stderr] --> src/lib.rs:329:67 [INFO] [stderr] | [INFO] [stderr] 329 | pub fn remote_at_command(&mut self, frame_id: u8, addr: Addr, at_cmd: [u8; 2], params: &[u8]) { [INFO] [stderr] | ^^^^^^ help: consider using `_at_cmd` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `params` [INFO] [stderr] --> src/lib.rs:329:84 [INFO] [stderr] | [INFO] [stderr] 329 | pub fn remote_at_command(&mut self, frame_id: u8, addr: Addr, at_cmd: [u8; 2], params: &[u8]) { [INFO] [stderr] | ^^^^^^ help: consider using `_params` instead [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/api_frame.rs:164:20 [INFO] [stderr] | [INFO] [stderr] 164 | const A3 = 0b0001000000000000; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0b0001_0000_0000_0000` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/api_frame.rs:165:20 [INFO] [stderr] | [INFO] [stderr] 165 | const A2 = 0b0000100000000000; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0b0000_1000_0000_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/api_frame.rs:166:20 [INFO] [stderr] | [INFO] [stderr] 166 | const A1 = 0b0000010000000000; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0b0000_0100_0000_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/api_frame.rs:167:20 [INFO] [stderr] | [INFO] [stderr] 167 | const A0 = 0b0000001000000000; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0b0000_0010_0000_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/api_frame.rs:168:20 [INFO] [stderr] | [INFO] [stderr] 168 | const D8 = 0b0000000100000000; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0b0000_0001_0000_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/api_frame.rs:169:20 [INFO] [stderr] | [INFO] [stderr] 169 | const D7 = 0b0000000010000000; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0b0000_0000_1000_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/api_frame.rs:170:20 [INFO] [stderr] | [INFO] [stderr] 170 | const D6 = 0b0000000001000000; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0b0000_0000_0100_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/api_frame.rs:171:20 [INFO] [stderr] | [INFO] [stderr] 171 | const D5 = 0b0000000000100000; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0b0000_0000_0010_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/api_frame.rs:172:20 [INFO] [stderr] | [INFO] [stderr] 172 | const D4 = 0b0000000000010000; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0b0000_0000_0001_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/api_frame.rs:173:20 [INFO] [stderr] | [INFO] [stderr] 173 | const D3 = 0b0000000000001000; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0b0000_0000_0000_1000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/api_frame.rs:174:20 [INFO] [stderr] | [INFO] [stderr] 174 | const D2 = 0b0000000000000100; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0b0000_0000_0000_0100` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/api_frame.rs:175:20 [INFO] [stderr] | [INFO] [stderr] 175 | const D1 = 0b0000000000000010; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0b0000_0000_0000_0010` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/api_frame.rs:176:20 [INFO] [stderr] | [INFO] [stderr] 176 | const D0 = 0b0000000000000001; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0b0000_0000_0000_0001` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/lib.rs:359:9 [INFO] [stderr] | [INFO] [stderr] 359 | ret [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::let_and_return)] on by default [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/lib.rs:354:19 [INFO] [stderr] | [INFO] [stderr] 354 | let ret = match api_frame::unpack_frame(self.rx_queue.as_slice(), false, false) { [INFO] [stderr] | ___________________^ [INFO] [stderr] 355 | | Ok((frame, _rem)) => ApiData::parse(frame).map_err(|err| XBeeApiError::Parse(err)), [INFO] [stderr] 356 | | Err(err) => Err(XBeeApiError::Unpack(err)), [INFO] [stderr] 357 | | }; [INFO] [stderr] | |_________^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: field is never used: `escaped` [INFO] [stderr] --> src/api_frame.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | escaped: bool, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: field is never used: `encrypted` [INFO] [stderr] --> src/api_frame.rs:30:5 [INFO] [stderr] | [INFO] [stderr] 30 | encrypted: bool, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `frame_type` [INFO] [stderr] --> src/api_frame.rs:368:5 [INFO] [stderr] | [INFO] [stderr] 368 | fn frame_type(&self) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:127:16 [INFO] [stderr] | [INFO] [stderr] 127 | let len = ((len[0] as u16) << 8 | (len[1] as u16)) as usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u16::from(len[0])` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:127:39 [INFO] [stderr] | [INFO] [stderr] 127 | let len = ((len[0] as u16) << 8 | (len[1] as u16)) as usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u16::from(len[1])` [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/api_frame.rs:181:25 [INFO] [stderr] | [INFO] [stderr] 181 | fn contains_digital(&self) -> bool { [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: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/api_frame.rs:386:5 [INFO] [stderr] | [INFO] [stderr] 386 | / pub fn parse<'b>(data: &'b [u8]) -> Result, ()> { [INFO] [stderr] 387 | | let len = data.len(); [INFO] [stderr] 388 | | let mut iter = data.iter(); [INFO] [stderr] 389 | | match *iter.next().unwrap() { [INFO] [stderr] ... | [INFO] [stderr] 657 | | } [INFO] [stderr] 658 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_lifetimes)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 26 [INFO] [stderr] --> src/api_frame.rs:386:5 [INFO] [stderr] | [INFO] [stderr] 386 | / pub fn parse<'b>(data: &'b [u8]) -> Result, ()> { [INFO] [stderr] 387 | | let len = data.len(); [INFO] [stderr] 388 | | let mut iter = data.iter(); [INFO] [stderr] 389 | | match *iter.next().unwrap() { [INFO] [stderr] ... | [INFO] [stderr] 657 | | } [INFO] [stderr] 658 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cyclomatic_complexity)] on by default [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:393:34 [INFO] [stderr] | [INFO] [stderr] 393 | let dest_addr = ((*iter.next().unwrap() as u64) << 56) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:394:24 [INFO] [stderr] | [INFO] [stderr] 394 | | ((*iter.next().unwrap() as u64) << 48) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:395:24 [INFO] [stderr] | [INFO] [stderr] 395 | | ((*iter.next().unwrap() as u64) << 40) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:396:24 [INFO] [stderr] | [INFO] [stderr] 396 | | ((*iter.next().unwrap() as u64) << 32) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:397:24 [INFO] [stderr] | [INFO] [stderr] 397 | | ((*iter.next().unwrap() as u64) << 24) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:398:24 [INFO] [stderr] | [INFO] [stderr] 398 | | ((*iter.next().unwrap() as u64) << 16) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:399:24 [INFO] [stderr] | [INFO] [stderr] 399 | | ((*iter.next().unwrap() as u64) << 8) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:400:23 [INFO] [stderr] | [INFO] [stderr] 400 | | (*iter.next().unwrap() as u64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:414:22 [INFO] [stderr] | [INFO] [stderr] 414 | ((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:414:61 [INFO] [stderr] | [INFO] [stderr] 414 | ((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:446:37 [INFO] [stderr] | [INFO] [stderr] 446 | let dest_addr_64 = ((*iter.next().unwrap() as u64) << 56) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:447:24 [INFO] [stderr] | [INFO] [stderr] 447 | | ((*iter.next().unwrap() as u64) << 48) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:448:24 [INFO] [stderr] | [INFO] [stderr] 448 | | ((*iter.next().unwrap() as u64) << 40) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:449:24 [INFO] [stderr] | [INFO] [stderr] 449 | | ((*iter.next().unwrap() as u64) << 32) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:450:24 [INFO] [stderr] | [INFO] [stderr] 450 | | ((*iter.next().unwrap() as u64) << 24) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:451:24 [INFO] [stderr] | [INFO] [stderr] 451 | | ((*iter.next().unwrap() as u64) << 16) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:452:24 [INFO] [stderr] | [INFO] [stderr] 452 | | ((*iter.next().unwrap() as u64) << 8) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:453:23 [INFO] [stderr] | [INFO] [stderr] 453 | | (*iter.next().unwrap() as u64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:455:22 [INFO] [stderr] | [INFO] [stderr] 455 | ((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:455:61 [INFO] [stderr] | [INFO] [stderr] 455 | ((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:467:36 [INFO] [stderr] | [INFO] [stderr] 467 | let source_addr = ((*iter.next().unwrap() as u64) << 56) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:468:24 [INFO] [stderr] | [INFO] [stderr] 468 | | ((*iter.next().unwrap() as u64) << 48) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:469:24 [INFO] [stderr] | [INFO] [stderr] 469 | | ((*iter.next().unwrap() as u64) << 40) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:470:24 [INFO] [stderr] | [INFO] [stderr] 470 | | ((*iter.next().unwrap() as u64) << 32) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:471:24 [INFO] [stderr] | [INFO] [stderr] 471 | | ((*iter.next().unwrap() as u64) << 24) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:472:24 [INFO] [stderr] | [INFO] [stderr] 472 | | ((*iter.next().unwrap() as u64) << 16) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:473:24 [INFO] [stderr] | [INFO] [stderr] 473 | | ((*iter.next().unwrap() as u64) << 8) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:474:23 [INFO] [stderr] | [INFO] [stderr] 474 | | (*iter.next().unwrap() as u64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:487:22 [INFO] [stderr] | [INFO] [stderr] 487 | ((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:487:61 [INFO] [stderr] | [INFO] [stderr] 487 | ((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:499:36 [INFO] [stderr] | [INFO] [stderr] 499 | let source_addr = ((*iter.next().unwrap() as u64) << 56) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:500:24 [INFO] [stderr] | [INFO] [stderr] 500 | | ((*iter.next().unwrap() as u64) << 48) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:501:24 [INFO] [stderr] | [INFO] [stderr] 501 | | ((*iter.next().unwrap() as u64) << 40) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:502:24 [INFO] [stderr] | [INFO] [stderr] 502 | | ((*iter.next().unwrap() as u64) << 32) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:503:24 [INFO] [stderr] | [INFO] [stderr] 503 | | ((*iter.next().unwrap() as u64) << 24) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:504:24 [INFO] [stderr] | [INFO] [stderr] 504 | | ((*iter.next().unwrap() as u64) << 16) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:505:24 [INFO] [stderr] | [INFO] [stderr] 505 | | ((*iter.next().unwrap() as u64) << 8) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:506:23 [INFO] [stderr] | [INFO] [stderr] 506 | | (*iter.next().unwrap() as u64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:511:22 [INFO] [stderr] | [INFO] [stderr] 511 | ((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:511:61 [INFO] [stderr] | [INFO] [stderr] 511 | ((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:514:27 [INFO] [stderr] | [INFO] [stderr] 514 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:514:66 [INFO] [stderr] | [INFO] [stderr] 514 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:519:27 [INFO] [stderr] | [INFO] [stderr] 519 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:519:66 [INFO] [stderr] | [INFO] [stderr] 519 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:524:27 [INFO] [stderr] | [INFO] [stderr] 524 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:524:66 [INFO] [stderr] | [INFO] [stderr] 524 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:529:27 [INFO] [stderr] | [INFO] [stderr] 529 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:529:66 [INFO] [stderr] | [INFO] [stderr] 529 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:534:27 [INFO] [stderr] | [INFO] [stderr] 534 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:534:66 [INFO] [stderr] | [INFO] [stderr] 534 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:552:22 [INFO] [stderr] | [INFO] [stderr] 552 | ((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:552:61 [INFO] [stderr] | [INFO] [stderr] 552 | ((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:557:22 [INFO] [stderr] | [INFO] [stderr] 557 | ((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:557:61 [INFO] [stderr] | [INFO] [stderr] 557 | ((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:560:27 [INFO] [stderr] | [INFO] [stderr] 560 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:560:66 [INFO] [stderr] | [INFO] [stderr] 560 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:565:27 [INFO] [stderr] | [INFO] [stderr] 565 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:565:66 [INFO] [stderr] | [INFO] [stderr] 565 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:570:27 [INFO] [stderr] | [INFO] [stderr] 570 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:570:66 [INFO] [stderr] | [INFO] [stderr] 570 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:575:27 [INFO] [stderr] | [INFO] [stderr] 575 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:575:66 [INFO] [stderr] | [INFO] [stderr] 575 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:580:27 [INFO] [stderr] | [INFO] [stderr] 580 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:580:66 [INFO] [stderr] | [INFO] [stderr] 580 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:627:39 [INFO] [stderr] | [INFO] [stderr] 627 | let source_addr_64 = ((*iter.next().unwrap() as u64) << 56) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:628:24 [INFO] [stderr] | [INFO] [stderr] 628 | | ((*iter.next().unwrap() as u64) << 48) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:629:24 [INFO] [stderr] | [INFO] [stderr] 629 | | ((*iter.next().unwrap() as u64) << 40) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:630:24 [INFO] [stderr] | [INFO] [stderr] 630 | | ((*iter.next().unwrap() as u64) << 32) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:631:24 [INFO] [stderr] | [INFO] [stderr] 631 | | ((*iter.next().unwrap() as u64) << 24) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:632:24 [INFO] [stderr] | [INFO] [stderr] 632 | | ((*iter.next().unwrap() as u64) << 16) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:633:24 [INFO] [stderr] | [INFO] [stderr] 633 | | ((*iter.next().unwrap() as u64) << 8) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:634:23 [INFO] [stderr] | [INFO] [stderr] 634 | | (*iter.next().unwrap() as u64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:636:22 [INFO] [stderr] | [INFO] [stderr] 636 | ((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:636:61 [INFO] [stderr] | [INFO] [stderr] 636 | ((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:685:35 [INFO] [stderr] | [INFO] [stderr] 685 | Addr::Short(addr) => (addr as u64, 8), [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u64::from(addr)` [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: Err(_) will match all errors, maybe not a good idea [INFO] [stderr] --> src/lib.rs:132:17 [INFO] [stderr] | [INFO] [stderr] 132 | Err(_) => panic!("Some error while waiting for OK"), // return Err(e.into()), [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_wild_err_arm)] on by default [INFO] [stderr] = note: to remove this warning, match each error separately or use unreachable macro [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_wild_err_arm [INFO] [stderr] [INFO] [stderr] warning: Err(_) will match all errors, maybe not a good idea [INFO] [stderr] --> src/lib.rs:140:17 [INFO] [stderr] | [INFO] [stderr] 140 | Err(_) => panic!("Some error while waiting for OK"), // return Err(e.into()), [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: to remove this warning, match each error separately or use unreachable macro [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_wild_err_arm [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/lib.rs:258:5 [INFO] [stderr] | [INFO] [stderr] 258 | / pub fn get_sender_receiver<'d>(&'d mut self) -> (XBeeApiSender<'d, E>, XBeeApiReceiver<'d, E>) { [INFO] [stderr] 259 | | let tx_queue = &mut self.tx_queue; [INFO] [stderr] 260 | | let rx_queue = &mut self.rx_queue; [INFO] [stderr] 261 | | [INFO] [stderr] ... | [INFO] [stderr] 271 | | (sender, receiver) [INFO] [stderr] 272 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/lib.rs:293:30 [INFO] [stderr] | [INFO] [stderr] 293 | self.tx_queue.extend(data.iter().map(|&x| x)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `data.iter().cloned()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::map_clone)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/lib.rs:299:68 [INFO] [stderr] | [INFO] [stderr] 299 | TxRequestIter::new(frame_id, addr, TxOptions::empty(), data.iter().map(|v| *v)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `data.iter().cloned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/lib.rs:312:13 [INFO] [stderr] | [INFO] [stderr] 312 | data.iter().map(|v| *v), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `data.iter().cloned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/lib.rs:353:5 [INFO] [stderr] | [INFO] [stderr] 353 | / pub fn unpack_and_parse_buffer<'d>(&'d self) -> Result, XBeeApiError> { [INFO] [stderr] 354 | | let ret = match api_frame::unpack_frame(self.rx_queue.as_slice(), false, false) { [INFO] [stderr] 355 | | Ok((frame, _rem)) => ApiData::parse(frame).map_err(|err| XBeeApiError::Parse(err)), [INFO] [stderr] 356 | | Err(err) => Err(XBeeApiError::Unpack(err)), [INFO] [stderr] ... | [INFO] [stderr] 359 | | ret [INFO] [stderr] 360 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/lib.rs:355:64 [INFO] [stderr] | [INFO] [stderr] 355 | Ok((frame, _rem)) => ApiData::parse(frame).map_err(|err| XBeeApiError::Parse(err)), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove closure as shown: `XBeeApiError::Parse` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_closure)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: passing a unit value to a function [INFO] [stderr] --> src/lib.rs:355:90 [INFO] [stderr] | [INFO] [stderr] 355 | Ok((frame, _rem)) => ApiData::parse(frame).map_err(|err| XBeeApiError::Parse(err)), [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unit_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unit_arg [INFO] [stderr] help: if you intended to pass a unit value, use a unit literal instead [INFO] [stderr] | [INFO] [stderr] 355 | Ok((frame, _rem)) => ApiData::parse(frame).map_err(|err| XBeeApiError::Parse(())), [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_some()` [INFO] [stderr] --> src/lib.rs:367:16 [INFO] [stderr] | [INFO] [stderr] 367 | if let Some(_) = self.rx_queue.pop_at(0) { [INFO] [stderr] | _________- ^^^^^^^ [INFO] [stderr] 368 | | self.remove_until_packet().map(|len| len + 1) [INFO] [stderr] 369 | | } else { [INFO] [stderr] 370 | | Ok(0) [INFO] [stderr] 371 | | } [INFO] [stderr] | |_________- help: try this: `if self.rx_queue.pop_at(0).is_some()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_pattern_matching)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stderr] [INFO] [stderr] warning: unused variable: `frame_id` [INFO] [stderr] --> src/lib.rs:321:34 [INFO] [stderr] | [INFO] [stderr] 321 | pub fn at_command(&mut self, frame_id: u8, at_cmd: [u8; 2], params: &[u8]) { [INFO] [stderr] | ^^^^^^^^ help: consider using `_frame_id` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `at_cmd` [INFO] [stderr] --> src/lib.rs:321:48 [INFO] [stderr] | [INFO] [stderr] 321 | pub fn at_command(&mut self, frame_id: u8, at_cmd: [u8; 2], params: &[u8]) { [INFO] [stderr] | ^^^^^^ help: consider using `_at_cmd` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `params` [INFO] [stderr] --> src/lib.rs:321:65 [INFO] [stderr] | [INFO] [stderr] 321 | pub fn at_command(&mut self, frame_id: u8, at_cmd: [u8; 2], params: &[u8]) { [INFO] [stderr] | ^^^^^^ help: consider using `_params` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `frame_id` [INFO] [stderr] --> src/lib.rs:325:38 [INFO] [stderr] | [INFO] [stderr] 325 | pub fn at_queue_param(&mut self, frame_id: u8, at_cmd: [u8; 2], params: &[u8]) { [INFO] [stderr] | ^^^^^^^^ help: consider using `_frame_id` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `at_cmd` [INFO] [stderr] --> src/lib.rs:325:52 [INFO] [stderr] | [INFO] [stderr] 325 | pub fn at_queue_param(&mut self, frame_id: u8, at_cmd: [u8; 2], params: &[u8]) { [INFO] [stderr] | ^^^^^^ help: consider using `_at_cmd` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `params` [INFO] [stderr] --> src/lib.rs:325:69 [INFO] [stderr] | [INFO] [stderr] 325 | pub fn at_queue_param(&mut self, frame_id: u8, at_cmd: [u8; 2], params: &[u8]) { [INFO] [stderr] | ^^^^^^ help: consider using `_params` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `frame_id` [INFO] [stderr] --> src/lib.rs:329:41 [INFO] [stderr] | [INFO] [stderr] 329 | pub fn remote_at_command(&mut self, frame_id: u8, addr: Addr, at_cmd: [u8; 2], params: &[u8]) { [INFO] [stderr] | ^^^^^^^^ help: consider using `_frame_id` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `addr` [INFO] [stderr] --> src/lib.rs:329:55 [INFO] [stderr] | [INFO] [stderr] 329 | pub fn remote_at_command(&mut self, frame_id: u8, addr: Addr, at_cmd: [u8; 2], params: &[u8]) { [INFO] [stderr] | ^^^^ help: consider using `_addr` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `at_cmd` [INFO] [stderr] --> src/lib.rs:329:67 [INFO] [stderr] | [INFO] [stderr] 329 | pub fn remote_at_command(&mut self, frame_id: u8, addr: Addr, at_cmd: [u8; 2], params: &[u8]) { [INFO] [stderr] | ^^^^^^ help: consider using `_at_cmd` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `params` [INFO] [stderr] --> src/lib.rs:329:84 [INFO] [stderr] | [INFO] [stderr] 329 | pub fn remote_at_command(&mut self, frame_id: u8, addr: Addr, at_cmd: [u8; 2], params: &[u8]) { [INFO] [stderr] | ^^^^^^ help: consider using `_params` instead [INFO] [stderr] [INFO] [stderr] warning: field is never used: `escaped` [INFO] [stderr] --> src/api_frame.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | escaped: bool, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: field is never used: `encrypted` [INFO] [stderr] --> src/api_frame.rs:30:5 [INFO] [stderr] | [INFO] [stderr] 30 | encrypted: bool, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `frame_type` [INFO] [stderr] --> src/api_frame.rs:368:5 [INFO] [stderr] | [INFO] [stderr] 368 | fn frame_type(&self) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:127:16 [INFO] [stderr] | [INFO] [stderr] 127 | let len = ((len[0] as u16) << 8 | (len[1] as u16)) as usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u16::from(len[0])` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:127:39 [INFO] [stderr] | [INFO] [stderr] 127 | let len = ((len[0] as u16) << 8 | (len[1] as u16)) as usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u16::from(len[1])` [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/api_frame.rs:181:25 [INFO] [stderr] | [INFO] [stderr] 181 | fn contains_digital(&self) -> bool { [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: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/api_frame.rs:386:5 [INFO] [stderr] | [INFO] [stderr] 386 | / pub fn parse<'b>(data: &'b [u8]) -> Result, ()> { [INFO] [stderr] 387 | | let len = data.len(); [INFO] [stderr] 388 | | let mut iter = data.iter(); [INFO] [stderr] 389 | | match *iter.next().unwrap() { [INFO] [stderr] ... | [INFO] [stderr] 657 | | } [INFO] [stderr] 658 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_lifetimes)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 26 [INFO] [stderr] --> src/api_frame.rs:386:5 [INFO] [stderr] | [INFO] [stderr] 386 | / pub fn parse<'b>(data: &'b [u8]) -> Result, ()> { [INFO] [stderr] 387 | | let len = data.len(); [INFO] [stderr] 388 | | let mut iter = data.iter(); [INFO] [stderr] 389 | | match *iter.next().unwrap() { [INFO] [stderr] ... | [INFO] [stderr] 657 | | } [INFO] [stderr] 658 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cyclomatic_complexity)] on by default [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:393:34 [INFO] [stderr] | [INFO] [stderr] 393 | let dest_addr = ((*iter.next().unwrap() as u64) << 56) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:394:24 [INFO] [stderr] | [INFO] [stderr] 394 | | ((*iter.next().unwrap() as u64) << 48) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:395:24 [INFO] [stderr] | [INFO] [stderr] 395 | | ((*iter.next().unwrap() as u64) << 40) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:396:24 [INFO] [stderr] | [INFO] [stderr] 396 | | ((*iter.next().unwrap() as u64) << 32) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:397:24 [INFO] [stderr] | [INFO] [stderr] 397 | | ((*iter.next().unwrap() as u64) << 24) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:398:24 [INFO] [stderr] | [INFO] [stderr] 398 | | ((*iter.next().unwrap() as u64) << 16) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:399:24 [INFO] [stderr] | [INFO] [stderr] 399 | | ((*iter.next().unwrap() as u64) << 8) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:400:23 [INFO] [stderr] | [INFO] [stderr] 400 | | (*iter.next().unwrap() as u64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:414:22 [INFO] [stderr] | [INFO] [stderr] 414 | ((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:414:61 [INFO] [stderr] | [INFO] [stderr] 414 | ((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:446:37 [INFO] [stderr] | [INFO] [stderr] 446 | let dest_addr_64 = ((*iter.next().unwrap() as u64) << 56) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:447:24 [INFO] [stderr] | [INFO] [stderr] 447 | | ((*iter.next().unwrap() as u64) << 48) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:448:24 [INFO] [stderr] | [INFO] [stderr] 448 | | ((*iter.next().unwrap() as u64) << 40) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:449:24 [INFO] [stderr] | [INFO] [stderr] 449 | | ((*iter.next().unwrap() as u64) << 32) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:450:24 [INFO] [stderr] | [INFO] [stderr] 450 | | ((*iter.next().unwrap() as u64) << 24) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:451:24 [INFO] [stderr] | [INFO] [stderr] 451 | | ((*iter.next().unwrap() as u64) << 16) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:452:24 [INFO] [stderr] | [INFO] [stderr] 452 | | ((*iter.next().unwrap() as u64) << 8) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:453:23 [INFO] [stderr] | [INFO] [stderr] 453 | | (*iter.next().unwrap() as u64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:455:22 [INFO] [stderr] | [INFO] [stderr] 455 | ((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:455:61 [INFO] [stderr] | [INFO] [stderr] 455 | ((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:467:36 [INFO] [stderr] | [INFO] [stderr] 467 | let source_addr = ((*iter.next().unwrap() as u64) << 56) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:468:24 [INFO] [stderr] | [INFO] [stderr] 468 | | ((*iter.next().unwrap() as u64) << 48) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:469:24 [INFO] [stderr] | [INFO] [stderr] 469 | | ((*iter.next().unwrap() as u64) << 40) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:470:24 [INFO] [stderr] | [INFO] [stderr] 470 | | ((*iter.next().unwrap() as u64) << 32) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:471:24 [INFO] [stderr] | [INFO] [stderr] 471 | | ((*iter.next().unwrap() as u64) << 24) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:472:24 [INFO] [stderr] | [INFO] [stderr] 472 | | ((*iter.next().unwrap() as u64) << 16) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:473:24 [INFO] [stderr] | [INFO] [stderr] 473 | | ((*iter.next().unwrap() as u64) << 8) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:474:23 [INFO] [stderr] | [INFO] [stderr] 474 | | (*iter.next().unwrap() as u64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:487:22 [INFO] [stderr] | [INFO] [stderr] 487 | ((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:487:61 [INFO] [stderr] | [INFO] [stderr] 487 | ((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:499:36 [INFO] [stderr] | [INFO] [stderr] 499 | let source_addr = ((*iter.next().unwrap() as u64) << 56) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:500:24 [INFO] [stderr] | [INFO] [stderr] 500 | | ((*iter.next().unwrap() as u64) << 48) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:501:24 [INFO] [stderr] | [INFO] [stderr] 501 | | ((*iter.next().unwrap() as u64) << 40) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:502:24 [INFO] [stderr] | [INFO] [stderr] 502 | | ((*iter.next().unwrap() as u64) << 32) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:503:24 [INFO] [stderr] | [INFO] [stderr] 503 | | ((*iter.next().unwrap() as u64) << 24) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:504:24 [INFO] [stderr] | [INFO] [stderr] 504 | | ((*iter.next().unwrap() as u64) << 16) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:505:24 [INFO] [stderr] | [INFO] [stderr] 505 | | ((*iter.next().unwrap() as u64) << 8) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:506:23 [INFO] [stderr] | [INFO] [stderr] 506 | | (*iter.next().unwrap() as u64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:511:22 [INFO] [stderr] | [INFO] [stderr] 511 | ((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:511:61 [INFO] [stderr] | [INFO] [stderr] 511 | ((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:514:27 [INFO] [stderr] | [INFO] [stderr] 514 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:514:66 [INFO] [stderr] | [INFO] [stderr] 514 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:519:27 [INFO] [stderr] | [INFO] [stderr] 519 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:519:66 [INFO] [stderr] | [INFO] [stderr] 519 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:524:27 [INFO] [stderr] | [INFO] [stderr] 524 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:524:66 [INFO] [stderr] | [INFO] [stderr] 524 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:529:27 [INFO] [stderr] | [INFO] [stderr] 529 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:529:66 [INFO] [stderr] | [INFO] [stderr] 529 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:534:27 [INFO] [stderr] | [INFO] [stderr] 534 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:534:66 [INFO] [stderr] | [INFO] [stderr] 534 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:552:22 [INFO] [stderr] | [INFO] [stderr] 552 | ((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:552:61 [INFO] [stderr] | [INFO] [stderr] 552 | ((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:557:22 [INFO] [stderr] | [INFO] [stderr] 557 | ((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:557:61 [INFO] [stderr] | [INFO] [stderr] 557 | ((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:560:27 [INFO] [stderr] | [INFO] [stderr] 560 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:560:66 [INFO] [stderr] | [INFO] [stderr] 560 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:565:27 [INFO] [stderr] | [INFO] [stderr] 565 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:565:66 [INFO] [stderr] | [INFO] [stderr] 565 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:570:27 [INFO] [stderr] | [INFO] [stderr] 570 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:570:66 [INFO] [stderr] | [INFO] [stderr] 570 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:575:27 [INFO] [stderr] | [INFO] [stderr] 575 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:575:66 [INFO] [stderr] | [INFO] [stderr] 575 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:580:27 [INFO] [stderr] | [INFO] [stderr] 580 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:580:66 [INFO] [stderr] | [INFO] [stderr] 580 | Some(((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:627:39 [INFO] [stderr] | [INFO] [stderr] 627 | let source_addr_64 = ((*iter.next().unwrap() as u64) << 56) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:628:24 [INFO] [stderr] | [INFO] [stderr] 628 | | ((*iter.next().unwrap() as u64) << 48) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:629:24 [INFO] [stderr] | [INFO] [stderr] 629 | | ((*iter.next().unwrap() as u64) << 40) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:630:24 [INFO] [stderr] | [INFO] [stderr] 630 | | ((*iter.next().unwrap() as u64) << 32) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:631:24 [INFO] [stderr] | [INFO] [stderr] 631 | | ((*iter.next().unwrap() as u64) << 24) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:632:24 [INFO] [stderr] | [INFO] [stderr] 632 | | ((*iter.next().unwrap() as u64) << 16) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:633:24 [INFO] [stderr] | [INFO] [stderr] 633 | | ((*iter.next().unwrap() as u64) << 8) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:634:23 [INFO] [stderr] | [INFO] [stderr] 634 | | (*iter.next().unwrap() as u64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:636:22 [INFO] [stderr] | [INFO] [stderr] 636 | ((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:636:61 [INFO] [stderr] | [INFO] [stderr] 636 | ((*iter.next().unwrap() as u16) << 8) | (*iter.next().unwrap() as u16); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(*iter.next().unwrap())` [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 u64 may become silently lossy if types change [INFO] [stderr] --> src/api_frame.rs:685:35 [INFO] [stderr] | [INFO] [stderr] 685 | Addr::Short(addr) => (addr as u64, 8), [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u64::from(addr)` [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: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/api_frame.rs:877:13 [INFO] [stderr] | [INFO] [stderr] 877 | b"Testing".iter().map(|v| *v), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `b"Testing".iter().cloned()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::map_clone)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/api_frame.rs:908:30 [INFO] [stderr] | [INFO] [stderr] 908 | FramePacker::new(data.iter().map(|v| *v), false, false).expect("packing error"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `data.iter().cloned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: Err(_) will match all errors, maybe not a good idea [INFO] [stderr] --> src/lib.rs:132:17 [INFO] [stderr] | [INFO] [stderr] 132 | Err(_) => panic!("Some error while waiting for OK"), // return Err(e.into()), [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_wild_err_arm)] on by default [INFO] [stderr] = note: to remove this warning, match each error separately or use unreachable macro [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_wild_err_arm [INFO] [stderr] [INFO] [stderr] warning: Err(_) will match all errors, maybe not a good idea [INFO] [stderr] --> src/lib.rs:140:17 [INFO] [stderr] | [INFO] [stderr] 140 | Err(_) => panic!("Some error while waiting for OK"), // return Err(e.into()), [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: to remove this warning, match each error separately or use unreachable macro [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_wild_err_arm [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/lib.rs:258:5 [INFO] [stderr] | [INFO] [stderr] 258 | / pub fn get_sender_receiver<'d>(&'d mut self) -> (XBeeApiSender<'d, E>, XBeeApiReceiver<'d, E>) { [INFO] [stderr] 259 | | let tx_queue = &mut self.tx_queue; [INFO] [stderr] 260 | | let rx_queue = &mut self.rx_queue; [INFO] [stderr] 261 | | [INFO] [stderr] ... | [INFO] [stderr] 271 | | (sender, receiver) [INFO] [stderr] 272 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/lib.rs:293:30 [INFO] [stderr] | [INFO] [stderr] 293 | self.tx_queue.extend(data.iter().map(|&x| x)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `data.iter().cloned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/lib.rs:299:68 [INFO] [stderr] | [INFO] [stderr] 299 | TxRequestIter::new(frame_id, addr, TxOptions::empty(), data.iter().map(|v| *v)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `data.iter().cloned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/lib.rs:312:13 [INFO] [stderr] | [INFO] [stderr] 312 | data.iter().map(|v| *v), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `data.iter().cloned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/lib.rs:353:5 [INFO] [stderr] | [INFO] [stderr] 353 | / pub fn unpack_and_parse_buffer<'d>(&'d self) -> Result, XBeeApiError> { [INFO] [stderr] 354 | | let ret = match api_frame::unpack_frame(self.rx_queue.as_slice(), false, false) { [INFO] [stderr] 355 | | Ok((frame, _rem)) => ApiData::parse(frame).map_err(|err| XBeeApiError::Parse(err)), [INFO] [stderr] 356 | | Err(err) => Err(XBeeApiError::Unpack(err)), [INFO] [stderr] ... | [INFO] [stderr] 359 | | ret [INFO] [stderr] 360 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/lib.rs:355:64 [INFO] [stderr] | [INFO] [stderr] 355 | Ok((frame, _rem)) => ApiData::parse(frame).map_err(|err| XBeeApiError::Parse(err)), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove closure as shown: `XBeeApiError::Parse` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_closure)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: passing a unit value to a function [INFO] [stderr] --> src/lib.rs:355:90 [INFO] [stderr] | [INFO] [stderr] 355 | Ok((frame, _rem)) => ApiData::parse(frame).map_err(|err| XBeeApiError::Parse(err)), [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unit_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unit_arg [INFO] [stderr] help: if you intended to pass a unit value, use a unit literal instead [INFO] [stderr] | [INFO] [stderr] 355 | Ok((frame, _rem)) => ApiData::parse(frame).map_err(|err| XBeeApiError::Parse(())), [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_some()` [INFO] [stderr] --> src/lib.rs:367:16 [INFO] [stderr] | [INFO] [stderr] 367 | if let Some(_) = self.rx_queue.pop_at(0) { [INFO] [stderr] | _________- ^^^^^^^ [INFO] [stderr] 368 | | self.remove_until_packet().map(|len| len + 1) [INFO] [stderr] 369 | | } else { [INFO] [stderr] 370 | | Ok(0) [INFO] [stderr] 371 | | } [INFO] [stderr] | |_________- help: try this: `if self.rx_queue.pop_at(0).is_some()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_pattern_matching)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 5.06s [INFO] running `"docker" "inspect" "e9f1169a669802c5a02025a389435172f8bc82a3eeed5f76920b492f12dc5ca1"` [INFO] running `"docker" "rm" "-f" "e9f1169a669802c5a02025a389435172f8bc82a3eeed5f76920b492f12dc5ca1"` [INFO] [stdout] e9f1169a669802c5a02025a389435172f8bc82a3eeed5f76920b492f12dc5ca1