aeson-value-parser-0.14: An API for parsing "aeson" JSON tree into Haskell types

Safe HaskellNone
LanguageHaskell2010

Aeson.ValueParser

Contents

Description

A parser DSL for the "aeson" model of the JSON tree.

Synopsis

Documentation

data Value a Source #

A JSON Value parser.

Instances
Monad Value Source # 
Instance details

Defined in Aeson.ValueParser

Methods

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

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

return :: a -> Value a #

fail :: String -> Value a #

Functor Value Source # 
Instance details

Defined in Aeson.ValueParser

Methods

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

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

MonadFail Value Source # 
Instance details

Defined in Aeson.ValueParser

Methods

fail :: String -> Value a #

Applicative Value Source # 
Instance details

Defined in Aeson.ValueParser

Methods

pure :: a -> Value a #

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

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

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

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

Alternative Value Source # 
Instance details

Defined in Aeson.ValueParser

Methods

empty :: Value a #

(<|>) :: Value a -> Value a -> Value a #

some :: Value a -> Value [a] #

many :: Value a -> Value [a] #

MonadPlus Value Source # 
Instance details

Defined in Aeson.ValueParser

Methods

mzero :: Value a #

mplus :: Value a -> Value a -> Value a #

MonadError Error Value Source # 
Instance details

Defined in Aeson.ValueParser

Methods

throwError :: Error -> Value a #

catchError :: Value a -> (Error -> Value a) -> Value a #

data Error Source #

Constructors

Error 

Fields

Instances
IsString Error Source # 
Instance details

Defined in Aeson.ValueParser.Error

Methods

fromString :: String -> Error #

Semigroup Error Source # 
Instance details

Defined in Aeson.ValueParser.Error

Methods

(<>) :: Error -> Error -> Error #

sconcat :: NonEmpty Error -> Error #

stimes :: Integral b => b -> Error -> Error #

Monoid Error Source # 
Instance details

Defined in Aeson.ValueParser.Error

Methods

mempty :: Error #

mappend :: Error -> Error -> Error #

mconcat :: [Error] -> Error #

MonadError Error Array Source # 
Instance details

Defined in Aeson.ValueParser

Methods

throwError :: Error -> Array a #

catchError :: Array a -> (Error -> Array a) -> Array a #

MonadError Error Object Source # 
Instance details

Defined in Aeson.ValueParser

Methods

throwError :: Error -> Object a #

catchError :: Object a -> (Error -> Object a) -> Object a #

MonadError Error Value Source # 
Instance details

Defined in Aeson.ValueParser

Methods

throwError :: Error -> Value a #

catchError :: Value a -> (Error -> Value a) -> Value a #

Value parsers

Object parsers

data Object a Source #

A JSON Value parser.

Instances
Monad Object Source # 
Instance details

Defined in Aeson.ValueParser

Methods

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

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

return :: a -> Object a #

fail :: String -> Object a #

Functor Object Source # 
Instance details

Defined in Aeson.ValueParser

Methods

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

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

MonadFail Object Source # 
Instance details

Defined in Aeson.ValueParser

Methods

fail :: String -> Object a #

Applicative Object Source # 
Instance details

Defined in Aeson.ValueParser

Methods

pure :: a -> Object a #

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

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

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

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

Alternative Object Source # 
Instance details

Defined in Aeson.ValueParser

Methods

empty :: Object a #

(<|>) :: Object a -> Object a -> Object a #

some :: Object a -> Object [a] #

many :: Object a -> Object [a] #

MonadPlus Object Source # 
Instance details

Defined in Aeson.ValueParser

Methods

mzero :: Object a #

mplus :: Object a -> Object a -> Object a #

MonadError Error Object Source # 
Instance details

Defined in Aeson.ValueParser

Methods

throwError :: Error -> Object a #

catchError :: Object a -> (Error -> Object a) -> Object a #

field :: Text -> Value a -> Object a Source #

foldlFields :: (state -> Text -> field -> state) -> state -> Value field -> Object state Source #

Array parsers

data Array a Source #

A JSON Value parser.

Instances
Monad Array Source # 
Instance details

Defined in Aeson.ValueParser

Methods

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

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

return :: a -> Array a #

fail :: String -> Array a #

Functor Array Source # 
Instance details

Defined in Aeson.ValueParser

Methods

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

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

MonadFail Array Source # 
Instance details

Defined in Aeson.ValueParser

Methods

fail :: String -> Array a #

Applicative Array Source # 
Instance details

Defined in Aeson.ValueParser

Methods

pure :: a -> Array a #

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

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

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

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

Alternative Array Source # 
Instance details

Defined in Aeson.ValueParser

Methods

empty :: Array a #

(<|>) :: Array a -> Array a -> Array a #

some :: Array a -> Array [a] #

many :: Array a -> Array [a] #

MonadPlus Array Source # 
Instance details

Defined in Aeson.ValueParser

Methods

mzero :: Array a #

mplus :: Array a -> Array a -> Array a #

MonadError Error Array Source # 
Instance details

Defined in Aeson.ValueParser

Methods

throwError :: Error -> Array a #

catchError :: Array a -> (Error -> Array a) -> Array a #

element :: Int -> Value a -> Array a Source #

foldlElements :: (state -> Int -> element -> state) -> state -> Value element -> Array state Source #

foldrElements :: (Int -> element -> state -> state) -> state -> Value element -> Array state Source #