argo-0.2021.11.7: Parse and render JSON.
Safe HaskellSafe-Inferred
LanguageHaskell2010

Argo.Codec

Documentation

project :: (i -> f) -> CodecOf r w f o -> CodecOf r w i o Source #

data CodecOf r w i o Source #

Constructors

Codec 

Fields

Instances

Instances details
(Functor r, Functor w) => Functor (CodecOf r w i) Source # 
Instance details

Defined in Argo.Codec

Methods

fmap :: (a -> b) -> CodecOf r w i a -> CodecOf r w i b #

(<$) :: a -> CodecOf r w i b -> CodecOf r w i a #

(Applicative r, Applicative w) => Applicative (CodecOf r w i) Source # 
Instance details

Defined in Argo.Codec

Methods

pure :: a -> CodecOf r w i a #

(<*>) :: CodecOf r w i (a -> b) -> CodecOf r w i a -> CodecOf r w i b #

liftA2 :: (a -> b -> c) -> CodecOf r w i a -> CodecOf r w i b -> CodecOf r w i c #

(*>) :: CodecOf r w i a -> CodecOf r w i b -> CodecOf r w i b #

(<*) :: CodecOf r w i a -> CodecOf r w i b -> CodecOf r w i a #

(Alternative r, Alternative w) => Alternative (CodecOf r w i) Source # 
Instance details

Defined in Argo.Codec

Methods

empty :: CodecOf r w i a #

(<|>) :: CodecOf r w i a -> CodecOf r w i a -> CodecOf r w i a #

some :: CodecOf r w i a -> CodecOf r w i [a] #

many :: CodecOf r w i a -> CodecOf r w i [a] #

type Codec r w a = CodecOf r w a a Source #

dimap :: (Functor r, Functor w) => (a -> b) -> (b -> a) -> Codec r w a -> Codec r w b Source #

mapBoth :: (Functor r, Alternative w) => (o2 -> o1) -> (i1 -> Maybe i2) -> CodecOf r w i2 o2 -> CodecOf r w i1 o1 Source #

data Permission Source #

Constructors

Allow 
Forbid 

Instances

Instances details
Eq Permission Source # 
Instance details

Defined in Argo.Codec

Show Permission Source # 
Instance details

Defined in Argo.Codec

detect :: (a -> Bool) -> [a] -> Maybe (a, [a]) Source #

detectWith :: ([a] -> [a]) -> (a -> Bool) -> [a] -> Maybe (a, [a]) Source #