#[serde(rename="$same")]
Same,
#[serde(rename="$*")]
Asterisk,
Relation(String)
}
подскажите, а можно без кастомного самописного сериализатора/десериализатора навесить атрибуты так, чтобы варианты Same и Asteriks сериализовались/десериализовались в $same и $*, а вариант Relation(String) в значение строки которая туда будет подставлена?
Я недавно такого способа не нашёл.
А у тебя же externally tagged enum. получается?
#[serde(field_identifier)] на структуру можно повесить
Не вижу такого в руководстве к serde
Ага, это незадокументированная фича. https://github.com/serde-rs/serde/issues/1238 https://github.com/serde-rs/serde/issues/1788 https://github.com/serde-rs/serde/issues/912
В идеале хотелось бы untagged
а, хм, это только для deserialize работает...
Ну блин
Самое короткое, что у меня получилось: https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=f6d709dcac4ca83bf383197dca07a69b
По описанию пожоже, но без доки непонятно. В тестах завтра покопаюсь
то что надо
Умница!
Обсуждают сегодня