/* * Created by Brett on 31/03/23. * Licensed under GNU General Public License V3.0 * See LICENSE file for license detail */ #ifndef BLT_HASH_MAP_H #define BLT_HASH_MAP_H namespace blt { // template, typename Eq = std::equal_to> // class hashmap // { // private: // // public: // // }; } #ifndef HASHMAP #if defined __has_include && __has_include() #include #include namespace blt { template, class Eq = phmap::priv::hash_default_eq , class Alloc = phmap::priv::Allocator >> using hashmap_t = phmap::flat_hash_map; template, class Eq = phmap::priv::hash_default_eq , class Alloc = phmap::priv::Allocator > using hashset_t = phmap::flat_hash_set; } #else namespace blt { #include #include template, typename Eq = std::equal_to, typename Alloc = std::allocator>> using hashmap_t = std::unordered_map; template, typename Eq = std::equal_to, typename Alloc = std::allocator> using hashset_t = std::unordered_set; } #endif #endif #endif //BLT_HASH_MAP_H