目前我有一些类似于以下的代码:
// Lifetime of child is enforced to be valid as far as Parent is valid
struct Child<'a> {
some_data : i32,
phantom_lifetime: PhantomData<&'a Parent>
}
struct Parent {
}
#[wasm_bindgen]
pub struct Foo<'a> {
parent: Parent,
children: Vec<Child<'a>>
}
现在的问题是我必须摆脱它的生命周期,Foo
因为wasm_bindgen
不允许它。
直观地说,生命周期应该通过创建 struct 来强制执行Foo
。但是编译器要求我提供生命周期。
无论如何,我不知道如何做到这一点。有人可以帮助我吗?