Creates an Aeson options object that drops a specific number of characters from the front of a field name, then applies a casing function.
Moduleaeson-casing-0.2.0.0Haskell2010
Data.Aeson.Casing.Internal
- 10 values
- Packageaeson-casing-0.2.0.0
- Exports10
- LanguageHaskell2010
- LicenceMIT
- SourceInternal.hs
Creates an Aeson options object that drops the field name prefix from a field, then applies a casing function. We assume a convention of the prefix always being lower case, and the first letter of the actual field name being uppercase. This accommodated for field names in GHC 7.8 and below.
data Person = Person
{ personFirstName :: Text
, personLastName :: Text
} deriving (Generic)
data Dog = Dog
{ dogFirstName :: Text
} deriving (Generic)In the above cases, dog and person are always dropped from the JSON field names.
Snake casing, where the words are always lower case and separated by an underscore.
Train casing, where the words are always lower case and separated by a hyphen
Camel casing, where the words are separated by the first letter of each word being a capital. However, the first letter of the field is never a capital.
Pascal casing, where the words are separated by the first letter of each word being a capital. The first letter of the field is always a capital.
Generic casing for symbol separated names