Rust 如何用serde_json序列化std::env:vars()?
如何使用serde_json序列化std::env::vars() 以下工作可以完成,但我觉得可以做得更好:Rust 如何用serde_json序列化std::env:vars()?,rust,serde,serde-json,Rust,Serde,Serde Json,如何使用serde_json序列化std::env::vars() 以下工作可以完成,但我觉得可以做得更好: 让mut vars=std::collections::HashMap::new(); 对于std::env::vars()中的(键、值){ 变量插入(键、值); } json!(vars) 返回两个元素元组的迭代器可以收集到新的HashMap中std::env::vars返回这样一个迭代器(调用),因此在这里可以工作: let vars:HashMap=std::env::vars()
让mut vars=std::collections::HashMap::new();
对于std::env::vars()中的(键、值){
变量插入(键、值);
}
json!(vars)
返回两个元素元组的迭代器可以收集
到新的HashMap
中std::env::vars
返回这样一个迭代器(调用),因此在这里可以工作:
let vars:HashMap=std::env::vars().collect();
json!(vars)
除此之外,如果不直接为
Vars
实现Serialize
,就无法进一步简化事情。由于Vars
是一种标准的库类型,并且Serialize
特性来自外部板条箱,因此您无法执行此操作。是否可以将其一行删除临时变量:json!(std::env::vars().collect::())