Idris2Doc : Data.Zippable

Data.Zippable

Definitions

interface Zippable : (Type -> Type) -> Type
  The `Zippable` interface describes how you can combine and split the
elements in a parameterised type.
@ z the parameterised type

Parameters: z
Methods:
zipWith : (a -> b -> c) -> z a -> z b -> z c
  Combine two parameterised types by applying a function.
@ z the parameterised type
@ func the function to combine elements with
zip : z a -> z b -> z (a, b)
  Combine two parameterised types into a parameterised type of pairs.
@ z the parameterised type

Fixity Declaration: infixr operator, level 6
zipWith3 : (a -> b -> c -> d) -> z a -> z b -> z c -> z d
  Combine three parameterised types by applying a function.
@ z the parameterised type
@ func the function to combine elements with
zip3 : z a -> z b -> z c -> z (a, (b, c))
  Combine three parameterised types into a parameterised type of triplets.
@ z the parameterised type
unzipWith : (a -> (b, c)) -> z a -> (z b, z c)
  Split a parameterised type by applying a function into a pair of
parameterised types.
@ z the parameterised type
@ func the function to split elements with
unzip : z (a, b) -> (z a, z b)
  Split a parameterised type of pairs into a pair of parameterised types.
@ z the parameterised type
unzipWith3 : (a -> (b, (c, d))) -> z a -> (z b, (z c, z d))
  Split a parameterised type by applying a function into a triplet of
parameterised types.
@ z the parameterised type
@ func the function to split elements with
unzip3 : z (a, (b, c)) -> (z a, (z b, z c))
  Split a parameterised type of triplets into a triplet of parameterised
types.
@ z the parameterised type

Implementations:
Ord k => Zippable (SortedMap k)
Zippable LazyList
Zippable Stream
Zippable Colist1
Zippable Colist
Zippable (Either a)
Semigroup a => Zippable (These a)
Zippable (Vect k)
Zippable List
Zippable List1
Semigroup a => Zippable (Pair a)
Zippable Maybe
Zippable SnocList
zipWith : Zippable z => (a -> b -> c) -> z a -> z b -> z c
  Combine two parameterised types by applying a function.
@ z the parameterised type
@ func the function to combine elements with

Totality: total
Visibility: public export
zip : Zippable z => z a -> z b -> z (a, b)
  Combine two parameterised types into a parameterised type of pairs.
@ z the parameterised type

Totality: total
Visibility: public export
Fixity Declaration: infixr operator, level 6
zipWith3 : Zippable z => (a -> b -> c -> d) -> z a -> z b -> z c -> z d
  Combine three parameterised types by applying a function.
@ z the parameterised type
@ func the function to combine elements with

Totality: total
Visibility: public export
zip3 : Zippable z => z a -> z b -> z c -> z (a, (b, c))
  Combine three parameterised types into a parameterised type of triplets.
@ z the parameterised type

Totality: total
Visibility: public export
unzipWith : Zippable z => (a -> (b, c)) -> z a -> (z b, z c)
  Split a parameterised type by applying a function into a pair of
parameterised types.
@ z the parameterised type
@ func the function to split elements with

Totality: total
Visibility: public export
unzip : Zippable z => z (a, b) -> (z a, z b)
  Split a parameterised type of pairs into a pair of parameterised types.
@ z the parameterised type

Totality: total
Visibility: public export
unzipWith3 : Zippable z => (a -> (b, (c, d))) -> z a -> (z b, (z c, z d))
  Split a parameterised type by applying a function into a triplet of
parameterised types.
@ z the parameterised type
@ func the function to split elements with

Totality: total
Visibility: public export
unzip3 : Zippable z => z (a, (b, c)) -> (z a, (z b, z c))
  Split a parameterised type of triplets into a triplet of parameterised
types.
@ z the parameterised type

Totality: total
Visibility: public export