-- | /O(n)/. Return all keys of the map in ascending order. Subject to list
-- fusion.
--
-- > keys (fromList [(5,"a"), (3,"b")]) == [3,5]
-- > keys empty == []
keys :: IntMap a -> [Key]
keys = foldrWithKey (\k _ l -> k : l) []
keys :: IntMap a -> [Key]
keys = foldrWithKey (\k _ l -> k : l) []
keys = foldrWithKey (\k _ l -> k : l) []