Copyright | (c) 2013 Tabula Inc. |
---|---|

Maintainer | conal@conal.net |

Stability | experimental |

Safe Haskell | Safe |

Language | Haskell98 |

Uniform pairs. Because these pairs memoize functions (from Bool)--i.e., they're representable functors--these instances provided are fully determined by the corresponding instances for functions, thanks to the type class morphism principle.

# Documentation

Uniform pairs

a :# a infix 1 |

## Instances

Monad Pair Source # | |

Functor Pair Source # | |

Applicative Pair Source # | |

Foldable Pair Source # | |

Defined in Data.UniformPair fold :: Monoid m => Pair m -> m # foldMap :: Monoid m => (a -> m) -> Pair a -> m # foldr :: (a -> b -> b) -> b -> Pair a -> b # foldr' :: (a -> b -> b) -> b -> Pair a -> b # foldl :: (b -> a -> b) -> b -> Pair a -> b # foldl' :: (b -> a -> b) -> b -> Pair a -> b # foldr1 :: (a -> a -> a) -> Pair a -> a # foldl1 :: (a -> a -> a) -> Pair a -> a # elem :: Eq a => a -> Pair a -> Bool # maximum :: Ord a => Pair a -> a # | |

Traversable Pair Source # | |

Distributive Pair Source # | |

Representable Pair Source # | |

Eq1 Pair Source # | |

Ord1 Pair Source # | |

Defined in Data.UniformPair | |

Show1 Pair Source # | |

Eq1 Pair Source # | |

Ord1 Pair Source # | |

Show1 Pair Source # | |

Eq a => Eq (Pair a) Source # | |

Data a => Data (Pair a) Source # | |

Defined in Data.UniformPair gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Pair a -> c (Pair a) # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Pair a) # toConstr :: Pair a -> Constr # dataTypeOf :: Pair a -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Pair a)) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Pair a)) # gmapT :: (forall b. Data b => b -> b) -> Pair a -> Pair a # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Pair a -> r # gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Pair a -> r # gmapQ :: (forall d. Data d => d -> u) -> Pair a -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> Pair a -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> Pair a -> m (Pair a) # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Pair a -> m (Pair a) # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Pair a -> m (Pair a) # | |

Ord a => Ord (Pair a) Source # | |

Show a => Show (Pair a) Source # | |

Semigroup a => Semigroup (Pair a) Source # | |

Monoid a => Monoid (Pair a) Source # | |

NFData a => NFData (Pair a) Source # | |

Defined in Data.UniformPair | |

type Rep Pair Source # | |

Defined in Data.UniformPair |