#[serde(rename)]
正しいオプションのようですが、ドキュメントにはそれが可能かどうか、またはその方法は記載されていません。
この JSON オブジェクト:
{
"name" : "myobject"
"info" :
{
"counter" : "3"
"foo" : "bar"
}
}
対応するフラットRust 構造体は次のようになります。
#[derive(Deserialize)]
struct Object {
name: String,
#[serde(rename="info.counter")] // wrong syntax here !!
count: i32,
#[serde(rename="info::foo")] // neither this works
foo: String,
}