LangToGroup-0.1.0.0
Safe HaskellSafe-Inferred
LanguageHaskell2010

Containers.Quadruple

Description

Module Quadruple include type Quadruple and useful functions for work with it.

`Quadruple a` is just quadruple as `(a, a, a, a)`.

Documentation

newtype Quadruple a Source #

Constructors

Quadruple (a, a, a, a) 

Instances

Instances details
Functor Quadruple Source # 
Instance details

Defined in Containers.Quadruple

Methods

fmap :: (a -> b) -> Quadruple a -> Quadruple b #

(<$) :: a -> Quadruple b -> Quadruple a #

Applicative Quadruple Source # 
Instance details

Defined in Containers.Quadruple

Methods

pure :: a -> Quadruple a #

(<*>) :: Quadruple (a -> b) -> Quadruple a -> Quadruple b #

liftA2 :: (a -> b -> c) -> Quadruple a -> Quadruple b -> Quadruple c #

(*>) :: Quadruple a -> Quadruple b -> Quadruple b #

(<*) :: Quadruple a -> Quadruple b -> Quadruple a #

Foldable Quadruple Source # 
Instance details

Defined in Containers.Quadruple

Methods

fold :: Monoid m => Quadruple m -> m #

foldMap :: Monoid m => (a -> m) -> Quadruple a -> m #

foldMap' :: Monoid m => (a -> m) -> Quadruple a -> m #

foldr :: (a -> b -> b) -> b -> Quadruple a -> b #

foldr' :: (a -> b -> b) -> b -> Quadruple a -> b #

foldl :: (b -> a -> b) -> b -> Quadruple a -> b #

foldl' :: (b -> a -> b) -> b -> Quadruple a -> b #

foldr1 :: (a -> a -> a) -> Quadruple a -> a #

foldl1 :: (a -> a -> a) -> Quadruple a -> a #

toList :: Quadruple a -> [a] #

null :: Quadruple a -> Bool #

length :: Quadruple a -> Int #

elem :: Eq a => a -> Quadruple a -> Bool #

maximum :: Ord a => Quadruple a -> a #

minimum :: Ord a => Quadruple a -> a #

sum :: Num a => Quadruple a -> a #

product :: Num a => Quadruple a -> a #

Traversable Quadruple Source # 
Instance details

Defined in Containers.Quadruple

Methods

traverse :: Applicative f => (a -> f b) -> Quadruple a -> f (Quadruple b) #

sequenceA :: Applicative f => Quadruple (f a) -> f (Quadruple a) #

mapM :: Monad m => (a -> m b) -> Quadruple a -> m (Quadruple b) #

sequence :: Monad m => Quadruple (m a) -> m (Quadruple a) #

Eq a => Eq (Quadruple a) Source # 
Instance details

Defined in Containers.Quadruple

Methods

(==) :: Quadruple a -> Quadruple a -> Bool #

(/=) :: Quadruple a -> Quadruple a -> Bool #

Ord a => Ord (Quadruple a) Source # 
Instance details

Defined in Containers.Quadruple

Sizable (Quadruple a) Source # 
Instance details

Defined in Containers

Methods

size :: Quadruple a -> Int Source #

Eq a => Containable (Quadruple a) a Source # 
Instance details

Defined in Containers

Methods

member :: a -> Quadruple a -> Bool Source #

notMember :: a -> Quadruple a -> Bool Source #

Listable (Quadruple a) a Source # 
Instance details

Defined in Containers

Methods

toList :: Quadruple a -> [a] Source #

fromList_ :: MonadFail m => [a] -> m (Quadruple a) Source #

Keyable (Quadruple a) Index Source # 
Instance details

Defined in Containers

Valuable (Quadruple a) a Source # 
Instance details

Defined in Containers

Methods

values :: Quadruple a -> [a] Source #

valuesSet :: Quadruple a -> Set a Source #

Indexable (Quadruple a) Index a Source # 
Instance details

Defined in Containers

Methods

(!?) :: MonadFail m => Quadruple a -> Index -> m a Source #

(!<>) :: Quadruple a -> Index -> Set a Source #

(.@) :: MonadFail m => Getting x y (Quadruple a) -> Index -> Getting x y (m a) Source #

(.<@>) :: Getting x y (Quadruple a) -> Index -> Getting x y (Set a) Source #

unQuadruple :: Quadruple a -> (a, a, a, a) Source #

toList :: Quadruple a -> [a] Source #

fromList :: MonadFail m => [a] -> m (Quadruple a) Source #