#include "errors.hpp" #include namespace errors { using namespace std::literals::string_literals; InvalidArgument::InvalidArgument(std::string_view propertyNameArg) : propertyName(propertyNameArg), errWhatDetailed("Invalid argument was given for property: "s + description()) {} InvalidArgument::InvalidArgument(std::string_view propertyNameArg, std::string_view info) : propertyName(propertyNameArg), errWhatDetailed( ("Invalid argument was given for property: "s + description() + ". "s) .append(info)) {} const char* InvalidArgument::name() const noexcept { return "org.freedesktop.DBus.Error.InvalidArgs"; } const char* InvalidArgument::description() const noexcept { return propertyName.c_str(); } const char* InvalidArgument::what() const noexcept { return errWhatDetailed.c_str(); } int InvalidArgument::get_errno() const noexcept { return static_cast(std::errc::invalid_argument); } } // namespace errors