Basic functions
toJsonString :: Json a => a -> String
Converts the value to a string encoded with JSON
fromJsonString :: Json a => String -> a
Parses a JSON encoded string into a value
Supported value types
This module supports the following value types:
instance Json String
instance Json Short
instance Json Integer
instance Json Long
instance Json Float
instance Json Double
instance (Json a) => Json [a]
instance (Json a) => Json (Maybe a)
instance Json ()
instance (Json a, Json b) => Json (a, b)
instance (Json a, Json b, Json c) => Json (a, b, c)
instance (Json a, Json b, Json c, Json d) => Json (a, b, c, d)
instance (Json a, Json b, Json c, Json d, Json e) => Json (a, b, c, d, e)
instance Json Json
Generic JSON Type
data Json
JsonString :: String -> Json
JsonDouble :: Double -> Json
JsonArray :: [Json] -> Json
JsonBoolean :: Boolean -> Json
JsonObject :: [JsonField] -> Json
data JsonField
JsonField :: String -> Json -> JsonField
Adding support for additional value types
class Json a
writeJson :: Json a => JsonGenerator -> a -> <Proc> ()
readJson :: Json a => JsonParser -> <Proc> a
toJson :: Json a => a -> Json
fromJson :: Json a => Json -> a
It is enough to implement toJson and fromJson.
Undocumented entities
lookupJsonField :: String -> Json -> Maybe Json
|