module Patrol.Utility.Json ( pair , required ) where import qualified Data.Aeson as Aeson import qualified Data.Aeson.Types as Aeson import qualified Data.Text as Text pair :: (Aeson.ToJSON value, Aeson.KeyValue pair) => String -> value -> pair pair :: String -> value -> pair pair String key value value = String -> Text Text.pack String key Text -> value -> pair forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv Aeson..= value value required :: Aeson.FromJSON value => Aeson.Object -> String -> Aeson.Parser value required :: Object -> String -> Parser value required Object object String key = Object object Object -> Text -> Parser value forall a. FromJSON a => Object -> Text -> Parser a Aeson..: String -> Text Text.pack String key