[INFO] crate modbus-iiot 0.2.0 is already in cache [INFO] extracting crate modbus-iiot 0.2.0 into work/ex/clippy-test-run/sources/stable/reg/modbus-iiot/0.2.0 [INFO] extracting crate modbus-iiot 0.2.0 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/modbus-iiot/0.2.0 [INFO] validating manifest of modbus-iiot-0.2.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 modbus-iiot-0.2.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 modbus-iiot-0.2.0 [INFO] finished frobbing modbus-iiot-0.2.0 [INFO] frobbed toml for modbus-iiot-0.2.0 written to work/ex/clippy-test-run/sources/stable/reg/modbus-iiot/0.2.0/Cargo.toml [INFO] started frobbing modbus-iiot-0.2.0 [INFO] finished frobbing modbus-iiot-0.2.0 [INFO] frobbed toml for modbus-iiot-0.2.0 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/modbus-iiot/0.2.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 modbus-iiot-0.2.0 against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-4/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/reg/modbus-iiot/0.2.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] 7bf5d04475c4af1638482fe3fc19c921b853690c1d02368b9fe3bdc59fe87024 [INFO] running `"docker" "start" "-a" "7bf5d04475c4af1638482fe3fc19c921b853690c1d02368b9fe3bdc59fe87024"` [INFO] [stderr] Checking modbus-iiot v0.2.0 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/core/modbustelegram.rs:28:6 [INFO] [stderr] | [INFO] [stderr] 28 | transaction_identifier : transaction_identifier, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `transaction_identifier` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/core/modbustelegram.rs:29:6 [INFO] [stderr] | [INFO] [stderr] 29 | unit_identifier : unit_identifier, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `unit_identifier` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/core/modbustelegram.rs:30:6 [INFO] [stderr] | [INFO] [stderr] 30 | function_code : function_code, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `function_code` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/core/modbustelegram.rs:32:6 [INFO] [stderr] | [INFO] [stderr] 32 | expected_bytes : expected_bytes [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `expected_bytes` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/core/modbustelegram.rs:69:7 [INFO] [stderr] | [INFO] [stderr] 69 | function_code : function_code, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `function_code` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/tcp/master.rs:93:4 [INFO] [stderr] | [INFO] [stderr] 93 | port : port, [INFO] [stderr] | ^^^^^^^^^^^ help: replace it with: `port` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/core/modbustelegram.rs:28:6 [INFO] [stderr] | [INFO] [stderr] 28 | transaction_identifier : transaction_identifier, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `transaction_identifier` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/core/modbustelegram.rs:29:6 [INFO] [stderr] | [INFO] [stderr] 29 | unit_identifier : unit_identifier, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `unit_identifier` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/core/modbustelegram.rs:30:6 [INFO] [stderr] | [INFO] [stderr] 30 | function_code : function_code, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `function_code` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/core/modbustelegram.rs:32:6 [INFO] [stderr] | [INFO] [stderr] 32 | expected_bytes : expected_bytes [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `expected_bytes` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/core/modbustelegram.rs:69:7 [INFO] [stderr] | [INFO] [stderr] 69 | function_code : function_code, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `function_code` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/tcp/master.rs:93:4 [INFO] [stderr] | [INFO] [stderr] 93 | port : port, [INFO] [stderr] | ^^^^^^^^^^^ help: replace it with: `port` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/datatransformation.rs:111:2 [INFO] [stderr] | [INFO] [stderr] 111 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/datatransformation.rs:188:2 [INFO] [stderr] | [INFO] [stderr] 188 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/datatransformation.rs:226:2 [INFO] [stderr] | [INFO] [stderr] 226 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/datatransformation.rs:276:2 [INFO] [stderr] | [INFO] [stderr] 276 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/datatransformation.rs:334:2 [INFO] [stderr] | [INFO] [stderr] 334 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/datatransformation.rs:350:2 [INFO] [stderr] | [INFO] [stderr] 350 | return split_word_to_bytes ( dataword ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `split_word_to_bytes ( dataword )` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/datatransformation.rs:386:2 [INFO] [stderr] | [INFO] [stderr] 386 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:73:2 [INFO] [stderr] | [INFO] [stderr] 73 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:141:2 [INFO] [stderr] | [INFO] [stderr] 141 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:209:2 [INFO] [stderr] | [INFO] [stderr] 209 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:277:2 [INFO] [stderr] | [INFO] [stderr] 277 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:352:2 [INFO] [stderr] | [INFO] [stderr] 352 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:430:2 [INFO] [stderr] | [INFO] [stderr] 430 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:497:2 [INFO] [stderr] | [INFO] [stderr] 497 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:564:2 [INFO] [stderr] | [INFO] [stderr] 564 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:598:2 [INFO] [stderr] | [INFO] [stderr] 598 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:632:2 [INFO] [stderr] | [INFO] [stderr] 632 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:648:2 [INFO] [stderr] | [INFO] [stderr] 648 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:664:2 [INFO] [stderr] | [INFO] [stderr] 664 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:680:2 [INFO] [stderr] | [INFO] [stderr] 680 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:696:2 [INFO] [stderr] | [INFO] [stderr] 696 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:712:2 [INFO] [stderr] | [INFO] [stderr] 712 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:728:2 [INFO] [stderr] | [INFO] [stderr] 728 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:763:2 [INFO] [stderr] | [INFO] [stderr] 763 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:789:2 [INFO] [stderr] | [INFO] [stderr] 789 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:815:2 [INFO] [stderr] | [INFO] [stderr] 815 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:841:2 [INFO] [stderr] | [INFO] [stderr] 841 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:867:2 [INFO] [stderr] | [INFO] [stderr] 867 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:903:2 [INFO] [stderr] | [INFO] [stderr] 903 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:946:2 [INFO] [stderr] | [INFO] [stderr] 946 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:981:2 [INFO] [stderr] | [INFO] [stderr] 981 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1007:2 [INFO] [stderr] | [INFO] [stderr] 1007 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1075:2 [INFO] [stderr] | [INFO] [stderr] 1075 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1146:2 [INFO] [stderr] | [INFO] [stderr] 1146 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1184:2 [INFO] [stderr] | [INFO] [stderr] 1184 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1222:2 [INFO] [stderr] | [INFO] [stderr] 1222 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1249:2 [INFO] [stderr] | [INFO] [stderr] 1249 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1284:2 [INFO] [stderr] | [INFO] [stderr] 1284 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1331:2 [INFO] [stderr] | [INFO] [stderr] 1331 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1358:2 [INFO] [stderr] | [INFO] [stderr] 1358 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1374:2 [INFO] [stderr] | [INFO] [stderr] 1374 | return payload.len () >= MODBUS_READ_COIL_MINIMUM_PAYLOAD_LENGTH; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `payload.len () >= MODBUS_READ_COIL_MINIMUM_PAYLOAD_LENGTH` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1390:2 [INFO] [stderr] | [INFO] [stderr] 1390 | return payload.len () >= MODBUS_READ_REGISTER_MINIMUM_PAYLOAD_LENGTH; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `payload.len () >= MODBUS_READ_REGISTER_MINIMUM_PAYLOAD_LENGTH` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1406:2 [INFO] [stderr] | [INFO] [stderr] 1406 | return payload.len () == MODBUS_WRITE_MINIMUM_PAYLOAD_LENGTH; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `payload.len () == MODBUS_WRITE_MINIMUM_PAYLOAD_LENGTH` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1434:2 [INFO] [stderr] | [INFO] [stderr] 1434 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/core/methods.rs:1425:43 [INFO] [stderr] | [INFO] [stderr] 1425 | if ( start as u32 + quantity as u32 ) <= 0x0000FFFF [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x0000_FFFF` [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: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1462:2 [INFO] [stderr] | [INFO] [stderr] 1462 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1541:2 [INFO] [stderr] | [INFO] [stderr] 1541 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1620:2 [INFO] [stderr] | [INFO] [stderr] 1620 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1699:2 [INFO] [stderr] | [INFO] [stderr] 1699 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1780:2 [INFO] [stderr] | [INFO] [stderr] 1780 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1861:2 [INFO] [stderr] | [INFO] [stderr] 1861 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1942:2 [INFO] [stderr] | [INFO] [stderr] 1942 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1973:2 [INFO] [stderr] | [INFO] [stderr] 1973 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1987:2 [INFO] [stderr] | [INFO] [stderr] 1987 | return Ok( true ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok( true )` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:27:9 [INFO] [stderr] | [INFO] [stderr] 27 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:40:9 [INFO] [stderr] | [INFO] [stderr] 40 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:53:9 [INFO] [stderr] | [INFO] [stderr] 53 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:67:9 [INFO] [stderr] | [INFO] [stderr] 67 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:81:9 [INFO] [stderr] | [INFO] [stderr] 81 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:95:9 [INFO] [stderr] | [INFO] [stderr] 95 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/core/modbusreturn.rs:155:9 [INFO] [stderr] | [INFO] [stderr] 155 | / { [INFO] [stderr] 156 | | if self.is_good () [INFO] [stderr] 157 | | { [INFO] [stderr] 158 | | state = "good"; [INFO] [stderr] ... | [INFO] [stderr] 167 | | } [INFO] [stderr] 168 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::collapsible_if)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 155 | if self.is_good () [INFO] [stderr] 156 | { [INFO] [stderr] 157 | state = "good"; [INFO] [stderr] 158 | } [INFO] [stderr] 159 | else if self.is_bad () [INFO] [stderr] 160 | { [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:196:9 [INFO] [stderr] | [INFO] [stderr] 196 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:209:9 [INFO] [stderr] | [INFO] [stderr] 209 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:222:9 [INFO] [stderr] | [INFO] [stderr] 222 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:236:9 [INFO] [stderr] | [INFO] [stderr] 236 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:250:9 [INFO] [stderr] | [INFO] [stderr] 250 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:264:9 [INFO] [stderr] | [INFO] [stderr] 264 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/core/modbusreturn.rs:324:9 [INFO] [stderr] | [INFO] [stderr] 324 | / { [INFO] [stderr] 325 | | if self.is_good () [INFO] [stderr] 326 | | { [INFO] [stderr] 327 | | state = "good"; [INFO] [stderr] ... | [INFO] [stderr] 336 | | } [INFO] [stderr] 337 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 324 | if self.is_good () [INFO] [stderr] 325 | { [INFO] [stderr] 326 | state = "good"; [INFO] [stderr] 327 | } [INFO] [stderr] 328 | else if self.is_bad () [INFO] [stderr] 329 | { [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:364:9 [INFO] [stderr] | [INFO] [stderr] 364 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:376:9 [INFO] [stderr] | [INFO] [stderr] 376 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:388:9 [INFO] [stderr] | [INFO] [stderr] 388 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:400:9 [INFO] [stderr] | [INFO] [stderr] 400 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:412:9 [INFO] [stderr] | [INFO] [stderr] 412 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:470:5 [INFO] [stderr] | [INFO] [stderr] 470 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:492:9 [INFO] [stderr] | [INFO] [stderr] 492 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:508:9 [INFO] [stderr] | [INFO] [stderr] 508 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:524:9 [INFO] [stderr] | [INFO] [stderr] 524 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbustelegram.rs:41:3 [INFO] [stderr] | [INFO] [stderr] 41 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbustelegram.rs:85:3 [INFO] [stderr] | [INFO] [stderr] 85 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbustelegram.rs:107:3 [INFO] [stderr] | [INFO] [stderr] 107 | return Some( reply ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Some( reply )` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbustelegram.rs:123:3 [INFO] [stderr] | [INFO] [stderr] 123 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbustelegram.rs:139:3 [INFO] [stderr] | [INFO] [stderr] 139 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbustelegram.rs:144:3 [INFO] [stderr] | [INFO] [stderr] 144 | return Some( self.payload.clone () ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Some( self.payload.clone () )` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbustelegram.rs:227:2 [INFO] [stderr] | [INFO] [stderr] 227 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbustelegram.rs:279:2 [INFO] [stderr] | [INFO] [stderr] 279 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbustelegram.rs:323:2 [INFO] [stderr] | [INFO] [stderr] 323 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbustelegram.rs:367:2 [INFO] [stderr] | [INFO] [stderr] 367 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/timehandling.rs:16:9 [INFO] [stderr] | [INFO] [stderr] 16 | return Timestamp { time : SystemTime::now () }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Timestamp { time : SystemTime::now () }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/timehandling.rs:22:9 [INFO] [stderr] | [INFO] [stderr] 22 | return compute_milliseconds ( &elapsed_time ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `compute_milliseconds ( &elapsed_time )` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/timehandling.rs:27:9 [INFO] [stderr] | [INFO] [stderr] 27 | return self.time.elapsed ().unwrap (); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.time.elapsed ().unwrap ()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/timehandling.rs:45:5 [INFO] [stderr] | [INFO] [stderr] 45 | return ( duration.as_secs () * 1000 ) + ( ( duration.subsec_nanos () / 1000000 ) as u64 ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `( duration.as_secs () * 1000 ) + ( ( duration.subsec_nanos () / 1000000 ) as u64 )` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/core/timehandling.rs:45:76 [INFO] [stderr] | [INFO] [stderr] 45 | return ( duration.as_secs () * 1000 ) + ( ( duration.subsec_nanos () / 1000000 ) as u64 ); [INFO] [stderr] | ^^^^^^^ help: consider: `1_000_000` [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: unneeded return statement [INFO] [stderr] --> src/network/common.rs:34:2 [INFO] [stderr] | [INFO] [stderr] 34 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/network/socket.rs:85:5 [INFO] [stderr] | [INFO] [stderr] 85 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/network/socket.rs:64:5 [INFO] [stderr] | [INFO] [stderr] 64 | / { [INFO] [stderr] 65 | | if let Ok( socket ) = parse_socket_address ( address_string ) [INFO] [stderr] 66 | | { [INFO] [stderr] 67 | | reply = Ok( socket ); [INFO] [stderr] ... | [INFO] [stderr] 82 | | } [INFO] [stderr] 83 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 64 | if let Ok( socket ) = parse_socket_address ( address_string ) [INFO] [stderr] 65 | { [INFO] [stderr] 66 | reply = Ok( socket ); [INFO] [stderr] 67 | } [INFO] [stderr] 68 | else [INFO] [stderr] 69 | { [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/network/socket.rs:139:5 [INFO] [stderr] | [INFO] [stderr] 139 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/network/socket.rs:201:5 [INFO] [stderr] | [INFO] [stderr] 201 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:46:3 [INFO] [stderr] | [INFO] [stderr] 46 | return Self::new_with_port ( address, [INFO] [stderr] | _________^ [INFO] [stderr] 47 | | MODBUS_TCP_PORT ); [INFO] [stderr] | |_______________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 46 | Self::new_with_port ( address, [INFO] [stderr] 47 | MODBUS_TCP_PORT ) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:67:3 [INFO] [stderr] | [INFO] [stderr] 67 | return Self::new_with_port_and_unitid ( address, [INFO] [stderr] | _________^ [INFO] [stderr] 68 | | port, [INFO] [stderr] 69 | | MODBUS_DEFAULT_UNIT_IDENTIFIER ); [INFO] [stderr] | |_________________________________________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 67 | Self::new_with_port_and_unitid ( address, [INFO] [stderr] 68 | port, [INFO] [stderr] 69 | MODBUS_DEFAULT_UNIT_IDENTIFIER ) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:89:3 [INFO] [stderr] | [INFO] [stderr] 89 | return TcpClient [INFO] [stderr] | _________^ [INFO] [stderr] 90 | | { [INFO] [stderr] 91 | | address : address.to_string (), [INFO] [stderr] 92 | | last_transaction_id : MODBUS_TRANSACTION_ID_INITIALIZER, [INFO] [stderr] ... | [INFO] [stderr] 95 | | unit_identifier : unit_id [INFO] [stderr] 96 | | }; [INFO] [stderr] | |__________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 89 | TcpClient [INFO] [stderr] 90 | { [INFO] [stderr] 91 | address : address.to_string (), [INFO] [stderr] 92 | last_transaction_id : MODBUS_TRANSACTION_ID_INITIALIZER, [INFO] [stderr] 93 | port : port, [INFO] [stderr] 94 | stream : None, [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:146:3 [INFO] [stderr] | [INFO] [stderr] 146 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:165:3 [INFO] [stderr] | [INFO] [stderr] 165 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:181:3 [INFO] [stderr] | [INFO] [stderr] 181 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:217:2 [INFO] [stderr] | [INFO] [stderr] 217 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:264:3 [INFO] [stderr] | [INFO] [stderr] 264 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:307:3 [INFO] [stderr] | [INFO] [stderr] 307 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:349:3 [INFO] [stderr] | [INFO] [stderr] 349 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:391:3 [INFO] [stderr] | [INFO] [stderr] 391 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:433:3 [INFO] [stderr] | [INFO] [stderr] 433 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:475:3 [INFO] [stderr] | [INFO] [stderr] 475 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:518:3 [INFO] [stderr] | [INFO] [stderr] 518 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:560:3 [INFO] [stderr] | [INFO] [stderr] 560 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:596:2 [INFO] [stderr] | [INFO] [stderr] 596 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:631:2 [INFO] [stderr] | [INFO] [stderr] 631 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:655:3 [INFO] [stderr] | [INFO] [stderr] 655 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:675:3 [INFO] [stderr] | [INFO] [stderr] 675 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:695:3 [INFO] [stderr] | [INFO] [stderr] 695 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:715:3 [INFO] [stderr] | [INFO] [stderr] 715 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:731:3 [INFO] [stderr] | [INFO] [stderr] 731 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:740:3 [INFO] [stderr] | [INFO] [stderr] 740 | return response.is_good (); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `response.is_good ()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:758:3 [INFO] [stderr] | [INFO] [stderr] 758 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:767:3 [INFO] [stderr] | [INFO] [stderr] 767 | return response.is_good (); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `response.is_good ()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:802:2 [INFO] [stderr] | [INFO] [stderr] 802 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:831:2 [INFO] [stderr] | [INFO] [stderr] 831 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/masteraccess.rs:21:9 [INFO] [stderr] | [INFO] [stderr] 21 | return *coil == CoilValue::On; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `*coil == CoilValue::On` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/masteraccess.rs:37:9 [INFO] [stderr] | [INFO] [stderr] 37 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/masteraccess.rs:68:5 [INFO] [stderr] | [INFO] [stderr] 68 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/masteraccess.rs:368:2 [INFO] [stderr] | [INFO] [stderr] 368 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/streamtelegram.rs:24:2 [INFO] [stderr] | [INFO] [stderr] 24 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/streamtelegram.rs:43:2 [INFO] [stderr] | [INFO] [stderr] 43 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/streamtelegram.rs:69:2 [INFO] [stderr] | [INFO] [stderr] 69 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/datatransformation.rs:37:86 [INFO] [stderr] | [INFO] [stderr] 37 | pub fn append_bytearray_to_bytearray ( target_array : &mut Vec< u8 >, source_array : &Vec< u8 > ) [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/datatransformation.rs:96:53 [INFO] [stderr] | [INFO] [stderr] 96 | pub fn extract_byte_from_bytearray ( source_array : &Vec< u8 >, start_index : u8 ) -> Option< u8 > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/datatransformation.rs:158:54 [INFO] [stderr] | [INFO] [stderr] 158 | pub fn extract_bytes_from_bytearray ( source_array : &Vec< u8 >, start_index : u8, byte_count : u8 ) -> Option< Vec< u8 > > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/core/datatransformation.rs:174:6 [INFO] [stderr] | [INFO] [stderr] 174 | if copy_array.len () > 0 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!copy_array.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/datatransformation.rs:208:53 [INFO] [stderr] | [INFO] [stderr] 208 | pub fn extract_word_from_bytearray ( source_array : &Vec< u8 >, start_index : u8 ) -> Option< u16 > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/datatransformation.rs:269:42 [INFO] [stderr] | [INFO] [stderr] 269 | pub fn transform_bytes_to_word ( bytes : &Vec< u8 >, index : u8 ) -> u16 [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/core/datatransformation.rs:273:10 [INFO] [stderr] | [INFO] [stderr] 273 | reply = ( bytes[ index as usize ] as u16 ) << 8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(bytes[ index as usize ])` [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: manual implementation of an assign operation [INFO] [stderr] --> src/core/datatransformation.rs:274:5 [INFO] [stderr] | [INFO] [stderr] 274 | reply = reply | ( bytes[ index as usize + 1 ] as u16 ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `reply |= ( bytes[ index as usize + 1 ] as u16 )` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::assign_op_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/core/datatransformation.rs:274:21 [INFO] [stderr] | [INFO] [stderr] 274 | reply = reply | ( bytes[ index as usize + 1 ] as u16 ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(bytes[ index as usize + 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: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/datatransformation.rs:312:47 [INFO] [stderr] | [INFO] [stderr] 312 | pub fn transform_bytes_to_words ( databytes : &Vec< u8 >, start_index : u8, word_count :u8 ) -> Vec< u16 > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/datatransformation.rs:372:47 [INFO] [stderr] | [INFO] [stderr] 372 | pub fn transform_words_to_bytes ( datawords : &Vec< u16 > ) -> Vec< u8 > [INFO] [stderr] | ^^^^^^^^^^^ help: change this to: `&[u16]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/core/methods.rs:752:2 [INFO] [stderr] | [INFO] [stderr] 752 | let reply : Result< ModbusTelegram, String >; [INFO] [stderr] | _____^ [INFO] [stderr] 753 | | [INFO] [stderr] 754 | | if telegram.is_some () [INFO] [stderr] 755 | | { [INFO] [stderr] ... | [INFO] [stderr] 760 | | reply = Err( "Error while creating telegram.".to_string () ); [INFO] [stderr] 761 | | } [INFO] [stderr] | |_____^ help: it is more idiomatic to write: `let reply = if telegram.is_some () { Ok( telegram.unwrap () ) } else { Err( "Error while creating telegram.".to_string () ) };` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_let_if_seq)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/methods.rs:890:110 [INFO] [stderr] | [INFO] [stderr] 890 | fn prepare_payload_write_multiple_coils ( starting_address : u16, quantity_of_outputs : u16, output_values : &Vec< u8 > ) -> Vec< u8 > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/methods.rs:931:89 [INFO] [stderr] | [INFO] [stderr] 931 | fn prepare_payload_write_multiple_registers ( starting_address : u16, register_values : &Vec< u16 > ) -> Vec< u8 > [INFO] [stderr] | ^^^^^^^^^^^ help: change this to: `&[u16]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/methods.rs:1041:48 [INFO] [stderr] | [INFO] [stderr] 1041 | pub fn prepare_response_read_coils ( payload : &Vec< u8 >, coil_count : u16 ) -> Vec< bool > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/methods.rs:1112:58 [INFO] [stderr] | [INFO] [stderr] 1112 | pub fn prepare_response_read_discrete_inputs ( payload : &Vec< u8 >, input_count : u16 ) -> Vec< bool > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/methods.rs:1163:60 [INFO] [stderr] | [INFO] [stderr] 1163 | pub fn prepare_response_read_holding_registers ( payload : &Vec< u8 > ) -> Vec< u16 > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/methods.rs:1201:58 [INFO] [stderr] | [INFO] [stderr] 1201 | pub fn prepare_response_read_input_registers ( payload : &Vec< u8 > ) -> Vec< u16 > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/methods.rs:1238:58 [INFO] [stderr] | [INFO] [stderr] 1238 | pub fn prepare_response_write_multiple_coils ( payload : &Vec< u8 > ) -> Vec< u16 > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/core/methods.rs:1240:2 [INFO] [stderr] | [INFO] [stderr] 1240 | let mut reply : Vec< u16 > = vec![]; [INFO] [stderr] | _____^ [INFO] [stderr] 1241 | | [INFO] [stderr] 1242 | | if is_payload_write_length_valid ( &payload ) [INFO] [stderr] 1243 | | { [INFO] [stderr] ... | [INFO] [stderr] 1246 | | 2 ); [INFO] [stderr] 1247 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: you might not need `mut` at all [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] help: it is more idiomatic to write [INFO] [stderr] | [INFO] [stderr] 1240 | let reply = if is_payload_write_length_valid ( &payload ) { transform_bytes_to_words ( &payload, [INFO] [stderr] 1241 | 0, [INFO] [stderr] 1242 | 2 ) } else { < [ _ ] > :: into_vec ( box [ $ ( $ x ) , * ] ) }; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/methods.rs:1265:62 [INFO] [stderr] | [INFO] [stderr] 1265 | pub fn prepare_response_write_multiple_registers ( payload : &Vec< u8 > ) -> Vec< u16 > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/methods.rs:1311:55 [INFO] [stderr] | [INFO] [stderr] 1311 | pub fn prepare_response_write_single_coil ( payload : &Vec< u8 > ) -> Vec< bool > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/methods.rs:1347:59 [INFO] [stderr] | [INFO] [stderr] 1347 | pub fn prepare_response_write_single_register ( payload : &Vec< u8 > ) -> Vec< u16 > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/core/methods.rs:1349:2 [INFO] [stderr] | [INFO] [stderr] 1349 | let mut reply : Vec< u16 > = vec![]; [INFO] [stderr] | _____^ [INFO] [stderr] 1350 | | [INFO] [stderr] 1351 | | if is_payload_write_length_valid ( &payload ) [INFO] [stderr] 1352 | | { [INFO] [stderr] ... | [INFO] [stderr] 1355 | | 2 ); [INFO] [stderr] 1356 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: you might not need `mut` at all [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] help: it is more idiomatic to write [INFO] [stderr] | [INFO] [stderr] 1349 | let reply = if is_payload_write_length_valid ( &payload ) { transform_bytes_to_words ( &payload, [INFO] [stderr] 1350 | 0, [INFO] [stderr] 1351 | 2 ) } else { < [ _ ] > :: into_vec ( box [ $ ( $ x ) , * ] ) }; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/methods.rs:1372:49 [INFO] [stderr] | [INFO] [stderr] 1372 | fn is_payload_read_coil_length_valid ( payload: &Vec< u8 > ) -> bool [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/methods.rs:1388:53 [INFO] [stderr] | [INFO] [stderr] 1388 | fn is_payload_read_register_length_valid ( payload: &Vec< u8 > ) -> bool [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/methods.rs:1404:45 [INFO] [stderr] | [INFO] [stderr] 1404 | fn is_payload_write_length_valid ( payload: &Vec< u8 > ) -> bool [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/core/methods.rs:1423:2 [INFO] [stderr] | [INFO] [stderr] 1423 | let reply : bool; [INFO] [stderr] | _____^ [INFO] [stderr] 1424 | | [INFO] [stderr] 1425 | | if ( start as u32 + quantity as u32 ) <= 0x0000FFFF [INFO] [stderr] 1426 | | { [INFO] [stderr] ... | [INFO] [stderr] 1431 | | reply = false; [INFO] [stderr] 1432 | | } [INFO] [stderr] | |_____^ help: it is more idiomatic to write: `let reply = if ( start as u32 + quantity as u32 ) <= 0x0000FFFF { true } else { false };` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/core/methods.rs:1425:7 [INFO] [stderr] | [INFO] [stderr] 1425 | if ( start as u32 + quantity as u32 ) <= 0x0000FFFF [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u32::from(start)` [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 u32 may become silently lossy if types change [INFO] [stderr] --> src/core/methods.rs:1425:22 [INFO] [stderr] | [INFO] [stderr] 1425 | if ( start as u32 + quantity as u32 ) <= 0x0000FFFF [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u32::from(quantity)` [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: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/core/methods.rs:1451:2 [INFO] [stderr] | [INFO] [stderr] 1451 | let reply : bool; [INFO] [stderr] | _____^ [INFO] [stderr] 1452 | | [INFO] [stderr] 1453 | | if value >= min_value && value <= max_value [INFO] [stderr] 1454 | | { [INFO] [stderr] ... | [INFO] [stderr] 1459 | | reply = false; [INFO] [stderr] 1460 | | } [INFO] [stderr] | |_____^ help: it is more idiomatic to write: `let reply = if value >= min_value && value <= max_value { true } else { false };` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/core/methods.rs:1962:2 [INFO] [stderr] | [INFO] [stderr] 1962 | let reply : Result< bool, String >; [INFO] [stderr] | _____^ [INFO] [stderr] 1963 | | [INFO] [stderr] 1964 | | if output_value == 0x0000 || output_value == 0xFF00 [INFO] [stderr] 1965 | | { [INFO] [stderr] ... | [INFO] [stderr] 1970 | | reply = Err( "Error at parameter output_value - valid values are only 0 [0x0000] or 65280 [0xFF00].".to_string () ); [INFO] [stderr] 1971 | | } [INFO] [stderr] | |_____^ help: it is more idiomatic to write: `let reply = if output_value == 0x0000 || output_value == 0xFF00 { Ok( true ) } else { Err( "Error at parameter output_value - valid values are only 0 [0x0000] or 65280 [0xFF00].".to_string () ) };` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/core/modbusreturn.rs:381:9 [INFO] [stderr] | [INFO] [stderr] 381 | / let mut reply : u8 = 0x00; [INFO] [stderr] 382 | | [INFO] [stderr] 383 | | if self.error_code.is_some () [INFO] [stderr] 384 | | { [INFO] [stderr] 385 | | reply = self.error_code.unwrap (); [INFO] [stderr] 386 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let reply = if self.error_code.is_some () { self.error_code.unwrap () } else { 0x00 };` [INFO] [stderr] | [INFO] [stderr] = note: you might not need `mut` at all [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/core/modbusreturn.rs:393:9 [INFO] [stderr] | [INFO] [stderr] 393 | / let mut reply : u8 = 0x00; [INFO] [stderr] 394 | | [INFO] [stderr] 395 | | if self.exception_code.is_some () [INFO] [stderr] 396 | | { [INFO] [stderr] 397 | | reply = self.exception_code.unwrap (); [INFO] [stderr] 398 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let reply = if self.exception_code.is_some () { self.exception_code.unwrap () } else { 0x00 };` [INFO] [stderr] | [INFO] [stderr] = note: you might not need `mut` at all [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/core/modbusreturn.rs:405:9 [INFO] [stderr] | [INFO] [stderr] 405 | / let mut reply : String = "Err".to_string (); [INFO] [stderr] 406 | | [INFO] [stderr] 407 | | if self.message.is_some () [INFO] [stderr] 408 | | { [INFO] [stderr] 409 | | reply = self.message.unwrap (); [INFO] [stderr] 410 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let reply = if self.message.is_some () { self.message.unwrap () } else { "Err".to_string () };` [INFO] [stderr] | [INFO] [stderr] = note: you might not need `mut` at all [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/core/modbusreturn.rs:497:9 [INFO] [stderr] | [INFO] [stderr] 497 | / let reply : Vec< T >; [INFO] [stderr] 498 | | [INFO] [stderr] 499 | | if self.data.is_some () [INFO] [stderr] 500 | | { [INFO] [stderr] ... | [INFO] [stderr] 505 | | reply = vec![]; [INFO] [stderr] 506 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let reply = if self.data.is_some () { self.data.take ().unwrap () } else { < [ _ ] > :: into_vec ( box [ $ ( $ x ) , * ] ) };` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/core/modbusreturn.rs:513:9 [INFO] [stderr] | [INFO] [stderr] 513 | / let reply : u64; [INFO] [stderr] 514 | | [INFO] [stderr] 515 | | if self.duration_in_milliseconds.is_some () [INFO] [stderr] 516 | | { [INFO] [stderr] ... | [INFO] [stderr] 521 | | reply = 0; [INFO] [stderr] 522 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let reply = if self.duration_in_milliseconds.is_some () { *self.duration_in_milliseconds.as_ref ().unwrap () } else { 0 };` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/modbustelegram.rs:19:97 [INFO] [stderr] | [INFO] [stderr] 19 | pub fn new ( transaction_identifier : u16, unit_identifier : u8, function_code : u8, payload : &Vec< u8 >, expected_bytes : u8 ) -> Option< ModbusTelegram > [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] help: change this to [INFO] [stderr] | [INFO] [stderr] 19 | pub fn new ( transaction_identifier : u16, unit_identifier : u8, function_code : u8, payload : &[u8], expected_bytes : u8 ) -> Option< ModbusTelegram > [INFO] [stderr] | ^^^^^ [INFO] [stderr] help: change `payload.clone ()` to [INFO] [stderr] | [INFO] [stderr] 31 | payload : payload.to_owned(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/core/modbustelegram.rs:21:3 [INFO] [stderr] | [INFO] [stderr] 21 | let reply : Option< ModbusTelegram >; [INFO] [stderr] | _________^ [INFO] [stderr] 22 | | [INFO] [stderr] 23 | | if transaction_identifier > 0x0000 && function_code > 0x00 [INFO] [stderr] 24 | | { [INFO] [stderr] ... | [INFO] [stderr] 38 | | reply = None; [INFO] [stderr] 39 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] help: it is more idiomatic to write [INFO] [stderr] | [INFO] [stderr] 21 | let reply = if transaction_identifier > 0x0000 && function_code > 0x00 { Some( [INFO] [stderr] 22 | ModbusTelegram [INFO] [stderr] 23 | { [INFO] [stderr] 24 | transaction_identifier : transaction_identifier, [INFO] [stderr] 25 | unit_identifier : unit_identifier, [INFO] [stderr] 26 | function_code : function_code, [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/modbustelegram.rs:44:34 [INFO] [stderr] | [INFO] [stderr] 44 | pub fn new_from_bytes ( bytes : &Vec< u8 > ) -> Option< ModbusTelegram > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/core/modbustelegram.rs:112:3 [INFO] [stderr] | [INFO] [stderr] 112 | let reply : Option< u8 >; [INFO] [stderr] | _________^ [INFO] [stderr] 113 | | [INFO] [stderr] 114 | | if self.expected_bytes > MODBUS_HEADER_SIZE [INFO] [stderr] 115 | | { [INFO] [stderr] ... | [INFO] [stderr] 120 | | reply = None; [INFO] [stderr] 121 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let reply = if self.expected_bytes > MODBUS_HEADER_SIZE { Some( self.expected_bytes ) } else { None };` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/core/modbustelegram.rs:128:3 [INFO] [stderr] | [INFO] [stderr] 128 | let reply : Option< u8 >; [INFO] [stderr] | _________^ [INFO] [stderr] 129 | | [INFO] [stderr] 130 | | if self.function_code > 0x00 [INFO] [stderr] 131 | | { [INFO] [stderr] ... | [INFO] [stderr] 136 | | reply = None; [INFO] [stderr] 137 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let reply = if self.function_code > 0x00 { Some( self.function_code ) } else { None };` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/modbustelegram.rs:210:67 [INFO] [stderr] | [INFO] [stderr] 210 | fn extract_payload_by_function_code ( function_code : u8, bytes : &Vec< u8 > ) -> Option< Vec< u8 > > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/modbustelegram.rs:267:46 [INFO] [stderr] | [INFO] [stderr] 267 | fn extract_payload_with_byte_count ( bytes : &Vec< u8 > ) -> Option< Vec< u8 > > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/modbustelegram.rs:313:49 [INFO] [stderr] | [INFO] [stderr] 313 | fn extract_payload_without_byte_count ( bytes : &Vec< u8 > ) -> Option< Vec< u8 > > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `core::timehandling::Timestamp` [INFO] [stderr] --> src/core/timehandling.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | / pub fn new () -> Timestamp [INFO] [stderr] 15 | | { [INFO] [stderr] 16 | | return Timestamp { time : SystemTime::now () }; [INFO] [stderr] 17 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 12 | impl Default for core::timehandling::Timestamp { [INFO] [stderr] 13 | fn default() -> Self { [INFO] [stderr] 14 | Self::new() [INFO] [stderr] 15 | } [INFO] [stderr] 16 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/core/timehandling.rs:45:45 [INFO] [stderr] | [INFO] [stderr] 45 | return ( duration.as_secs () * 1000 ) + ( ( duration.subsec_nanos () / 1000000 ) as u64 ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from( duration.subsec_nanos () / 1000000 )` [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: Calling `subsec_millis()` is more concise than this calculation [INFO] [stderr] --> src/core/timehandling.rs:45:47 [INFO] [stderr] | [INFO] [stderr] 45 | return ( duration.as_secs () * 1000 ) + ( ( duration.subsec_nanos () / 1000000 ) as u64 ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `duration.subsec_millis()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::duration_subsec)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#duration_subsec [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_ok()` [INFO] [stderr] --> src/tcp/master.rs:158:12 [INFO] [stderr] | [INFO] [stderr] 158 | if let Ok( _ ) = connection.shutdown ( Shutdown:: Both ) [INFO] [stderr] | _________________- ^^^^^^^ [INFO] [stderr] 159 | | { [INFO] [stderr] 160 | | reply = true; [INFO] [stderr] 161 | | } [INFO] [stderr] | |_________________- help: try this: `if connection.shutdown ( Shutdown:: Both ).is_ok()` [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: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/tcp/master.rs:206:2 [INFO] [stderr] | [INFO] [stderr] 206 | let reply : u16; [INFO] [stderr] | _____^ [INFO] [stderr] 207 | | [INFO] [stderr] 208 | | if last_transaction_id == 0xFFFF [INFO] [stderr] 209 | | { [INFO] [stderr] ... | [INFO] [stderr] 214 | | reply = last_transaction_id + 1; [INFO] [stderr] 215 | | } [INFO] [stderr] | |_____^ help: it is more idiomatic to write: `let reply = if last_transaction_id == 0xFFFF { MODBUS_TRANSACTION_ID_INITIALIZER } else { last_transaction_id + 1 };` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/tcp/master.rs:584:2 [INFO] [stderr] | [INFO] [stderr] 584 | let reply : ModbusReturnCoils; [INFO] [stderr] | _____^ [INFO] [stderr] 585 | | [INFO] [stderr] 586 | | if response_data.len () > 0 [INFO] [stderr] 587 | | { [INFO] [stderr] ... | [INFO] [stderr] 593 | | reply = ModbusReturnCoils::Bad( ReturnBad::new_with_message ( "modbus response data is invalid" ) ); [INFO] [stderr] 594 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] help: it is more idiomatic to write [INFO] [stderr] | [INFO] [stderr] 584 | let reply = if response_data.len () > 0 { ModbusReturnCoils::Good( ReturnGood::new ( response_data, [INFO] [stderr] 585 | start_time.elapsed_milliseconds () ) ) } else { ModbusReturnCoils::Bad( ReturnBad::new_with_message ( "modbus response data is invalid" ) ) }; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/tcp/master.rs:586:5 [INFO] [stderr] | [INFO] [stderr] 586 | if response_data.len () > 0 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!response_data.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/tcp/master.rs:619:2 [INFO] [stderr] | [INFO] [stderr] 619 | let reply : ModbusReturnRegisters; [INFO] [stderr] | _____^ [INFO] [stderr] 620 | | [INFO] [stderr] 621 | | if response_data.len () > 0 [INFO] [stderr] 622 | | { [INFO] [stderr] ... | [INFO] [stderr] 628 | | reply = ModbusReturnRegisters::Bad( ReturnBad::new_with_message ( "modbus response data is invalid" ) ); [INFO] [stderr] 629 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] help: it is more idiomatic to write [INFO] [stderr] | [INFO] [stderr] 619 | let reply = if response_data.len () > 0 { ModbusReturnRegisters::Good( ReturnGood::new ( response_data, [INFO] [stderr] 620 | start_time.elapsed_milliseconds () ) ) } else { ModbusReturnRegisters::Bad( ReturnBad::new_with_message ( "modbus response data is invalid" ) ) }; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/tcp/master.rs:621:5 [INFO] [stderr] | [INFO] [stderr] 621 | if response_data.len () > 0 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!response_data.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/tcp/master.rs:745:3 [INFO] [stderr] | [INFO] [stderr] 745 | let mut reply : bool = false; [INFO] [stderr] | _________^ [INFO] [stderr] 746 | | [INFO] [stderr] 747 | | if coils.len () > 0 [INFO] [stderr] 748 | | { [INFO] [stderr] ... | [INFO] [stderr] 755 | | reply = response.is_good (); [INFO] [stderr] 756 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let reply = if coils.len () > 0 { ..; response.is_good () } else { false };` [INFO] [stderr] | [INFO] [stderr] = note: you might not need `mut` at all [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/tcp/master.rs:747:6 [INFO] [stderr] | [INFO] [stderr] 747 | if coils.len () > 0 [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!coils.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/tcp/master.rs:824:2 [INFO] [stderr] | [INFO] [stderr] 824 | let mut reply : Vec< u16 > = vec![]; [INFO] [stderr] | _____^ [INFO] [stderr] 825 | | [INFO] [stderr] 826 | | if returned_registers.is_good () [INFO] [stderr] 827 | | { [INFO] [stderr] 828 | | reply = returned_registers.unwrap_good ().get_data (); [INFO] [stderr] 829 | | } [INFO] [stderr] | |_____^ help: it is more idiomatic to write: `let reply = if returned_registers.is_good () { returned_registers.unwrap_good ().get_data () } else { < [ _ ] > :: into_vec ( box [ $ ( $ x ) , * ] ) };` [INFO] [stderr] | [INFO] [stderr] = note: you might not need `mut` at all [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/tcp/masteraccess.rs:19:25 [INFO] [stderr] | [INFO] [stderr] 19 | pub fn get ( coil : &CoilValue ) -> bool [INFO] [stderr] | ^^^^^^^^^^ help: consider passing by value instead: `CoilValue` [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: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/tcp/masteraccess.rs:26:9 [INFO] [stderr] | [INFO] [stderr] 26 | / let reply : CoilValue; [INFO] [stderr] 27 | | [INFO] [stderr] 28 | | if on [INFO] [stderr] 29 | | { [INFO] [stderr] ... | [INFO] [stderr] 34 | | reply = CoilValue::Off; [INFO] [stderr] 35 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let reply = if on { CoilValue::On } else { CoilValue::Off };` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/tcp/masteraccess.rs:55:47 [INFO] [stderr] | [INFO] [stderr] 55 | pub fn convert_for_write_single_coil ( coil : &CoilValue ) -> u16 [INFO] [stderr] | ^^^^^^^^^^ help: consider passing by value instead: `CoilValue` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/tcp/masteraccess.rs:57:5 [INFO] [stderr] | [INFO] [stderr] 57 | / let reply : u16; [INFO] [stderr] 58 | | [INFO] [stderr] 59 | | if CoilValue::get ( coil ) [INFO] [stderr] 60 | | { [INFO] [stderr] ... | [INFO] [stderr] 65 | | reply = WRITE_SINGLE_COIL_OFF; [INFO] [stderr] 66 | | } [INFO] [stderr] | |_____^ help: it is more idiomatic to write: `let reply = if CoilValue::get ( coil ) { WRITE_SINGLE_COIL_ON } else { WRITE_SINGLE_COIL_OFF };` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/tcp/masteraccess.rs:337:47 [INFO] [stderr] | [INFO] [stderr] 337 | pub fn transform_coils_to_bytearray ( coils : &Vec< CoilValue > ) -> Vec< u8 > [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: change this to: `&[CoilValue]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/tcp/masteraccess.rs:341:5 [INFO] [stderr] | [INFO] [stderr] 341 | if coils.len () > 0 [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!coils.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/datatransformation.rs:111:2 [INFO] [stderr] | [INFO] [stderr] 111 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/datatransformation.rs:188:2 [INFO] [stderr] | [INFO] [stderr] 188 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/datatransformation.rs:226:2 [INFO] [stderr] | [INFO] [stderr] 226 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/datatransformation.rs:276:2 [INFO] [stderr] | [INFO] [stderr] 276 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/datatransformation.rs:334:2 [INFO] [stderr] | [INFO] [stderr] 334 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/datatransformation.rs:350:2 [INFO] [stderr] | [INFO] [stderr] 350 | return split_word_to_bytes ( dataword ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `split_word_to_bytes ( dataword )` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/datatransformation.rs:386:2 [INFO] [stderr] | [INFO] [stderr] 386 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:73:2 [INFO] [stderr] | [INFO] [stderr] 73 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:141:2 [INFO] [stderr] | [INFO] [stderr] 141 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:209:2 [INFO] [stderr] | [INFO] [stderr] 209 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:277:2 [INFO] [stderr] | [INFO] [stderr] 277 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:352:2 [INFO] [stderr] | [INFO] [stderr] 352 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:430:2 [INFO] [stderr] | [INFO] [stderr] 430 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:497:2 [INFO] [stderr] | [INFO] [stderr] 497 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:564:2 [INFO] [stderr] | [INFO] [stderr] 564 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:598:2 [INFO] [stderr] | [INFO] [stderr] 598 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:632:2 [INFO] [stderr] | [INFO] [stderr] 632 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:648:2 [INFO] [stderr] | [INFO] [stderr] 648 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:664:2 [INFO] [stderr] | [INFO] [stderr] 664 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:680:2 [INFO] [stderr] | [INFO] [stderr] 680 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:696:2 [INFO] [stderr] | [INFO] [stderr] 696 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:712:2 [INFO] [stderr] | [INFO] [stderr] 712 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:728:2 [INFO] [stderr] | [INFO] [stderr] 728 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:763:2 [INFO] [stderr] | [INFO] [stderr] 763 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:789:2 [INFO] [stderr] | [INFO] [stderr] 789 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:815:2 [INFO] [stderr] | [INFO] [stderr] 815 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:841:2 [INFO] [stderr] | [INFO] [stderr] 841 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:867:2 [INFO] [stderr] | [INFO] [stderr] 867 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:903:2 [INFO] [stderr] | [INFO] [stderr] 903 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:946:2 [INFO] [stderr] | [INFO] [stderr] 946 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:981:2 [INFO] [stderr] | [INFO] [stderr] 981 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1007:2 [INFO] [stderr] | [INFO] [stderr] 1007 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1075:2 [INFO] [stderr] | [INFO] [stderr] 1075 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1146:2 [INFO] [stderr] | [INFO] [stderr] 1146 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1184:2 [INFO] [stderr] | [INFO] [stderr] 1184 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1222:2 [INFO] [stderr] | [INFO] [stderr] 1222 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1249:2 [INFO] [stderr] | [INFO] [stderr] 1249 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1284:2 [INFO] [stderr] | [INFO] [stderr] 1284 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1331:2 [INFO] [stderr] | [INFO] [stderr] 1331 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1358:2 [INFO] [stderr] | [INFO] [stderr] 1358 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1374:2 [INFO] [stderr] | [INFO] [stderr] 1374 | return payload.len () >= MODBUS_READ_COIL_MINIMUM_PAYLOAD_LENGTH; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `payload.len () >= MODBUS_READ_COIL_MINIMUM_PAYLOAD_LENGTH` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1390:2 [INFO] [stderr] | [INFO] [stderr] 1390 | return payload.len () >= MODBUS_READ_REGISTER_MINIMUM_PAYLOAD_LENGTH; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `payload.len () >= MODBUS_READ_REGISTER_MINIMUM_PAYLOAD_LENGTH` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1406:2 [INFO] [stderr] | [INFO] [stderr] 1406 | return payload.len () == MODBUS_WRITE_MINIMUM_PAYLOAD_LENGTH; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `payload.len () == MODBUS_WRITE_MINIMUM_PAYLOAD_LENGTH` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1434:2 [INFO] [stderr] | [INFO] [stderr] 1434 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/core/methods.rs:1425:43 [INFO] [stderr] | [INFO] [stderr] 1425 | if ( start as u32 + quantity as u32 ) <= 0x0000FFFF [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x0000_FFFF` [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: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1462:2 [INFO] [stderr] | [INFO] [stderr] 1462 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1541:2 [INFO] [stderr] | [INFO] [stderr] 1541 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1620:2 [INFO] [stderr] | [INFO] [stderr] 1620 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1699:2 [INFO] [stderr] | [INFO] [stderr] 1699 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1780:2 [INFO] [stderr] | [INFO] [stderr] 1780 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1861:2 [INFO] [stderr] | [INFO] [stderr] 1861 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1942:2 [INFO] [stderr] | [INFO] [stderr] 1942 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1973:2 [INFO] [stderr] | [INFO] [stderr] 1973 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/methods.rs:1987:2 [INFO] [stderr] | [INFO] [stderr] 1987 | return Ok( true ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok( true )` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:27:9 [INFO] [stderr] | [INFO] [stderr] 27 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:40:9 [INFO] [stderr] | [INFO] [stderr] 40 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:53:9 [INFO] [stderr] | [INFO] [stderr] 53 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:67:9 [INFO] [stderr] | [INFO] [stderr] 67 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:81:9 [INFO] [stderr] | [INFO] [stderr] 81 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:95:9 [INFO] [stderr] | [INFO] [stderr] 95 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/core/modbusreturn.rs:155:9 [INFO] [stderr] | [INFO] [stderr] 155 | / { [INFO] [stderr] 156 | | if self.is_good () [INFO] [stderr] 157 | | { [INFO] [stderr] 158 | | state = "good"; [INFO] [stderr] ... | [INFO] [stderr] 167 | | } [INFO] [stderr] 168 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::collapsible_if)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 155 | if self.is_good () [INFO] [stderr] 156 | { [INFO] [stderr] 157 | state = "good"; [INFO] [stderr] 158 | } [INFO] [stderr] 159 | else if self.is_bad () [INFO] [stderr] 160 | { [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:196:9 [INFO] [stderr] | [INFO] [stderr] 196 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:209:9 [INFO] [stderr] | [INFO] [stderr] 209 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:222:9 [INFO] [stderr] | [INFO] [stderr] 222 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:236:9 [INFO] [stderr] | [INFO] [stderr] 236 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:250:9 [INFO] [stderr] | [INFO] [stderr] 250 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:264:9 [INFO] [stderr] | [INFO] [stderr] 264 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/core/modbusreturn.rs:324:9 [INFO] [stderr] | [INFO] [stderr] 324 | / { [INFO] [stderr] 325 | | if self.is_good () [INFO] [stderr] 326 | | { [INFO] [stderr] 327 | | state = "good"; [INFO] [stderr] ... | [INFO] [stderr] 336 | | } [INFO] [stderr] 337 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 324 | if self.is_good () [INFO] [stderr] 325 | { [INFO] [stderr] 326 | state = "good"; [INFO] [stderr] 327 | } [INFO] [stderr] 328 | else if self.is_bad () [INFO] [stderr] 329 | { [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:364:9 [INFO] [stderr] | [INFO] [stderr] 364 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:376:9 [INFO] [stderr] | [INFO] [stderr] 376 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:388:9 [INFO] [stderr] | [INFO] [stderr] 388 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:400:9 [INFO] [stderr] | [INFO] [stderr] 400 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:412:9 [INFO] [stderr] | [INFO] [stderr] 412 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:470:5 [INFO] [stderr] | [INFO] [stderr] 470 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:492:9 [INFO] [stderr] | [INFO] [stderr] 492 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:508:9 [INFO] [stderr] | [INFO] [stderr] 508 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbusreturn.rs:524:9 [INFO] [stderr] | [INFO] [stderr] 524 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbustelegram.rs:41:3 [INFO] [stderr] | [INFO] [stderr] 41 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbustelegram.rs:85:3 [INFO] [stderr] | [INFO] [stderr] 85 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbustelegram.rs:107:3 [INFO] [stderr] | [INFO] [stderr] 107 | return Some( reply ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Some( reply )` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbustelegram.rs:123:3 [INFO] [stderr] | [INFO] [stderr] 123 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbustelegram.rs:139:3 [INFO] [stderr] | [INFO] [stderr] 139 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbustelegram.rs:144:3 [INFO] [stderr] | [INFO] [stderr] 144 | return Some( self.payload.clone () ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Some( self.payload.clone () )` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbustelegram.rs:227:2 [INFO] [stderr] | [INFO] [stderr] 227 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbustelegram.rs:279:2 [INFO] [stderr] | [INFO] [stderr] 279 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbustelegram.rs:323:2 [INFO] [stderr] | [INFO] [stderr] 323 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/modbustelegram.rs:367:2 [INFO] [stderr] | [INFO] [stderr] 367 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/timehandling.rs:16:9 [INFO] [stderr] | [INFO] [stderr] 16 | return Timestamp { time : SystemTime::now () }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Timestamp { time : SystemTime::now () }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/timehandling.rs:22:9 [INFO] [stderr] | [INFO] [stderr] 22 | return compute_milliseconds ( &elapsed_time ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `compute_milliseconds ( &elapsed_time )` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/core/timehandling.rs:27:9 [INFO] [stderr] | [INFO] [stderr] 27 | return self.time.elapsed ().unwrap (); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.time.elapsed ().unwrap ()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/core/timehandling.rs:37:48 [INFO] [stderr] | [INFO] [stderr] 37 | 2000000 ); [INFO] [stderr] | ^^^^^^^ help: consider: `2_000_000` [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: unneeded return statement [INFO] [stderr] --> src/core/timehandling.rs:45:5 [INFO] [stderr] | [INFO] [stderr] 45 | return ( duration.as_secs () * 1000 ) + ( ( duration.subsec_nanos () / 1000000 ) as u64 ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `( duration.as_secs () * 1000 ) + ( ( duration.subsec_nanos () / 1000000 ) as u64 )` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/core/timehandling.rs:45:76 [INFO] [stderr] | [INFO] [stderr] 45 | return ( duration.as_secs () * 1000 ) + ( ( duration.subsec_nanos () / 1000000 ) as u64 ); [INFO] [stderr] | ^^^^^^^ help: consider: `1_000_000` [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: unneeded return statement [INFO] [stderr] --> src/network/common.rs:34:2 [INFO] [stderr] | [INFO] [stderr] 34 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/network/socket.rs:85:5 [INFO] [stderr] | [INFO] [stderr] 85 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/network/socket.rs:64:5 [INFO] [stderr] | [INFO] [stderr] 64 | / { [INFO] [stderr] 65 | | if let Ok( socket ) = parse_socket_address ( address_string ) [INFO] [stderr] 66 | | { [INFO] [stderr] 67 | | reply = Ok( socket ); [INFO] [stderr] ... | [INFO] [stderr] 82 | | } [INFO] [stderr] 83 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 64 | if let Ok( socket ) = parse_socket_address ( address_string ) [INFO] [stderr] 65 | { [INFO] [stderr] 66 | reply = Ok( socket ); [INFO] [stderr] 67 | } [INFO] [stderr] 68 | else [INFO] [stderr] 69 | { [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/network/socket.rs:139:5 [INFO] [stderr] | [INFO] [stderr] 139 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/network/socket.rs:201:5 [INFO] [stderr] | [INFO] [stderr] 201 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:46:3 [INFO] [stderr] | [INFO] [stderr] 46 | return Self::new_with_port ( address, [INFO] [stderr] | _________^ [INFO] [stderr] 47 | | MODBUS_TCP_PORT ); [INFO] [stderr] | |_______________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 46 | Self::new_with_port ( address, [INFO] [stderr] 47 | MODBUS_TCP_PORT ) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:67:3 [INFO] [stderr] | [INFO] [stderr] 67 | return Self::new_with_port_and_unitid ( address, [INFO] [stderr] | _________^ [INFO] [stderr] 68 | | port, [INFO] [stderr] 69 | | MODBUS_DEFAULT_UNIT_IDENTIFIER ); [INFO] [stderr] | |_________________________________________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 67 | Self::new_with_port_and_unitid ( address, [INFO] [stderr] 68 | port, [INFO] [stderr] 69 | MODBUS_DEFAULT_UNIT_IDENTIFIER ) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:89:3 [INFO] [stderr] | [INFO] [stderr] 89 | return TcpClient [INFO] [stderr] | _________^ [INFO] [stderr] 90 | | { [INFO] [stderr] 91 | | address : address.to_string (), [INFO] [stderr] 92 | | last_transaction_id : MODBUS_TRANSACTION_ID_INITIALIZER, [INFO] [stderr] ... | [INFO] [stderr] 95 | | unit_identifier : unit_id [INFO] [stderr] 96 | | }; [INFO] [stderr] | |__________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 89 | TcpClient [INFO] [stderr] 90 | { [INFO] [stderr] 91 | address : address.to_string (), [INFO] [stderr] 92 | last_transaction_id : MODBUS_TRANSACTION_ID_INITIALIZER, [INFO] [stderr] 93 | port : port, [INFO] [stderr] 94 | stream : None, [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:146:3 [INFO] [stderr] | [INFO] [stderr] 146 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:165:3 [INFO] [stderr] | [INFO] [stderr] 165 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:181:3 [INFO] [stderr] | [INFO] [stderr] 181 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:217:2 [INFO] [stderr] | [INFO] [stderr] 217 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:264:3 [INFO] [stderr] | [INFO] [stderr] 264 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:307:3 [INFO] [stderr] | [INFO] [stderr] 307 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:349:3 [INFO] [stderr] | [INFO] [stderr] 349 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:391:3 [INFO] [stderr] | [INFO] [stderr] 391 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:433:3 [INFO] [stderr] | [INFO] [stderr] 433 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:475:3 [INFO] [stderr] | [INFO] [stderr] 475 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:518:3 [INFO] [stderr] | [INFO] [stderr] 518 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:560:3 [INFO] [stderr] | [INFO] [stderr] 560 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:596:2 [INFO] [stderr] | [INFO] [stderr] 596 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:631:2 [INFO] [stderr] | [INFO] [stderr] 631 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:655:3 [INFO] [stderr] | [INFO] [stderr] 655 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:675:3 [INFO] [stderr] | [INFO] [stderr] 675 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:695:3 [INFO] [stderr] | [INFO] [stderr] 695 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:715:3 [INFO] [stderr] | [INFO] [stderr] 715 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:731:3 [INFO] [stderr] | [INFO] [stderr] 731 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:740:3 [INFO] [stderr] | [INFO] [stderr] 740 | return response.is_good (); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `response.is_good ()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:758:3 [INFO] [stderr] | [INFO] [stderr] 758 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:767:3 [INFO] [stderr] | [INFO] [stderr] 767 | return response.is_good (); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `response.is_good ()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:802:2 [INFO] [stderr] | [INFO] [stderr] 802 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/master.rs:831:2 [INFO] [stderr] | [INFO] [stderr] 831 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/masteraccess.rs:21:9 [INFO] [stderr] | [INFO] [stderr] 21 | return *coil == CoilValue::On; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `*coil == CoilValue::On` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/masteraccess.rs:37:9 [INFO] [stderr] | [INFO] [stderr] 37 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/masteraccess.rs:68:5 [INFO] [stderr] | [INFO] [stderr] 68 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/masteraccess.rs:368:2 [INFO] [stderr] | [INFO] [stderr] 368 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/streamtelegram.rs:24:2 [INFO] [stderr] | [INFO] [stderr] 24 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/streamtelegram.rs:43:2 [INFO] [stderr] | [INFO] [stderr] 43 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tcp/streamtelegram.rs:69:2 [INFO] [stderr] | [INFO] [stderr] 69 | return reply; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `reply` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/datatransformation.rs:37:86 [INFO] [stderr] | [INFO] [stderr] 37 | pub fn append_bytearray_to_bytearray ( target_array : &mut Vec< u8 >, source_array : &Vec< u8 > ) [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/datatransformation.rs:96:53 [INFO] [stderr] | [INFO] [stderr] 96 | pub fn extract_byte_from_bytearray ( source_array : &Vec< u8 >, start_index : u8 ) -> Option< u8 > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/datatransformation.rs:158:54 [INFO] [stderr] | [INFO] [stderr] 158 | pub fn extract_bytes_from_bytearray ( source_array : &Vec< u8 >, start_index : u8, byte_count : u8 ) -> Option< Vec< u8 > > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/core/datatransformation.rs:174:6 [INFO] [stderr] | [INFO] [stderr] 174 | if copy_array.len () > 0 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!copy_array.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/datatransformation.rs:208:53 [INFO] [stderr] | [INFO] [stderr] 208 | pub fn extract_word_from_bytearray ( source_array : &Vec< u8 >, start_index : u8 ) -> Option< u16 > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/datatransformation.rs:269:42 [INFO] [stderr] | [INFO] [stderr] 269 | pub fn transform_bytes_to_word ( bytes : &Vec< u8 >, index : u8 ) -> u16 [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/core/datatransformation.rs:273:10 [INFO] [stderr] | [INFO] [stderr] 273 | reply = ( bytes[ index as usize ] as u16 ) << 8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(bytes[ index as usize ])` [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: manual implementation of an assign operation [INFO] [stderr] --> src/core/datatransformation.rs:274:5 [INFO] [stderr] | [INFO] [stderr] 274 | reply = reply | ( bytes[ index as usize + 1 ] as u16 ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `reply |= ( bytes[ index as usize + 1 ] as u16 )` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::assign_op_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/core/datatransformation.rs:274:21 [INFO] [stderr] | [INFO] [stderr] 274 | reply = reply | ( bytes[ index as usize + 1 ] as u16 ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(bytes[ index as usize + 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: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/datatransformation.rs:312:47 [INFO] [stderr] | [INFO] [stderr] 312 | pub fn transform_bytes_to_words ( databytes : &Vec< u8 >, start_index : u8, word_count :u8 ) -> Vec< u16 > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/datatransformation.rs:372:47 [INFO] [stderr] | [INFO] [stderr] 372 | pub fn transform_words_to_bytes ( datawords : &Vec< u16 > ) -> Vec< u8 > [INFO] [stderr] | ^^^^^^^^^^^ help: change this to: `&[u16]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 27 [INFO] [stderr] --> src/core/methods.rs:358:1 [INFO] [stderr] | [INFO] [stderr] 358 | / fn test_create_request_write_multiple_registers () [INFO] [stderr] 359 | | { [INFO] [stderr] 360 | | let transaction_identifier : u16 = 0x00A0; [INFO] [stderr] 361 | | let unit_identifier : u8 = 0x01; [INFO] [stderr] ... | [INFO] [stderr] 401 | | assert_eq! ( bytes[ 20 ], 0xCD ); // register_value [INFO] [stderr] 402 | | } [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: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/core/methods.rs:752:2 [INFO] [stderr] | [INFO] [stderr] 752 | let reply : Result< ModbusTelegram, String >; [INFO] [stderr] | _____^ [INFO] [stderr] 753 | | [INFO] [stderr] 754 | | if telegram.is_some () [INFO] [stderr] 755 | | { [INFO] [stderr] ... | [INFO] [stderr] 760 | | reply = Err( "Error while creating telegram.".to_string () ); [INFO] [stderr] 761 | | } [INFO] [stderr] | |_____^ help: it is more idiomatic to write: `let reply = if telegram.is_some () { Ok( telegram.unwrap () ) } else { Err( "Error while creating telegram.".to_string () ) };` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_let_if_seq)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/methods.rs:890:110 [INFO] [stderr] | [INFO] [stderr] 890 | fn prepare_payload_write_multiple_coils ( starting_address : u16, quantity_of_outputs : u16, output_values : &Vec< u8 > ) -> Vec< u8 > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/methods.rs:931:89 [INFO] [stderr] | [INFO] [stderr] 931 | fn prepare_payload_write_multiple_registers ( starting_address : u16, register_values : &Vec< u16 > ) -> Vec< u8 > [INFO] [stderr] | ^^^^^^^^^^^ help: change this to: `&[u16]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/methods.rs:1041:48 [INFO] [stderr] | [INFO] [stderr] 1041 | pub fn prepare_response_read_coils ( payload : &Vec< u8 >, coil_count : u16 ) -> Vec< bool > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/methods.rs:1112:58 [INFO] [stderr] | [INFO] [stderr] 1112 | pub fn prepare_response_read_discrete_inputs ( payload : &Vec< u8 >, input_count : u16 ) -> Vec< bool > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/methods.rs:1163:60 [INFO] [stderr] | [INFO] [stderr] 1163 | pub fn prepare_response_read_holding_registers ( payload : &Vec< u8 > ) -> Vec< u16 > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/methods.rs:1201:58 [INFO] [stderr] | [INFO] [stderr] 1201 | pub fn prepare_response_read_input_registers ( payload : &Vec< u8 > ) -> Vec< u16 > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/methods.rs:1238:58 [INFO] [stderr] | [INFO] [stderr] 1238 | pub fn prepare_response_write_multiple_coils ( payload : &Vec< u8 > ) -> Vec< u16 > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/core/methods.rs:1240:2 [INFO] [stderr] | [INFO] [stderr] 1240 | let mut reply : Vec< u16 > = vec![]; [INFO] [stderr] | _____^ [INFO] [stderr] 1241 | | [INFO] [stderr] 1242 | | if is_payload_write_length_valid ( &payload ) [INFO] [stderr] 1243 | | { [INFO] [stderr] ... | [INFO] [stderr] 1246 | | 2 ); [INFO] [stderr] 1247 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: you might not need `mut` at all [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] help: it is more idiomatic to write [INFO] [stderr] | [INFO] [stderr] 1240 | let reply = if is_payload_write_length_valid ( &payload ) { transform_bytes_to_words ( &payload, [INFO] [stderr] 1241 | 0, [INFO] [stderr] 1242 | 2 ) } else { < [ _ ] > :: into_vec ( box [ $ ( $ x ) , * ] ) }; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/methods.rs:1265:62 [INFO] [stderr] | [INFO] [stderr] 1265 | pub fn prepare_response_write_multiple_registers ( payload : &Vec< u8 > ) -> Vec< u16 > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/methods.rs:1311:55 [INFO] [stderr] | [INFO] [stderr] 1311 | pub fn prepare_response_write_single_coil ( payload : &Vec< u8 > ) -> Vec< bool > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/methods.rs:1347:59 [INFO] [stderr] | [INFO] [stderr] 1347 | pub fn prepare_response_write_single_register ( payload : &Vec< u8 > ) -> Vec< u16 > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/core/methods.rs:1349:2 [INFO] [stderr] | [INFO] [stderr] 1349 | let mut reply : Vec< u16 > = vec![]; [INFO] [stderr] | _____^ [INFO] [stderr] 1350 | | [INFO] [stderr] 1351 | | if is_payload_write_length_valid ( &payload ) [INFO] [stderr] 1352 | | { [INFO] [stderr] ... | [INFO] [stderr] 1355 | | 2 ); [INFO] [stderr] 1356 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: you might not need `mut` at all [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] help: it is more idiomatic to write [INFO] [stderr] | [INFO] [stderr] 1349 | let reply = if is_payload_write_length_valid ( &payload ) { transform_bytes_to_words ( &payload, [INFO] [stderr] 1350 | 0, [INFO] [stderr] 1351 | 2 ) } else { < [ _ ] > :: into_vec ( box [ $ ( $ x ) , * ] ) }; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/methods.rs:1372:49 [INFO] [stderr] | [INFO] [stderr] 1372 | fn is_payload_read_coil_length_valid ( payload: &Vec< u8 > ) -> bool [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/methods.rs:1388:53 [INFO] [stderr] | [INFO] [stderr] 1388 | fn is_payload_read_register_length_valid ( payload: &Vec< u8 > ) -> bool [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/methods.rs:1404:45 [INFO] [stderr] | [INFO] [stderr] 1404 | fn is_payload_write_length_valid ( payload: &Vec< u8 > ) -> bool [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/core/methods.rs:1423:2 [INFO] [stderr] | [INFO] [stderr] 1423 | let reply : bool; [INFO] [stderr] | _____^ [INFO] [stderr] 1424 | | [INFO] [stderr] 1425 | | if ( start as u32 + quantity as u32 ) <= 0x0000FFFF [INFO] [stderr] 1426 | | { [INFO] [stderr] ... | [INFO] [stderr] 1431 | | reply = false; [INFO] [stderr] 1432 | | } [INFO] [stderr] | |_____^ help: it is more idiomatic to write: `let reply = if ( start as u32 + quantity as u32 ) <= 0x0000FFFF { true } else { false };` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/core/methods.rs:1425:7 [INFO] [stderr] | [INFO] [stderr] 1425 | if ( start as u32 + quantity as u32 ) <= 0x0000FFFF [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u32::from(start)` [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 u32 may become silently lossy if types change [INFO] [stderr] --> src/core/methods.rs:1425:22 [INFO] [stderr] | [INFO] [stderr] 1425 | if ( start as u32 + quantity as u32 ) <= 0x0000FFFF [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u32::from(quantity)` [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: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/core/methods.rs:1451:2 [INFO] [stderr] | [INFO] [stderr] 1451 | let reply : bool; [INFO] [stderr] | _____^ [INFO] [stderr] 1452 | | [INFO] [stderr] 1453 | | if value >= min_value && value <= max_value [INFO] [stderr] 1454 | | { [INFO] [stderr] ... | [INFO] [stderr] 1459 | | reply = false; [INFO] [stderr] 1460 | | } [INFO] [stderr] | |_____^ help: it is more idiomatic to write: `let reply = if value >= min_value && value <= max_value { true } else { false };` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/core/methods.rs:1962:2 [INFO] [stderr] | [INFO] [stderr] 1962 | let reply : Result< bool, String >; [INFO] [stderr] | _____^ [INFO] [stderr] 1963 | | [INFO] [stderr] 1964 | | if output_value == 0x0000 || output_value == 0xFF00 [INFO] [stderr] 1965 | | { [INFO] [stderr] ... | [INFO] [stderr] 1970 | | reply = Err( "Error at parameter output_value - valid values are only 0 [0x0000] or 65280 [0xFF00].".to_string () ); [INFO] [stderr] 1971 | | } [INFO] [stderr] | |_____^ help: it is more idiomatic to write: `let reply = if output_value == 0x0000 || output_value == 0xFF00 { Ok( true ) } else { Err( "Error at parameter output_value - valid values are only 0 [0x0000] or 65280 [0xFF00].".to_string () ) };` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/core/modbusreturn.rs:381:9 [INFO] [stderr] | [INFO] [stderr] 381 | / let mut reply : u8 = 0x00; [INFO] [stderr] 382 | | [INFO] [stderr] 383 | | if self.error_code.is_some () [INFO] [stderr] 384 | | { [INFO] [stderr] 385 | | reply = self.error_code.unwrap (); [INFO] [stderr] 386 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let reply = if self.error_code.is_some () { self.error_code.unwrap () } else { 0x00 };` [INFO] [stderr] | [INFO] [stderr] = note: you might not need `mut` at all [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/core/modbusreturn.rs:393:9 [INFO] [stderr] | [INFO] [stderr] 393 | / let mut reply : u8 = 0x00; [INFO] [stderr] 394 | | [INFO] [stderr] 395 | | if self.exception_code.is_some () [INFO] [stderr] 396 | | { [INFO] [stderr] 397 | | reply = self.exception_code.unwrap (); [INFO] [stderr] 398 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let reply = if self.exception_code.is_some () { self.exception_code.unwrap () } else { 0x00 };` [INFO] [stderr] | [INFO] [stderr] = note: you might not need `mut` at all [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/core/modbusreturn.rs:405:9 [INFO] [stderr] | [INFO] [stderr] 405 | / let mut reply : String = "Err".to_string (); [INFO] [stderr] 406 | | [INFO] [stderr] 407 | | if self.message.is_some () [INFO] [stderr] 408 | | { [INFO] [stderr] 409 | | reply = self.message.unwrap (); [INFO] [stderr] 410 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let reply = if self.message.is_some () { self.message.unwrap () } else { "Err".to_string () };` [INFO] [stderr] | [INFO] [stderr] = note: you might not need `mut` at all [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/core/modbusreturn.rs:423:15 [INFO] [stderr] | [INFO] [stderr] 423 | assert! ( result.get_message ().len () > 0 ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!result.get_message ().is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/core/modbusreturn.rs:497:9 [INFO] [stderr] | [INFO] [stderr] 497 | / let reply : Vec< T >; [INFO] [stderr] 498 | | [INFO] [stderr] 499 | | if self.data.is_some () [INFO] [stderr] 500 | | { [INFO] [stderr] ... | [INFO] [stderr] 505 | | reply = vec![]; [INFO] [stderr] 506 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let reply = if self.data.is_some () { self.data.take ().unwrap () } else { < [ _ ] > :: into_vec ( box [ $ ( $ x ) , * ] ) };` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/core/modbusreturn.rs:513:9 [INFO] [stderr] | [INFO] [stderr] 513 | / let reply : u64; [INFO] [stderr] 514 | | [INFO] [stderr] 515 | | if self.duration_in_milliseconds.is_some () [INFO] [stderr] 516 | | { [INFO] [stderr] ... | [INFO] [stderr] 521 | | reply = 0; [INFO] [stderr] 522 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let reply = if self.duration_in_milliseconds.is_some () { *self.duration_in_milliseconds.as_ref ().unwrap () } else { 0 };` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/modbustelegram.rs:19:97 [INFO] [stderr] | [INFO] [stderr] 19 | pub fn new ( transaction_identifier : u16, unit_identifier : u8, function_code : u8, payload : &Vec< u8 >, expected_bytes : u8 ) -> Option< ModbusTelegram > [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] help: change this to [INFO] [stderr] | [INFO] [stderr] 19 | pub fn new ( transaction_identifier : u16, unit_identifier : u8, function_code : u8, payload : &[u8], expected_bytes : u8 ) -> Option< ModbusTelegram > [INFO] [stderr] | ^^^^^ [INFO] [stderr] help: change `payload.clone ()` to [INFO] [stderr] | [INFO] [stderr] 31 | payload : payload.to_owned(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/core/modbustelegram.rs:21:3 [INFO] [stderr] | [INFO] [stderr] 21 | let reply : Option< ModbusTelegram >; [INFO] [stderr] | _________^ [INFO] [stderr] 22 | | [INFO] [stderr] 23 | | if transaction_identifier > 0x0000 && function_code > 0x00 [INFO] [stderr] 24 | | { [INFO] [stderr] ... | [INFO] [stderr] 38 | | reply = None; [INFO] [stderr] 39 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] help: it is more idiomatic to write [INFO] [stderr] | [INFO] [stderr] 21 | let reply = if transaction_identifier > 0x0000 && function_code > 0x00 { Some( [INFO] [stderr] 22 | ModbusTelegram [INFO] [stderr] 23 | { [INFO] [stderr] 24 | transaction_identifier : transaction_identifier, [INFO] [stderr] 25 | unit_identifier : unit_identifier, [INFO] [stderr] 26 | function_code : function_code, [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/modbustelegram.rs:44:34 [INFO] [stderr] | [INFO] [stderr] 44 | pub fn new_from_bytes ( bytes : &Vec< u8 > ) -> Option< ModbusTelegram > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/core/modbustelegram.rs:112:3 [INFO] [stderr] | [INFO] [stderr] 112 | let reply : Option< u8 >; [INFO] [stderr] | _________^ [INFO] [stderr] 113 | | [INFO] [stderr] 114 | | if self.expected_bytes > MODBUS_HEADER_SIZE [INFO] [stderr] 115 | | { [INFO] [stderr] ... | [INFO] [stderr] 120 | | reply = None; [INFO] [stderr] 121 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let reply = if self.expected_bytes > MODBUS_HEADER_SIZE { Some( self.expected_bytes ) } else { None };` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/core/modbustelegram.rs:128:3 [INFO] [stderr] | [INFO] [stderr] 128 | let reply : Option< u8 >; [INFO] [stderr] | _________^ [INFO] [stderr] 129 | | [INFO] [stderr] 130 | | if self.function_code > 0x00 [INFO] [stderr] 131 | | { [INFO] [stderr] ... | [INFO] [stderr] 136 | | reply = None; [INFO] [stderr] 137 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let reply = if self.function_code > 0x00 { Some( self.function_code ) } else { None };` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/modbustelegram.rs:210:67 [INFO] [stderr] | [INFO] [stderr] 210 | fn extract_payload_by_function_code ( function_code : u8, bytes : &Vec< u8 > ) -> Option< Vec< u8 > > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/modbustelegram.rs:267:46 [INFO] [stderr] | [INFO] [stderr] 267 | fn extract_payload_with_byte_count ( bytes : &Vec< u8 > ) -> Option< Vec< u8 > > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/core/modbustelegram.rs:313:49 [INFO] [stderr] | [INFO] [stderr] 313 | fn extract_payload_without_byte_count ( bytes : &Vec< u8 > ) -> Option< Vec< u8 > > [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `core::timehandling::Timestamp` [INFO] [stderr] --> src/core/timehandling.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | / pub fn new () -> Timestamp [INFO] [stderr] 15 | | { [INFO] [stderr] 16 | | return Timestamp { time : SystemTime::now () }; [INFO] [stderr] 17 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 12 | impl Default for core::timehandling::Timestamp { [INFO] [stderr] 13 | fn default() -> Self { [INFO] [stderr] 14 | Self::new() [INFO] [stderr] 15 | } [INFO] [stderr] 16 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/core/timehandling.rs:45:45 [INFO] [stderr] | [INFO] [stderr] 45 | return ( duration.as_secs () * 1000 ) + ( ( duration.subsec_nanos () / 1000000 ) as u64 ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from( duration.subsec_nanos () / 1000000 )` [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: Calling `subsec_millis()` is more concise than this calculation [INFO] [stderr] --> src/core/timehandling.rs:45:47 [INFO] [stderr] | [INFO] [stderr] 45 | return ( duration.as_secs () * 1000 ) + ( ( duration.subsec_nanos () / 1000000 ) as u64 ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `duration.subsec_millis()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::duration_subsec)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#duration_subsec [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_ok()` [INFO] [stderr] --> src/tcp/master.rs:158:12 [INFO] [stderr] | [INFO] [stderr] 158 | if let Ok( _ ) = connection.shutdown ( Shutdown:: Both ) [INFO] [stderr] | _________________- ^^^^^^^ [INFO] [stderr] 159 | | { [INFO] [stderr] 160 | | reply = true; [INFO] [stderr] 161 | | } [INFO] [stderr] | |_________________- help: try this: `if connection.shutdown ( Shutdown:: Both ).is_ok()` [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: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/tcp/master.rs:206:2 [INFO] [stderr] | [INFO] [stderr] 206 | let reply : u16; [INFO] [stderr] | _____^ [INFO] [stderr] 207 | | [INFO] [stderr] 208 | | if last_transaction_id == 0xFFFF [INFO] [stderr] 209 | | { [INFO] [stderr] ... | [INFO] [stderr] 214 | | reply = last_transaction_id + 1; [INFO] [stderr] 215 | | } [INFO] [stderr] | |_____^ help: it is more idiomatic to write: `let reply = if last_transaction_id == 0xFFFF { MODBUS_TRANSACTION_ID_INITIALIZER } else { last_transaction_id + 1 };` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/tcp/master.rs:584:2 [INFO] [stderr] | [INFO] [stderr] 584 | let reply : ModbusReturnCoils; [INFO] [stderr] | _____^ [INFO] [stderr] 585 | | [INFO] [stderr] 586 | | if response_data.len () > 0 [INFO] [stderr] 587 | | { [INFO] [stderr] ... | [INFO] [stderr] 593 | | reply = ModbusReturnCoils::Bad( ReturnBad::new_with_message ( "modbus response data is invalid" ) ); [INFO] [stderr] 594 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] help: it is more idiomatic to write [INFO] [stderr] | [INFO] [stderr] 584 | let reply = if response_data.len () > 0 { ModbusReturnCoils::Good( ReturnGood::new ( response_data, [INFO] [stderr] 585 | start_time.elapsed_milliseconds () ) ) } else { ModbusReturnCoils::Bad( ReturnBad::new_with_message ( "modbus response data is invalid" ) ) }; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/tcp/master.rs:586:5 [INFO] [stderr] | [INFO] [stderr] 586 | if response_data.len () > 0 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!response_data.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/tcp/master.rs:619:2 [INFO] [stderr] | [INFO] [stderr] 619 | let reply : ModbusReturnRegisters; [INFO] [stderr] | _____^ [INFO] [stderr] 620 | | [INFO] [stderr] 621 | | if response_data.len () > 0 [INFO] [stderr] 622 | | { [INFO] [stderr] ... | [INFO] [stderr] 628 | | reply = ModbusReturnRegisters::Bad( ReturnBad::new_with_message ( "modbus response data is invalid" ) ); [INFO] [stderr] 629 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] help: it is more idiomatic to write [INFO] [stderr] | [INFO] [stderr] 619 | let reply = if response_data.len () > 0 { ModbusReturnRegisters::Good( ReturnGood::new ( response_data, [INFO] [stderr] 620 | start_time.elapsed_milliseconds () ) ) } else { ModbusReturnRegisters::Bad( ReturnBad::new_with_message ( "modbus response data is invalid" ) ) }; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/tcp/master.rs:621:5 [INFO] [stderr] | [INFO] [stderr] 621 | if response_data.len () > 0 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!response_data.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/tcp/master.rs:745:3 [INFO] [stderr] | [INFO] [stderr] 745 | let mut reply : bool = false; [INFO] [stderr] | _________^ [INFO] [stderr] 746 | | [INFO] [stderr] 747 | | if coils.len () > 0 [INFO] [stderr] 748 | | { [INFO] [stderr] ... | [INFO] [stderr] 755 | | reply = response.is_good (); [INFO] [stderr] 756 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let reply = if coils.len () > 0 { ..; response.is_good () } else { false };` [INFO] [stderr] | [INFO] [stderr] = note: you might not need `mut` at all [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/tcp/master.rs:747:6 [INFO] [stderr] | [INFO] [stderr] 747 | if coils.len () > 0 [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!coils.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/tcp/master.rs:824:2 [INFO] [stderr] | [INFO] [stderr] 824 | let mut reply : Vec< u16 > = vec![]; [INFO] [stderr] | _____^ [INFO] [stderr] 825 | | [INFO] [stderr] 826 | | if returned_registers.is_good () [INFO] [stderr] 827 | | { [INFO] [stderr] 828 | | reply = returned_registers.unwrap_good ().get_data (); [INFO] [stderr] 829 | | } [INFO] [stderr] | |_____^ help: it is more idiomatic to write: `let reply = if returned_registers.is_good () { returned_registers.unwrap_good ().get_data () } else { < [ _ ] > :: into_vec ( box [ $ ( $ x ) , * ] ) };` [INFO] [stderr] | [INFO] [stderr] = note: you might not need `mut` at all [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/tcp/masteraccess.rs:19:25 [INFO] [stderr] | [INFO] [stderr] 19 | pub fn get ( coil : &CoilValue ) -> bool [INFO] [stderr] | ^^^^^^^^^^ help: consider passing by value instead: `CoilValue` [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: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/tcp/masteraccess.rs:26:9 [INFO] [stderr] | [INFO] [stderr] 26 | / let reply : CoilValue; [INFO] [stderr] 27 | | [INFO] [stderr] 28 | | if on [INFO] [stderr] 29 | | { [INFO] [stderr] ... | [INFO] [stderr] 34 | | reply = CoilValue::Off; [INFO] [stderr] 35 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let reply = if on { CoilValue::On } else { CoilValue::Off };` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/tcp/masteraccess.rs:55:47 [INFO] [stderr] | [INFO] [stderr] 55 | pub fn convert_for_write_single_coil ( coil : &CoilValue ) -> u16 [INFO] [stderr] | ^^^^^^^^^^ help: consider passing by value instead: `CoilValue` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/tcp/masteraccess.rs:57:5 [INFO] [stderr] | [INFO] [stderr] 57 | / let reply : u16; [INFO] [stderr] 58 | | [INFO] [stderr] 59 | | if CoilValue::get ( coil ) [INFO] [stderr] 60 | | { [INFO] [stderr] ... | [INFO] [stderr] 65 | | reply = WRITE_SINGLE_COIL_OFF; [INFO] [stderr] 66 | | } [INFO] [stderr] | |_____^ help: it is more idiomatic to write: `let reply = if CoilValue::get ( coil ) { WRITE_SINGLE_COIL_ON } else { WRITE_SINGLE_COIL_OFF };` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/tcp/masteraccess.rs:337:47 [INFO] [stderr] | [INFO] [stderr] 337 | pub fn transform_coils_to_bytearray ( coils : &Vec< CoilValue > ) -> Vec< u8 > [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: change this to: `&[CoilValue]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/tcp/masteraccess.rs:341:5 [INFO] [stderr] | [INFO] [stderr] 341 | if coils.len () > 0 [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!coils.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 3.41s [INFO] running `"docker" "inspect" "7bf5d04475c4af1638482fe3fc19c921b853690c1d02368b9fe3bdc59fe87024"` [INFO] running `"docker" "rm" "-f" "7bf5d04475c4af1638482fe3fc19c921b853690c1d02368b9fe3bdc59fe87024"` [INFO] [stdout] 7bf5d04475c4af1638482fe3fc19c921b853690c1d02368b9fe3bdc59fe87024