A JSON value.
Constructors:
JTrue
:: JValue
: true
JFalse
:: JValue
: false
JNull
:: JValue
: null, i.e. a missing value
JString
:: String -> JValue
: a JSON string
JNumber
:: Float -> JValue
: a JSON number (numbers are always floats in JSON)
JArray
:: [JValue] -> JValue
: a JSON array, represented by a list of JValues
JObject
:: [(String,JValue)] -> JValue
: a JSON object, represented by a map from Strings to JValues