Safe Haskell | Safe |
---|---|

Language | Haskell2010 |

# Documentation

class AFoldable t a where Source #

Constrained Foldable for a specified type instead for all types.

(Emit Type e ((:) Type x xs) r, Reiterate * e ((:) Type x xs), AFoldable (Collector0 * e xs) r) => AFoldable (Collector0 * e ((:) Type x xs)) r Source # | Folds values by |

Emit Type e ([] Type) r => AFoldable (Collector0 * e ([] Type)) r Source # | terminating case that does use |

(Emit Type e ((:) Type x xs) r, Reiterate * e ((:) Type x xs), AFoldable (Collector * e xs) r) => AFoldable (Collector * e ((:) Type x xs)) r Source # | Folds values by |

AFoldable (Collector * e ([] Type)) r Source # | null case that doesn't even use |

(Emit Type (e n) ((:) Type x xs) r, ReiterateN * e n ((:) Type x xs), AFoldable (CollectorN0 * e ((+) n 1) xs) r) => AFoldable (CollectorN0 * e n ((:) Type x xs)) r Source # | Folds values by |

Emit Type (e n) ([] Type) r => AFoldable (CollectorN0 * e n ([] Type)) r Source # | terminating case that does use |

(Emit Type (e n) ((:) Type x xs) r, ReiterateN * e n ((:) Type x xs), AFoldable (CollectorN * e ((+) n 1) xs) r) => AFoldable (CollectorN * e n ((:) Type x xs)) r Source # | Folds values by |

AFoldable (CollectorN * e n ([] Type)) r Source # | null case that doesn't even use |