关于此工具
JSON 转 Rust Serde 结构体工具可将粘贴的 JSON 示例转换为为 serde 标注好的 Rust 结构体,让你无需手写每个字段即可反序列化同样的载荷。它解析 JSON,递归推断 Rust 类型,并为每个对象输出一个 #[derive(Serialize, Deserialize, ...)] 结构体:字符串变为 String,整数变为 i64(当所有样本都非负时变为 u64),其他数字变为 f64,布尔值变为 bool,数组变为 Vec<T>,嵌套对象则各自生成 PascalCase 结构体并定义在其父级之前。
所有工作都用 JSON.parse 和纯 JavaScript 在你的浏览器本地完成——不上传任何内容。结构体字段会转换为 snake_case,每当 JSON 键与 snake_case 字段不同时,工具会添加 #[serde(rename = "originalKey")],使结构体仍能映射到线路格式。某些同级样本中缺失的键,或被视为 null 的键,会变为 Option<T> 并带 #[serde(default)],使反序列化能容忍其缺失。空数组回退为 Vec<serde_json::Value>。
整数宽度开关可在 64 位(i64/u64,默认)和 32 位(i32/u32)整数之间切换,当采样值超出 32 位范围时会自动提升为 64 位。派生开关可在完整集合(Serialize, Deserialize, Debug, Clone)和最小集合 Serialize, Deserialize 之间选择。文件以 use serde::{Serialize, Deserialize}; 开头。复制它,或下载 .rs 文件。