This commit is contained in:
2026-08-07 17:22:08 +03:00
parent 176022d490
commit 60dbba7a5f

View File

@@ -50,6 +50,11 @@ public:
return std::ranges::equal(this->_key, ADCLIB_NETMSG_KEYWORD_ACK);
}
bool isERR() const
{
return std::ranges::equal(this->_key, ADCLIB_NETMSG_KEYWORD_ERR);
}
bool isCMD() const
{
return std::ranges::equal(this->_key, ADCLIB_NETMSG_KEYWORD_CMD);
@@ -74,20 +79,34 @@ public:
error_t createERR(error_t err)
{
return this->setKey(ADCLIB_NETMSG_KEYWORD_ERR, err.value());
return this->setKeyValue(ADCLIB_NETMSG_KEYWORD_ERR, err.value());
}
template <snplib::snplib_serializable_c ATTR_NAME_T, snplib::snplib_serializable_c ValueT>
error_t createSET(ATTR_NAME_T&& attr_name, ValueT&& value)
template <snplib::snplib_serializable_c ATTR_NAME_T, typename... ArgTs>
requires(sizeof...(ArgTs) > 0)
error_t createSET(ATTR_NAME_T&& attr_name, ArgTs&&... args)
{
return this->setKeyValue(ADCLIB_NETMSG_KEYWORD_SET, std::forward<ATTR_NAME_T>(attr_name),
std::forward<ValueT>(value));
auto err = this->setKeyValue(ADCLIB_NETMSG_KEYWORD_SET, std::forward<ATTR_NAME_T>(attr_name));
if (err) {
return err;
}
return this->appendValue(std::forward<ArgTs>(args)...);
}
template <snplib::snplib_serializable_c ATTR_NAME_T>
error_t createGET(ATTR_NAME_T&& attr_name)
template <snplib::snplib_serializable_c ATTR_NAME_T, typename... ArgTs>
error_t createGET(ATTR_NAME_T&& attr_name, ArgTs&&... args)
{
return this->setKeyValue(ADCLIB_NETMSG_KEYWORD_GET, std::forward<ATTR_NAME_T>(attr_name));
auto err = this->setKeyValue(ADCLIB_NETMSG_KEYWORD_GET, std::forward<ATTR_NAME_T>(attr_name));
if (err) {
return err;
}
if constexpr (sizeof...(ArgTs)) {
return this->appendValue(std::forward<ArgTs>(args)...);
}
return {};
}
template <snplib::snplib_serializable_c CMD_NAME_T>