Newer
Older
#include "mtx/events/canonical_alias.hpp"
using json = nlohmann::json;
namespace mtx {
namespace events {
namespace state {
void
from_json(const json &obj, CanonicalAlias &canonical_alias)
{
if (obj.find("alias") != obj.end() && !obj.at("alias").is_null())
canonical_alias.alias = obj.at("alias").get<std::string>();
if (obj.contains("alt_aliases") && obj.at("alt_aliases").is_array())
canonical_alias.alt_aliases =
obj.at("alt_aliases").get<decltype(canonical_alias.alt_aliases)>();
}
void
to_json(json &obj, const CanonicalAlias &canonical_alias)
{
if (!canonical_alias.alias.empty())
obj["alias"] = canonical_alias.alias;
if (!canonical_alias.alt_aliases.empty())
obj["alt_aliases"] = canonical_alias.alt_aliases;
}
} // namespace state
} // namespace events
} // namespace mtx