chunked-data-0.1.0.1: Typeclasses for dealing with various chunked data representations

Safe HaskellNone
LanguageHaskell98

Data.ChunkedZip

Description

Various zipping and unzipping functions for chunked data structures.

Documentation

class Functor f => Zip f where

Minimal complete definition

zipWith

Methods

zipWith :: (a -> b -> c) -> f a -> f b -> f c

zip :: f a -> f b -> f (a, b)

zap :: f (a -> b) -> f a -> f b

unzip :: f (a, b) -> (f a, f b)

Instances

Zip [] 
Zip IntMap 
Zip Tree 
Zip Seq 
Zip NonEmpty 
Zip Vector 
Zip ((->) a) 
Zip m => Zip (IdentityT m) 
Zip m => Zip (ReaderT e m) 
(Zip f, Zip g) => Zip (Compose f g) 

class Functor f => Zip3 f where

Minimal complete definition

zipWith3, unzip3

Methods

zipWith3 :: (a -> b -> c -> d) -> f a -> f b -> f c -> f d

zip3 :: f a -> f b -> f c -> f (a, b, c)

zap3 :: f (a -> b -> c) -> f a -> f b -> f c

unzip3 :: f (a, b, c) -> (f a, f b, f c)

Instances

class Functor f => Zip4 f where

Minimal complete definition

zipWith4, unzip4

Methods

zipWith4 :: (a -> b -> c -> d -> e) -> f a -> f b -> f c -> f d -> f e

zip4 :: f a -> f b -> f c -> f d -> f (a, b, c, d)

zap4 :: f (a -> b -> c -> d) -> f a -> f b -> f c -> f d

unzip4 :: f (a, b, c, d) -> (f a, f b, f c, f d)

Instances

class Functor f => Zip5 f where

Minimal complete definition

zipWith5, unzip5

Methods

zipWith5 :: (a -> b -> c -> d -> e -> g) -> f a -> f b -> f c -> f d -> f e -> f g

zip5 :: f a -> f b -> f c -> f d -> f e -> f (a, b, c, d, e)

zap5 :: f (a -> b -> c -> d -> e) -> f a -> f b -> f c -> f d -> f e

unzip5 :: f (a, b, c, d, e) -> (f a, f b, f c, f d, f e)

Instances

class Functor f => Zip6 f where

Minimal complete definition

zipWith6, unzip6

Methods

zipWith6 :: (a -> b -> c -> d -> e -> g -> h) -> f a -> f b -> f c -> f d -> f e -> f g -> f h

zip6 :: f a -> f b -> f c -> f d -> f e -> f g -> f (a, b, c, d, e, g)

zap6 :: f (a -> b -> c -> d -> e -> g) -> f a -> f b -> f c -> f d -> f e -> f g

unzip6 :: f (a, b, c, d, e, g) -> (f a, f b, f c, f d, f e, f g)

Instances

class Functor f => Zip7 f where

Minimal complete definition

zipWith7, unzip7

Methods

zipWith7 :: (a -> b -> c -> d -> e -> g -> h -> i) -> f a -> f b -> f c -> f d -> f e -> f g -> f h -> f i

zip7 :: f a -> f b -> f c -> f d -> f e -> f g -> f h -> f (a, b, c, d, e, g, h)

zap7 :: f (a -> b -> c -> d -> e -> g -> h) -> f a -> f b -> f c -> f d -> f e -> f g -> f h

unzip7 :: f (a, b, c, d, e, g, h) -> (f a, f b, f c, f d, f e, f g, f h)

Instances

Zip7 []