我想知道如何正确地将除了
如上例所示,我想知道如何将例如
fmt::Error
之外其他类型的临时错误转换为fmt::Error
类型,这些错误可能在fn fmt
中出现?
比方说:
use std::fmt;
use serde::{Serialize, Deserialize};
#[derive(Serialize, Deserialize)]
struct MyStruct {
x: i32
}
impl fmt::Display for MyStruct {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
write!(f, "{}", serde_json::to_string(&self).map_err(|e| /*???*/)?)
}
}
如上例所示,我想知道如何将例如
serde_json::Error
转换为fmt::Error
,以符合返回的fmt::Result
特质。