diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2020-02-11 16:57:41 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2020-02-11 16:57:41 +0300 |
commit | 30f65b54a78edc2a974ba93fefa86534fe2b7ff4 (patch) | |
tree | 030cf43b7c2cbd649a2e8758bf319a5b76a29aef /source/blender/blenlib/BLI_map.h | |
parent | 9052c6fafa87654c9a45ce0d5b9ecee073ec1a5b (diff) | |
parent | 3657bb514130ce2d28c407432d6f10202a68c92a (diff) |
Merge branch 'master' into draw-colormanagementdraw-colormanagement
Diffstat (limited to 'source/blender/blenlib/BLI_map.h')
-rw-r--r-- | source/blender/blenlib/BLI_map.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/source/blender/blenlib/BLI_map.h b/source/blender/blenlib/BLI_map.h index 1edf7653c71..73b731252b6 100644 --- a/source/blender/blenlib/BLI_map.h +++ b/source/blender/blenlib/BLI_map.h @@ -413,6 +413,19 @@ template<typename KeyT, typename ValueT, typename Allocator = GuardedAllocator> return m_array.slots_set(); } + template<typename FuncT> void foreach_item(const FuncT &func) const + { + for (const Item &item : m_array) { + for (uint offset = 0; offset < 4; offset++) { + if (item.is_set(offset)) { + const KeyT &key = *item.key(offset); + const ValueT &value = *item.value(offset); + func(key, value); + } + } + } + } + void print_table() const { std::cout << "Hash Table:\n"; |