我正在尝试为包含Copy
的结构实现String
特性。但是,我在查找相关文档时遇到了一些麻烦。
这就是我所拥有的:
pub struct Token {
pub token: String,
pub tok_type: AnotherStruct, // implements Copy/Clone already
}
impl Copy for Token { }
拒绝编译,指出我无法为类型Copy
实现特征String
。
我将impl
更改为:
impl Copy for Token {
fn copy(&self) -> Token {
Token { token: self.token.clone(), tok_type: self.tok_type, }
}
}
并获得:
error[E0407]: method `copy` is not a member of trait `Copy`
--> src/types.rs:18:5
|
18 | / fn copy(&self) -> Token {
19 | | Token {
20 | | token: self.token.clone(),
21 | | tok_type: self.tok_type,
22 | | }
23 | | }
| |_____^ not a member of trait `Copy`
error[E0204]: the trait `Copy` may not be implemented for this type
--> src/types.rs:17:6
|
13 | pub token: String,
| ------------------ this field does not implement `Copy`
...
17 | impl Copy for Token {
| ^^^^