Copyright | (c) Aaron Friel |
---|---|
License | BSD-3 |
Maintainer | Aaron Friel <mayreply@aaronfriel.com> |
Stability | unstable |
Portability | portable |
Safe Haskell | Safe |
Language | Haskell2010 |
Documentation
class (GFunctor f, GPointed f) => GApplicative f where Source #
Graph indexed applicative functor.
gap :: Inv f i j => f i (a -> b) -> f j a -> f (Apply f i j) b Source #
Sequential application (<*>
).
gthen :: Inv f i j => f i a -> f j b -> f (Then f i j) b Source #
Sequence actions, discarding the value of the first argument (*>
).
Default implementation requires the default instance of Then
.
gthen :: (Apply f (Fconst f i) j ~ Then f i j, Inv f (Fconst f i) j) => f i a -> f j b -> f (Then f i j) b Source #
Sequence actions, discarding the value of the first argument (*>
).
Default implementation requires the default instance of Then
.
gbut :: Inv f i j => f i a -> f j b -> f (But f i j) a Source #
Sequence actions, discarding values of the second argument (<*
).
Default implementation requires the default instance of But
.
gbut :: (Apply f (Apply f (Pure f) i) j ~ But f i j, Inv f (Pure f) i, Inv f (Apply f (Pure f) i) j) => f i a -> f j b -> f (But f i j) a Source #
Applicative f => GApplicative * (GWrapped f) Source # | |