AZ Tools

Conversor de JSON a struct de Rust (serde)

Desarrollo

Pega cualquier objeto o arreglo JSON y obtén definiciones `struct` de Rust listas para usar que derivan `Serialize, Deserialize` de serde, con campos mapeados a tipos de Rust (String, i64, f64, bool, Vec<...>) y structs separados para objetos anidados. Las claves que no son snake_case reciben un atributo `#[serde(rename = "...")]`. Todo se ejecuta localmente en tu navegador: tu JSON nunca se sube.

Structs de Rust

Cómo usar

  1. Pega o escribe tu JSON en el cuadro de entrada.
  2. Opcionalmente cambia el nombre del struct raíz (por defecto AutoGenerated).
  3. Copia los structs generados del cuadro de salida y añade serde a tu Cargo.toml.

Preguntas frecuentes

¿Cómo se tipan los números?
Los números enteros se convierten en i64 y los que tienen punto decimal en f64. Ajústalo manualmente si necesitas u32, i32 u otro ancho.
¿Qué pasa con null o los arreglos vacíos?
Los valores null se asignan a Option<serde_json::Value> y los arreglos vacíos a Vec<serde_json::Value>, porque su tipo no puede inferirse de la muestra.
¿Por qué algunos campos tienen un serde rename?
Los campos de Rust usan snake_case. Cuando una clave JSON difiere (por ejemplo camelCase), se añade un atributo #[serde(rename = "...")] para que la serialización siga coincidiendo con la clave original.
¿Se envía mi JSON a algún sitio?
No. La conversión ocurre por completo en tu navegador; no se sube nada.

Herramientas relacionadas