O tym narzędziu
Narzędzie JSON na struktury Rust Serde konwertuje wklejony przykład JSON w struktury Rust z adnotacjami dla serde, dzięki czemu możesz deserializować ten sam ładunek bez ręcznego pisania każdego pola. Parsuje JSON, rekurencyjnie wnioskuje typy Rust i emituje strukturę #[derive(Serialize, Deserialize, ...)] na obiekt: łańcuchy stają się String, liczby całkowite i64 (lub u64, gdy wszystkie przykłady są nieujemne), inne liczby f64, wartości logiczne bool, tablice Vec<T>, a zagnieżdżone obiekty otrzymują własne struktury PascalCase zdefiniowane przed swoimi rodzicami.
Cała praca odbywa się lokalnie w Twojej przeglądarce za pomocą JSON.parse i czystego JavaScriptu — nic nie jest przesyłane. Pola struktur są konwertowane na snake_case, a za każdym razem, gdy klucz JSON różni się od pola snake_case, narzędzie dodaje #[serde(rename = "originalKey")], aby struktura nadal mapowała się na format transmisji. Klucze nieobecne w niektórych przykładach rodzeństwa lub widziane jako null stają się Option<T> z #[serde(default)], więc deserializacja toleruje ich brak. Puste tablice przechodzą na Vec<serde_json::Value>.
Przełącznik szerokości liczby całkowitej przełącza między liczbami 64-bitowymi (i64/u64, domyślnie) a 32-bitowymi (i32/u32), automatycznie promując do 64 bitów, gdy próbkowana wartość przekracza zakres 32-bitowy. Przełącznik derywacji wybiera między pełnym zestawem (Serialize, Deserialize, Debug, Clone) a minimalnym Serialize, Deserialize. Plik zaczyna się od use serde::{Serialize, Deserialize};. Skopiuj go lub pobierz plik .rs.