rustrogueliketutorial
rustrogueliketutorial copied to clipboard
deserialize_individually macro fails clippy due to unnecessary mut
Here https://bfnightly.bracketproductions.com/rustbook/chapter_11.html#actually-loading-the-game
This code:
macro_rules! deserialize_individually {
($ecs:expr, $de:expr, $data:expr, $( $type:ty),*) => {
$(
DeserializeComponents::<NoError, _>::deserialize(
&mut ( &mut $ecs.write_storage::<$type>(), ),
&mut $data.0, // entities
can be
macro_rules! deserialize_individually {
($ecs:expr, $de:expr, $data:expr, $( $type:ty),*) => {
$(
DeserializeComponents::<NoError, _>::deserialize(
&mut ( &mut $ecs.write_storage::<$type>(), ),
&$data.0, // entities
to prevent this clippy warning:
warning: The function/method `DeserializeComponents<NoError, _>::deserialize` doesn't need a mutable reference
--> src/arena/saveload.rs:35:13
|
35 | &mut $data.0, // entities
| ^^^^^^^^^^^^
...
115 | / deserialize_individually!(
116 | | ecs,
117 | | de,
118 | | d,
... |
135 | | SerializationHelper
136 | | );
| |__________- in this macro invocation
|
= note: `#[warn(clippy::unnecessary_mut_passed)]` on by default
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed
= note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
warning: The function/method `DeserializeComponents<NoError, _>::deserialize` doesn't need a mutable reference
--> src/arena/saveload.rs:35:13
|
35 | &mut $data.0, // entities
| ^^^^^^^^^^^^
...
115 | / deserialize_individually!(
116 | | ecs,
117 | | de,
118 | | d,
... |
135 | | SerializationHelper
136 | | );
| |__________- in this macro invocation
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed
= note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
This documentation was a complete godsend by the way.
I could not figure out Specs serialization from the documentation for the life of me.