From a5d95afb96eb9a3b65d82f5f84bf8e4a4fb4c8ac Mon Sep 17 00:00:00 2001 From: Rutger Broekhoff Date: Fri, 28 Aug 2026 21:12:55 +0200 Subject: clang-format C++ sources --- server/src/problem.cppm | 87 ++++++++++++++++++++++++++++--------------------- 1 file changed, 49 insertions(+), 38 deletions(-) (limited to 'server/src/problem.cppm') diff --git a/server/src/problem.cppm b/server/src/problem.cppm index 8764962..a124312 100644 --- a/server/src/problem.cppm +++ b/server/src/problem.cppm @@ -14,47 +14,58 @@ namespace json = boost::json; namespace routemon::problem { - export struct details { - http::status status; - blocale::message title; - std::string_view type_uri; - std::optional detail = std::nullopt; - std::optional instance = std::nullopt; - - auto set_detail(blocale::message detail) -> details& { - this->detail = detail; - return *this; - } - - auto set_instance(std::string&& instance) -> details& { - this->instance = instance; - return *this; - } - auto set_instance(std::string_view instance) -> details& { - this->instance = std::string{instance}; - return *this; - } - }; +export struct details +{ + http::status status; + blocale::message title; + std::string_view type_uri; + std::optional detail = std::nullopt; + std::optional instance = std::nullopt; - export auto tag_invoke(json::value_from_tag, json::value& jv, details const& details, std::locale locale) -> void { - auto obj = json::object{ - {"type", details.type_uri}, - {"title", details.title.str(locale)}, - {"status", static_cast(details.status)}, - }; - if (details.detail) obj["detail"] = details.detail->str(locale); - if (details.instance) obj["instance"] = *details.instance; - jv = obj; + auto set_detail(blocale::message detail) -> details& + { + this->detail = detail; + return *this; } - export struct tpl { - http::status status; - blocale::message title; - std::string_view type_uri; + auto set_instance(std::string&& instance) -> details& + { + this->instance = instance; + return *this; + } + auto set_instance(std::string_view instance) -> details& + { + this->instance = std::string{instance}; + return *this; + } +}; - auto instantiate() const -> details { - return details{status, title, type_uri}; - } +export auto tag_invoke( + json::value_from_tag, json::value& jv, details const& details, + std::locale locale) -> void +{ + auto obj = json::object{ + {"type", details.type_uri}, + {"title", details.title.str(locale)}, + {"status", static_cast(details.status)}, }; - + if (details.detail) + obj["detail"] = details.detail->str(locale); + if (details.instance) + obj["instance"] = *details.instance; + jv = obj; } + +export struct tpl +{ + http::status status; + blocale::message title; + std::string_view type_uri; + + auto instantiate() const -> details + { + return details{status, title, type_uri}; + } +}; + +} // namespace routemon::problem -- cgit v1.3