chunked-data-0.2.0: 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 Source

Minimal complete definition

zipWith

Methods

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

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

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

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

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 Source

Minimal complete definition

zipWith3, unzip3

Methods

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

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

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

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

Instances

class Functor f => Zip4 f where Source

Minimal complete definition

zipWith4, unzip4

Methods

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

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

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

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

Instances

class Functor f => Zip5 f where Source

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 Source

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

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

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

Instances

class Functor f => Zip6 f where Source

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 Source

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

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

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

Instances

class Functor f => Zip7 f where Source

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 Source

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

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

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

Instances

Zip7 []