reroute-0.4.1.0: abstract implementation of typed and untyped web routing

Safe HaskellNone
LanguageHaskell2010

Data.PolyMap

Documentation

data PolyMap c f a #

Instances

Functor f => Functor (PolyMap c f) # 

Methods

fmap :: (a -> b) -> PolyMap c f a -> PolyMap c f b #

(<$) :: a -> PolyMap c f b -> PolyMap c f a #

Alternative f => Monoid (PolyMap c f a) # 

Methods

mempty :: PolyMap c f a #

mappend :: PolyMap c f a -> PolyMap c f a -> PolyMap c f a #

mconcat :: [PolyMap c f a] -> PolyMap c f a #

empty :: PolyMap c f a #

rnfHelper :: (forall p. c p => f (p -> a) -> ()) -> PolyMap c f a -> () #

lookup :: Typeable p => PolyMap c f a -> Maybe (f (p -> a)) #

lookupApply :: (Typeable p, Functor f) => p -> PolyMap c f a -> Maybe (f a) #

lookupApplyAll :: Functor f => (forall p. c p => Maybe p) -> PolyMap c f a -> [f a] #

lookupConcat :: (Monoid m, Functor f) => (forall p. c p => Maybe p) -> (forall p. c p => p -> f (p -> a) -> m) -> PolyMap c f a -> m #

alter :: (Typeable p, c p) => (Maybe (f (p -> a)) -> Maybe (f (p -> a))) -> PolyMap c f a -> PolyMap c f a #

updateAll :: (forall p. c p => f (p -> a) -> g (p -> b)) -> PolyMap c f a -> PolyMap c g b #

insertWith :: (Typeable p, c p) => (f (p -> a) -> f (p -> a) -> f (p -> a)) -> f (p -> a) -> PolyMap c f a -> PolyMap c f a #

unionWith :: (forall p. c p => f (p -> a) -> f (p -> a) -> f (p -> a)) -> PolyMap c f a -> PolyMap c f a -> PolyMap c f a #

union :: Alternative f => PolyMap c f a -> PolyMap c f a -> PolyMap c f a #

zipWith' :: (forall p. c p => Maybe (f (p -> a)) -> Maybe (f (p -> b)) -> Maybe (f (p -> d))) -> PolyMap c f a -> PolyMap c f b -> PolyMap c f d #

zipWith :: Applicative f => (a -> b -> d) -> PolyMap c f a -> PolyMap c f b -> PolyMap c f d #

zip :: Applicative f => PolyMap c f a -> PolyMap c f b -> PolyMap c f (a, b) #

ap :: Applicative f => PolyMap c f (a -> b) -> PolyMap c f a -> PolyMap c f b #