如何在num库的BigInt结构上实现反序列化特性



我使用toml来解析数据,我有这样的结构:

use serde_derive::Deserialize;
use toml::value::Datetime;
#[derive(Debug, Deserialize)]
pub struct Trade {
pub action: Action,
pub date_time: Datetime,
pub exchange: Exchange,
pub fee: i64,
pub id: Option<String>,
pub matched: Option<bool>,
pub price: i64,
pub quantity: i64,
}

我想将整数(i64(替换为BigInt,这是num库中的一个结构。

这可能吗?我必须自己实现Deserialize特性吗?

通常情况下,您不能。请参阅我如何实现我不具备的特质';I don’t own for a type I don';不拥有?有关更多详细信息,

对于您的具体情况,num已经有了一个功能:

serde功能允许对num-bigintnum-complexnum-rational中的类型进行序列化。

所以只需使用它:

[dependencies.num]
version = "0.3"
features = ["serde"]

最新更新