-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Serialize JSON data to/from Haskell using the data-object library. -- -- Serialize JSON data to/from Haskell using the data-object library. @package data-object-json @version 0.0.0 -- | A simple wrapper around the json-b library which presents values -- inside Objects. module Data.Object.Json -- | A fully formed JSON document. newtype JsonDoc JsonDoc :: ByteString -> JsonDoc unJsonDoc :: JsonDoc -> ByteString -- | Matches the scalar data types used in json-b so we can have proper -- mapping between the two libraries. data JsonScalar JsonString :: ByteString -> JsonScalar JsonNumber :: Rational -> JsonScalar JsonBoolean :: Bool -> JsonScalar JsonNull :: JsonScalar -- | Meant to match closely with the JSON data type. Therefore, uses -- strict byte strings for keys and the JsonScalar type for -- scalars. type JsonObject = Object ByteString JsonScalar readJsonDoc :: FilePath -> IO JsonDoc writeJsonDoc :: FilePath -> JsonDoc -> IO () -- | Error type for JSON decoding errors. newtype JsonDecodeError JsonDecodeError :: String -> JsonDecodeError -- | Decode a lazy bytestring into a JsonObject. decode :: (MonadFailure JsonDecodeError m) => ByteString -> m JsonObject -- | Encode a JsonObject into a lazy bytestring. encode :: JsonObject -> ByteString -- | convertSuccess specialized for JsonObjects toJsonObject :: (ConvertSuccess a JsonObject) => a -> JsonObject -- | convertAttempt specialized for JsonObjects fromJsonObject :: (ConvertAttempt JsonObject a) => JsonObject -> Attempt a instance Typeable JsonDecodeError instance Show JsonDecodeError instance ConvertAttempt JsonDoc JsonObject instance ConvertSuccess JsonObject JsonDoc instance Exception JsonDecodeError instance ConvertAttempt JsonObject JSON instance ConvertSuccess JSON JsonObject instance ConvertAttempt (Object ByteString JsonScalar) [(Text, Object ByteString JsonScalar)] instance ConvertSuccess [(Text, Object ByteString JsonScalar)] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [(ByteString, Object ByteString JsonScalar)] instance ConvertSuccess [(ByteString, Object ByteString JsonScalar)] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [(String, Object ByteString JsonScalar)] instance ConvertSuccess [(String, Object ByteString JsonScalar)] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [(Text, Object Text JsonScalar)] instance ConvertSuccess [(Text, Object Text JsonScalar)] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) (Object Text JsonScalar) instance ConvertSuccess (Object Text JsonScalar) (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [Object Text JsonScalar] instance ConvertSuccess [Object Text JsonScalar] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [(Text, JsonScalar)] instance ConvertSuccess [(Text, JsonScalar)] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [(Text, Object Text Text)] instance ConvertSuccess [(Text, Object Text Text)] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) (Object Text Text) instance ConvertSuccess (Object Text Text) (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [Object Text Text] instance ConvertSuccess [Object Text Text] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [(Text, Text)] instance ConvertSuccess [(Text, Text)] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [(Text, Object Text ByteString)] instance ConvertSuccess [(Text, Object Text ByteString)] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) (Object Text ByteString) instance ConvertSuccess (Object Text ByteString) (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [Object Text ByteString] instance ConvertSuccess [Object Text ByteString] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [(Text, ByteString)] instance ConvertSuccess [(Text, ByteString)] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [(Text, Object Text String)] instance ConvertSuccess [(Text, Object Text String)] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) (Object Text String) instance ConvertSuccess (Object Text String) (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [Object Text String] instance ConvertSuccess [Object Text String] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [(Text, String)] instance ConvertSuccess [(Text, String)] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [Object ByteString JsonScalar] instance ConvertSuccess [Object ByteString JsonScalar] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [(ByteString, JsonScalar)] instance ConvertSuccess [(ByteString, JsonScalar)] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [(ByteString, Object ByteString Text)] instance ConvertSuccess [(ByteString, Object ByteString Text)] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) (Object ByteString Text) instance ConvertSuccess (Object ByteString Text) (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [Object ByteString Text] instance ConvertSuccess [Object ByteString Text] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [(ByteString, Text)] instance ConvertSuccess [(ByteString, Text)] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [(ByteString, Object ByteString ByteString)] instance ConvertSuccess [(ByteString, Object ByteString ByteString)] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) (Object ByteString ByteString) instance ConvertSuccess (Object ByteString ByteString) (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [Object ByteString ByteString] instance ConvertSuccess [Object ByteString ByteString] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [(ByteString, ByteString)] instance ConvertSuccess [(ByteString, ByteString)] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [(ByteString, Object ByteString String)] instance ConvertSuccess [(ByteString, Object ByteString String)] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) (Object ByteString String) instance ConvertSuccess (Object ByteString String) (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [Object ByteString String] instance ConvertSuccess [Object ByteString String] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [(ByteString, String)] instance ConvertSuccess [(ByteString, String)] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [(String, Object String JsonScalar)] instance ConvertSuccess [(String, Object String JsonScalar)] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) (Object String JsonScalar) instance ConvertSuccess (Object String JsonScalar) (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [Object String JsonScalar] instance ConvertSuccess [Object String JsonScalar] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [(String, JsonScalar)] instance ConvertSuccess [(String, JsonScalar)] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [(String, Object String Text)] instance ConvertSuccess [(String, Object String Text)] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) (Object String Text) instance ConvertSuccess (Object String Text) (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [Object String Text] instance ConvertSuccess [Object String Text] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [(String, Text)] instance ConvertSuccess [(String, Text)] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [(String, Object String ByteString)] instance ConvertSuccess [(String, Object String ByteString)] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) (Object String ByteString) instance ConvertSuccess (Object String ByteString) (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [Object String ByteString] instance ConvertSuccess [Object String ByteString] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [(String, ByteString)] instance ConvertSuccess [(String, ByteString)] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [(String, Object String String)] instance ConvertSuccess [(String, Object String String)] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) (Object String String) instance ConvertSuccess (Object String String) (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [Object String String] instance ConvertSuccess [Object String String] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [(String, String)] instance ConvertSuccess [(String, String)] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [JsonScalar] instance ConvertSuccess [JsonScalar] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) JsonScalar instance ConvertSuccess JsonScalar (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [Text] instance ConvertSuccess [Text] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) Text instance ConvertSuccess Text (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [ByteString] instance ConvertSuccess [ByteString] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) ByteString instance ConvertSuccess ByteString (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) [String] instance ConvertSuccess [String] (Object ByteString JsonScalar) instance ConvertAttempt (Object ByteString JsonScalar) String instance ConvertSuccess String (Object ByteString JsonScalar) instance ConvertAttempt JsonScalar Text instance ConvertAttempt JsonScalar ByteString instance ConvertAttempt JsonScalar String instance ConvertAttempt Text JsonScalar instance ConvertAttempt ByteString JsonScalar instance ConvertAttempt String JsonScalar instance Show JsonDoc instance Eq JsonDoc instance ConvertSuccess ByteString JsonScalar instance ConvertSuccess JsonScalar ByteString instance ConvertSuccess String JsonScalar instance ConvertSuccess JsonScalar String instance ConvertSuccess Text JsonScalar instance ConvertSuccess JsonScalar Text