Bag: Add Foldable instance
authorBen Gamari <ben@smart-cactus.org>
Tue, 18 Aug 2015 17:17:50 +0000 (19:17 +0200)
committerBen Gamari <ben@smart-cactus.org>
Fri, 21 Aug 2015 10:10:06 +0000 (12:10 +0200)
compiler/utils/Bag.hs

index 8fbfa13..09fc00a 100644 (file)
@@ -29,6 +29,7 @@ import Util
 import MonadUtils
 import Data.Data
 import Data.List ( partition )
+import qualified Data.Foldable as Foldable
 
 infixr 3 `consBag`
 infixl 3 `snocBag`
@@ -269,3 +270,6 @@ instance Data a => Data (Bag a) where
   gunfold _ _  = error "gunfold"
   dataTypeOf _ = mkNoRepType "Bag"
   dataCast1 x  = gcast1 x
+
+instance Foldable.Foldable Bag where
+    foldr = foldrBag