Copyright | (c) Andrey Mulik 2019 |
---|---|

License | BSD-style |

Maintainer | work.a.mulik@gmail.com |

Portability | portable |

Safe Haskell | Safe |

Language | Haskell2010 |

## Synopsis

- class Functor z => Zip z where
- zap :: z (a -> b) -> z a -> z b
- all2 :: (a -> b -> Bool) -> z a -> z b -> Bool
- all3 :: (a -> b -> c -> Bool) -> z a -> z b -> z c -> Bool
- all4 :: (a -> b -> c -> d -> Bool) -> z a -> z b -> z c -> z d -> Bool
- all5 :: (a -> b -> c -> d -> e -> Bool) -> z a -> z b -> z c -> z d -> z e -> Bool
- all6 :: (a -> b -> c -> d -> e -> f -> Bool) -> z a -> z b -> z c -> z d -> z e -> z f -> Bool
- any2 :: (a -> b -> Bool) -> z a -> z b -> Bool
- any3 :: (a -> b -> c -> Bool) -> z a -> z b -> z c -> Bool
- any4 :: (a -> b -> c -> d -> Bool) -> z a -> z b -> z c -> z d -> Bool
- any5 :: (a -> b -> c -> d -> e -> Bool) -> z a -> z b -> z c -> z d -> z e -> Bool
- any6 :: (a -> b -> c -> d -> e -> f -> Bool) -> z a -> z b -> z c -> z d -> z e -> z f -> Bool
- zip :: z a -> z b -> z (a, b)
- zip3 :: z a -> z b -> z c -> z (a, b, c)
- zip4 :: z a -> z b -> z c -> z d -> z (a, b, c, d)
- zip5 :: z a -> z b -> z c -> z d -> z e -> z (a, b, c, d, e)
- zip6 :: z a -> z b -> z c -> z d -> z e -> z f -> z (a, b, c, d, e, f)
- zipWith :: (a -> b -> c) -> z a -> z b -> z c
- zipWith3 :: (a -> b -> c -> d) -> z a -> z b -> z c -> z d
- zipWith4 :: (a -> b -> c -> d -> e) -> z a -> z b -> z c -> z d -> z e
- zipWith5 :: (a -> b -> c -> d -> e -> f) -> z a -> z b -> z c -> z d -> z e -> z f
- zipWith6 :: (a -> b -> c -> d -> e -> f -> g) -> z a -> z b -> z c -> z d -> z e -> z f -> z g

# Documentation

class Functor z => Zip z where Source #

Zip is generalization of ZipList applicative semantics (but without pure).

zap :: z (a -> b) -> z a -> z b Source #

ZipList-like `<*>`

all2 :: (a -> b -> Bool) -> z a -> z b -> Bool Source #

all3 :: (a -> b -> c -> Bool) -> z a -> z b -> z c -> Bool Source #

all4 :: (a -> b -> c -> d -> Bool) -> z a -> z b -> z c -> z d -> Bool Source #

all5 :: (a -> b -> c -> d -> e -> Bool) -> z a -> z b -> z c -> z d -> z e -> Bool Source #

all6 :: (a -> b -> c -> d -> e -> f -> Bool) -> z a -> z b -> z c -> z d -> z e -> z f -> Bool Source #

any2 :: (a -> b -> Bool) -> z a -> z b -> Bool Source #

any3 :: (a -> b -> c -> Bool) -> z a -> z b -> z c -> Bool Source #

any4 :: (a -> b -> c -> d -> Bool) -> z a -> z b -> z c -> z d -> Bool Source #

any5 :: (a -> b -> c -> d -> e -> Bool) -> z a -> z b -> z c -> z d -> z e -> Bool Source #

any6 :: (a -> b -> c -> d -> e -> f -> Bool) -> z a -> z b -> z c -> z d -> z e -> z f -> Bool Source #

zip :: z a -> z b -> z (a, b) Source #

zip3 :: z a -> z b -> z c -> z (a, b, c) Source #

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

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

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

zipWith :: (a -> b -> c) -> z a -> z b -> z c Source #

zipWith3 :: (a -> b -> c -> d) -> z a -> z b -> z c -> z d Source #

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

zipWith5 :: (a -> b -> c -> d -> e -> f) -> z a -> z b -> z c -> z d -> z e -> z f Source #

zipWith6 :: (a -> b -> c -> d -> e -> f -> g) -> z a -> z b -> z c -> z d -> z e -> z f -> z g Source #

#### Instances

Zip [] Source # | |

Defined in SDP.Zip zap :: [a -> b] -> [a] -> [b] Source # all2 :: (a -> b -> Bool) -> [a] -> [b] -> Bool Source # all3 :: (a -> b -> c -> Bool) -> [a] -> [b] -> [c] -> Bool Source # all4 :: (a -> b -> c -> d -> Bool) -> [a] -> [b] -> [c] -> [d] -> Bool Source # all5 :: (a -> b -> c -> d -> e -> Bool) -> [a] -> [b] -> [c] -> [d] -> [e] -> Bool Source # all6 :: (a -> b -> c -> d -> e -> f -> Bool) -> [a] -> [b] -> [c] -> [d] -> [e] -> [f] -> Bool Source # any2 :: (a -> b -> Bool) -> [a] -> [b] -> Bool Source # any3 :: (a -> b -> c -> Bool) -> [a] -> [b] -> [c] -> Bool Source # any4 :: (a -> b -> c -> d -> Bool) -> [a] -> [b] -> [c] -> [d] -> Bool Source # any5 :: (a -> b -> c -> d -> e -> Bool) -> [a] -> [b] -> [c] -> [d] -> [e] -> Bool Source # any6 :: (a -> b -> c -> d -> e -> f -> Bool) -> [a] -> [b] -> [c] -> [d] -> [e] -> [f] -> Bool Source # zip :: [a] -> [b] -> [(a, b)] Source # zip3 :: [a] -> [b] -> [c] -> [(a, b, c)] Source # zip4 :: [a] -> [b] -> [c] -> [d] -> [(a, b, c, d)] Source # zip5 :: [a] -> [b] -> [c] -> [d] -> [e] -> [(a, b, c, d, e)] Source # zip6 :: [a] -> [b] -> [c] -> [d] -> [e] -> [f] -> [(a, b, c, d, e, f)] Source # zipWith :: (a -> b -> c) -> [a] -> [b] -> [c] Source # zipWith3 :: (a -> b -> c -> d) -> [a] -> [b] -> [c] -> [d] Source # zipWith4 :: (a -> b -> c -> d -> e) -> [a] -> [b] -> [c] -> [d] -> [e] Source # zipWith5 :: (a -> b -> c -> d -> e -> f) -> [a] -> [b] -> [c] -> [d] -> [e] -> [f] Source # zipWith6 :: (a -> b -> c -> d -> e -> f -> g) -> [a] -> [b] -> [c] -> [d] -> [e] -> [f] -> [g] Source # | |

Zip SArray# Source # | |

Defined in SDP.Prim.SArray zap :: SArray# (a -> b) -> SArray# a -> SArray# b Source # all2 :: (a -> b -> Bool) -> SArray# a -> SArray# b -> Bool Source # all3 :: (a -> b -> c -> Bool) -> SArray# a -> SArray# b -> SArray# c -> Bool Source # all4 :: (a -> b -> c -> d -> Bool) -> SArray# a -> SArray# b -> SArray# c -> SArray# d -> Bool Source # all5 :: (a -> b -> c -> d -> e -> Bool) -> SArray# a -> SArray# b -> SArray# c -> SArray# d -> SArray# e -> Bool Source # all6 :: (a -> b -> c -> d -> e -> f -> Bool) -> SArray# a -> SArray# b -> SArray# c -> SArray# d -> SArray# e -> SArray# f -> Bool Source # any2 :: (a -> b -> Bool) -> SArray# a -> SArray# b -> Bool Source # any3 :: (a -> b -> c -> Bool) -> SArray# a -> SArray# b -> SArray# c -> Bool Source # any4 :: (a -> b -> c -> d -> Bool) -> SArray# a -> SArray# b -> SArray# c -> SArray# d -> Bool Source # any5 :: (a -> b -> c -> d -> e -> Bool) -> SArray# a -> SArray# b -> SArray# c -> SArray# d -> SArray# e -> Bool Source # any6 :: (a -> b -> c -> d -> e -> f -> Bool) -> SArray# a -> SArray# b -> SArray# c -> SArray# d -> SArray# e -> SArray# f -> Bool Source # zip :: SArray# a -> SArray# b -> SArray# (a, b) Source # zip3 :: SArray# a -> SArray# b -> SArray# c -> SArray# (a, b, c) Source # zip4 :: SArray# a -> SArray# b -> SArray# c -> SArray# d -> SArray# (a, b, c, d) Source # zip5 :: SArray# a -> SArray# b -> SArray# c -> SArray# d -> SArray# e -> SArray# (a, b, c, d, e) Source # zip6 :: SArray# a -> SArray# b -> SArray# c -> SArray# d -> SArray# e -> SArray# f -> SArray# (a, b, c, d, e, f) Source # zipWith :: (a -> b -> c) -> SArray# a -> SArray# b -> SArray# c Source # zipWith3 :: (a -> b -> c -> d) -> SArray# a -> SArray# b -> SArray# c -> SArray# d Source # zipWith4 :: (a -> b -> c -> d -> e) -> SArray# a -> SArray# b -> SArray# c -> SArray# d -> SArray# e Source # zipWith5 :: (a -> b -> c -> d -> e -> f) -> SArray# a -> SArray# b -> SArray# c -> SArray# d -> SArray# e -> SArray# f Source # zipWith6 :: (a -> b -> c -> d -> e -> f -> g) -> SArray# a -> SArray# b -> SArray# c -> SArray# d -> SArray# e -> SArray# f -> SArray# g Source # | |

Zip Unlist Source # | |

Defined in SDP.Unrolled.Unlist zap :: Unlist (a -> b) -> Unlist a -> Unlist b Source # all2 :: (a -> b -> Bool) -> Unlist a -> Unlist b -> Bool Source # all3 :: (a -> b -> c -> Bool) -> Unlist a -> Unlist b -> Unlist c -> Bool Source # all4 :: (a -> b -> c -> d -> Bool) -> Unlist a -> Unlist b -> Unlist c -> Unlist d -> Bool Source # all5 :: (a -> b -> c -> d -> e -> Bool) -> Unlist a -> Unlist b -> Unlist c -> Unlist d -> Unlist e -> Bool Source # all6 :: (a -> b -> c -> d -> e -> f -> Bool) -> Unlist a -> Unlist b -> Unlist c -> Unlist d -> Unlist e -> Unlist f -> Bool Source # any2 :: (a -> b -> Bool) -> Unlist a -> Unlist b -> Bool Source # any3 :: (a -> b -> c -> Bool) -> Unlist a -> Unlist b -> Unlist c -> Bool Source # any4 :: (a -> b -> c -> d -> Bool) -> Unlist a -> Unlist b -> Unlist c -> Unlist d -> Bool Source # any5 :: (a -> b -> c -> d -> e -> Bool) -> Unlist a -> Unlist b -> Unlist c -> Unlist d -> Unlist e -> Bool Source # any6 :: (a -> b -> c -> d -> e -> f -> Bool) -> Unlist a -> Unlist b -> Unlist c -> Unlist d -> Unlist e -> Unlist f -> Bool Source # zip :: Unlist a -> Unlist b -> Unlist (a, b) Source # zip3 :: Unlist a -> Unlist b -> Unlist c -> Unlist (a, b, c) Source # zip4 :: Unlist a -> Unlist b -> Unlist c -> Unlist d -> Unlist (a, b, c, d) Source # zip5 :: Unlist a -> Unlist b -> Unlist c -> Unlist d -> Unlist e -> Unlist (a, b, c, d, e) Source # zip6 :: Unlist a -> Unlist b -> Unlist c -> Unlist d -> Unlist e -> Unlist f -> Unlist (a, b, c, d, e, f) Source # zipWith :: (a -> b -> c) -> Unlist a -> Unlist b -> Unlist c Source # zipWith3 :: (a -> b -> c -> d) -> Unlist a -> Unlist b -> Unlist c -> Unlist d Source # zipWith4 :: (a -> b -> c -> d -> e) -> Unlist a -> Unlist b -> Unlist c -> Unlist d -> Unlist e Source # zipWith5 :: (a -> b -> c -> d -> e -> f) -> Unlist a -> Unlist b -> Unlist c -> Unlist d -> Unlist e -> Unlist f Source # zipWith6 :: (a -> b -> c -> d -> e -> f -> g) -> Unlist a -> Unlist b -> Unlist c -> Unlist d -> Unlist e -> Unlist f -> Unlist g Source # | |

(Index i, Zip rep) => Zip (AnyBorder rep i) Source # | |

Defined in SDP.Templates.AnyBorder zap :: AnyBorder rep i (a -> b) -> AnyBorder rep i a -> AnyBorder rep i b Source # all2 :: (a -> b -> Bool) -> AnyBorder rep i a -> AnyBorder rep i b -> Bool Source # all3 :: (a -> b -> c -> Bool) -> AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> Bool Source # all4 :: (a -> b -> c -> d -> Bool) -> AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> AnyBorder rep i d -> Bool Source # all5 :: (a -> b -> c -> d -> e -> Bool) -> AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> AnyBorder rep i d -> AnyBorder rep i e -> Bool Source # all6 :: (a -> b -> c -> d -> e -> f -> Bool) -> AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> AnyBorder rep i d -> AnyBorder rep i e -> AnyBorder rep i f -> Bool Source # any2 :: (a -> b -> Bool) -> AnyBorder rep i a -> AnyBorder rep i b -> Bool Source # any3 :: (a -> b -> c -> Bool) -> AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> Bool Source # any4 :: (a -> b -> c -> d -> Bool) -> AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> AnyBorder rep i d -> Bool Source # any5 :: (a -> b -> c -> d -> e -> Bool) -> AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> AnyBorder rep i d -> AnyBorder rep i e -> Bool Source # any6 :: (a -> b -> c -> d -> e -> f -> Bool) -> AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> AnyBorder rep i d -> AnyBorder rep i e -> AnyBorder rep i f -> Bool Source # zip :: AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i (a, b) Source # zip3 :: AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> AnyBorder rep i (a, b, c) Source # zip4 :: AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> AnyBorder rep i d -> AnyBorder rep i (a, b, c, d) Source # zip5 :: AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> AnyBorder rep i d -> AnyBorder rep i e -> AnyBorder rep i (a, b, c, d, e) Source # zip6 :: AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> AnyBorder rep i d -> AnyBorder rep i e -> AnyBorder rep i f -> AnyBorder rep i (a, b, c, d, e, f) Source # zipWith :: (a -> b -> c) -> AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c Source # zipWith3 :: (a -> b -> c -> d) -> AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> AnyBorder rep i d Source # zipWith4 :: (a -> b -> c -> d -> e) -> AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> AnyBorder rep i d -> AnyBorder rep i e Source # zipWith5 :: (a -> b -> c -> d -> e -> f) -> AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> AnyBorder rep i d -> AnyBorder rep i e -> AnyBorder rep i f Source # zipWith6 :: (a -> b -> c -> d -> e -> f -> g) -> AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> AnyBorder rep i d -> AnyBorder rep i e -> AnyBorder rep i f -> AnyBorder rep i g Source # |