data-object-json-0.0.0: Serialize JSON data to/from Haskell using the data-object library.Source codeContentsIndex
Data.Object.Json
Contents
Types
IO
Serialization
Specialization
Description
A simple wrapper around the json-b library which presents values inside Objects.
Synopsis
newtype JsonDoc = JsonDoc {
unJsonDoc :: ByteString
}
data JsonScalar
= JsonString ByteString
| JsonNumber Rational
| JsonBoolean Bool
| JsonNull
type JsonObject = Object ByteString JsonScalar
readJsonDoc :: FilePath -> IO JsonDoc
writeJsonDoc :: FilePath -> JsonDoc -> IO ()
newtype JsonDecodeError = JsonDecodeError String
decode :: MonadFailure JsonDecodeError m => ByteString -> m JsonObject
encode :: JsonObject -> ByteString
toJsonObject :: ConvertSuccess a JsonObject => a -> JsonObject
fromJsonObject :: ConvertAttempt JsonObject a => JsonObject -> Attempt a
Types
newtype JsonDoc Source
A fully formed JSON document.
Constructors
JsonDoc
unJsonDoc :: ByteString
show/hide Instances
data JsonScalar Source
Matches the scalar data types used in json-b so we can have proper mapping between the two libraries.
Constructors
JsonString ByteString
JsonNumber Rational
JsonBoolean Bool
JsonNull
show/hide Instances
ConvertAttempt String JsonScalar
ConvertAttempt ByteString JsonScalar
ConvertAttempt Text JsonScalar
ConvertAttempt JsonScalar String
ConvertAttempt JsonScalar ByteString
ConvertAttempt JsonScalar Text
ConvertSuccess String JsonScalar
ConvertSuccess ByteString JsonScalar
ConvertSuccess Text JsonScalar
ConvertSuccess JsonScalar String
ConvertSuccess JsonScalar ByteString
ConvertSuccess JsonScalar Text
ConvertSuccess String (Object ByteString JsonScalar)
ConvertSuccess ByteString (Object ByteString JsonScalar)
ConvertSuccess Text (Object ByteString JsonScalar)
ConvertSuccess JsonScalar (Object ByteString JsonScalar)
ConvertSuccess [String] (Object ByteString JsonScalar)
ConvertSuccess [(String, String)] (Object ByteString JsonScalar)
ConvertSuccess [(String, ByteString)] (Object ByteString JsonScalar)
ConvertSuccess [(String, Object String String)] (Object ByteString JsonScalar)
ConvertSuccess [(String, Object String ByteString)] (Object ByteString JsonScalar)
ConvertSuccess [(String, Object String Text)] (Object ByteString JsonScalar)
ConvertSuccess [(String, Object String JsonScalar)] (Object ByteString JsonScalar)
ConvertSuccess [(String, Object ByteString JsonScalar)] (Object ByteString JsonScalar)
ConvertSuccess [(String, Text)] (Object ByteString JsonScalar)
ConvertSuccess [(String, JsonScalar)] (Object ByteString JsonScalar)
ConvertSuccess [(ByteString, String)] (Object ByteString JsonScalar)
ConvertSuccess [(ByteString, ByteString)] (Object ByteString JsonScalar)
ConvertSuccess [(ByteString, Object ByteString String)] (Object ByteString JsonScalar)
ConvertSuccess [(ByteString, Object ByteString ByteString)] (Object ByteString JsonScalar)
ConvertSuccess [(ByteString, Object ByteString Text)] (Object ByteString JsonScalar)
ConvertSuccess [(ByteString, Object ByteString JsonScalar)] (Object ByteString JsonScalar)
ConvertSuccess [(ByteString, Text)] (Object ByteString JsonScalar)
ConvertSuccess [(ByteString, JsonScalar)] (Object ByteString JsonScalar)
ConvertSuccess [(Text, String)] (Object ByteString JsonScalar)
ConvertSuccess [(Text, ByteString)] (Object ByteString JsonScalar)
ConvertSuccess [(Text, Object ByteString JsonScalar)] (Object ByteString JsonScalar)
ConvertSuccess [(Text, Object Text String)] (Object ByteString JsonScalar)
ConvertSuccess [(Text, Object Text ByteString)] (Object ByteString JsonScalar)
ConvertSuccess [(Text, Object Text Text)] (Object ByteString JsonScalar)
ConvertSuccess [(Text, Object Text JsonScalar)] (Object ByteString JsonScalar)
ConvertSuccess [(Text, Text)] (Object ByteString JsonScalar)
ConvertSuccess [(Text, JsonScalar)] (Object ByteString JsonScalar)
ConvertSuccess [ByteString] (Object ByteString JsonScalar)
ConvertSuccess [Object String String] (Object ByteString JsonScalar)
ConvertSuccess [Object String ByteString] (Object ByteString JsonScalar)
ConvertSuccess [Object String Text] (Object ByteString JsonScalar)
ConvertSuccess [Object String JsonScalar] (Object ByteString JsonScalar)
ConvertSuccess [Object ByteString String] (Object ByteString JsonScalar)
ConvertSuccess [Object ByteString ByteString] (Object ByteString JsonScalar)
ConvertSuccess [Object ByteString Text] (Object ByteString JsonScalar)
ConvertSuccess [Object ByteString JsonScalar] (Object ByteString JsonScalar)
ConvertSuccess [Object Text String] (Object ByteString JsonScalar)
ConvertSuccess [Object Text ByteString] (Object ByteString JsonScalar)
ConvertSuccess [Object Text Text] (Object ByteString JsonScalar)
ConvertSuccess [Object Text JsonScalar] (Object ByteString JsonScalar)
ConvertSuccess [Text] (Object ByteString JsonScalar)
ConvertSuccess [JsonScalar] (Object ByteString JsonScalar)
ConvertAttempt (Object ByteString JsonScalar) String
ConvertAttempt (Object ByteString JsonScalar) ByteString
ConvertAttempt (Object ByteString JsonScalar) Text
ConvertAttempt (Object ByteString JsonScalar) JsonScalar
ConvertAttempt (Object ByteString JsonScalar) [String]
ConvertAttempt (Object ByteString JsonScalar) [(String, String)]
ConvertAttempt (Object ByteString JsonScalar) [(String, ByteString)]
ConvertAttempt (Object ByteString JsonScalar) [(String, Object String String)]
ConvertAttempt (Object ByteString JsonScalar) [(String, Object String ByteString)]
ConvertAttempt (Object ByteString JsonScalar) [(String, Object String Text)]
ConvertAttempt (Object ByteString JsonScalar) [(String, Object String JsonScalar)]
ConvertAttempt (Object ByteString JsonScalar) [(String, Object ByteString JsonScalar)]
ConvertAttempt (Object ByteString JsonScalar) [(String, Text)]
ConvertAttempt (Object ByteString JsonScalar) [(String, JsonScalar)]
ConvertAttempt (Object ByteString JsonScalar) [(ByteString, String)]
ConvertAttempt (Object ByteString JsonScalar) [(ByteString, ByteString)]
ConvertAttempt (Object ByteString JsonScalar) [(ByteString, Object ByteString String)]
ConvertAttempt (Object ByteString JsonScalar) [(ByteString, Object ByteString ByteString)]
ConvertAttempt (Object ByteString JsonScalar) [(ByteString, Object ByteString Text)]
ConvertAttempt (Object ByteString JsonScalar) [(ByteString, Object ByteString JsonScalar)]
ConvertAttempt (Object ByteString JsonScalar) [(ByteString, Text)]
ConvertAttempt (Object ByteString JsonScalar) [(ByteString, JsonScalar)]
ConvertAttempt (Object ByteString JsonScalar) [(Text, String)]
ConvertAttempt (Object ByteString JsonScalar) [(Text, ByteString)]
ConvertAttempt (Object ByteString JsonScalar) [(Text, Object ByteString JsonScalar)]
ConvertAttempt (Object ByteString JsonScalar) [(Text, Object Text String)]
ConvertAttempt (Object ByteString JsonScalar) [(Text, Object Text ByteString)]
ConvertAttempt (Object ByteString JsonScalar) [(Text, Object Text Text)]
ConvertAttempt (Object ByteString JsonScalar) [(Text, Object Text JsonScalar)]
ConvertAttempt (Object ByteString JsonScalar) [(Text, Text)]
ConvertAttempt (Object ByteString JsonScalar) [(Text, JsonScalar)]
ConvertAttempt (Object ByteString JsonScalar) [ByteString]
ConvertAttempt (Object ByteString JsonScalar) [Object String String]
ConvertAttempt (Object ByteString JsonScalar) [Object String ByteString]
ConvertAttempt (Object ByteString JsonScalar) [Object String Text]
ConvertAttempt (Object ByteString JsonScalar) [Object String JsonScalar]
ConvertAttempt (Object ByteString JsonScalar) [Object ByteString String]
ConvertAttempt (Object ByteString JsonScalar) [Object ByteString ByteString]
ConvertAttempt (Object ByteString JsonScalar) [Object ByteString Text]
ConvertAttempt (Object ByteString JsonScalar) [Object ByteString JsonScalar]
ConvertAttempt (Object ByteString JsonScalar) [Object Text String]
ConvertAttempt (Object ByteString JsonScalar) [Object Text ByteString]
ConvertAttempt (Object ByteString JsonScalar) [Object Text Text]
ConvertAttempt (Object ByteString JsonScalar) [Object Text JsonScalar]
ConvertAttempt (Object ByteString JsonScalar) [Text]
ConvertAttempt (Object ByteString JsonScalar) [JsonScalar]
ConvertAttempt (Object ByteString JsonScalar) (Object String String)
ConvertAttempt (Object ByteString JsonScalar) (Object String ByteString)
ConvertAttempt (Object ByteString JsonScalar) (Object String Text)
ConvertAttempt (Object ByteString JsonScalar) (Object String JsonScalar)
ConvertAttempt (Object ByteString JsonScalar) (Object ByteString String)
ConvertAttempt (Object ByteString JsonScalar) (Object ByteString ByteString)
ConvertAttempt (Object ByteString JsonScalar) (Object ByteString Text)
ConvertAttempt (Object ByteString JsonScalar) (Object Text String)
ConvertAttempt (Object ByteString JsonScalar) (Object Text ByteString)
ConvertAttempt (Object ByteString JsonScalar) (Object Text Text)
ConvertAttempt (Object ByteString JsonScalar) (Object Text JsonScalar)
ConvertSuccess (Object String String) (Object ByteString JsonScalar)
ConvertSuccess (Object String ByteString) (Object ByteString JsonScalar)
ConvertSuccess (Object String Text) (Object ByteString JsonScalar)
ConvertSuccess (Object String JsonScalar) (Object ByteString JsonScalar)
ConvertSuccess (Object ByteString String) (Object ByteString JsonScalar)
ConvertSuccess (Object ByteString ByteString) (Object ByteString JsonScalar)
ConvertSuccess (Object ByteString Text) (Object ByteString JsonScalar)
ConvertSuccess (Object Text String) (Object ByteString JsonScalar)
ConvertSuccess (Object Text ByteString) (Object ByteString JsonScalar)
ConvertSuccess (Object Text Text) (Object ByteString JsonScalar)
ConvertSuccess (Object Text JsonScalar) (Object ByteString JsonScalar)
type JsonObject = Object ByteString JsonScalarSource
Meant to match closely with the JSON data type. Therefore, uses strict byte strings for keys and the JsonScalar type for scalars.
IO
readJsonDoc :: FilePath -> IO JsonDocSource
writeJsonDoc :: FilePath -> JsonDoc -> IO ()Source
Serialization
newtype JsonDecodeError Source
Error type for JSON decoding errors.
Constructors
JsonDecodeError String
show/hide Instances
decode :: MonadFailure JsonDecodeError m => ByteString -> m JsonObjectSource
Decode a lazy bytestring into a JsonObject.
encode :: JsonObject -> ByteStringSource
Encode a JsonObject into a lazy bytestring.
Specialization
toJsonObject :: ConvertSuccess a JsonObject => a -> JsonObjectSource
convertSuccess specialized for JsonObjects
fromJsonObject :: ConvertAttempt JsonObject a => JsonObject -> Attempt aSource
convertAttempt specialized for JsonObjects
Produced by Haddock version 2.6.0