Data.ChunkedZip

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

Safe Haskell | None
Language | Haskell98

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

Zip3 [] |
Zip3 Seq |
Zip3 Vector |

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

Zip4 [] |
Zip4 Seq |
Zip4 Vector |

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

Zip5 [] |
Zip5 Vector |

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

Zip6 [] |
Zip6 Vector |

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 [] |