diff --git a/include/mapnik/unicode.hpp b/include/mapnik/unicode.hpp index ae2139a5e..0de34ac98 100644 --- a/include/mapnik/unicode.hpp +++ b/include/mapnik/unicode.hpp @@ -51,4 +51,10 @@ private: }; } +namespace icu_50 { +inline std::size_t hash_value(const UnicodeString& val) { + return val.hashCode(); +} +} + #endif // MAPNIK_UNICODE_HPP diff --git a/include/mapnik/value.hpp b/include/mapnik/value.hpp index 41f51a087..40f329f33 100644 --- a/include/mapnik/value.hpp +++ b/include/mapnik/value.hpp @@ -36,6 +36,7 @@ #include #include #include +#include // stl #include @@ -905,6 +906,10 @@ operator << (std::basic_ostream& out, return out; } +inline std::size_t hash_value(const value& val) { + return hash_value(val.base()); +} + } // namespace value_adl_barrier using value_adl_barrier::value; diff --git a/include/mapnik/value_types.hpp b/include/mapnik/value_types.hpp index 7a73a8721..d80bd19cd 100644 --- a/include/mapnik/value_types.hpp +++ b/include/mapnik/value_types.hpp @@ -78,6 +78,10 @@ struct value_null } }; +inline std::size_t hash_value(const value_null& val) { + return 0; +} + inline std::ostream& operator<< (std::ostream & out,value_null const& v) { return out;