summaryrefslogtreecommitdiff
path: root/src/keymap_manager.cc
diff options
context:
space:
mode:
authorMaxime Coste <mawww@kakoune.org>2017-03-07 00:30:54 +0000
committerMaxime Coste <mawww@kakoune.org>2017-03-07 01:03:26 +0000
commit6373338c50a9431de7440b9274a079b4dc6c5755 (patch)
tree2e4d3be457593b1ca23a5d19eb8b17232ed5fafa /src/keymap_manager.cc
parente9f93f1b2f0e650ab346596ee6b6bb6e90f55504 (diff)
Replace uses of UnorderedMap with HashMap
Diffstat (limited to 'src/keymap_manager.cc')
-rw-r--r--src/keymap_manager.cc14
1 files changed, 7 insertions, 7 deletions
diff --git a/src/keymap_manager.cc b/src/keymap_manager.cc
index ba6d16ed..4f332b20 100644
--- a/src/keymap_manager.cc
+++ b/src/keymap_manager.cc
@@ -11,27 +11,27 @@ namespace Kakoune
void KeymapManager::map_key(Key key, KeymapMode mode,
KeyList mapping, String docstring)
{
- m_mapping[{key, mode}] = {std::move(mapping), std::move(docstring)};
+ m_mapping[KeyAndMode{key, mode}] = {std::move(mapping), std::move(docstring)};
}
void KeymapManager::unmap_key(Key key, KeymapMode mode)
{
- m_mapping.erase({key, mode});
+ m_mapping.unordered_remove(KeyAndMode{key, mode});
}
bool KeymapManager::is_mapped(Key key, KeymapMode mode) const
{
- return m_mapping.find({key, mode}) != m_mapping.end() or
+ return m_mapping.find(KeyAndMode{key, mode}) != m_mapping.end() or
(m_parent and m_parent->is_mapped(key, mode));
}
const KeymapManager::KeyMapInfo&
KeymapManager::get_mapping(Key key, KeymapMode mode) const
{
- auto it = m_mapping.find({key, mode});
+ auto it = m_mapping.find(KeyAndMode{key, mode});
if (it != m_mapping.end())
- return it->second;
+ return it->value;
kak_assert(m_parent);
return m_parent->get_mapping(key, mode);
}
@@ -43,8 +43,8 @@ KeymapManager::KeyList KeymapManager::get_mapped_keys(KeymapMode mode) const
res = m_parent->get_mapped_keys(mode);
for (auto& map : m_mapping)
{
- if (map.first.second == mode)
- res.emplace_back(map.first.first);
+ if (map.key.second == mode)
+ res.emplace_back(map.key.first);
}
std::sort(res.begin(), res.end());
res.erase(std::unique(res.begin(), res.end()), res.end());