Add support for union leafs
Change-Id: Ifc1a53eed2c059f6fe5d75544ecaa3e63028f78f
diff --git a/src/utils.cpp b/src/utils.cpp
index 719f28b..31854b2 100644
--- a/src/utils.cpp
+++ b/src/utils.cpp
@@ -5,6 +5,7 @@
* Written by Václav Kubernát <kubervac@fit.cvut.cz>
*
*/
+#include <experimental/iterator>
#include <sstream>
#include "completion.hpp"
#include "utils.hpp"
@@ -113,6 +114,14 @@
{
return "a leafref";
}
+ std::string operator()(const yang::Union& type)
+ {
+ std::ostringstream ss;
+ std::transform(type.m_unionTypes.begin(), type.m_unionTypes.end(), std::experimental::make_ostream_joiner(ss, ", "), [this](const auto& unionType) {
+ return std::visit(*this, unionType);
+ });
+ return ss.str();
+ }
};
std::string leafDataTypeToString(const yang::LeafDataType& type)