diff --git a/include/ircd/json/value.h b/include/ircd/json/value.h index 02121b8c1..29fb37b6c 100644 --- a/include/ircd/json/value.h +++ b/include/ircd/json/value.h @@ -142,7 +142,9 @@ namespace ircd::json template<> value::value(const uint64_t &integer); template<> value::value(const int64_t &integer); template<> value::value(const float &floating); + template<> value::value(const uint32_t &integer); template<> value::value(const int32_t &integer); + template<> value::value(const uint16_t &integer); template<> value::value(const int16_t &integer); template<> value::value(const bool &boolean); template<> value::value(const std::string &str); @@ -309,11 +311,21 @@ ircd::json::value::value(const int32_t &integer) :value{int64_t(integer)} {} +template<> inline +ircd::json::value::value(const uint32_t &integer) +:value{int64_t(integer)} +{} + template<> inline ircd::json::value::value(const int16_t &integer) :value{int64_t(integer)} {} +template<> inline +ircd::json::value::value(const uint16_t &integer) +:value{int64_t(integer)} +{} + inline ircd::json::value::value(value &&other) noexcept