如何将结构转换为具有完全相同的字段名称和类型的另一个结构?
How can I convert a struct to another struct with exactly the same field names and types?
我有两个具有相同名称、字段(和字段类型)的相同结构,它们位于不同的模块中。它们由派生宏构造,并希望轻松地从一个转换为另一个。
例如
mod a {
struct A {
field1: String,
field2: String,
}
}
mod b {
struct A {
field1: String,
field2: String,
}
}
我希望能够做 let a: a::A = a::A::from(b::A)
或类似的事情。
impl From<b::A> for a::A
需要在 from()
方法中写入来自两个结构的所有字段。如果没有所有相关的样板文件,有什么方法可以实现这一目标吗?
我有两个具有相同名称、字段(和字段类型)的相同结构,它们位于不同的模块中。它们由派生宏构造,并希望轻松地从一个转换为另一个。
例如
mod a {
struct A {
field1: String,
field2: String,
}
}
mod b {
struct A {
field1: String,
field2: String,
}
}
我希望能够做 let a: a::A = a::A::from(b::A)
或类似的事情。
impl From<b::A> for a::A
需要在 from()
方法中写入来自两个结构的所有字段。如果没有所有相关的样板文件,有什么方法可以实现这一目标吗?