diff --git a/tea-cleaner/TeaCleaner/Options.hs b/tea-cleaner/TeaCleaner/Options.hs index 7965a97..b1b6372 100644 --- a/tea-cleaner/TeaCleaner/Options.hs +++ b/tea-cleaner/TeaCleaner/Options.hs @@ -6,23 +6,9 @@ module TeaCleaner.Options ( jsonOptions ) where -import qualified Data.Aeson.TH as Aeson -import Prelude hiding (id) -import Data.Char - -applyFirst :: (Char -> Char) -> String -> String -applyFirst _ [] = [] -applyFirst f [x] = [f x] -applyFirst f (x:xs) = f x: xs - --- | Generic casing for symbol separated names -symbCase :: String -> String -symbCase = u . applyFirst toLower - where u [] = [] - u (x:xs) | isUpper x = '_' : toLower x : u xs - | otherwise = x : u xs +import qualified Data.Aeson as Aeson jsonOptions :: Aeson.Options jsonOptions = Aeson.defaultOptions - { Aeson.fieldLabelModifier = symbCase + { Aeson.fieldLabelModifier = Aeson.camelTo2 '_' }