我遇到了让生命实现正确的问题(再次......)的问题。
有一个帖子Row,我想把它转换成我自己的结构:
impl<'a> From<&'a Row> for Video {
fn from(row: &Row) -> Video {
Video {
video_id: row.get("video_id"),
...
}
}
}
但我收到这样的错误:
src/entities.rs:46:19: 46:22 error: wrong number of lifetime parameters: expected 1, found 0 [E0107]
src/entities.rs:46 impl<'a> From<&'a Row> for Video {
^~~
对我来说没有意义 - 终身参数就在那里。有什么遗漏?
答案 0 :(得分:2)
生命周期在到行的引用上,而不是行本身。为了使复制更容易,我定义了一个看似行的东西:
struct Foo<'a> {
s: &'a str,
}
当我们提出时,我们需要这样做:
impl<'a> From<&'a Foo<'a>> for String {
fn from(row: &Foo) -> String {
row.s.to_string()
}
}
这有意义吗?如果您没有参考:
impl<'a> From<Foo<'a>> for String {