Copyright  (c) Marcin Mrotek 2014 

License  BSD3 
Maintainer  marcin.jan.mrotek@gmail.com 
Safe Haskell  None 
Language  Haskell2010 
Extensions 

Operations on constant type records.
 cfmap :: (a > b) > Rec (Const a) rs > Rec (Const b) rs
 cpure :: Record rs => a > Rec (Const a) rs
 capp :: Rec (Const (a > b)) rs > Rec (Const a) rs > Rec (Const b) rs
 rconst :: (Applicative f, RecApplicative rs) => f a > f (Rec (Const a) rs)
 constCommute :: Functor f => Const (f a) b > Compose f (Const a) b
 rtraverseconst :: Applicative f => Rec (Const (f a)) rs > f (Rec (Const a) rs)
 class Record (rs :: [k]) where
Documentation
cfmap :: (a > b) > Rec (Const a) rs > Rec (Const b) rs Source #
Map a function over a constant type record.
capp :: Rec (Const (a > b)) rs > Rec (Const a) rs > Rec (Const b) rs Source #
Extension of (*) to constant type records.
rconst :: (Applicative f, RecApplicative rs) => f a > f (Rec (Const a) rs) Source #
constCommute :: Functor f => Const (f a) b > Compose f (Const a) b Source #
Commute a constant functor with another functor.
rtraverseconst :: Applicative f => Rec (Const (f a)) rs > f (Rec (Const a) rs) Source #
Distribute a functor over a constant type record.