amethyst / amethyst/rustrogueliketutorial

Chapter 45: Lifetimes and Assigning Renderable components

未关闭
#160 0 条评论 1 个 reaction 已指派 0 人 在 GitHub 查看
主要语言
Rust
星标
970
派生
166
PR 合并指标
30 天内没有已合并 PR

描述

While going along with the tutorial, it was mentioned that you couldn't resolve the lifetime issues at the time. I am just dropping this off as a solution with lifetimes. My Renderer component differs slightly from the tutorial one, so I have adapted my code to it for this.

I believe the reason that the lifetimes are necessary, is because `EntityBuilder::with()` returns `Self`. This means that the passed `EntityBuilder` must live at least as long as `assign_render` is running, and since we build upon the passed builder, the one that we return must also live as long as the passed `EntityBuilder`, hence the connection between the three.

```Rust
fn assign_render<'a>(new_entity: EntityBuilder<'a>, render: &RawRender) -> EntityBuilder<'a> {
new_entity.with(Renderable {
glyph: render.glyph,
fg: render.fg,
bg: render.bg,
colors,
})
}
```

贡献指南

这个仓库没有索引到贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。