From 3f3cb8c3136686c87da598cd0c6f2a8784a4e593 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B8rgen=20Kvalsvik?= Date: Tue, 5 Apr 2016 23:08:42 +0200 Subject: [PATCH] validDeckName uses all_of Favours std::algorithm over hand-written loop. --- opm/parser/eclipse/Parser/ParserKeyword.cpp | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/opm/parser/eclipse/Parser/ParserKeyword.cpp b/opm/parser/eclipse/Parser/ParserKeyword.cpp index 67124c398..27e3d1741 100644 --- a/opm/parser/eclipse/Parser/ParserKeyword.cpp +++ b/opm/parser/eclipse/Parser/ParserKeyword.cpp @@ -248,17 +248,11 @@ namespace Opm { if (!validNameStart(upperCaseName)) return false; - for (size_t i = 1; i < upperCaseName.length(); i++) { - char c = upperCaseName[i]; - if (!isalnum(c) && - c != '-' && - c != '_' && - c != '+') - { - return false; - } - } - return true; + const auto valid = []( char c ) { + return std::isalnum( c ) || c == '-' || c == '_' || c == '+'; + }; + + return std::all_of( name.begin() + 1, name.end(), valid ); } bool ParserKeyword::hasMultipleDeckNames() const {