| Safe Haskell | Safe |
|---|---|
| Language | Haskell98 |
Data.Tuple.Homogenous
Description
Provides wrappers for homogenous tuples defined as
newtype TupleN a = TupleN (a,...,a)
together with helper methods
tupleN :: a -> ... -> a -> TupleN a
and instances for
Functorapplies a given function to all elements of a tuple.Applicativezips two tuples, applying i-th function of the first to i-th element of the second.Monadwhere i-th element ofx >>= fis the result of applyingfto the i-th element ofxand taking its i-th result. In other words,join :: Tupple N (TuppleN a) -> TuppleN areturns the diagonal of the NxN matrix.FoldableandTraversablefolds/traverses over the N elements.
Synopsis
- newtype Tuple0 a = Tuple0 {
- untuple0 :: ()
- tuple0 :: Tuple0 a
- newtype Tuple1 a = Tuple1 a
- tuple1 :: a -> Tuple1 a
- newtype Tuple2 a = Tuple2 {
- untuple2 :: (a, a)
- tuple2 :: a -> a -> Tuple2 a
- newtype Tuple3 a = Tuple3 {
- untuple3 :: (a, a, a)
- tuple3 :: a -> a -> a -> Tuple3 a
- newtype Tuple4 a = Tuple4 {
- untuple4 :: (a, a, a, a)
- tuple4 :: a -> a -> a -> a -> Tuple4 a
- newtype Tuple5 a = Tuple5 {
- untuple5 :: (a, a, a, a, a)
- tuple5 :: a -> a -> a -> a -> a -> Tuple5 a
- newtype Tuple6 a = Tuple6 {
- untuple6 :: (a, a, a, a, a, a)
- tuple6 :: a -> a -> a -> a -> a -> a -> Tuple6 a
- newtype Tuple7 a = Tuple7 {
- untuple7 :: (a, a, a, a, a, a, a)
- tuple7 :: a -> a -> a -> a -> a -> a -> a -> Tuple7 a
- newtype Tuple8 a = Tuple8 {
- untuple8 :: (a, a, a, a, a, a, a, a)
- tuple8 :: a -> a -> a -> a -> a -> a -> a -> a -> Tuple8 a
- newtype Tuple9 a = Tuple9 {
- untuple9 :: (a, a, a, a, a, a, a, a, a)
- tuple9 :: a -> a -> a -> a -> a -> a -> a -> a -> a -> Tuple9 a
- newtype Tuple10 a = Tuple10 {
- untuple10 :: (a, a, a, a, a, a, a, a, a, a)
- tuple10 :: a -> a -> a -> a -> a -> a -> a -> a -> a -> a -> Tuple10 a
- newtype Tuple11 a = Tuple11 {
- untuple11 :: (a, a, a, a, a, a, a, a, a, a, a)
- tuple11 :: a -> a -> a -> a -> a -> a -> a -> a -> a -> a -> a -> Tuple11 a
- newtype Tuple12 a = Tuple12 {
- untuple12 :: (a, a, a, a, a, a, a, a, a, a, a, a)
- tuple12 :: a -> a -> a -> a -> a -> a -> a -> a -> a -> a -> a -> a -> Tuple12 a
- newtype Tuple13 a = Tuple13 {
- untuple13 :: (a, a, a, a, a, a, a, a, a, a, a, a, a)
- tuple13 :: a -> a -> a -> a -> a -> a -> a -> a -> a -> a -> a -> a -> a -> Tuple13 a
- newtype Tuple14 a = Tuple14 {
- untuple14 :: (a, a, a, a, a, a, a, a, a, a, a, a, a, a)
- tuple14 :: a -> a -> a -> a -> a -> a -> a -> a -> a -> a -> a -> a -> a -> a -> Tuple14 a
- newtype Tuple15 a = Tuple15 {
- untuple15 :: (a, a, a, a, a, a, a, a, a, a, a, a, a, a, a)
- tuple15 :: a -> a -> a -> a -> a -> a -> a -> a -> a -> a -> a -> a -> a -> a -> a -> Tuple15 a
Documentation
Instances
| Monad Tuple0 # | |
| Functor Tuple0 # | |
| Applicative Tuple0 # | |
| Foldable Tuple0 # | |
Defined in Data.Tuple.Homogenous Methods fold :: Monoid m => Tuple0 m -> m # foldMap :: Monoid m => (a -> m) -> Tuple0 a -> m # foldr :: (a -> b -> b) -> b -> Tuple0 a -> b # foldr' :: (a -> b -> b) -> b -> Tuple0 a -> b # foldl :: (b -> a -> b) -> b -> Tuple0 a -> b # foldl' :: (b -> a -> b) -> b -> Tuple0 a -> b # foldr1 :: (a -> a -> a) -> Tuple0 a -> a # foldl1 :: (a -> a -> a) -> Tuple0 a -> a # elem :: Eq a => a -> Tuple0 a -> Bool # maximum :: Ord a => Tuple0 a -> a # minimum :: Ord a => Tuple0 a -> a # | |
| Traversable Tuple0 # | |
| Bounded (Tuple0 a) # | |
| Eq (Tuple0 a) # | |
| Ord (Tuple0 a) # | |
Defined in Data.Tuple.Homogenous | |
| Read (Tuple0 a) # | |
| Show (Tuple0 a) # | |
This newtype intentionally omits the untuple1 accessor as there is no
1-tuple in Haskell.
Constructors
| Tuple1 a |
Instances
| Monad Tuple1 # | |
| Functor Tuple1 # | |
| Applicative Tuple1 # | |
| Foldable Tuple1 # | |
Defined in Data.Tuple.Homogenous Methods fold :: Monoid m => Tuple1 m -> m # foldMap :: Monoid m => (a -> m) -> Tuple1 a -> m # foldr :: (a -> b -> b) -> b -> Tuple1 a -> b # foldr' :: (a -> b -> b) -> b -> Tuple1 a -> b # foldl :: (b -> a -> b) -> b -> Tuple1 a -> b # foldl' :: (b -> a -> b) -> b -> Tuple1 a -> b # foldr1 :: (a -> a -> a) -> Tuple1 a -> a # foldl1 :: (a -> a -> a) -> Tuple1 a -> a # elem :: Eq a => a -> Tuple1 a -> Bool # maximum :: Ord a => Tuple1 a -> a # minimum :: Ord a => Tuple1 a -> a # | |
| Traversable Tuple1 # | |
| Bounded a => Bounded (Tuple1 a) # | |
| Eq a => Eq (Tuple1 a) # | |
| Ord a => Ord (Tuple1 a) # | |
Defined in Data.Tuple.Homogenous | |
| Read a => Read (Tuple1 a) # | |
| Show a => Show (Tuple1 a) # | |
Instances
| Monad Tuple2 # | |
| Functor Tuple2 # | |
| Applicative Tuple2 # | |
| Foldable Tuple2 # | |
Defined in Data.Tuple.Homogenous Methods fold :: Monoid m => Tuple2 m -> m # foldMap :: Monoid m => (a -> m) -> Tuple2 a -> m # foldr :: (a -> b -> b) -> b -> Tuple2 a -> b # foldr' :: (a -> b -> b) -> b -> Tuple2 a -> b # foldl :: (b -> a -> b) -> b -> Tuple2 a -> b # foldl' :: (b -> a -> b) -> b -> Tuple2 a -> b # foldr1 :: (a -> a -> a) -> Tuple2 a -> a # foldl1 :: (a -> a -> a) -> Tuple2 a -> a # elem :: Eq a => a -> Tuple2 a -> Bool # maximum :: Ord a => Tuple2 a -> a # minimum :: Ord a => Tuple2 a -> a # | |
| Traversable Tuple2 # | |
| Bounded a => Bounded (Tuple2 a) # | |
| Eq a => Eq (Tuple2 a) # | |
| Ord a => Ord (Tuple2 a) # | |
Defined in Data.Tuple.Homogenous | |
| Read a => Read (Tuple2 a) # | |
| Show a => Show (Tuple2 a) # | |
Instances
| Monad Tuple3 # | |
| Functor Tuple3 # | |
| Applicative Tuple3 # | |
| Foldable Tuple3 # | |
Defined in Data.Tuple.Homogenous Methods fold :: Monoid m => Tuple3 m -> m # foldMap :: Monoid m => (a -> m) -> Tuple3 a -> m # foldr :: (a -> b -> b) -> b -> Tuple3 a -> b # foldr' :: (a -> b -> b) -> b -> Tuple3 a -> b # foldl :: (b -> a -> b) -> b -> Tuple3 a -> b # foldl' :: (b -> a -> b) -> b -> Tuple3 a -> b # foldr1 :: (a -> a -> a) -> Tuple3 a -> a # foldl1 :: (a -> a -> a) -> Tuple3 a -> a # elem :: Eq a => a -> Tuple3 a -> Bool # maximum :: Ord a => Tuple3 a -> a # minimum :: Ord a => Tuple3 a -> a # | |
| Traversable Tuple3 # | |
| Bounded a => Bounded (Tuple3 a) # | |
| Eq a => Eq (Tuple3 a) # | |
| Ord a => Ord (Tuple3 a) # | |
Defined in Data.Tuple.Homogenous | |
| Read a => Read (Tuple3 a) # | |
| Show a => Show (Tuple3 a) # | |
Instances
| Monad Tuple4 # | |
| Functor Tuple4 # | |
| Applicative Tuple4 # | |
| Foldable Tuple4 # | |
Defined in Data.Tuple.Homogenous Methods fold :: Monoid m => Tuple4 m -> m # foldMap :: Monoid m => (a -> m) -> Tuple4 a -> m # foldr :: (a -> b -> b) -> b -> Tuple4 a -> b # foldr' :: (a -> b -> b) -> b -> Tuple4 a -> b # foldl :: (b -> a -> b) -> b -> Tuple4 a -> b # foldl' :: (b -> a -> b) -> b -> Tuple4 a -> b # foldr1 :: (a -> a -> a) -> Tuple4 a -> a # foldl1 :: (a -> a -> a) -> Tuple4 a -> a # elem :: Eq a => a -> Tuple4 a -> Bool # maximum :: Ord a => Tuple4 a -> a # minimum :: Ord a => Tuple4 a -> a # | |
| Traversable Tuple4 # | |
| Bounded a => Bounded (Tuple4 a) # | |
| Eq a => Eq (Tuple4 a) # | |
| Ord a => Ord (Tuple4 a) # | |
Defined in Data.Tuple.Homogenous | |
| Read a => Read (Tuple4 a) # | |
| Show a => Show (Tuple4 a) # | |
Instances
| Monad Tuple5 # | |
| Functor Tuple5 # | |
| Applicative Tuple5 # | |
| Foldable Tuple5 # | |
Defined in Data.Tuple.Homogenous Methods fold :: Monoid m => Tuple5 m -> m # foldMap :: Monoid m => (a -> m) -> Tuple5 a -> m # foldr :: (a -> b -> b) -> b -> Tuple5 a -> b # foldr' :: (a -> b -> b) -> b -> Tuple5 a -> b # foldl :: (b -> a -> b) -> b -> Tuple5 a -> b # foldl' :: (b -> a -> b) -> b -> Tuple5 a -> b # foldr1 :: (a -> a -> a) -> Tuple5 a -> a # foldl1 :: (a -> a -> a) -> Tuple5 a -> a # elem :: Eq a => a -> Tuple5 a -> Bool # maximum :: Ord a => Tuple5 a -> a # minimum :: Ord a => Tuple5 a -> a # | |
| Traversable Tuple5 # | |
| Bounded a => Bounded (Tuple5 a) # | |
| Eq a => Eq (Tuple5 a) # | |
| Ord a => Ord (Tuple5 a) # | |
Defined in Data.Tuple.Homogenous | |
| Read a => Read (Tuple5 a) # | |
| Show a => Show (Tuple5 a) # | |
Instances
| Monad Tuple6 # | |
| Functor Tuple6 # | |
| Applicative Tuple6 # | |
| Foldable Tuple6 # | |
Defined in Data.Tuple.Homogenous Methods fold :: Monoid m => Tuple6 m -> m # foldMap :: Monoid m => (a -> m) -> Tuple6 a -> m # foldr :: (a -> b -> b) -> b -> Tuple6 a -> b # foldr' :: (a -> b -> b) -> b -> Tuple6 a -> b # foldl :: (b -> a -> b) -> b -> Tuple6 a -> b # foldl' :: (b -> a -> b) -> b -> Tuple6 a -> b # foldr1 :: (a -> a -> a) -> Tuple6 a -> a # foldl1 :: (a -> a -> a) -> Tuple6 a -> a # elem :: Eq a => a -> Tuple6 a -> Bool # maximum :: Ord a => Tuple6 a -> a # minimum :: Ord a => Tuple6 a -> a # | |
| Traversable Tuple6 # | |
| Bounded a => Bounded (Tuple6 a) # | |
| Eq a => Eq (Tuple6 a) # | |
| Ord a => Ord (Tuple6 a) # | |
Defined in Data.Tuple.Homogenous | |
| Read a => Read (Tuple6 a) # | |
| Show a => Show (Tuple6 a) # | |
Instances
| Monad Tuple7 # | |
| Functor Tuple7 # | |
| Applicative Tuple7 # | |
| Foldable Tuple7 # | |
Defined in Data.Tuple.Homogenous Methods fold :: Monoid m => Tuple7 m -> m # foldMap :: Monoid m => (a -> m) -> Tuple7 a -> m # foldr :: (a -> b -> b) -> b -> Tuple7 a -> b # foldr' :: (a -> b -> b) -> b -> Tuple7 a -> b # foldl :: (b -> a -> b) -> b -> Tuple7 a -> b # foldl' :: (b -> a -> b) -> b -> Tuple7 a -> b # foldr1 :: (a -> a -> a) -> Tuple7 a -> a # foldl1 :: (a -> a -> a) -> Tuple7 a -> a # elem :: Eq a => a -> Tuple7 a -> Bool # maximum :: Ord a => Tuple7 a -> a # minimum :: Ord a => Tuple7 a -> a # | |
| Traversable Tuple7 # | |
| Bounded a => Bounded (Tuple7 a) # | |
| Eq a => Eq (Tuple7 a) # | |
| Ord a => Ord (Tuple7 a) # | |
Defined in Data.Tuple.Homogenous | |
| Read a => Read (Tuple7 a) # | |
| Show a => Show (Tuple7 a) # | |
Instances
| Monad Tuple8 # | |
| Functor Tuple8 # | |
| Applicative Tuple8 # | |
| Foldable Tuple8 # | |
Defined in Data.Tuple.Homogenous Methods fold :: Monoid m => Tuple8 m -> m # foldMap :: Monoid m => (a -> m) -> Tuple8 a -> m # foldr :: (a -> b -> b) -> b -> Tuple8 a -> b # foldr' :: (a -> b -> b) -> b -> Tuple8 a -> b # foldl :: (b -> a -> b) -> b -> Tuple8 a -> b # foldl' :: (b -> a -> b) -> b -> Tuple8 a -> b # foldr1 :: (a -> a -> a) -> Tuple8 a -> a # foldl1 :: (a -> a -> a) -> Tuple8 a -> a # elem :: Eq a => a -> Tuple8 a -> Bool # maximum :: Ord a => Tuple8 a -> a # minimum :: Ord a => Tuple8 a -> a # | |
| Traversable Tuple8 # | |
| Bounded a => Bounded (Tuple8 a) # | |
| Eq a => Eq (Tuple8 a) # | |
| Ord a => Ord (Tuple8 a) # | |
Defined in Data.Tuple.Homogenous | |
| Read a => Read (Tuple8 a) # | |
| Show a => Show (Tuple8 a) # | |
Instances
| Monad Tuple9 # | |
| Functor Tuple9 # | |
| Applicative Tuple9 # | |
| Foldable Tuple9 # | |
Defined in Data.Tuple.Homogenous Methods fold :: Monoid m => Tuple9 m -> m # foldMap :: Monoid m => (a -> m) -> Tuple9 a -> m # foldr :: (a -> b -> b) -> b -> Tuple9 a -> b # foldr' :: (a -> b -> b) -> b -> Tuple9 a -> b # foldl :: (b -> a -> b) -> b -> Tuple9 a -> b # foldl' :: (b -> a -> b) -> b -> Tuple9 a -> b # foldr1 :: (a -> a -> a) -> Tuple9 a -> a # foldl1 :: (a -> a -> a) -> Tuple9 a -> a # elem :: Eq a => a -> Tuple9 a -> Bool # maximum :: Ord a => Tuple9 a -> a # minimum :: Ord a => Tuple9 a -> a # | |
| Traversable Tuple9 # | |
| Bounded a => Bounded (Tuple9 a) # | |
| Eq a => Eq (Tuple9 a) # | |
| Ord a => Ord (Tuple9 a) # | |
Defined in Data.Tuple.Homogenous | |
| Read a => Read (Tuple9 a) # | |
| Show a => Show (Tuple9 a) # | |
Instances
| Monad Tuple10 # | |
| Functor Tuple10 # | |
| Applicative Tuple10 # | |
| Foldable Tuple10 # | |
Defined in Data.Tuple.Homogenous Methods fold :: Monoid m => Tuple10 m -> m # foldMap :: Monoid m => (a -> m) -> Tuple10 a -> m # foldr :: (a -> b -> b) -> b -> Tuple10 a -> b # foldr' :: (a -> b -> b) -> b -> Tuple10 a -> b # foldl :: (b -> a -> b) -> b -> Tuple10 a -> b # foldl' :: (b -> a -> b) -> b -> Tuple10 a -> b # foldr1 :: (a -> a -> a) -> Tuple10 a -> a # foldl1 :: (a -> a -> a) -> Tuple10 a -> a # elem :: Eq a => a -> Tuple10 a -> Bool # maximum :: Ord a => Tuple10 a -> a # minimum :: Ord a => Tuple10 a -> a # | |
| Traversable Tuple10 # | |
| Bounded a => Bounded (Tuple10 a) # | |
| Eq a => Eq (Tuple10 a) # | |
| Ord a => Ord (Tuple10 a) # | |
| Read a => Read (Tuple10 a) # | |
| Show a => Show (Tuple10 a) # | |
Instances
| Monad Tuple11 # | |
| Functor Tuple11 # | |
| Applicative Tuple11 # | |
| Foldable Tuple11 # | |
Defined in Data.Tuple.Homogenous Methods fold :: Monoid m => Tuple11 m -> m # foldMap :: Monoid m => (a -> m) -> Tuple11 a -> m # foldr :: (a -> b -> b) -> b -> Tuple11 a -> b # foldr' :: (a -> b -> b) -> b -> Tuple11 a -> b # foldl :: (b -> a -> b) -> b -> Tuple11 a -> b # foldl' :: (b -> a -> b) -> b -> Tuple11 a -> b # foldr1 :: (a -> a -> a) -> Tuple11 a -> a # foldl1 :: (a -> a -> a) -> Tuple11 a -> a # elem :: Eq a => a -> Tuple11 a -> Bool # maximum :: Ord a => Tuple11 a -> a # minimum :: Ord a => Tuple11 a -> a # | |
| Traversable Tuple11 # | |
| Bounded a => Bounded (Tuple11 a) # | |
| Eq a => Eq (Tuple11 a) # | |
| Ord a => Ord (Tuple11 a) # | |
| Read a => Read (Tuple11 a) # | |
| Show a => Show (Tuple11 a) # | |
Instances
| Monad Tuple12 # | |
| Functor Tuple12 # | |
| Applicative Tuple12 # | |
| Foldable Tuple12 # | |
Defined in Data.Tuple.Homogenous Methods fold :: Monoid m => Tuple12 m -> m # foldMap :: Monoid m => (a -> m) -> Tuple12 a -> m # foldr :: (a -> b -> b) -> b -> Tuple12 a -> b # foldr' :: (a -> b -> b) -> b -> Tuple12 a -> b # foldl :: (b -> a -> b) -> b -> Tuple12 a -> b # foldl' :: (b -> a -> b) -> b -> Tuple12 a -> b # foldr1 :: (a -> a -> a) -> Tuple12 a -> a # foldl1 :: (a -> a -> a) -> Tuple12 a -> a # elem :: Eq a => a -> Tuple12 a -> Bool # maximum :: Ord a => Tuple12 a -> a # minimum :: Ord a => Tuple12 a -> a # | |
| Traversable Tuple12 # | |
| Bounded a => Bounded (Tuple12 a) # | |
| Eq a => Eq (Tuple12 a) # | |
| Ord a => Ord (Tuple12 a) # | |
| Read a => Read (Tuple12 a) # | |
| Show a => Show (Tuple12 a) # | |
Instances
| Monad Tuple13 # | |
| Functor Tuple13 # | |
| Applicative Tuple13 # | |
| Foldable Tuple13 # | |
Defined in Data.Tuple.Homogenous Methods fold :: Monoid m => Tuple13 m -> m # foldMap :: Monoid m => (a -> m) -> Tuple13 a -> m # foldr :: (a -> b -> b) -> b -> Tuple13 a -> b # foldr' :: (a -> b -> b) -> b -> Tuple13 a -> b # foldl :: (b -> a -> b) -> b -> Tuple13 a -> b # foldl' :: (b -> a -> b) -> b -> Tuple13 a -> b # foldr1 :: (a -> a -> a) -> Tuple13 a -> a # foldl1 :: (a -> a -> a) -> Tuple13 a -> a # elem :: Eq a => a -> Tuple13 a -> Bool # maximum :: Ord a => Tuple13 a -> a # minimum :: Ord a => Tuple13 a -> a # | |
| Traversable Tuple13 # | |
| Bounded a => Bounded (Tuple13 a) # | |
| Eq a => Eq (Tuple13 a) # | |
| Ord a => Ord (Tuple13 a) # | |
| Read a => Read (Tuple13 a) # | |
| Show a => Show (Tuple13 a) # | |
Instances
| Monad Tuple14 # | |
| Functor Tuple14 # | |
| Applicative Tuple14 # | |
| Foldable Tuple14 # | |
Defined in Data.Tuple.Homogenous Methods fold :: Monoid m => Tuple14 m -> m # foldMap :: Monoid m => (a -> m) -> Tuple14 a -> m # foldr :: (a -> b -> b) -> b -> Tuple14 a -> b # foldr' :: (a -> b -> b) -> b -> Tuple14 a -> b # foldl :: (b -> a -> b) -> b -> Tuple14 a -> b # foldl' :: (b -> a -> b) -> b -> Tuple14 a -> b # foldr1 :: (a -> a -> a) -> Tuple14 a -> a # foldl1 :: (a -> a -> a) -> Tuple14 a -> a # elem :: Eq a => a -> Tuple14 a -> Bool # maximum :: Ord a => Tuple14 a -> a # minimum :: Ord a => Tuple14 a -> a # | |
| Traversable Tuple14 # | |
| Bounded a => Bounded (Tuple14 a) # | |
| Eq a => Eq (Tuple14 a) # | |
| Ord a => Ord (Tuple14 a) # | |
| Read a => Read (Tuple14 a) # | |
| Show a => Show (Tuple14 a) # | |
Instances
| Monad Tuple15 # | |
| Functor Tuple15 # | |
| Applicative Tuple15 # | |
| Foldable Tuple15 # | |
Defined in Data.Tuple.Homogenous Methods fold :: Monoid m => Tuple15 m -> m # foldMap :: Monoid m => (a -> m) -> Tuple15 a -> m # foldr :: (a -> b -> b) -> b -> Tuple15 a -> b # foldr' :: (a -> b -> b) -> b -> Tuple15 a -> b # foldl :: (b -> a -> b) -> b -> Tuple15 a -> b # foldl' :: (b -> a -> b) -> b -> Tuple15 a -> b # foldr1 :: (a -> a -> a) -> Tuple15 a -> a # foldl1 :: (a -> a -> a) -> Tuple15 a -> a # elem :: Eq a => a -> Tuple15 a -> Bool # maximum :: Ord a => Tuple15 a -> a # minimum :: Ord a => Tuple15 a -> a # | |
| Traversable Tuple15 # | |
| Bounded a => Bounded (Tuple15 a) # | |
| Eq a => Eq (Tuple15 a) # | |
| Ord a => Ord (Tuple15 a) # | |
| Read a => Read (Tuple15 a) # | |
| Show a => Show (Tuple15 a) # | |