1-- | 2-- Module : Foundation.Collection 3-- License : BSD-style 4-- Maintainer : Vincent Hanquez <vincent@snarc.org> 5-- Stability : experimental 6-- Portability : portable 7-- 8-- Different collections (list, vector, string, ..) unified under 1 API. 9-- an API to rules them all, and in the darkness bind them. 10-- 11{-# LANGUAGE FlexibleInstances #-} 12module Foundation.Collection 13 ( BoxedZippable(..) 14 , Element 15 , InnerFunctor(..) 16 , Foldable(..) 17 , Fold1able(..) 18 , Mappable(..) 19 , traverse_ 20 , mapM_ 21 , forM 22 , forM_ 23 , Collection(..) 24 , and 25 , or 26 , NonEmpty 27 , getNonEmpty 28 , nonEmpty 29 , nonEmpty_ 30 , nonEmptyFmap 31 , Sequential(..) 32 , MutableCollection(..) 33 , IndexedCollection(..) 34 , KeyedCollection(..) 35 , Zippable(..) 36 , Buildable(..) 37 , build_ 38 , Builder(..) 39 , BuildingState(..) 40 , Copy(..) 41 ) where 42 43import Foundation.Collection.Buildable 44import Foundation.Collection.Element 45import Foundation.Collection.Foldable 46import Foundation.Collection.Indexed 47import Foundation.Collection.InnerFunctor 48import Foundation.Collection.Keyed 49import Foundation.Collection.Mutable 50import Foundation.Collection.Collection 51import Foundation.Collection.Sequential 52import Foundation.Collection.Mappable 53import Foundation.Collection.Zippable 54import Foundation.Collection.Copy 55