Added utility functions getAllProperties and unpackProperties
Tested:
- Added example to verify that functions work correctly
- Added new unit tests that are passing
- All other tests are still passing after this change
- Added handling of new type (std::monostate) which can
be used as first type in variant to represent that none
of the other types was matched
Change-Id: Ic8e7c8d3116d64b94be37147ae8a80ebb5d3811d
Signed-off-by: Krzysztof Grobelny <krzysztof.grobelny@intel.com>
diff --git a/src/exception.cpp b/src/exception.cpp
index c13c5dd..17a988d 100644
--- a/src/exception.cpp
+++ b/src/exception.cpp
@@ -120,5 +120,26 @@
return errWhat;
}
+UnpackPropertyError::UnpackPropertyError(std::string_view propertyName,
+ std::string_view reason) :
+ propertyName(propertyName),
+ reason(reason)
+{}
+
+const char* UnpackPropertyError::name() const noexcept
+{
+ return errName;
+}
+
+const char* UnpackPropertyError::description() const noexcept
+{
+ return errDesc;
+}
+
+const char* UnpackPropertyError::what() const noexcept
+{
+ return errWhat;
+}
+
} // namespace exception
} // namespace sdbusplus