Make prefixes optional in listInstanceToString
For libyang, I need a version without prefixes. Side note: the call in
SysrepoAccess would also work without the prefixes, but I'm going to
leave them, so that the functionality doesn't change.
Change-Id: I0c309288ec39ec3f5e835050fb73a5238ebe8e33
diff --git a/src/utils.cpp b/src/utils.cpp
index cf789b7..e151417 100644
--- a/src/utils.cpp
+++ b/src/utils.cpp
@@ -243,12 +243,13 @@
return res;
}
-std::string instanceToString(const std::string& modName, const ListInstance& instance)
+std::string instanceToString(const ListInstance& instance, const std::optional<std::string>& modName)
{
std::string instanceStr;
+ auto modulePrefix = modName ? *modName + ":" : "";
for (const auto& [key, value] : instance) {
using namespace std::string_literals;
- instanceStr += "[" + modName + ":" + key + "=" + escapeListKeyString(leafDataToString(value)) + "]";
+ instanceStr += "[" + modulePrefix + key + "=" + escapeListKeyString(leafDataToString(value)) + "]";
}
return instanceStr;
}