common: uuid: add `uuid_to_str` which returns an std::string
authorJérémie Galarneau <jeremie.galarneau@efficios.com>
Thu, 2 Jun 2022 15:00:40 +0000 (11:00 -0400)
committerJérémie Galarneau <jeremie.galarneau@efficios.com>
Mon, 13 Jun 2022 20:34:47 +0000 (16:34 -0400)
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
Change-Id: Id915ba7dbe8128d492d92faa05bbf12770a49f8d

src/common/uuid.cpp
src/common/uuid.hpp

index a820a8a4191defbef75ae63c2085540f8f5dfcae..d4f0fb2bf1a748d6c9d087bbe83920702f5f430d 100644 (file)
@@ -26,6 +26,18 @@ void lttng_uuid_to_str(const lttng_uuid& uuid, char *uuid_str)
        sprintf(uuid_str, LTTNG_UUID_FMT, LTTNG_UUID_FMT_VALUES(uuid));
 }
 
+std::string lttng::utils::uuid_to_str(const lttng_uuid& uuid)
+{
+       std::string uuid_str(LTTNG_UUID_STR_LEN, '\0');
+
+       ::lttng_uuid_to_str(uuid, &uuid_str[0]);
+
+       /* Don't include '\0' in the C++ string. */
+       uuid_str.resize(uuid_str.size() - 1);
+
+       return uuid_str;
+}
+
 int lttng_uuid_from_str(const char *str_in, lttng_uuid& uuid_out)
 {
        int ret = 0;
index 0cd3966becc6f91dd38b63721fe4306794624e68..586c2ad67c06fcdaac63c39759dee0e95ae8a7d6 100644 (file)
@@ -13,6 +13,7 @@
 #include <stdint.h>
 #include <inttypes.h>
 #include <array>
+#include <string>
 
 /*
  * Includes final \0.
@@ -49,6 +50,12 @@ int lttng_uuid_from_str(const char *str_in, lttng_uuid& uuid_out);
  */
 void lttng_uuid_to_str(const lttng_uuid& uuid, char *uuid_str);
 
+namespace lttng {
+namespace utils {
+std::string uuid_to_str(const lttng_uuid& uuid);
+} /* namespace utils */
+} /* namespace lttng */
+
 bool lttng_uuid_is_equal(const lttng_uuid& a, const lttng_uuid& b);
 
 bool lttng_uuid_is_nil(const lttng_uuid& uuid);
This page took 0.027921 seconds and 4 git commands to generate.