bifunctors-5.6.2: Bifunctors

Copyright | (C) 2008-2016 Edward Kmett
License | BSD-style (see the file LICENSE)
Maintainer | Edward Kmett <ekmett@gmail.com>
Stability | provisional
Portability | non-portable
Safe Haskell | Safe
Language | Haskell2010

Data.Bifunctor.Join

Description

Synopsis

- newtype Join (p :: k -> k -> Type) (a :: k) = Join {
  - runJoin :: p a a
  }

# Documentation

newtype Join (p :: k -> k -> Type) (a :: k) #

Make a `Functor` over both arguments of a `Bifunctor`.

Constructors

Join |
Fields runJoin :: p a a

#### Instances

Instances details

Bifoldable p => Foldable (Join p) # |
Instance details Defined in Data.Bifunctor.Join Methods fold :: Monoid m => Join p m -> m # foldMap :: Monoid m => (a -> m) -> Join p a -> m # foldMap' :: Monoid m => (a -> m) -> Join p a -> m # foldr :: (a -> b -> b) -> b -> Join p a -> b # foldr' :: (a -> b -> b) -> b -> Join p a -> b # foldl :: (b -> a -> b) -> b -> Join p a -> b # foldl' :: (b -> a -> b) -> b -> Join p a -> b # foldr1 :: (a -> a -> a) -> Join p a -> a # foldl1 :: (a -> a -> a) -> Join p a -> a # toList :: Join p a -> [a] # null :: Join p a -> Bool # length :: Join p a -> Int # elem :: Eq a => a -> Join p a -> Bool # maximum :: Ord a => Join p a -> a # minimum :: Ord a => Join p a -> a # sum :: Num a => Join p a -> a # product :: Num a => Join p a -> a #
Bifoldable1 p => Foldable1 (Join p) # |
Instance details Defined in Data.Bifunctor.Join Methods fold1 :: Semigroup m => Join p m -> m # foldMap1 :: Semigroup m => (a -> m) -> Join p a -> m # foldMap1' :: Semigroup m => (a -> m) -> Join p a -> m # toNonEmpty :: Join p a -> NonEmpty a # maximum :: Ord a => Join p a -> a # minimum :: Ord a => Join p a -> a # head :: Join p a -> a # last :: Join p a -> a # foldrMap1 :: (a -> b) -> (a -> b -> b) -> Join p a -> b # foldlMap1' :: (a -> b) -> (b -> a -> b) -> Join p a -> b # foldlMap1 :: (a -> b) -> (b -> a -> b) -> Join p a -> b # foldrMap1' :: (a -> b) -> (a -> b -> b) -> Join p a -> b #
Eq2 p => Eq1 (Join p) # |
Instance details Defined in Data.Bifunctor.Join Methods liftEq :: (a -> b -> Bool) -> Join p a -> Join p b -> Bool #
Ord2 p => Ord1 (Join p) # |
Instance details Defined in Data.Bifunctor.Join Methods liftCompare :: (a -> b -> Ordering) -> Join p a -> Join p b -> Ordering #
Read2 p => Read1 (Join p) # |
Instance details Defined in Data.Bifunctor.Join Methods liftReadsPrec :: (Int -> ReadS a) -> ReadS [a] -> Int -> ReadS (Join p a) # liftReadList :: (Int -> ReadS a) -> ReadS [a] -> ReadS [Join p a] # liftReadPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec (Join p a) # liftReadListPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec [Join p a] #
Show2 p => Show1 (Join p) # |
Instance details Defined in Data.Bifunctor.Join Methods liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> Join p a -> ShowS # liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [Join p a] -> ShowS #
Bitraversable p => Traversable (Join p) # |
Instance details Defined in Data.Bifunctor.Join Methods traverse :: Applicative f => (a -> f b) -> Join p a -> f (Join p b) # sequenceA :: Applicative f => Join p (f a) -> f (Join p a) # mapM :: Monad m => (a -> m b) -> Join p a -> m (Join p b) # sequence :: Monad m => Join p (m a) -> m (Join p a) #
Biapplicative p => Applicative (Join p) # |
Instance details Defined in Data.Bifunctor.Join Methods pure :: a -> Join p a # (<*>) :: Join p (a -> b) -> Join p a -> Join p b # liftA2 :: (a -> b -> c) -> Join p a -> Join p b -> Join p c # (*>) :: Join p a -> Join p b -> Join p b # (<*) :: Join p a -> Join p b -> Join p a #
Bifunctor p => Functor (Join p) # |
Instance details Defined in Data.Bifunctor.Join Methods fmap :: (a -> b) -> Join p a -> Join p b # (<$) :: a -> Join p b -> Join p a #
Generic (Join p a) # |
Instance details Defined in Data.Bifunctor.Join Associated Types
type Rep (Join p a) |
Instance details Defined in Data.Bifunctor.Join type Rep (Join p a) = D1 ('MetaData "Join" "Data.Bifunctor.Join" "bifunctors-5.6.2-BwJEHVBCec7K8po0blH047" 'True) (C1 ('MetaCons "Join" 'PrefixI 'True) (S1 ('MetaSel ('Just "runJoin") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (p a a))))
Methods from :: Join p a -> Rep (Join p a) x # to :: Rep (Join p a) x -> Join p a #
Read (p a a) => Read (Join p a) # |
Instance details Defined in Data.Bifunctor.Join Methods readsPrec :: Int -> ReadS (Join p a) # readList :: ReadS [Join p a] # readPrec :: ReadPrec (Join p a) # readListPrec :: ReadPrec [Join p a] #
Show (p a a) => Show (Join p a) # |
Instance details Defined in Data.Bifunctor.Join Methods showsPrec :: Int -> Join p a -> ShowS # show :: Join p a -> String # showList :: [Join p a] -> ShowS #
Eq (p a a) => Eq (Join p a) # |
Instance details Defined in Data.Bifunctor.Join Methods (==) :: Join p a -> Join p a -> Bool # (/=) :: Join p a -> Join p a -> Bool #
Ord (p a a) => Ord (Join p a) # |
Instance details Defined in Data.Bifunctor.Join Methods compare :: Join p a -> Join p a -> Ordering # (<) :: Join p a -> Join p a -> Bool # (<=) :: Join p a -> Join p a -> Bool # (>) :: Join p a -> Join p a -> Bool # (>=) :: Join p a -> Join p a -> Bool # max :: Join p a -> Join p a -> Join p a # min :: Join p a -> Join p a -> Join p a #
type Rep (Join p a) # |
Instance details Defined in Data.Bifunctor.Join type Rep (Join p a) = D1 ('MetaData "Join" "Data.Bifunctor.Join" "bifunctors-5.6.2-BwJEHVBCec7K8po0blH047" 'True) (C1 ('MetaCons "Join" 'PrefixI 'True) (S1 ('MetaSel ('Just "runJoin") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (p a a))))