summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlex Turbov <i.zaufi@gmail.com>2021-07-26 19:12:51 (GMT)
committerBrad King <brad.king@kitware.com>2021-08-03 14:55:46 (GMT)
commitcc6cdacc1860ab14a2980332626b0de826f1eb2b (patch)
treea6b8e213420546c6f36ed415613c85095cf7b8f6
parente3c1dbe18b41752f9e042c6a42170887af6af651 (diff)
downloadCMake-cc6cdacc1860ab14a2980332626b0de826f1eb2b.zip
CMake-cc6cdacc1860ab14a2980332626b0de826f1eb2b.tar.gz
CMake-cc6cdacc1860ab14a2980332626b0de826f1eb2b.tar.bz2
Refactor: Simplify boolean to string result assignments
-rw-r--r--Source/cmConditionEvaluator.cxx9
1 files changed, 4 insertions, 5 deletions
diff --git a/Source/cmConditionEvaluator.cxx b/Source/cmConditionEvaluator.cxx
index 3673200..ad2ba3f 100644
--- a/Source/cmConditionEvaluator.cxx
+++ b/Source/cmConditionEvaluator.cxx
@@ -8,6 +8,7 @@
#include <functional>
#include <iterator>
#include <sstream>
+#include <string>
#include <utility>
#include <cm/string_view>
@@ -57,8 +58,6 @@ auto const keyVERSION_GREATER_EQUAL = "VERSION_GREATER_EQUAL"_s;
auto const keyVERSION_LESS = "VERSION_LESS"_s;
auto const keyVERSION_LESS_EQUAL = "VERSION_LESS_EQUAL"_s;
-std::array<const char* const, 2> const ZERO_ONE_XLAT = { "0", "1" };
-
void IncrementArguments(cmConditionEvaluator::cmArgumentList& newArgs,
cmConditionEvaluator::cmArgumentList::iterator& argP1)
{
@@ -83,7 +82,7 @@ void HandlePredicate(const bool value,
cmConditionEvaluator::cmArgumentList& newArgs,
cmConditionEvaluator::cmArgumentList::iterator& argP1)
{
- *arg = cmExpandedCommandArgument(ZERO_ONE_XLAT[value], true);
+ *arg = cmExpandedCommandArgument(std::to_string(int(value)), true);
newArgs.erase(argP1);
argP1 = arg;
IncrementArguments(newArgs, argP1);
@@ -95,7 +94,7 @@ void HandleBinaryOp(const bool value,
cmConditionEvaluator::cmArgumentList::iterator& argP1,
cmConditionEvaluator::cmArgumentList::iterator& argP2)
{
- *arg = cmExpandedCommandArgument(ZERO_ONE_XLAT[value], true);
+ *arg = cmExpandedCommandArgument(std::to_string(int(value)), true);
newArgs.erase(argP2);
newArgs.erase(argP1);
argP1 = arg;
@@ -383,7 +382,7 @@ bool cmConditionEvaluator::HandleLevel0(cmArgumentList& newArgs,
// now recursively invoke IsTrue to handle the values inside the
// parenthetical expression
const auto value = this->IsTrue(newArgs2, errorString, status);
- *arg = cmExpandedCommandArgument(ZERO_ONE_XLAT[value], true);
+ *arg = cmExpandedCommandArgument(std::to_string(int(value)), true);
argP1 = std::next(arg);
// remove the now evaluated parenthetical expression
newArgs.erase(argP1, argClose);