[core] don't use <boost/functional/hash.hpp> to avoid <locale> include

This commit is contained in:
Konstantin Käfer
2018-10-18 17:57:04 +02:00
parent 282c71e8e9
commit 70d5972e10
9 changed files with 57 additions and 32 deletions

View File

@@ -1,8 +1,8 @@
#include <mbgl/util/font_stack.hpp>
#include <mbgl/util/logging.hpp>
#include <mbgl/style/layers/symbol_layer_impl.hpp>
#include <mbgl/util/hash.hpp>
#include <boost/functional/hash.hpp>
#include <boost/algorithm/string/join.hpp>
namespace mbgl {
@@ -14,7 +14,11 @@ std::string fontStackToString(const FontStack& fontStack) {
}
FontStackHash FontStackHasher::operator()(const FontStack& fontStack) const {
return boost::hash_range(fontStack.begin(), fontStack.end());
std::size_t seed = 0;
for (const auto& font : fontStack) {
util::hash_combine(seed, font);
}
return seed;
}
std::set<FontStack> fontStacks(const std::vector<Immutable<style::Layer::Impl>>& layers) {