semigroupoids-6.0.1: Semigroupoids: Category sans id

Copyright | (C) 2011-2015 Edward Kmett
License | BSD-style (see the file LICENSE)
Maintainer | Edward Kmett <ekmett@gmail.com>
Stability | provisional
Portability | polykinds
Safe Haskell | Trustworthy
Language | Haskell2010

Data.Semigroupoid.Static

Description

# Documentation

newtype Static (f :: Type -> Type) a b Source #

Constructors

Static |

Fields

- runStatic :: f (a -> b)

#### Instances

Instances details

Applicative f => Category (Static f :: Type -> Type -> Type) Source # |
Instance details Defined in Data.Semigroupoid.Static Methods id :: Static f a a Source # (.) :: Static f b c -> Static f a b -> Static f a c Source #
Apply f => Semigroupoid (Static f :: Type -> Type -> Type) Source # |
Instance details Defined in Data.Semigroupoid.Static Methods o :: Static f j k1 -> Static f i j -> Static f i k1 Source #
Applicative f => Arrow (Static f) Source # |
Instance details Defined in Data.Semigroupoid.Static Methods arr :: (b -> c) -> Static f b c Source # first :: Static f b c -> Static f (b, d) (c, d) Source # second :: Static f b c -> Static f (d, b) (d, c) Source # (***) :: Static f b c -> Static f b' c' -> Static f (b, b') (c, c') Source # (&&&) :: Static f b c -> Static f b c' -> Static f b (c, c') Source #
Applicative f => ArrowChoice (Static f) Source # |
Instance details Defined in Data.Semigroupoid.Static Methods left :: Static f b c -> Static f (Either b d) (Either c d) Source # right :: Static f b c -> Static f (Either d b) (Either d c) Source # (+++) :: Static f b c -> Static f b' c' -> Static f (Either b b') (Either c c') Source # (|||) :: Static f b d -> Static f c d -> Static f (Either b c) d Source #
Alternative f => ArrowPlus (Static f) Source # |
Instance details Defined in Data.Semigroupoid.Static Methods (<+>) :: Static f b c -> Static f b c -> Static f b c Source #
Alternative f => ArrowZero (Static f) Source # |
Instance details Defined in Data.Semigroupoid.Static Methods zeroArrow :: Static f b c Source #
(Comonad f, Monoid a) => Comonad (Static f a) Source # |
Instance details Defined in Data.Semigroupoid.Static Methods extract :: Static f a a0 -> a0 Source # duplicate :: Static f a a0 -> Static f a (Static f a a0) Source # extend :: (Static f a a0 -> b) -> Static f a a0 -> Static f a b Source #
Applicative f => Applicative (Static f a) Source # |
Instance details Defined in Data.Semigroupoid.Static Methods pure :: a0 -> Static f a a0 Source # (<*>) :: Static f a (a0 -> b) -> Static f a a0 -> Static f a b Source # liftA2 :: (a0 -> b -> c) -> Static f a a0 -> Static f a b -> Static f a c Source # (*>) :: Static f a a0 -> Static f a b -> Static f a b Source # (<*) :: Static f a a0 -> Static f a b -> Static f a a0 Source #
Functor f => Functor (Static f a) Source # |
Instance details Defined in Data.Semigroupoid.Static Methods fmap :: (a0 -> b) -> Static f a a0 -> Static f a b Source # (<$) :: a0 -> Static f a b -> Static f a a0 Source #
Alt f => Alt (Static f a) Source # |
Instance details Defined in Data.Semigroupoid.Static Methods (<!>) :: Static f a a0 -> Static f a a0 -> Static f a a0 Source # some :: Applicative (Static f a) => Static f a a0 -> Static f a [a0] Source # many :: Applicative (Static f a) => Static f a a0 -> Static f a [a0] Source #
Apply f => Apply (Static f a) Source # |
Instance details Defined in Data.Semigroupoid.Static Methods (<.>) :: Static f a (a0 -> b) -> Static f a a0 -> Static f a b Source # (.>) :: Static f a a0 -> Static f a b -> Static f a b Source # (<.) :: Static f a a0 -> Static f a b -> Static f a a0 Source # liftF2 :: (a0 -> b -> c) -> Static f a a0 -> Static f a b -> Static f a c Source #
(Extend f, Semigroup a) => Extend (Static f a) Source # |
Instance details Defined in Data.Semigroupoid.Static Methods duplicated :: Static f a a0 -> Static f a (Static f a a0) Source # extended :: (Static f a a0 -> b) -> Static f a a0 -> Static f a b Source #
Plus f => Plus (Static f a) Source # |
Instance details Defined in Data.Semigroupoid.Static Methods zero :: Static f a a0 Source #