| Copyright | (C) 2015 Edward Kmett |
|---|---|
| License | BSD-style (see the file LICENSE) |
| Maintainer | Edward Kmett <ekmett@gmail.com> |
| Stability | provisional |
| Portability | MPTCs, fundeps |
| Safe Haskell | Trustworthy |
| Language | Haskell2010 |
Data.Profunctor.Sieve
Description
Documentation
class (Profunctor p, Functor f) => Sieve (p :: Type -> Type -> Type) (f :: Type -> Type) | p -> f where #
A Profunctor p is a Sieve on f if it is a subprofunctor of .Star f
That is to say it is a subset of Hom(-,f=) closed under lmap and rmap.
Alternately, you can view it as a sieve in the comma category Hask/f.
Instances
| (Monad m, Functor m) => Sieve (Kleisli m) m # | |
Defined in Data.Profunctor.Sieve | |
| Functor f => Sieve (Star f) f # | |
Defined in Data.Profunctor.Sieve | |
| Sieve (->) Identity # | |
Defined in Data.Profunctor.Sieve | |
| Sieve (Forget r :: Type -> Type -> Type) (Const r :: Type -> Type) # | |
Defined in Data.Profunctor.Sieve | |
| (Sieve p f, Sieve q g) => Sieve (Procompose p q) (Compose g f) # | |
Defined in Data.Profunctor.Composition Methods sieve :: Procompose p q a b -> a -> Compose g f b # | |
class (Profunctor p, Functor f) => Cosieve (p :: Type -> Type -> Type) (f :: Type -> Type) | p -> f where #
A Profunctor p is a Cosieve on f if it is a subprofunctor of .Costar f
That is to say it is a subset of Hom(f-,=) closed under lmap and rmap.
Alternately, you can view it as a cosieve in the comma category f/Hask.
Instances
| Cosieve (Tagged :: Type -> Type -> Type) (Proxy :: Type -> Type) # | |
Defined in Data.Profunctor.Sieve | |
| Functor w => Cosieve (Cokleisli w) w # | |
Defined in Data.Profunctor.Sieve | |
| Functor f => Cosieve (Costar f) f # | |
Defined in Data.Profunctor.Sieve | |
| Cosieve (->) Identity # | |
Defined in Data.Profunctor.Sieve | |
| (Cosieve p f, Cosieve q g) => Cosieve (Procompose p q) (Compose f g) # | |
Defined in Data.Profunctor.Composition Methods cosieve :: Procompose p q a b -> Compose f g a -> b # | |