Skip to content

Commit b72553e

Browse files
committed
Make monadic fold lazy instead of strict
1 parent 5b0f77c commit b72553e

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

containers/src/Data/Map/Internal.hs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -262,8 +262,8 @@ module Data.Map.Internal (
262262
, foldrWithKey'
263263
, foldlWithKey'
264264

265-
-- ** Strict monadic folds
266-
, foldlWithKeyM'
265+
-- ** Monadic folds
266+
, foldlWithKeyM
267267

268268
-- * Conversion
269269
, elems
@@ -3365,16 +3365,16 @@ foldlWithKey' f z = go z
33653365
in go (f z'' kx x) r
33663366
{-# INLINE foldlWithKey' #-}
33673367

3368-
-- | /O(n)/. Monadic variant of 'foldlWithKey\''.
3369-
foldlWithKeyM' :: Monad m => (a -> k -> b -> m a) -> a -> Map k b -> m a
3370-
foldlWithKeyM' f z = go z
3368+
-- | /O(n)/. Monadic variant of 'foldlWithKey'.
3369+
foldlWithKeyM :: Monad m => (a -> k -> b -> m a) -> a -> Map k b -> m a
3370+
foldlWithKeyM f z = go z
33713371
where
3372-
go !z' Tip = return z'
3372+
go z' Tip = return z'
33733373
go z' (Bin _ kx x l r) = do
33743374
!z'' <- go z' l
33753375
z''' <- f z'' kx x
33763376
go z''' r
3377-
{-# INLINE foldlWithKeyM' #-}
3377+
{-# INLINE foldlWithKeyM #-}
33783378

33793379
-- | /O(n)/. Fold the keys and values in the map using the given monoid, such that
33803380
--

0 commit comments

Comments
 (0)