0 | ||| A Witherable is a combination of a Traversable and a Filterable
 1 | module Data.Witherable
 2 |
 3 | import public Data.Filterable
 4 |
 5 |
 6 | public export
 7 | interface (Filterable tTraversable t) => Witherable t where
 8 |   wither : (Applicative f) => (a -> f (Maybe b)) -> t a -> f (t b)
 9 |   wither k = map catMaybes . traverse k
10 |
11 | export
12 | Witherable Maybe where
13 |
14 | export
15 | Witherable List where
16 |