s可以做#[serde(skip_serializing_if = "Vec::is_empty")],Vec但是切片的等价物是什么?
切片类型也[T]有一个is_empty方法。您可以这样称呼它:
use serde::Serialize;
#[derive(Serialize)]
struct S<'a> {
#[serde(skip_serializing_if = "<[_]>::is_empty")]
slice: &'a [String]
}
fn main() {
let s = S { slice: &[] };
println!("{}", serde_json::to_string(&s).unwrap());
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1891 次 |
| 最近记录: |