= From {
id :: Int
, firstName :: Maybe String
, username :: Maybe String
, isBot :: Maybe Bool
, kind :: Maybe String
}
deriving stock (Show, Generic, Eq)
deriving (ToJSON, FromJSON)
via (CustomJSON '[
FieldLabelModifier (Rename "kind" "type"),
FieldLabelModifier CamelToSnake,
SumUntaggedValue ]
From)
но работает только первое
Тупл FieldLabelModifier (a,b) (или тайплевел списком тоже норм, см инстансы для class StringModifier)
никак, это в библиотеке aeson не предусмотрено. надо писать сериализацию руками. хотя... можно попробовать скомпозить два generic сериализатора с разными конфигами
погодите. это не aeson?
Это deriving-aeson
там надо списков модификаторов делать просто
Обсуждают сегодня