cmMakefile::FormatListFileStack: Refactor "manual" loop into algorithms

This commit is contained in:
Alex Turbov
2024-07-01 20:48:32 +04:00
committed by Brad King
parent 2e16b58b7c
commit 206961bc60

View File

@@ -4265,20 +4265,14 @@ std::string cmMakefile::FormatListFileStack() const
return {};
}
std::reverse(listFiles.begin(), listFiles.end());
std::ostringstream tmp;
size_t depth = listFiles.size();
auto it = listFiles.end();
do {
if (depth != listFiles.size()) {
tmp << "\n ";
}
--it;
tmp << '[' << depth << "]\t" << *it;
depth--;
} while (it != listFiles.begin());
auto depth = 1;
std::transform(listFiles.begin(), listFiles.end(), listFiles.begin(),
[&depth](const std::string& file) {
return cmStrCat('[', depth++, "]\t", file);
});
return tmp.str();
return cmJoinStrings(cmMakeRange(listFiles.rbegin(), listFiles.rend()),
"\n "_s, {});
}
void cmMakefile::PushScope()