distributors-0.6.0.0: Unifying Parsers, Printers & Grammars
Copyright(C) 2026 - Eitan Chatav
LicenseBSD-style (see the file LICENSE)
MaintainerEitan Chatav <eitan.chatav@gmail.com>
Stabilityprovisional
Portabilitynon-portable
Safe HaskellNone
LanguageHaskell2010

Control.Lens.Grammar.Internal.Orphanage

Description

An orphanage for instances without a home.

Orphan instances

Filterable ReadP Source # 
Instance details

Methods

mapMaybe :: (a -> Maybe b) -> ReadP a -> ReadP b #

catMaybes :: ReadP (Maybe a) -> ReadP a #

filter :: (a -> Bool) -> ReadP a -> ReadP a #

drain :: ReadP a -> ReadP b #

Arrow p => Profunctor (WrappedArrow p) Source # 
Instance details

Methods

dimap :: (a -> b) -> (c -> d) -> WrappedArrow p b c -> WrappedArrow p a d #

lmap :: (a -> b) -> WrappedArrow p b c -> WrappedArrow p a c #

rmap :: (b -> c) -> WrappedArrow p a b -> WrappedArrow p a c #

(#.) :: forall a b c q. Coercible c b => q b c -> WrappedArrow p a b -> WrappedArrow p a c #

(.#) :: forall a b c q. Coercible b a => WrappedArrow p b c -> q a b -> WrappedArrow p a c #

(Profunctor p, Alternative (p a)) => Alternative (Coyoneda p a) Source # 
Instance details

Methods

empty :: Coyoneda p a a0 #

(<|>) :: Coyoneda p a a0 -> Coyoneda p a a0 -> Coyoneda p a a0 #

some :: Coyoneda p a a0 -> Coyoneda p a [a0] #

many :: Coyoneda p a a0 -> Coyoneda p a [a0] #

(Profunctor p, Alternative (p a)) => Alternative (Yoneda p a) Source # 
Instance details

Methods

empty :: Yoneda p a a0 #

(<|>) :: Yoneda p a a0 -> Yoneda p a a0 -> Yoneda p a a0 #

some :: Yoneda p a a0 -> Yoneda p a [a0] #

many :: Yoneda p a a0 -> Yoneda p a [a0] #

(Profunctor p, Applicative (p a)) => Applicative (Coyoneda p a) Source # 
Instance details

Methods

pure :: a0 -> Coyoneda p a a0 #

(<*>) :: Coyoneda p a (a0 -> b) -> Coyoneda p a a0 -> Coyoneda p a b #

liftA2 :: (a0 -> b -> c) -> Coyoneda p a a0 -> Coyoneda p a b -> Coyoneda p a c #

(*>) :: Coyoneda p a a0 -> Coyoneda p a b -> Coyoneda p a b #

(<*) :: Coyoneda p a a0 -> Coyoneda p a b -> Coyoneda p a a0 #

(Profunctor p, Applicative (p a)) => Applicative (Yoneda p a) Source # 
Instance details

Methods

pure :: a0 -> Yoneda p a a0 #

(<*>) :: Yoneda p a (a0 -> b) -> Yoneda p a a0 -> Yoneda p a b #

liftA2 :: (a0 -> b -> c) -> Yoneda p a a0 -> Yoneda p a b -> Yoneda p a c #

(*>) :: Yoneda p a a0 -> Yoneda p a b -> Yoneda p a b #

(<*) :: Yoneda p a a0 -> Yoneda p a b -> Yoneda p a a0 #

(Profunctor p, Filterable f) => Cochoice (WrappedPafb f p) Source # 
Instance details

Methods

unleft :: WrappedPafb f p (Either a d) (Either b d) -> WrappedPafb f p a b #

unright :: WrappedPafb f p (Either d a) (Either d b) -> WrappedPafb f p a b #

(Closed p, Distributive f) => Closed (WrappedPafb f p) Source # 
Instance details

Methods

closed :: WrappedPafb f p a b -> WrappedPafb f p (x -> a) (x -> b) #

(Profunctor p, Filterable (p a)) => Filterable (Coyoneda p a) Source # 
Instance details

Methods

mapMaybe :: (a0 -> Maybe b) -> Coyoneda p a a0 -> Coyoneda p a b #

catMaybes :: Coyoneda p a (Maybe a0) -> Coyoneda p a a0 #

filter :: (a0 -> Bool) -> Coyoneda p a a0 -> Coyoneda p a a0 #

drain :: Coyoneda p a a0 -> Coyoneda p a b #

(Profunctor p, Filterable (p a)) => Filterable (Yoneda p a) Source # 
Instance details

Methods

mapMaybe :: (a0 -> Maybe b) -> Yoneda p a a0 -> Yoneda p a b #

catMaybes :: Yoneda p a (Maybe a0) -> Yoneda p a a0 #

filter :: (a0 -> Bool) -> Yoneda p a a0 -> Yoneda p a a0 #

drain :: Yoneda p a a0 -> Yoneda p a b #

(Profunctor p, Alternative (p a), Applicative f) => Alternative (WrappedPafb f p a) Source # 
Instance details

Methods

empty :: WrappedPafb f p a a0 #

(<|>) :: WrappedPafb f p a a0 -> WrappedPafb f p a a0 -> WrappedPafb f p a a0 #

some :: WrappedPafb f p a a0 -> WrappedPafb f p a [a0] #

many :: WrappedPafb f p a a0 -> WrappedPafb f p a [a0] #

Applicative (Market a b s) Source # 
Instance details

Methods

pure :: a0 -> Market a b s a0 #

(<*>) :: Market a b s (a0 -> b0) -> Market a b s a0 -> Market a b s b0 #

liftA2 :: (a0 -> b0 -> c) -> Market a b s a0 -> Market a b s b0 -> Market a b s c #

(*>) :: Market a b s a0 -> Market a b s b0 -> Market a b s b0 #

(<*) :: Market a b s a0 -> Market a b s b0 -> Market a b s a0 #

(Profunctor p, Applicative (p a), Applicative f) => Applicative (WrappedPafb f p a) Source # 
Instance details

Methods

pure :: a0 -> WrappedPafb f p a a0 #

(<*>) :: WrappedPafb f p a (a0 -> b) -> WrappedPafb f p a a0 -> WrappedPafb f p a b #

liftA2 :: (a0 -> b -> c) -> WrappedPafb f p a a0 -> WrappedPafb f p a b -> WrappedPafb f p a c #

(*>) :: WrappedPafb f p a a0 -> WrappedPafb f p a b -> WrappedPafb f p a b #

(<*) :: WrappedPafb f p a a0 -> WrappedPafb f p a b -> WrappedPafb f p a a0 #

Monoid r => Applicative (Forget r a :: Type -> Type) Source # 
Instance details

Methods

pure :: a0 -> Forget r a a0 #

(<*>) :: Forget r a (a0 -> b) -> Forget r a a0 -> Forget r a b #

liftA2 :: (a0 -> b -> c) -> Forget r a a0 -> Forget r a b -> Forget r a c #

(*>) :: Forget r a a0 -> Forget r a b -> Forget r a b #

(<*) :: Forget r a a0 -> Forget r a b -> Forget r a a0 #

(Profunctor p, Functor f) => Functor (WrappedPafb f p a) Source # 
Instance details

Methods

fmap :: (a0 -> b) -> WrappedPafb f p a a0 -> WrappedPafb f p a b #

(<$) :: a0 -> WrappedPafb f p a b -> WrappedPafb f p a a0 #

Filterable f => Cochoice (Joker f :: Type -> Type -> Type) Source # 
Instance details

Methods

unleft :: Joker f (Either a d) (Either b d) -> Joker f a b #

unright :: Joker f (Either d a) (Either d b) -> Joker f a b #

(Profunctor p, Functor (p a), Filterable f) => Filterable (WrappedPafb f p a) Source # 
Instance details

Methods

mapMaybe :: (a0 -> Maybe b) -> WrappedPafb f p a a0 -> WrappedPafb f p a b #

catMaybes :: WrappedPafb f p a (Maybe a0) -> WrappedPafb f p a a0 #

filter :: (a0 -> Bool) -> WrappedPafb f p a a0 -> WrappedPafb f p a a0 #

drain :: WrappedPafb f p a a0 -> WrappedPafb f p a b #

Filterable (Forget r a :: Type -> Type) Source # 
Instance details

Methods

mapMaybe :: (a0 -> Maybe b) -> Forget r a a0 -> Forget r a b #

catMaybes :: Forget r a (Maybe a0) -> Forget r a a0 #

filter :: (a0 -> Bool) -> Forget r a a0 -> Forget r a a0 #

drain :: Forget r a a0 -> Forget r a b #

Filterable f => Filterable (Star f a) Source # 
Instance details

Methods

mapMaybe :: (a0 -> Maybe b) -> Star f a a0 -> Star f a b #

catMaybes :: Star f a (Maybe a0) -> Star f a a0 #

filter :: (a0 -> Bool) -> Star f a a0 -> Star f a a0 #

drain :: Star f a a0 -> Star f a b #

MonadFail m => MonadFail (Joker m a) Source # 
Instance details

Methods

fail :: String -> Joker m a a0 #

Alternative f => Alternative (Joker f a) Source # 
Instance details

Methods

empty :: Joker f a a0 #

(<|>) :: Joker f a a0 -> Joker f a a0 -> Joker f a a0 #

some :: Joker f a a0 -> Joker f a [a0] #

many :: Joker f a a0 -> Joker f a [a0] #

Decidable f => Applicative (Clown f a :: Type -> Type) Source # 
Instance details

Methods

pure :: a0 -> Clown f a a0 #

(<*>) :: Clown f a (a0 -> b) -> Clown f a a0 -> Clown f a b #

liftA2 :: (a0 -> b -> c) -> Clown f a a0 -> Clown f a b -> Clown f a c #

(*>) :: Clown f a a0 -> Clown f a b -> Clown f a b #

(<*) :: Clown f a a0 -> Clown f a b -> Clown f a a0 #

Applicative f => Applicative (Joker f a) Source # 
Instance details

Methods

pure :: a0 -> Joker f a a0 #

(<*>) :: Joker f a (a0 -> b) -> Joker f a a0 -> Joker f a b #

liftA2 :: (a0 -> b -> c) -> Joker f a a0 -> Joker f a b -> Joker f a c #

(*>) :: Joker f a a0 -> Joker f a b -> Joker f a b #

(<*) :: Joker f a a0 -> Joker f a b -> Joker f a a0 #

Arrow p => Applicative (WrappedArrow p a) Source # 
Instance details

Methods

pure :: a0 -> WrappedArrow p a a0 #

(<*>) :: WrappedArrow p a (a0 -> b) -> WrappedArrow p a a0 -> WrappedArrow p a b #

liftA2 :: (a0 -> b -> c) -> WrappedArrow p a a0 -> WrappedArrow p a b -> WrappedArrow p a c #

(*>) :: WrappedArrow p a a0 -> WrappedArrow p a b -> WrappedArrow p a b #

(<*) :: WrappedArrow p a a0 -> WrappedArrow p a b -> WrappedArrow p a a0 #

Arrow p => Functor (WrappedArrow p a) Source # 
Instance details

Methods

fmap :: (a0 -> b) -> WrappedArrow p a a0 -> WrappedArrow p a b #

(<$) :: a0 -> WrappedArrow p a b -> WrappedArrow p a a0 #

Monad m => Monad (Joker m a) Source # 
Instance details

Methods

(>>=) :: Joker m a a0 -> (a0 -> Joker m a b) -> Joker m a b #

(>>) :: Joker m a a0 -> Joker m a b -> Joker m a b #

return :: a0 -> Joker m a a0 #

MonadPlus m => MonadPlus (Joker m a) Source # 
Instance details

Methods

mzero :: Joker m a a0 #

mplus :: Joker m a a0 -> Joker m a a0 -> Joker m a a0 #

Filterable f => Filterable (Joker f a) Source # 
Instance details

Methods

mapMaybe :: (a0 -> Maybe b) -> Joker f a a0 -> Joker f a b #

catMaybes :: Joker f a (Maybe a0) -> Joker f a a0 #

filter :: (a0 -> Bool) -> Joker f a a0 -> Joker f a a0 #

drain :: Joker f a a0 -> Joker f a b #

(forall x. Applicative (p x), forall x. Applicative (q x)) => Applicative (Product p q a) Source # 
Instance details

Methods

pure :: a0 -> Product p q a a0 #

(<*>) :: Product p q a (a0 -> b) -> Product p q a a0 -> Product p q a b #

liftA2 :: (a0 -> b -> c) -> Product p q a a0 -> Product p q a b -> Product p q a c #

(*>) :: Product p q a a0 -> Product p q a b -> Product p q a b #

(<*) :: Product p q a a0 -> Product p q a b -> Product p q a a0 #

(Applicative f, Applicative (p a)) => Applicative (Cayley f p a) Source # 
Instance details

Methods

pure :: a0 -> Cayley f p a a0 #

(<*>) :: Cayley f p a (a0 -> b) -> Cayley f p a a0 -> Cayley f p a b #

liftA2 :: (a0 -> b -> c) -> Cayley f p a a0 -> Cayley f p a b -> Cayley f p a c #

(*>) :: Cayley f p a a0 -> Cayley f p a b -> Cayley f p a b #

(<*) :: Cayley f p a a0 -> Cayley f p a b -> Cayley f p a a0 #

(forall x. Applicative (p x), Profunctor p, Applicative (q a), Profunctor q) => Applicative (Procompose p q a) Source # 
Instance details

Methods

pure :: a0 -> Procompose p q a a0 #

(<*>) :: Procompose p q a (a0 -> b) -> Procompose p q a a0 -> Procompose p q a b #

liftA2 :: (a0 -> b -> c) -> Procompose p q a a0 -> Procompose p q a b -> Procompose p q a c #

(*>) :: Procompose p q a a0 -> Procompose p q a b -> Procompose p q a b #

(<*) :: Procompose p q a a0 -> Procompose p q a b -> Procompose p q a a0 #

(Functor f, Functor (p a)) => Functor (Cayley f p a) Source # 
Instance details

Methods

fmap :: (a0 -> b) -> Cayley f p a a0 -> Cayley f p a b #

(<$) :: a0 -> Cayley f p a b -> Cayley f p a a0 #