mirror of
https://github.com/bolero-MURAKAMI/Sprout
synced 2025-08-03 12:49:50 +00:00
workaround for disable unicode literals and types
This commit is contained in:
parent
4e0b3991b1
commit
7240e883c5
26 changed files with 152 additions and 29 deletions
|
@ -177,6 +177,7 @@ namespace sprout {
|
|||
to_wstring(sprout::uuids::uuid const& u) {
|
||||
return sprout::uuids::to_string_of<wchar_t>(u);
|
||||
}
|
||||
#if SPROUT_USE_UNICODE_LITERALS
|
||||
inline SPROUT_CONSTEXPR sprout::basic_string<char16_t, 36>
|
||||
to_u16string(sprout::uuids::uuid const& u) {
|
||||
return sprout::uuids::to_string_of<char16_t>(u);
|
||||
|
@ -185,6 +186,7 @@ namespace sprout {
|
|||
to_u32string(sprout::uuids::uuid const& u) {
|
||||
return sprout::uuids::to_string_of<char32_t>(u);
|
||||
}
|
||||
#endif
|
||||
} // namespace uuids
|
||||
} // namespace sprout
|
||||
|
||||
|
|
|
@ -67,12 +67,14 @@ namespace sprout {
|
|||
SPROUT_CONSTEXPR result_type operator()(wchar_t const* name) const {
|
||||
return sha_to_uuid(sum_.c_process_bytes(name, sprout::char_traits<wchar_t>::length(name)));
|
||||
}
|
||||
#if SPROUT_USE_UNICODE_LITERALS
|
||||
SPROUT_CONSTEXPR result_type operator()(char16_t const* name) const {
|
||||
return sha_to_uuid(sum_.c_process_bytes(name, sprout::char_traits<char16_t>::length(name)));
|
||||
}
|
||||
SPROUT_CONSTEXPR result_type operator()(char32_t const* name) const {
|
||||
return sha_to_uuid(sum_.c_process_bytes(name, sprout::char_traits<char32_t>::length(name)));
|
||||
}
|
||||
#endif
|
||||
};
|
||||
|
||||
//
|
||||
|
@ -91,6 +93,7 @@ namespace sprout {
|
|||
make_uuid3(wchar_t const* name) {
|
||||
return sprout::uuids::md5_name_generator()(name);
|
||||
}
|
||||
#if SPROUT_USE_UNICODE_LITERALS
|
||||
inline SPROUT_CONSTEXPR sprout::uuids::uuid
|
||||
make_uuid3(char16_t const* name) {
|
||||
return sprout::uuids::md5_name_generator()(name);
|
||||
|
@ -99,6 +102,7 @@ namespace sprout {
|
|||
make_uuid3(char32_t const* name) {
|
||||
return sprout::uuids::md5_name_generator()(name);
|
||||
}
|
||||
#endif
|
||||
|
||||
template<typename Elem, std::size_t N, typename Traits>
|
||||
inline SPROUT_CONSTEXPR sprout::uuids::uuid
|
||||
|
@ -113,6 +117,7 @@ namespace sprout {
|
|||
make_uuid3(sprout::uuids::uuid const& namespace_uuid, wchar_t const* name) {
|
||||
return sprout::uuids::md5_name_generator(namespace_uuid)(name);
|
||||
}
|
||||
#if SPROUT_USE_UNICODE_LITERALS
|
||||
inline SPROUT_CONSTEXPR sprout::uuids::uuid
|
||||
make_uuid3(sprout::uuids::uuid const& namespace_uuid, char16_t const* name) {
|
||||
return sprout::uuids::md5_name_generator(namespace_uuid)(name);
|
||||
|
@ -121,6 +126,7 @@ namespace sprout {
|
|||
make_uuid3(sprout::uuids::uuid const& namespace_uuid, char32_t const* name) {
|
||||
return sprout::uuids::md5_name_generator(namespace_uuid)(name);
|
||||
}
|
||||
#endif
|
||||
|
||||
inline SPROUT_CONSTEXPR sprout::uuids::md5_name_generator
|
||||
make_uuid3() {
|
||||
|
|
|
@ -67,12 +67,14 @@ namespace sprout {
|
|||
SPROUT_CONSTEXPR result_type operator()(wchar_t const* name) const {
|
||||
return sha_to_uuid(sum_.c_process_bytes(name, sprout::char_traits<wchar_t>::length(name)));
|
||||
}
|
||||
#if SPROUT_USE_UNICODE_LITERALS
|
||||
SPROUT_CONSTEXPR result_type operator()(char16_t const* name) const {
|
||||
return sha_to_uuid(sum_.c_process_bytes(name, sprout::char_traits<char16_t>::length(name)));
|
||||
}
|
||||
SPROUT_CONSTEXPR result_type operator()(char32_t const* name) const {
|
||||
return sha_to_uuid(sum_.c_process_bytes(name, sprout::char_traits<char32_t>::length(name)));
|
||||
}
|
||||
#endif
|
||||
};
|
||||
|
||||
//
|
||||
|
@ -91,6 +93,7 @@ namespace sprout {
|
|||
make_uuid5(wchar_t const* name) {
|
||||
return sprout::uuids::sha1_name_generator()(name);
|
||||
}
|
||||
#if SPROUT_USE_UNICODE_LITERALS
|
||||
inline SPROUT_CONSTEXPR sprout::uuids::uuid
|
||||
make_uuid5(char16_t const* name) {
|
||||
return sprout::uuids::sha1_name_generator()(name);
|
||||
|
@ -99,6 +102,7 @@ namespace sprout {
|
|||
make_uuid5(char32_t const* name) {
|
||||
return sprout::uuids::sha1_name_generator()(name);
|
||||
}
|
||||
#endif
|
||||
|
||||
template<typename Elem, std::size_t N, typename Traits>
|
||||
inline SPROUT_CONSTEXPR sprout::uuids::uuid
|
||||
|
@ -113,6 +117,7 @@ namespace sprout {
|
|||
make_uuid5(sprout::uuids::uuid const& namespace_uuid, wchar_t const* name) {
|
||||
return sprout::uuids::sha1_name_generator(namespace_uuid)(name);
|
||||
}
|
||||
#if SPROUT_USE_UNICODE_LITERALS
|
||||
inline SPROUT_CONSTEXPR sprout::uuids::uuid
|
||||
make_uuid5(sprout::uuids::uuid const& namespace_uuid, char16_t const* name) {
|
||||
return sprout::uuids::sha1_name_generator(namespace_uuid)(name);
|
||||
|
@ -121,6 +126,7 @@ namespace sprout {
|
|||
make_uuid5(sprout::uuids::uuid const& namespace_uuid, char32_t const* name) {
|
||||
return sprout::uuids::sha1_name_generator(namespace_uuid)(name);
|
||||
}
|
||||
#endif
|
||||
|
||||
inline SPROUT_CONSTEXPR sprout::uuids::sha1_name_generator
|
||||
make_uuid5() {
|
||||
|
|
|
@ -177,12 +177,14 @@ namespace sprout {
|
|||
SPROUT_CONSTEXPR result_type operator()(wchar_t const* s) const {
|
||||
return operator()(s, s + sprout::char_traits<wchar_t>::length(s));
|
||||
}
|
||||
#if SPROUT_USE_UNICODE_LITERALS
|
||||
SPROUT_CONSTEXPR result_type operator()(char16_t const* s) const {
|
||||
return operator()(s, s + sprout::char_traits<char16_t>::length(s));
|
||||
}
|
||||
SPROUT_CONSTEXPR result_type operator()(char32_t const* s) const {
|
||||
return operator()(s, s + sprout::char_traits<char32_t>::length(s));
|
||||
}
|
||||
#endif
|
||||
};
|
||||
|
||||
//
|
||||
|
@ -206,6 +208,7 @@ namespace sprout {
|
|||
make_uuid(wchar_t const* s) {
|
||||
return sprout::uuids::string_generator()(s);
|
||||
}
|
||||
#if SPROUT_USE_UNICODE_LITERALS
|
||||
inline SPROUT_CONSTEXPR sprout::uuids::uuid
|
||||
make_uuid(char16_t const* s) {
|
||||
return sprout::uuids::string_generator()(s);
|
||||
|
@ -214,6 +217,7 @@ namespace sprout {
|
|||
make_uuid(char32_t const* s) {
|
||||
return sprout::uuids::string_generator()(s);
|
||||
}
|
||||
#endif
|
||||
} // namespace uuids
|
||||
} // namespace sprout
|
||||
|
||||
|
|
|
@ -72,6 +72,7 @@ namespace sprout {
|
|||
operator"" _uuid(wchar_t const* s, std::size_t size) {
|
||||
return sprout::uuids::make_uuid(s, s + size);
|
||||
}
|
||||
#if SPROUT_USE_UNICODE_LITERALS
|
||||
inline SPROUT_CONSTEXPR sprout::uuids::uuid
|
||||
operator"" _uuid(char16_t const* s, std::size_t size) {
|
||||
return sprout::uuids::make_uuid(s, s + size);
|
||||
|
@ -80,6 +81,7 @@ namespace sprout {
|
|||
operator"" _uuid(char32_t const* s, std::size_t size) {
|
||||
return sprout::uuids::make_uuid(s, s + size);
|
||||
}
|
||||
#endif
|
||||
|
||||
//
|
||||
// _uuid3
|
||||
|
@ -92,6 +94,7 @@ namespace sprout {
|
|||
operator"" _uuid3(wchar_t const* s, std::size_t size) {
|
||||
return sprout::uuids::detail::uuid3_impl(sprout::range::make_ptr_range(s, size));
|
||||
}
|
||||
#if SPROUT_USE_UNICODE_LITERALS
|
||||
inline SPROUT_CONSTEXPR sprout::uuids::md5_name_generator
|
||||
operator"" _uuid3(char16_t const* s, std::size_t size) {
|
||||
return sprout::uuids::detail::uuid3_impl(sprout::range::make_ptr_range(s, size));
|
||||
|
@ -100,6 +103,7 @@ namespace sprout {
|
|||
operator"" _uuid3(char32_t const* s, std::size_t size) {
|
||||
return sprout::uuids::detail::uuid3_impl(sprout::range::make_ptr_range(s, size));
|
||||
}
|
||||
#endif
|
||||
|
||||
//
|
||||
// _uuid5
|
||||
|
@ -112,6 +116,7 @@ namespace sprout {
|
|||
operator"" _uuid5(wchar_t const* s, std::size_t size) {
|
||||
return sprout::uuids::detail::uuid5_impl(sprout::range::make_ptr_range(s, size));
|
||||
}
|
||||
#if SPROUT_USE_UNICODE_LITERALS
|
||||
inline SPROUT_CONSTEXPR sprout::uuids::sha1_name_generator
|
||||
operator"" _uuid5(char16_t const* s, std::size_t size) {
|
||||
return sprout::uuids::detail::uuid5_impl(sprout::range::make_ptr_range(s, size));
|
||||
|
@ -120,6 +125,7 @@ namespace sprout {
|
|||
operator"" _uuid5(char32_t const* s, std::size_t size) {
|
||||
return sprout::uuids::detail::uuid5_impl(sprout::range::make_ptr_range(s, size));
|
||||
}
|
||||
#endif
|
||||
} // namespace udl
|
||||
|
||||
using sprout::uuids::udl::operator"" _uuid;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue