Skip to content

Commit e6598b5

Browse files
sjakobitreeowl
authored andcommitted
Documentation tweaks for alter and alterF
1 parent 53fe080 commit e6598b5

File tree

2 files changed

+25
-13
lines changed

2 files changed

+25
-13
lines changed

Data/HashMap/Base.hs

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1233,9 +1233,14 @@ update f = alter (>>= f)
12331233
{-# INLINABLE update #-}
12341234

12351235

1236-
-- | /O(log n)/ The expression (@'alter' f k map@) alters the value @x@ at @k@, or
1237-
-- absence thereof. @alter@ can be used to insert, delete, or update a value in a
1238-
-- map. In short : @'lookup' k ('alter' f k m) = f ('lookup' k m)@.
1236+
-- | /O(log n)/ The expression @('alter' f k map)@ alters the value @x@ at @k@, or
1237+
-- absence thereof.
1238+
--
1239+
-- 'alter' can be used to insert, delete, or update a value in a map. In short:
1240+
--
1241+
-- @
1242+
-- 'lookup' k ('alter' f k m) = f ('lookup' k m)
1243+
-- @
12391244
alter :: (Eq k, Hashable k) => (Maybe v -> Maybe v) -> k -> HashMap k v -> HashMap k v
12401245
-- TODO(m-renaud): Consider using specialized insert and delete for alter.
12411246
alter f k m =
@@ -1244,12 +1249,13 @@ alter f k m =
12441249
Just v -> insert k v m
12451250
{-# INLINABLE alter #-}
12461251

1247-
-- | /O(log n)/ The expression (@'alterF' f k map@) alters the value @x@ at
1248-
-- @k@, or absence thereof. @alterF@ can be used to insert, delete, or update
1249-
-- a value in a map.
1252+
-- | /O(log n)/ The expression @('alterF' f k map)@ alters the value @x@ at
1253+
-- @k@, or absence thereof.
1254+
--
1255+
-- 'alterF' can be used to insert, delete, or update a value in a map.
12501256
--
12511257
-- Note: 'alterF' is a flipped version of the 'at' combinator from
1252-
-- <https://hackage.haskell.org/package/lens-4.15.4/docs/Control-Lens-At.html#v:at Control.Lens.At>.
1258+
-- <https://hackage.haskell.org/package/lens/docs/Control-Lens-At.html#v:at Control.Lens.At>.
12531259
--
12541260
-- @since 0.2.10
12551261
alterF :: (Functor f, Eq k, Hashable k)

Data/HashMap/Strict/Base.hs

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -265,9 +265,14 @@ update :: (Eq k, Hashable k) => (a -> Maybe a) -> k -> HashMap k a -> HashMap k
265265
update f = alter (>>= f)
266266
{-# INLINABLE update #-}
267267

268-
-- | /O(log n)/ The expression (@'alter' f k map@) alters the value @x@ at @k@, or
269-
-- absence thereof. @alter@ can be used to insert, delete, or update a value in a
270-
-- map. In short : @'lookup' k ('alter' f k m) = f ('lookup' k m)@.
268+
-- | /O(log n)/ The expression @('alter' f k map)@ alters the value @x@ at @k@, or
269+
-- absence thereof.
270+
--
271+
-- 'alter' can be used to insert, delete, or update a value in a map. In short:
272+
--
273+
-- @
274+
-- 'lookup' k ('alter' f k m) = f ('lookup' k m)
275+
-- @
271276
alter :: (Eq k, Hashable k) => (Maybe v -> Maybe v) -> k -> HashMap k v -> HashMap k v
272277
alter f k m =
273278
case f (HM.lookup k m) of
@@ -276,11 +281,12 @@ alter f k m =
276281
{-# INLINABLE alter #-}
277282

278283
-- | /O(log n)/ The expression (@'alterF' f k map@) alters the value @x@ at
279-
-- @k@, or absence thereof. @alterF@ can be used to insert, delete, or update
280-
-- a value in a map.
284+
-- @k@, or absence thereof.
285+
--
286+
-- 'alterF' can be used to insert, delete, or update a value in a map.
281287
--
282288
-- Note: 'alterF' is a flipped version of the 'at' combinator from
283-
-- <https://hackage.haskell.org/package/lens-4.15.4/docs/Control-Lens-At.html#v:at Control.Lens.At>.
289+
-- <https://hackage.haskell.org/package/lens/docs/Control-Lens-At.html#v:at Control.Lens.At>.
284290
--
285291
-- @since 0.2.10
286292
alterF :: (Functor f, Eq k, Hashable k)

0 commit comments

Comments
 (0)