| Copyright | (C) 2026 - Eitan Chatav |
|---|---|
| License | BSD-style (see the file LICENSE) |
| Maintainer | Eitan Chatav <eitan.chatav@gmail.com> |
| Stability | provisional |
| Portability | non-portable |
| Safe Haskell | Safe-Inferred |
| Language | Haskell2010 |
Data.Profunctor.Filtrator
Contents
Description
Filtrator
class (Cochoice p, forall x. Filterable (p x)) => Filtrator p where Source #
The Filtrator class extends Cochoice,
as well as Filterable, adding the filtrate method,
which is an oplax monoidal structure morphism dual to >+<.
filtrate . uncurry (>+<) = id
uncurry (>+<) . filtrate = id
Minimal complete definition
Nothing
Methods
filtrate :: p (Either a c) (Either b d) -> (p a b, p c d) Source #
Instances
| Filtrator p => Filtrator (Coyoneda p) Source # | |
| Filtrator p => Filtrator (Yoneda p) Source # | |
| Filtrator (Binocular a b) Source # | |
| Filtrator (PartialExchange a b) Source # | |
Defined in Data.Profunctor.Filtrator Methods filtrate :: PartialExchange a b (Either a0 c) (Either b0 d) -> (PartialExchange a b a0 b0, PartialExchange a b c d) Source # | |
| Filterable f => Filtrator (Parsor s f) Source # | |
| Filterable f => Filtrator (Printor s f) Source # | |
| (Profunctor p, forall x. Functor (p x), Filterable f) => Filtrator (WrappedPafb f p) Source # | |
Defined in Data.Profunctor.Filtrator Methods filtrate :: WrappedPafb f p (Either a c) (Either b d) -> (WrappedPafb f p a b, WrappedPafb f p c d) Source # | |
| Filtrator (Forget r :: Type -> Type -> Type) Source # | |
| (Filterable f, Traversable f) => Filtrator (Star f) Source # | |