From e4ac0fcd9680598c546fa75357c50dd9b3248f46 Mon Sep 17 00:00:00 2001 From: Shikhar Vashistha Date: Fri, 22 Oct 2021 03:00:58 +0000 Subject: [PATCH] Declared severityFromString function --- liblangutil/Exceptions.cpp | 10 +++++++--- liblangutil/Exceptions.h | 2 ++ 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/liblangutil/Exceptions.cpp b/liblangutil/Exceptions.cpp index ef49249a3..02dbdb3a5 100644 --- a/liblangutil/Exceptions.cpp +++ b/liblangutil/Exceptions.cpp @@ -72,13 +72,17 @@ Error::Error( *this << util::errinfo_comment(_description); } -static std::optional severityFromString(std::string _severity) +static optional severityFromString(string _severity) { boost::algorithm::to_lower(_severity); _severity = boost::algorithm::trim_copy(_severity); - _severity[0] = toupper(_severity[0]); + if (_severity == formatErrorSeverityLowercase(Severity::Error)) { return Severity::Error; } - return std::make_optional(_severity).has_value() ? std::optional(_severity) : std::nullopt; + else if (_severity == formatErrorSeverityLowercase(Severity::Warning)) { return Severity::Warning; } + + else if (_severity == formatErrorSeverityLowercase(Severity::Info)) { return Severity::Info; } + + else return std::make_optional(_severity).has_value() ? std::optional(_severity) : std::nullopt; } \ No newline at end of file diff --git a/liblangutil/Exceptions.h b/liblangutil/Exceptions.h index 69a098d52..3ed8c8b2e 100644 --- a/liblangutil/Exceptions.h +++ b/liblangutil/Exceptions.h @@ -205,6 +205,8 @@ public: return nullptr; } + static std::optional severityFromString(std::string _severity); + static Severity errorSeverity(Type _type) { if (_type == Type::Info)