このツールについて
JSON から Rust Serde 構造体へのツールは、貼り付けた JSON サンプルを serde 用に注釈付けした Rust 構造体に変換するので、すべてのフィールドを手書きせずに同じペイロードをデシリアライズできます。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 として見られたキーは #[serde(default)] 付きの Option<T> になり、デシリアライズがその欠如を許容します。空配列は Vec<serde_json::Value> にフォールバックします。
整数幅トグルは 64 ビット(i64/u64、既定)と 32 ビット(i32/u32)の整数を切り替え、サンプル値が 32 ビットの範囲を超えると自動的に 64 ビットへ昇格します。derive トグルはフルセット(Serialize, Deserialize, Debug, Clone)と最小限の Serialize, Deserialize を選択します。ファイルは use serde::{Serialize, Deserialize}; で始まります。コピーするか .rs ファイルをダウンロードできます。