bifunctors-5.5.7: 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 | Haskell98

Data.Bifunctor.Join

Description

Synopsis

- newtype Join p a = Join {
  - runJoin :: p a a
  }

# Documentation

newtype Join p a Source #

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

Constructors

Join |

Fields

- runJoin :: p a a

#### Instances

Instances details

Bifunctor p => Functor (Join p) Source # |
Instance details Defined in Data.Bifunctor.Join Methods fmap :: (a -> b) -> Join p a -> Join p b # (<$) :: a -> Join p b -> Join p a #
Biapplicative p => Applicative (Join p) Source # |
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
Bifoldable p => Foldable (Join p) Source # |

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

Bitraversable p => Traversable (Join p) Source # |
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)
Show2 p => Show1 (Join p) Source # |
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
Read2 p => Read1 (Join p) Source # |
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]
Ord2 p => Ord1 (Join p) Source # |
Instance details Defined in Data.Bifunctor.Join Methods liftCompare :: (a -> b -> Ordering) -> Join p a -> Join p b -> Ordering
Eq2 p => Eq1 (Join p) Source # |
Instance details Defined in Data.Bifunctor.Join Methods liftEq :: (a -> b -> Bool) -> Join p a -> Join p b -> Bool
Eq (p a a) => Eq (Join p a) Source # |
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) Source # |
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
Read (p a a) => Read (Join p a) Source # |
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) Source # |
Instance details Defined in Data.Bifunctor.Join Methods showsPrec :: Int -> Join p a -> ShowS show :: Join p a -> String showList :: [Join p a] -> ShowS
Generic (Join p a) Source # |
Instance details Defined in Data.Bifunctor.Join Associated Types type Rep (Join p a) :: Type -> Type Methods from :: Join p a -> Rep (Join p a) x to :: Rep (Join p a) x -> Join p a
type Rep (Join p a) Source # |
Instance details Defined in Data.Bifunctor.Join type Rep (Join p a) = D1 ('MetaData "Join" "Data.Bifunctor.Join" "bifunctors-5.5.7-Bx2VHhrcJ3zBCUOtazzILM" 'True) (C1 ('MetaCons "Join" 'PrefixI 'True) (S1 ('MetaSel ('Just "runJoin") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (p a a))))