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 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

Bifoldable p => Foldable (Join p) Source # |

Instance details

Defined in Data.Bifunctor.Join

Methods

fold :: Monoid m => Join p m -> m Source #

foldMap :: Monoid m => (a -> m) -> Join p a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Join p a -> m Source #

foldr :: (a -> b -> b) -> b -> Join p a -> b Source #

foldr' :: (a -> b -> b) -> b -> Join p a -> b Source #

foldl :: (b -> a -> b) -> b -> Join p a -> b Source #

foldl' :: (b -> a -> b) -> b -> Join p a -> b Source #

foldr1 :: (a -> a -> a) -> Join p a -> a Source #

foldl1 :: (a -> a -> a) -> Join p a -> a Source #

toList :: Join p a -> [a] Source #

null :: Join p a -> Bool Source #

length :: Join p a -> Int Source #

elem :: Eq a => a -> Join p a -> Bool Source #

maximum :: Ord a => Join p a -> a Source #

minimum :: Ord a => Join p a -> a Source #

sum :: Num a => Join p a -> a Source #

product :: Num a => Join p a -> a Source #

Bifoldable1 p => Foldable1 (Join p) Source # |

Instance details

Defined in Data.Bifunctor.Join

Methods

fold1 :: Semigroup m => Join p m -> m Source #

foldMap1 :: Semigroup m => (a -> m) -> Join p a -> m Source #

foldMap1' :: Semigroup m => (a -> m) -> Join p a -> m Source #

toNonEmpty :: Join p a -> NonEmpty a Source #

maximum :: Ord a => Join p a -> a Source #

minimum :: Ord a => Join p a -> a Source #

head :: Join p a -> a Source #

last :: Join p a -> a Source #

foldrMap1 :: (a -> b) -> (a -> b -> b) -> Join p a -> b Source #

foldlMap1' :: (a -> b) -> (b -> a -> b) -> Join p a -> b Source #

foldlMap1 :: (a -> b) -> (b -> a -> b) -> Join p a -> b Source #

foldrMap1' :: (a -> b) -> (a -> b -> b) -> Join p a -> b Source #

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 Source #
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 Source #
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) Source # liftReadList :: (Int -> ReadS a) -> ReadS [a] -> ReadS [Join p a] Source # liftReadPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec (Join p a) Source # liftReadListPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec [Join p a] Source #
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 Source # liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [Join p a] -> ShowS Source #
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) Source # sequenceA :: Applicative f => Join p (f a) -> f (Join p a) Source # mapM :: Monad m => (a -> m b) -> Join p a -> m (Join p b) Source # sequence :: Monad m => Join p (m a) -> m (Join p a) Source #
Biapplicative p => Applicative (Join p) Source # |
Instance details Defined in Data.Bifunctor.Join Methods pure :: a -> Join p a Source # (<*>) :: Join p (a -> b) -> Join p a -> Join p b Source # liftA2 :: (a -> b -> c) -> Join p a -> Join p b -> Join p c Source # (*>) :: Join p a -> Join p b -> Join p b Source # (<*) :: Join p a -> Join p b -> Join p a Source #
Bifunctor p => Functor (Join p) Source # |
Instance details Defined in Data.Bifunctor.Join Methods fmap :: (a -> b) -> Join p a -> Join p b Source # (<$) :: a -> Join p b -> Join p a Source #
Generic (Join p a) Source # |
Instance details Defined in Data.Bifunctor.Join Associated Types type Rep (Join p a) :: Type -> Type Source # Methods from :: Join p a -> Rep (Join p a) x Source # to :: Rep (Join p a) x -> Join p a Source #
Read (p a a) => Read (Join p a) Source # |
Instance details Defined in Data.Bifunctor.Join Methods readsPrec :: Int -> ReadS (Join p a) Source # readList :: ReadS [Join p a] Source # readPrec :: ReadPrec (Join p a) Source # readListPrec :: ReadPrec [Join p a] Source #
Show (p a a) => Show (Join p a) Source # |
Instance details Defined in Data.Bifunctor.Join Methods showsPrec :: Int -> Join p a -> ShowS Source # show :: Join p a -> String Source # showList :: [Join p a] -> ShowS Source #
Eq (p a a) => Eq (Join p a) Source # |
Instance details Defined in Data.Bifunctor.Join Methods (==) :: Join p a -> Join p a -> Bool Source # (/=) :: Join p a -> Join p a -> Bool Source #
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 Source # (<) :: Join p a -> Join p a -> Bool Source # (<=) :: Join p a -> Join p a -> Bool Source # (>) :: Join p a -> Join p a -> Bool Source # (>=) :: Join p a -> Join p a -> Bool Source # max :: Join p a -> Join p a -> Join p a Source # min :: Join p a -> Join p a -> Join p a Source #
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.6.2-KsAAHBmzKwpDPdrUe1LfsZ" 'True) (C1 ('MetaCons "Join" 'PrefixI 'True) (S1 ('MetaSel ('Just "runJoin") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (p a a))))