deserialize_individually macro fails clippy due to unnecessary mut
还没有人认领这个 Issue。
评估
调研方向
打开 src/arena/saveload.rs 并检查 deserialize_individually 宏,尤其是传递给 DeserializeComponents::deserialize 的 entities 参数。运行 Clippy 以确认不必要的可变引用警告,然后验证该警告已消失且反序列化仍然正常工作。
由索引模型根据 Issue 内容生成。
描述
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)
- 主要语言
- Rust
- 星标
- 967
- 派生
- 166
- PR 合并指标
- 30 天内没有已合并 PR
环境准备
这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
amethyst/rustrogueliketutorial 的其他 Issue
-
难度 1/5 1 小时以内 新手友好度 68/100
-
难度 1/5 1 小时以内 新手友好度 68/100
-
难度 1/5 1 小时以内 新手友好度 68/100
-
难度 1/5 1 小时以内 新手友好度 68/100
-
难度 1/5 1-3 小时 新手友好度 45/100
查看 amethyst/rustrogueliketutorial 的全部 Issue
相似的 Issue
-
enhancement
难度 2/5 1-3 小时 新手友好度 78/100
zcashlabs/thus-spoke-zakura#153 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 79/100
topgrade-rs/topgrade#2395 ·
维护者通常 1 天内回复
-
app bug windows-os
难度 2/5 1-3 小时 新手友好度 67/100
维护者通常 1 天内回复
-
editor good first issue
难度 2/5 1-3 小时 新手友好度 65/100
funnyboy-roks/inq#54 ·
-
难度 2/5 1-3 小时 新手友好度 72/100
维护者通常 1 天内回复