0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-11-17 07:20:55 +01:00

ircd::json::property: Fix mistreatment of class template as universal reference.

This commit is contained in:
Jason Volk 2022-06-24 11:41:05 -07:00
parent ffcb4de0e8
commit bcbcfba6e8

View file

@ -38,27 +38,9 @@ struct ircd::json::property
constexpr operator const T &() const; constexpr operator const T &() const;
constexpr operator T &(); constexpr operator T &();
property() = default; constexpr property() = default;
constexpr property(T&& value);
constexpr property &operator=(T&& value);
}; };
template<const char *const &name,
class T>
constexpr
ircd::json::property<name, T>::property(T&& value)
:value{std::forward<T>(value)}
{}
template<const char *const &name,
class T>
constexpr ircd::json::property<name, T> &
ircd::json::property<name, T>::operator=(T&& value)
{
this->value = std::forward<T>(value);
return *this;
}
template<const char *const &name, template<const char *const &name,
class T> class T>
constexpr ircd::json::property<name, T>::operator constexpr ircd::json::property<name, T>::operator