type JObject = M.Map String JValue
type JParser = Either String
data JValue
= JObject JObject
| JArray JArray
| JString String
| JNumber Number
| JBool Boolean
| JNull
instance showValue :: Show JValue
instance eqValue :: Eq JValue
class FromJSON a where
parseJSON :: JValue -> JParser a
eitherDecode :: forall a. (FromJSON a) => String -> Either String a
decode :: forall a. (FromJSON a) => String -> Maybe a
fail :: forall a. String -> JParser a
instance valueFromJSON :: FromJSON JValue
instance boolFromJSON :: FromJSON Boolean
instance numberFromJSON :: FromJSON Number
instance unitFromJSON :: FromJSON Unit
instance stringFromJSON :: FromJSON String
instance arrayFromJSON :: (FromJSON a) => FromJSON [a]
instance tupleFromJSON :: (FromJSON a, FromJSON b) => FromJSON (Tuple a b)
instance eitherFromJSON :: (FromJSON a, FromJSON b) => FromJSON (Either a b)
instance maybeFromJSON :: (FromJSON a) => FromJSON (Maybe a)
instance setFromJSON :: (Ord a, FromJSON a) => FromJSON (S.Set a)
instance mapFromJSON :: (FromJSON a) => FromJSON (M.Map String a)
(.:) :: forall a. (FromJSON a) => JObject -> String -> JParser a
(.:?) :: forall a. (FromJSON a) => JObject -> String -> JParser (Maybe a)
(.!=) :: forall a. JParser (Maybe a) -> a -> JParser a
class ToJSON a where
toJSON :: a -> JValue
type Pair = Tuple String JValue
(.=) :: forall a. (ToJSON a) => String -> a -> Pair
object :: [Pair] -> JValue
encode :: forall a. (ToJSON a) => a -> String
instance boolToJSON :: ToJSON Boolean
instance numberToJSON :: ToJSON Number
instance stringToJSON :: ToJSON String
instance unitToJSON :: ToJSON Unit
instance arrayToJSON :: (ToJSON a) => ToJSON [a]
instance eitherToJSON :: (ToJSON a, ToJSON b) => ToJSON (Either a b)
instance mapToJSON :: (ToJSON a) => ToJSON (M.Map String a)
instance maybeToJSON :: (ToJSON a) => ToJSON (Maybe a)
instance setToJSON :: (ToJSON a) => ToJSON (S.Set a)
instance tupleToJSON :: (ToJSON a, ToJSON b) => ToJSON (Tuple a b)
instance valueToJSON :: ToJSON JValue