Safe Haskell | None |
---|---|
Language | Haskell2010 |
- fmap1 :: Functor f => (a -> b) -> f a -> f b
- fmap2 :: (Functor f, Functor f1) => (a -> b) -> f (f1 a) -> f (f1 b)
- fmap3 :: (Functor f, Functor f1, Functor f2) => (a -> b) -> f (f1 (f2 a)) -> f (f1 (f2 b))
- fmap4 :: (Functor f, Functor f1, Functor f2, Functor f3) => (a -> b) -> f (f1 (f2 (f3 a))) -> f (f1 (f2 (f3 b)))
- fmap5 :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4) => (a -> b) -> f (f1 (f2 (f3 (f4 a)))) -> f (f1 (f2 (f3 (f4 b))))
- fmap6 :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4, Functor f5) => (a -> b) -> f (f1 (f2 (f3 (f4 (f5 a))))) -> f (f1 (f2 (f3 (f4 (f5 b)))))
- fmap7 :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4, Functor f5, Functor f6) => (a -> b) -> f (f1 (f2 (f3 (f4 (f5 (f6 a)))))) -> f (f1 (f2 (f3 (f4 (f5 (f6 b))))))
- fmap8 :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4, Functor f5, Functor f6, Functor f7) => (a -> b) -> f (f1 (f2 (f3 (f4 (f5 (f6 (f7 a))))))) -> f (f1 (f2 (f3 (f4 (f5 (f6 (f7 b)))))))
- fmap9 :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4, Functor f5, Functor f6, Functor f7, Functor f8) => (a -> b) -> f (f1 (f2 (f3 (f4 (f5 (f6 (f7 (f8 a)))))))) -> f (f1 (f2 (f3 (f4 (f5 (f6 (f7 (f8 b))))))))
- dot1 :: Functor f => (a -> b) -> f a -> f b
- dot2 :: (Functor f, Functor f1) => (a -> b) -> f (f1 a) -> f (f1 b)
- dot3 :: (Functor f, Functor f1, Functor f2) => (a -> b) -> f (f1 (f2 a)) -> f (f1 (f2 b))
- dot4 :: (Functor f, Functor f1, Functor f2, Functor f3) => (a -> b) -> f (f1 (f2 (f3 a))) -> f (f1 (f2 (f3 b)))
- dot5 :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4) => (a -> b) -> f (f1 (f2 (f3 (f4 a)))) -> f (f1 (f2 (f3 (f4 b))))
- dot6 :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4, Functor f5) => (a -> b) -> f (f1 (f2 (f3 (f4 (f5 a))))) -> f (f1 (f2 (f3 (f4 (f5 b)))))
- dot7 :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4, Functor f5, Functor f6) => (a -> b) -> f (f1 (f2 (f3 (f4 (f5 (f6 a)))))) -> f (f1 (f2 (f3 (f4 (f5 (f6 b))))))
- dot8 :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4, Functor f5, Functor f6, Functor f7) => (a -> b) -> f (f1 (f2 (f3 (f4 (f5 (f6 (f7 a))))))) -> f (f1 (f2 (f3 (f4 (f5 (f6 (f7 b)))))))
- dot9 :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4, Functor f5, Functor f6, Functor f7, Functor f8) => (a -> b) -> f (f1 (f2 (f3 (f4 (f5 (f6 (f7 (f8 a)))))))) -> f (f1 (f2 (f3 (f4 (f5 (f6 (f7 (f8 b))))))))
- (∘) :: Functor f => (a -> b) -> f a -> f b
- (∘∘) :: (Functor f, Functor f1) => (a -> b) -> f (f1 a) -> f (f1 b)
- (∘∘∘) :: (Functor f, Functor f1, Functor f2) => (a -> b) -> f (f1 (f2 a)) -> f (f1 (f2 b))
- (∘∘∘∘) :: (Functor f, Functor f1, Functor f2, Functor f3) => (a -> b) -> f (f1 (f2 (f3 a))) -> f (f1 (f2 (f3 b)))
- (∘∘∘∘∘) :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4) => (a -> b) -> f (f1 (f2 (f3 (f4 a)))) -> f (f1 (f2 (f3 (f4 b))))
- (.) :: Functor f => (a -> b) -> f a -> f b
- (.:) :: (Functor f, Functor f1) => (a -> b) -> f (f1 a) -> f (f1 b)
- (.:.) :: (Functor f, Functor f1, Functor f2) => (a -> b) -> f (f1 (f2 a)) -> f (f1 (f2 b))
- (.::) :: (Functor f, Functor f1, Functor f2, Functor f3) => (a -> b) -> f (f1 (f2 (f3 a))) -> f (f1 (f2 (f3 b)))
- (.::.) :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4) => (a -> b) -> f (f1 (f2 (f3 (f4 a)))) -> f (f1 (f2 (f3 (f4 b))))
- (.:::) :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4, Functor f5) => (a -> b) -> f (f1 (f2 (f3 (f4 (f5 a))))) -> f (f1 (f2 (f3 (f4 (f5 b)))))
- (.:::.) :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4, Functor f5, Functor f6) => (a -> b) -> f (f1 (f2 (f3 (f4 (f5 (f6 a)))))) -> f (f1 (f2 (f3 (f4 (f5 (f6 b))))))
- (.::::) :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4, Functor f5, Functor f6, Functor f7) => (a -> b) -> f (f1 (f2 (f3 (f4 (f5 (f6 (f7 a))))))) -> f (f1 (f2 (f3 (f4 (f5 (f6 (f7 b)))))))
- (.::::.) :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4, Functor f5, Functor f6, Functor f7, Functor f8) => (a -> b) -> f (f1 (f2 (f3 (f4 (f5 (f6 (f7 (f8 a)))))))) -> f (f1 (f2 (f3 (f4 (f5 (f6 (f7 (f8 b))))))))
- (<∘>) :: (Functor f, Functor f1) => (a -> b) -> f (f1 a) -> f (f1 b)
- (<∘∘>) :: (Functor f, Functor f1, Functor f2) => (a -> b) -> f (f1 (f2 a)) -> f (f1 (f2 b))
- (<∘∘∘>) :: (Functor f, Functor f1, Functor f2, Functor f3) => (a -> b) -> f (f1 (f2 (f3 a))) -> f (f1 (f2 (f3 b)))
- (<∘∘∘∘>) :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4) => (a -> b) -> f (f1 (f2 (f3 (f4 a)))) -> f (f1 (f2 (f3 (f4 b))))
- (<∘∘∘∘∘>) :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4, Functor f5) => (a -> b) -> f (f1 (f2 (f3 (f4 (f5 a))))) -> f (f1 (f2 (f3 (f4 (f5 b)))))
- (<<∘>>) :: (Functor f, Functor f1, Functor f2) => (a -> b) -> f (f1 (f2 a)) -> f (f1 (f2 b))
- (<<$>>) :: (Functor f, Functor f1) => (a -> b) -> f (f1 a) -> f (f1 b)
- newtype NestedFunctor m n a = NestedFunctor {
- fromNestedFunctor :: m (n a)
- nested :: (Functor f, Functor f1) => (f1 (NestedFunctor m1 n1 a1) -> f (NestedFunctor m n a)) -> f1 (m1 (n1 a1)) -> f (m (n a))
- type family Functors lst :: Constraint
Documentation
fmap4 :: (Functor f, Functor f1, Functor f2, Functor f3) => (a -> b) -> f (f1 (f2 (f3 a))) -> f (f1 (f2 (f3 b))) Source
fmap5 :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4) => (a -> b) -> f (f1 (f2 (f3 (f4 a)))) -> f (f1 (f2 (f3 (f4 b)))) Source
fmap6 :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4, Functor f5) => (a -> b) -> f (f1 (f2 (f3 (f4 (f5 a))))) -> f (f1 (f2 (f3 (f4 (f5 b))))) Source
fmap7 :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4, Functor f5, Functor f6) => (a -> b) -> f (f1 (f2 (f3 (f4 (f5 (f6 a)))))) -> f (f1 (f2 (f3 (f4 (f5 (f6 b)))))) Source
fmap8 :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4, Functor f5, Functor f6, Functor f7) => (a -> b) -> f (f1 (f2 (f3 (f4 (f5 (f6 (f7 a))))))) -> f (f1 (f2 (f3 (f4 (f5 (f6 (f7 b))))))) Source
fmap9 :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4, Functor f5, Functor f6, Functor f7, Functor f8) => (a -> b) -> f (f1 (f2 (f3 (f4 (f5 (f6 (f7 (f8 a)))))))) -> f (f1 (f2 (f3 (f4 (f5 (f6 (f7 (f8 b)))))))) Source
dot4 :: (Functor f, Functor f1, Functor f2, Functor f3) => (a -> b) -> f (f1 (f2 (f3 a))) -> f (f1 (f2 (f3 b))) Source
dot5 :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4) => (a -> b) -> f (f1 (f2 (f3 (f4 a)))) -> f (f1 (f2 (f3 (f4 b)))) Source
dot6 :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4, Functor f5) => (a -> b) -> f (f1 (f2 (f3 (f4 (f5 a))))) -> f (f1 (f2 (f3 (f4 (f5 b))))) Source
dot7 :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4, Functor f5, Functor f6) => (a -> b) -> f (f1 (f2 (f3 (f4 (f5 (f6 a)))))) -> f (f1 (f2 (f3 (f4 (f5 (f6 b)))))) Source
dot8 :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4, Functor f5, Functor f6, Functor f7) => (a -> b) -> f (f1 (f2 (f3 (f4 (f5 (f6 (f7 a))))))) -> f (f1 (f2 (f3 (f4 (f5 (f6 (f7 b))))))) Source
dot9 :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4, Functor f5, Functor f6, Functor f7, Functor f8) => (a -> b) -> f (f1 (f2 (f3 (f4 (f5 (f6 (f7 (f8 a)))))))) -> f (f1 (f2 (f3 (f4 (f5 (f6 (f7 (f8 b)))))))) Source
(∘∘∘) :: (Functor f, Functor f1, Functor f2) => (a -> b) -> f (f1 (f2 a)) -> f (f1 (f2 b)) infixr 9 Source
(∘∘∘∘) :: (Functor f, Functor f1, Functor f2, Functor f3) => (a -> b) -> f (f1 (f2 (f3 a))) -> f (f1 (f2 (f3 b))) infixr 9 Source
(∘∘∘∘∘) :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4) => (a -> b) -> f (f1 (f2 (f3 (f4 a)))) -> f (f1 (f2 (f3 (f4 b)))) infixr 9 Source
(.:.) :: (Functor f, Functor f1, Functor f2) => (a -> b) -> f (f1 (f2 a)) -> f (f1 (f2 b)) infixr 9 Source
(.::) :: (Functor f, Functor f1, Functor f2, Functor f3) => (a -> b) -> f (f1 (f2 (f3 a))) -> f (f1 (f2 (f3 b))) infixr 9 Source
(.::.) :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4) => (a -> b) -> f (f1 (f2 (f3 (f4 a)))) -> f (f1 (f2 (f3 (f4 b)))) infixr 9 Source
(.:::) :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4, Functor f5) => (a -> b) -> f (f1 (f2 (f3 (f4 (f5 a))))) -> f (f1 (f2 (f3 (f4 (f5 b))))) infixr 9 Source
(.:::.) :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4, Functor f5, Functor f6) => (a -> b) -> f (f1 (f2 (f3 (f4 (f5 (f6 a)))))) -> f (f1 (f2 (f3 (f4 (f5 (f6 b)))))) infixr 9 Source
(.::::) :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4, Functor f5, Functor f6, Functor f7) => (a -> b) -> f (f1 (f2 (f3 (f4 (f5 (f6 (f7 a))))))) -> f (f1 (f2 (f3 (f4 (f5 (f6 (f7 b))))))) infixr 9 Source
(.::::.) :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4, Functor f5, Functor f6, Functor f7, Functor f8) => (a -> b) -> f (f1 (f2 (f3 (f4 (f5 (f6 (f7 (f8 a)))))))) -> f (f1 (f2 (f3 (f4 (f5 (f6 (f7 (f8 b)))))))) infixr 9 Source
(<∘∘>) :: (Functor f, Functor f1, Functor f2) => (a -> b) -> f (f1 (f2 a)) -> f (f1 (f2 b)) infixl 4 Source
(<∘∘∘>) :: (Functor f, Functor f1, Functor f2, Functor f3) => (a -> b) -> f (f1 (f2 (f3 a))) -> f (f1 (f2 (f3 b))) infixl 4 Source
(<∘∘∘∘>) :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4) => (a -> b) -> f (f1 (f2 (f3 (f4 a)))) -> f (f1 (f2 (f3 (f4 b)))) infixl 4 Source
(<∘∘∘∘∘>) :: (Functor f, Functor f1, Functor f2, Functor f3, Functor f4, Functor f5) => (a -> b) -> f (f1 (f2 (f3 (f4 (f5 a))))) -> f (f1 (f2 (f3 (f4 (f5 b))))) infixl 4 Source
newtype NestedFunctor m n a Source
following functions are usefull when operating on nested structures with lenses, for example | given function foo :: a -> m (n a) and a lens l :: Lens' x a, we can use | nested l foo to get signature of x -> m (n x)
NestedFunctor | |
|
(Functor m, Functor n) => Functor (NestedFunctor m n) Source | |
Show (m (n a)) => Show (NestedFunctor m n a) Source |
nested :: (Functor f, Functor f1) => (f1 (NestedFunctor m1 n1 a1) -> f (NestedFunctor m n a)) -> f1 (m1 (n1 a1)) -> f (m (n a)) Source