aboutsummaryrefslogtreecommitdiff
path: root/mod/mod-ci-github-gq.cxx
diff options
context:
space:
mode:
authorFrancois Kritzinger <francois@codesynthesis.com>2024-12-02 13:36:45 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2024-12-10 16:44:55 +0200
commitc05051582afa6d778edf544bf8ccd9392ef64bb0 (patch)
treeb3a3536f19c738071141d01791e06659e9213254 /mod/mod-ci-github-gq.cxx
parent3871a466fa21ed7ecb6a7b1d1d5ef4d14b736a48 (diff)
Handle replaced tenants and clean up code/comments
Diffstat (limited to 'mod/mod-ci-github-gq.cxx')
-rw-r--r--mod/mod-ci-github-gq.cxx26
1 files changed, 17 insertions, 9 deletions
diff --git a/mod/mod-ci-github-gq.cxx b/mod/mod-ci-github-gq.cxx
index 7b7e464..774eeed 100644
--- a/mod/mod-ci-github-gq.cxx
+++ b/mod/mod-ci-github-gq.cxx
@@ -17,9 +17,11 @@ namespace brep
// bottom).
//
static const string& gq_name (const string&);
+ static string gq_name (string&&);
static string gq_str (const string&);
static string gq_bool (bool);
static const string& gq_enum (const string&);
+ static string gq_enum (string&&);
[[noreturn]] static void
throw_json (json::parser& p, const string& m)
@@ -273,11 +275,6 @@ namespace brep
// Note that GitHub won't allow us to change a built check run to
// any other state (but all other transitions are allowed).
//
- // @@ Are we handling the case where the resulting state (built)
- // differs from what we expect?
- //
- // @@@ Does built-to-built transition updates status?
- //
if (rst != st && rst != build_state::built)
{
error << "unexpected check_run status: received '" << rcr.status
@@ -830,8 +827,6 @@ namespace brep
//
// Return the name or throw invalid_argument if it is invalid.
//
- // @@ TODO: dangerous API.
- //
static const string&
gq_name (const string& v)
{
@@ -850,6 +845,13 @@ namespace brep
return v;
}
+ static string
+ gq_name (string&& v)
+ {
+ gq_name (v);
+ return move (v);
+ }
+
// Serialize a string to GraphQL.
//
// Return the serialized string or throw invalid_argument if the string is
@@ -904,8 +906,6 @@ namespace brep
//
// Return the enum value or throw invalid_argument if it is invalid.
//
- // @@ TODO: dangerous API.
- //
static const string&
gq_enum (const string& v)
{
@@ -914,4 +914,12 @@ namespace brep
return gq_name (v);
}
+
+ static string
+ gq_enum (string&& v)
+ {
+ gq_enum (v);
+ return move (v);
+ }
+
}