catOptionals.dhall 434 B

123456789101112131415161718
  1. let Prelude = ../lib/prelude.dhall
  2. let catOptionals
  3. : ∀(T : Type) → List (Optional T) → List T
  4. = λ(T : Type)
  5. → λ(ts : List (Optional T))
  6. → List/fold
  7. (Optional T)
  8. ts
  9. (List T)
  10. ( λ(t : Optional T)
  11. → λ(acc : List T)
  12. → Prelude.List.concat T [ Prelude.Optional.toList T t, acc ]
  13. )
  14. ([] : List T)
  15. in catOptionals