Informazioni su questo strumento
Lo strumento Da JSON a struct Rust Serde converte un JSON di esempio incollato in struct Rust annotati per serde, così puoi deserializzare lo stesso payload senza scrivere a mano ogni campo. Analizza il JSON, inferisce i tipi Rust ricorsivamente ed emette una struct #[derive(Serialize, Deserialize, ...)] per oggetto: le stringhe diventano String, gli interi i64 (o u64 quando tutti i campioni sono non negativi), gli altri numeri f64, i booleani bool, gli array Vec<T> e gli oggetti annidati le proprie struct PascalCase definite prima dei loro genitori.
Tutto il lavoro avviene localmente nel tuo browser con JSON.parse e semplice JavaScript — nulla viene caricato. I campi delle struct vengono convertiti in snake_case, e ogni volta che una chiave JSON differisce dal campo snake_case lo strumento aggiunge #[serde(rename = "originalKey")] così la struct mappa comunque il formato del payload. Le chiavi assenti in alcuni campioni fratelli, o viste come null, diventano Option<T> con #[serde(default)] così la deserializzazione tollera la loro assenza. Gli array vuoti ripiegano su Vec<serde_json::Value>.
L'interruttore della larghezza degli interi passa tra 64 bit (i64/u64, predefinito) e 32 bit (i32/u32), promuovendo automaticamente a 64 bit quando un valore campionato supera l'intervallo a 32 bit. L'interruttore dei derive sceglie tra l'insieme completo (Serialize, Deserialize, Debug, Clone) e un minimale Serialize, Deserialize. Il file inizia con use serde::{Serialize, Deserialize};. Copialo o scarica un file .rs.