Как извлечь ключи из Map.Map? - PullRequest
0 голосов
/ 13 апреля 2020

Я буду sh, чтобы извлечь все ключи из карты, но я не знаю, как получить доступ к ключам. Мне удалось собрать все значения из любых складываемых типов, таких как Карты, но я не уверен, как получить доступ к клавишам внутри функтора.

getVals :: (Foldable t) => t a -> [a]
getVals x = foldr (:) [] x

Как определить функцию, подобную этой?

getKeys :: (Map k a) -> [k]

1 Ответ

3 голосов
/ 13 апреля 2020

Вы не можете получить ключи Map с его экземпляром Foldable. Вместо этого используйте Data.Map.keys.

...