Serialize/Deserialize スタイルのトレイト
serde のようなクレートでは、シリアライズを自動的に実装できます。
導出可能: ✅
// 著作権 2025 Google LLC // SPDX-License-Identifier: Apache-2.0 #[derive(Serialize, Deserialize)] struct ExtraData { fav_color: String, name_of_dog: String, } #[derive(Serialize, Deserialize)] struct Data { name: String, age: usize, extra_data: ExtraData, }
-
型にシリアライズおよびデシリアライズ機能を提供し、Rust のデータ型を JSON のようなデータ形式に変換したり、そこから変換したりできるようにします。
-
標準ライブラリにはシリアライズ機能が組み込まれていませんが、 serde クレートはシリアライズを行うためのコミュニティ標準のインターフェースです。
-
実装すべきでない場合: 型に、誤ってディスクに保存されたり ネットワーク越しに送信されたりすべきでない機密データが含まれる場合は、 その型に Serialize/Deserialize を実装しないことを検討してください。
Debugと同様のセキュリティ上の懸念がありますが、シリアライズはしばしば ネットワーク通信で使われるため、より重大な問題になり得ます。