- struct
- Schlüsselwort in Rust zum Definieren zusammengesetzter Datentypen. Dieses Tool generiert structs, z.B. pub struct User { id: i64, name: String }. Felder sind standardmäßig öffentlich (ohne Sichtbarkeit sind sie privat; serde derive erfordert öffentlich).
- Serde
- Das beliebteste Serialisierungs-/Deserialisierungsframework im Rust-Ökosystem. Von diesem Tool generierter Code arbeitet mit Serde über #[derive(Serialize, Deserialize)], verwendbar mit serde_json, bincode, toml, postcard und anderen Formaten.
- derive-Makro
- Rust-Prozedurmakro, das automatisch Traits für Typen implementiert. #[derive(Serialize, Deserialize)], das von diesem Tool generiert wird, implementiert automatisch die Serialisierungs- und Deserialisierungs-Traits von Serde, ohne manuell geschriebene impl-Blöcke.
- Vec<T>
- Dynamischer Array-Typ in der Rust-Standardbibliothek. Dieses Tool ordnet JSON-Arrays automatisch Vec<T> zu, z.B. werden Zeichenfolgenarrays zu Vec<String>. Vec besitzt heap-allozierten Speicher, wobei die Lebensdauer automatisch vom Rust-Compiler verwaltet wird.
- Option<T>
- Optionaler Werttyp in der Rust-Standardbibliothek, der angibt, dass ein Wert möglicherweise nicht existiert. Dieses Tool ordnet JSON-null Option<serde_json::Value> zu; Sie können manuell in präzisere Typen wie Option<String> ändern, konsumiert über .unwrap() oder Pattern-Matching.
- Cargo
- Rusts offizielles Build-System und Paketmanager. Bei der Verwendung von durch dieses Tool generiertem Code müssen Sie serde- und serde_json-Abhängigkeiten in Cargo.toml deklarieren und cargo build/cargo run zum Kompilieren und Ausführen ausführen.
- serde_json
- Serde-Framework-Crate speziell für die JSON-Verarbeitung. Typische Verwendung ist serde_json::from_str::<User>(&json_string) oder serde_json::from_reader(reader), um JSON-Strings/Byte-Streams in generierte Rust-Structs umzuwandeln; es ist die zugrundeliegende Abhängigkeit für Actix-web/axum-JSON-Verarbeitung.
- Serialize
- Serialisierungs-Trait von Serde, der angibt, dass ein Typ in Formate wie JSON kodiert werden kann. Dieses Tool generiert automatisch Implementierungen über derive, verwendbar für serde_json::to_string(&user), um Rust-Werte zurück in JSON-Strings umzuwandeln.
- Deserialize
- Deserialisierungs-Trait von Serde, der angibt, dass ein Typ aus Formaten wie JSON dekodiert werden kann. Dieses Tool generiert automatisch Implementierungen über derive, verwendet mit serde_json::from_str; es ist der Kern der Deserialisierung von HTTP-Request-Bodys, Konfigurationsdateien und Message-Queue-Payloads.
- Ownership
- Rusts Kernkonzept der Speicherverwaltung. Typen wie String und Vec<T>, die von diesem Tool generiert werden, besitzen ihre jeweiligen Daten; nach der Deserialisierung werden Lebensdauern automatisch vom Rust-Compiler verwaltet, ohne manuelles Freigeben, ohne GC, ohne Laufzeit-Overhead.
- #[serde(rename = "...")]
- Serde-Feldumbenennungsattribut. Wenn JSON-Feldnamen (wie user_name) nicht mit dem Rust-Namensstil übereinstimmen, teilt diese Annotation Serde mit, bei der Deserialisierung nach dem ursprünglichen JSON-Namen zu suchen. Häufig verwendet für camelCase-Rust-Projekte, die mit snake_case-Backend-APIs verbunden sind.
- #[serde(default)]
- Serde-Feldstandardwertattribut. Wenn ein Feld in JSON fehlt, ruft es Default::default() des Typs auf. Häufig verwendet für Abwärtskompatibilität mit neu hinzugefügten Feldern in Versionsiterationen, vermeidet Deserialisierungsfehler für alte JSON.
- quicktype-core
- Mehrsprachige Typerkennungs- und Codegenerierungsbibliothek, die von diesem Tool im Hintergrund verwendet wird, ursprünglich in TypeScript implementiert, zu WebAssembly kompiliert und im Browser über Web Worker ausgeführt, unterstützt 20+ Zielsprachen einschließlich Rust/TypeScript/Go/Python.
- Web Worker
- Vom Browser bereitgestellter Hintergrund-Thread-Mechanismus, der es JavaScript ermöglicht, teure Berechnungen in einem unabhängigen Thread auszuführen, ohne den Hauptthread zu blockieren. Dieses Tool verwendet Web Worker, um quicktype-core-WASM zu laden, und verhindert Seiteneinfrierungen bei großen JSON-Konvertierungen.
- WebAssembly (WASM)
- Binäres Befehlsformat, das aus C/C++/Rust-Kompilierung generiert werden kann und in Browsern mit nahezu nativer Geschwindigkeit ausgeführt werden kann. Die Kernengine dieses Tools, quicktype-core, ist zu WASM kompiliert und läuft im Browser.
- chrono
- Beliebteste Datums-/Zeitbibliothek im Rust-Ökosystem, bietet Typen wie DateTime<Utc>, NaiveDate; die Aktivierung des serde-Features ermöglicht automatisches Parsen von ISO 8601-Zeitzeichenfolgen mit Serde. Häufig verwendet, um von diesem Tool generierte Standard-String-Zeitfelder zu ersetzen.
- no_std
- Ein Rust-Kompilierungsmodus, der die Standardbibliothek std deaktiviert und nur die Kernbibliothek core verwendet, geeignet für ressourcenbeschränkte Szenarien wie eingebettete Systeme, WebAssembly-Kernel, Betriebssysteme. serde funktioniert auch unter no_std (bei entsprechender Aktivierung von Features).
- tokio
- Beliebteste Async-Runtime im Rust-Ökosystem, von gängigen Bibliotheken wie axum, reqwest, tonic abhängig. Durch dieses Tool generierter Code wird häufig mit dem Makro #[tokio::main] verwendet, um die Runtime in asynchronen Szenarien zu starten.