Про цей інструмент
Інструмент JSON у структури Rust Serde перетворює вставлений зразок JSON на структури Rust з анотаціями для serde, тож ви можете десеріалізувати те саме навантаження, не пишучи вручну кожне поле. Він розбирає JSON, рекурсивно визначає типи Rust і видає структуру #[derive(Serialize, Deserialize, ...)] на кожен об'єкт: рядки стають String, цілі числа — i64 (або u64, коли всі зразки невід'ємні), інші числа — f64, булеві — bool, масиви — Vec<T>, а вкладені об'єкти — власними структурами PascalCase, визначеними перед їхніми батьками.
Уся робота відбувається локально у вашому браузері за допомогою JSON.parse і звичайного JavaScript — нічого не завантажується. Поля структур перетворюються на snake_case, і щоразу, коли ключ JSON відрізняється від поля snake_case, інструмент додає #[serde(rename = "originalKey")], тож структура все одно відповідає формату передачі даних. Ключі, відсутні в деяких сусідніх зразках або побачені як null, стають Option<T> з #[serde(default)], тож десеріалізація толерантна до їх відсутності. Порожні масиви резервуються до Vec<serde_json::Value>.
Перемикач розрядності цілих перемикає між 64-бітними (i64/u64, за замовчуванням) і 32-бітними (i32/u32) цілими, автоматично підвищуючи до 64-бітних, коли вибіркове значення перевищує 32-бітний діапазон. Перемикач похідних обирає між повним набором (Serialize, Deserialize, Debug, Clone) і мінімальним Serialize, Deserialize. Файл починається з use serde::{Serialize, Deserialize};. Скопіюйте його або завантажте файл .rs.