我正在尝试将回调函数插入到此枚举变量(Visual
)中 - 它将作为结构体 EntityComponents
中的向量存储,如下所示:
enum Component {
Position([f64; 2]),
Visual(& Fn(Entity) -> ()),
}
struct EntityComponents {
components_of_entity: HashMap<TypeId, Vec<Component>>,
}
然而,在这里Rust要求我提供明确的生命周期参数。我的想法是,我希望函数引用至少与其参数(
Entity
)具有相同的生命周期,但我不知道语法会是什么样子?这是否可能?这个想法是,只要一个
Entity
有一个Visual
组件,我们就可以使用这个回调函数来呈现它!