Sprout/sprout/uuid/udl.hpp

45 lines
1.2 KiB
C++
Raw Normal View History

#ifndef SPROUT_UUID_UDL_HPP
#define SPROUT_UUID_UDL_HPP
#include <sprout/config.hpp>
#include <sprout/uuid/uuid.hpp>
#if SPROUT_USE_USER_DEFINED_LITERALS
#include <cstddef>
#include <sprout/uuid/string_generator.hpp>
namespace sprout {
namespace uuids {
namespace udl {
//
// _uuid
//
2012-10-05 15:58:56 +00:00
inline SPROUT_CONSTEXPR sprout::uuids::uuid
operator "" _uuid(char const* s, std::size_t size) {
2012-03-19 05:16:33 +00:00
return sprout::uuids::string_generator()(s, s + size);
}
2012-10-05 15:58:56 +00:00
inline SPROUT_CONSTEXPR sprout::uuids::uuid
operator "" _uuid(wchar_t const* s, std::size_t size) {
2012-03-19 05:16:33 +00:00
return sprout::uuids::string_generator()(s, s + size);
}
2012-10-05 15:58:56 +00:00
inline SPROUT_CONSTEXPR sprout::uuids::uuid
operator "" _uuid(char16_t const* s, std::size_t size) {
2012-03-19 05:16:33 +00:00
return sprout::uuids::string_generator()(s, s + size);
}
2012-10-05 15:58:56 +00:00
inline SPROUT_CONSTEXPR sprout::uuids::uuid
operator "" _uuid(char32_t const* s, std::size_t size) {
2012-03-19 05:16:33 +00:00
return sprout::uuids::string_generator()(s, s + size);
}
} // namespace uuids
using sprout::uuids::udl::operator "" _uuid;
} // namespace udl
using sprout::uuids::udl::operator "" _uuid;
} // namespace sprout
#endif // #if SPROUT_USE_USER_DEFINED_LITERALS
#endif // #ifndef SPROUT_UUID_UDL_HPP