Safe Haskell | Safe |
---|---|
Language | Haskell98 |
Documentation
type family ErrorAlg (f :: (* -> *) -> * -> *) e a :: * Source #
Type family that converts pattern functors to convenient algebra types.
type ErrorAlg_PF f e a = forall ix. f (K0 a) ix -> Either e a Source #
An error algebra over pattern functors.
class MkErrorAlg f where Source #
Converts convenient algebras to algebras that are able to work with pattern functors.
mkErrorAlg :: ErrorAlg f e a -> ErrorAlg_PF f e a Source #
MkErrorAlg U Source # | |
(MkErrorAlg f, MkErrorAlg g) => MkErrorAlg ((:+:) f g) Source # | |
MkErrorAlg f => MkErrorAlg ((:*:) (I xi) f) Source # | |
MkErrorAlg f => MkErrorAlg ((:*:) (K a) f) Source # | |
MkErrorAlg f => MkErrorAlg ((:>:) f xi) Source # | |