Über dieses Tool
Das Tool JSON zu Rust-Serde-Structs konvertiert ein eingefügtes JSON-Beispiel in Rust-Structs, die für serde annotiert sind, sodass Sie dieselbe Payload deserialisieren können, ohne jedes Feld von Hand zu schreiben. Es parst das JSON, leitet Rust-Typen rekursiv ab und gibt ein #[derive(Serialize, Deserialize, ...)]-Struct pro Objekt aus: Strings werden zu String, Ganzzahlen zu i64 (oder u64, wenn alle Beispiele nicht-negativ sind), andere Zahlen zu f64, Booleans zu bool, Arrays zu Vec<T> und verschachtelte Objekte zu ihren eigenen PascalCase-Structs, die vor ihren Eltern definiert werden.
Alle Arbeit erfolgt lokal in Ihrem Browser mit JSON.parse und reinem JavaScript — nichts wird hochgeladen. Struct-Felder werden in snake_case umgewandelt, und immer wenn ein JSON-Schlüssel vom snake_case-Feld abweicht, fügt das Tool #[serde(rename = "originalKey")] hinzu, sodass das Struct weiterhin auf das Wire-Format abbildet. Schlüssel, die in einigen Geschwisterbeispielen fehlen oder als null gesehen werden, werden zu Option<T> mit #[serde(default)], sodass die Deserialisierung ihr Fehlen toleriert. Leere Arrays fallen auf Vec<serde_json::Value> zurück.
Der Integer-Breite-Umschalter wechselt zwischen 64-Bit (i64/u64, Standard) und 32-Bit (i32/u32) Ganzzahlen und stuft automatisch auf 64-Bit hoch, wenn ein Beispielwert den 32-Bit-Bereich überschreitet. Der Derive-Umschalter wählt zwischen dem vollen Satz (Serialize, Deserialize, Debug, Clone) und einem minimalen Serialize, Deserialize. Die Datei beginnt mit use serde::{Serialize, Deserialize};. Kopieren Sie sie oder laden Sie eine .rs-Datei herunter.