json-0.10: Support for serialising Haskell to and from JSON

Safe HaskellSafe
LanguageHaskell98

Text.JSON.String

Contents

Description

Basic support for working with JSON values.

Synopsis

Parsing

data GetJSON a Source #

Parsing JSON

The type of JSON parsers for String

Instances
Monad GetJSON Source # 
Instance details

Defined in Text.JSON.String

Methods

(>>=) :: GetJSON a -> (a -> GetJSON b) -> GetJSON b #

(>>) :: GetJSON a -> GetJSON b -> GetJSON b #

return :: a -> GetJSON a #

fail :: String -> GetJSON a #

Functor GetJSON Source # 
Instance details

Defined in Text.JSON.String

Methods

fmap :: (a -> b) -> GetJSON a -> GetJSON b #

(<$) :: a -> GetJSON b -> GetJSON a #

MonadFail GetJSON Source # 
Instance details

Defined in Text.JSON.String

Methods

fail :: String -> GetJSON a #

Applicative GetJSON Source # 
Instance details

Defined in Text.JSON.String

Methods

pure :: a -> GetJSON a #

(<*>) :: GetJSON (a -> b) -> GetJSON a -> GetJSON b #

liftA2 :: (a -> b -> c) -> GetJSON a -> GetJSON b -> GetJSON c #

(*>) :: GetJSON a -> GetJSON b -> GetJSON b #

(<*) :: GetJSON a -> GetJSON b -> GetJSON a #

runGetJSON :: GetJSON a -> String -> Either String a Source #

Run a JSON reader on an input String, returning some Haskell value. All input will be consumed.

Reading JSON

readJSNull :: GetJSON JSValue Source #

Read the JSON null type

readJSBool :: GetJSON JSValue Source #

Read the JSON Bool type

readJSString :: GetJSON JSValue Source #

Read the JSON String type

readJSRational :: GetJSON Rational Source #

Read an Integer or Double in JSON format, returning a Rational

readJSArray :: GetJSON JSValue Source #

Read a list in JSON format

readJSObject :: GetJSON JSValue Source #

Read an object in JSON format

readJSValue :: GetJSON JSValue Source #

Read one of several possible JS types

readJSTopType :: GetJSON JSValue Source #

Top level JSON can only be Arrays or Objects

Writing JSON

showJSNull :: ShowS Source #

Write the JSON null type

showJSBool :: Bool -> ShowS Source #

Write the JSON Bool type

showJSArray :: [JSValue] -> ShowS Source #

Show a list in JSON format

showJSObject :: JSObject JSValue -> ShowS Source #

Show an association list in JSON format

showJSRational :: Rational -> ShowS Source #

Show a Rational in JSON format

showJSValue :: JSValue -> ShowS Source #

Show JSON values

showJSTopType :: JSValue -> ShowS Source #

Writing JSON

Show strict JSON top level types. Values not permitted at the top level are wrapped in a singleton array.