From a3379c62a69b58cba7b164648ef764ef7fd4e923 Mon Sep 17 00:00:00 2001 From: Max Kahnt <max.kahnt@fu-berlin.de> Date: Wed, 25 Mar 2015 17:33:43 +0100 Subject: [PATCH] Fix NumProc::VerbosityMode enum parser. --- dune/solvers/common/numproc.hh | 25 +++++++++++-------------- 1 file changed, 11 insertions(+), 14 deletions(-) diff --git a/dune/solvers/common/numproc.hh b/dune/solvers/common/numproc.hh index a2e105f7..6f0dc06e 100644 --- a/dune/solvers/common/numproc.hh +++ b/dune/solvers/common/numproc.hh @@ -32,21 +32,18 @@ class SolverError : public Dune::Exception {}; std::istream& operator>>(std::istream &lhs, NumProc::VerbosityMode &e) { - try { - std::string s; - lhs >> s; - - if (s == "full" || s == "2") - e = NumProc::FULL; - if (s == "reduced" || s == "1") - e = NumProc::REDUCED; - if (s == "quiet" || s == "0") - e = NumProc::QUIET; - - DUNE_THROW(Dune::Exception, "Failed to parse value for enum NumProc::VerbosityMode."); - } catch (typename Dune::Exception) { + std::string s; + lhs >> s; + + if (s == "full" || s == "2") + e = NumProc::FULL; + else if (s == "reduced" || s == "1") + e = NumProc::REDUCED; + else if (s == "quiet" || s == "0") + e = NumProc::QUIET; + else lhs.setstate(std::ios_base::failbit); - } + return lhs; } -- GitLab