Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/rust/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Rust 如何用serde_json序列化std::env:vars()?_Rust_Serde_Serde Json - Fatal编程技术网

Rust 如何用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()

如何使用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().collect();
json!(vars)

除此之外,如果不直接为
Vars
实现
Serialize
,就无法进一步简化事情。由于
Vars
是一种标准的库类型,并且
Serialize
特性来自外部板条箱,因此您无法执行此操作。

是否可以将其一行删除临时变量:
json!(std::env::vars().collect::())