Module
Data.Tuple
- Package
- purescript-tuples
- Repository
- purescript/purescript-tuples
A data type and functions for working with ordered pairs.
#Tuple Source
data Tuple a bA simple product type for wrapping a pair of component values.
Constructors
Tuple a b
Instances
(Show a, Show b) => Show (Tuple a b)(Eq a, Eq b) => Eq (Tuple a b)(Eq a) => Eq1 (Tuple a)(Ord a, Ord b) => Ord (Tuple a b)(Ord a) => Ord1 (Tuple a)(Bounded a, Bounded b) => Bounded (Tuple a b)Semigroupoid Tuple(Semigroup a, Semigroup b) => Semigroup (Tuple a b)The
Semigroupinstance enables use of the associative operator<>onTuples whenever there areSemigroupinstances for the component types. The<>operator is applied pairwise, so:(Tuple a1 b1) <> (Tuple a2 b2) = Tuple (a1 <> a2) (b1 <> b2)(Monoid a, Monoid b) => Monoid (Tuple a b)(Semiring a, Semiring b) => Semiring (Tuple a b)(Ring a, Ring b) => Ring (Tuple a b)(CommutativeRing a, CommutativeRing b) => CommutativeRing (Tuple a b)(HeytingAlgebra a, HeytingAlgebra b) => HeytingAlgebra (Tuple a b)(BooleanAlgebra a, BooleanAlgebra b) => BooleanAlgebra (Tuple a b)Functor (Tuple a)FunctorWithIndex Unit (Tuple a)Invariant (Tuple a)Bifunctor Tuple(Semigroup a) => Apply (Tuple a)The
Functorinstance allows functions to transform the contents of aTuplewith the<*>operator whenever there is aSemigroupinstance for thefstcomponent, so:(Tuple a1 f) <*> (Tuple a2 x) == Tuple (a1 <> a2) (f x)Biapply Tuple(Monoid a) => Applicative (Tuple a)Biapplicative Tuple(Semigroup a) => Bind (Tuple a)(Monoid a) => Monad (Tuple a)Extend (Tuple a)Comonad (Tuple a)(Lazy a, Lazy b) => Lazy (Tuple a b)Foldable (Tuple a)Foldable1 (Tuple a)FoldableWithIndex Unit (Tuple a)Bifoldable TupleTraversable (Tuple a)Traversable1 (Tuple a)TraversableWithIndex Unit (Tuple a)Bitraversable Tuple(TypeEquals a Unit) => Distributive (Tuple a)
- Modules
- Data.
Tuple - Data.
Tuple. Nested
Allows
Tuples to be rendered as a string withshowwhenever there areShowinstances for both component types.