Replace boost string predicate functions with stdlib ones
Now that we're on C++20 we no longer need boost for starts_with() and
ends_with() tests.
Also remove the predicate.hpp #include from files that weren't actually
using anything from it.
Signed-off-by: Zev Weiss <zev@bewilderbeest.net>
Change-Id: Id68a019d5108a4646eb9b5fd18af33d60617e048
diff --git a/src/ADCSensor.cpp b/src/ADCSensor.cpp
index 2a42999..4d47762 100644
--- a/src/ADCSensor.cpp
+++ b/src/ADCSensor.cpp
@@ -17,7 +17,6 @@
#include <unistd.h>
#include <ADCSensor.hpp>
-#include <boost/algorithm/string/predicate.hpp>
#include <boost/asio/read_until.hpp>
#include <boost/date_time/posix_time/posix_time.hpp>
#include <sdbusplus/asio/connection.hpp>
diff --git a/src/ADCSensorMain.cpp b/src/ADCSensorMain.cpp
index 019226f..3669330 100644
--- a/src/ADCSensorMain.cpp
+++ b/src/ADCSensorMain.cpp
@@ -18,7 +18,6 @@
#include <Utils.hpp>
#include <VariantVisitors.hpp>
#include <boost/algorithm/string/case_conv.hpp>
-#include <boost/algorithm/string/predicate.hpp>
#include <boost/algorithm/string/replace.hpp>
#include <boost/container/flat_set.hpp>
#include <sdbusplus/asio/connection.hpp>
@@ -185,7 +184,7 @@
it != sensorsChanged->end(); it++)
{
if (findSensor->second &&
- boost::ends_with(*it, findSensor->second->name))
+ it->ends_with(findSensor->second->name))
{
sensorsChanged->erase(it);
findSensor->second = nullptr;
diff --git a/src/ExitAirTempSensor.cpp b/src/ExitAirTempSensor.cpp
index 1e0f45f..ea5a432 100644
--- a/src/ExitAirTempSensor.cpp
+++ b/src/ExitAirTempSensor.cpp
@@ -17,7 +17,6 @@
#include <ExitAirTempSensor.hpp>
#include <Utils.hpp>
#include <VariantVisitors.hpp>
-#include <boost/algorithm/string/predicate.hpp>
#include <boost/algorithm/string/replace.hpp>
#include <boost/container/flat_map.hpp>
#include <sdbusplus/asio/connection.hpp>
@@ -406,12 +405,11 @@
{
auto findReading = std::find_if(
- tachReadings.begin(), tachReadings.end(), [&](const auto& item) {
- return boost::ends_with(item.first, tachName);
- });
+ tachReadings.begin(), tachReadings.end(),
+ [&](const auto& item) { return item.first.ends_with(tachName); });
auto findRange = std::find_if(tachRanges.begin(), tachRanges.end(),
[&](const auto& item) {
- return boost::ends_with(item.first, tachName);
+ return item.first.ends_with(tachName);
});
if (findReading == tachReadings.end())
{
@@ -551,7 +549,7 @@
{
std::string path = message.get_path();
if (path.find("PS") != std::string::npos &&
- boost::ends_with(path, "Input_Power"))
+ path.ends_with("Input_Power"))
{
self->powerReadings[message.get_path()] = value;
}
@@ -602,8 +600,8 @@
continue;
}
std::string sensorName = path.substr(lastSlash + 1);
- if (boost::starts_with(sensorName, "PS") &&
- boost::ends_with(sensorName, "Input_Power"))
+ if (sensorName.starts_with("PS") &&
+ sensorName.ends_with("Input_Power"))
{
// lambda capture requires a proper variable (not a structured
// binding)
diff --git a/src/ExternalSensor.cpp b/src/ExternalSensor.cpp
index cc9e7c5..3a6c4aa 100644
--- a/src/ExternalSensor.cpp
+++ b/src/ExternalSensor.cpp
@@ -4,7 +4,6 @@
#include <unistd.h>
-#include <boost/algorithm/string/predicate.hpp>
#include <boost/date_time/posix_time/posix_time.hpp>
#include <sdbusplus/asio/connection.hpp>
#include <sdbusplus/asio/object_server.hpp>
diff --git a/src/ExternalSensorMain.cpp b/src/ExternalSensorMain.cpp
index 413a112..e04fc78 100644
--- a/src/ExternalSensorMain.cpp
+++ b/src/ExternalSensorMain.cpp
@@ -2,7 +2,6 @@
#include "Utils.hpp"
#include "VariantVisitors.hpp"
-#include <boost/algorithm/string/predicate.hpp>
#include <boost/algorithm/string/replace.hpp>
#include <boost/container/flat_map.hpp>
#include <boost/container/flat_set.hpp>
@@ -281,7 +280,7 @@
{
std::string suffixIt = "/";
suffixIt += *it;
- if (boost::ends_with(suffixIt, suffixName))
+ if (suffixIt.ends_with(suffixName))
{
sensorsChanged->erase(it);
findSensor->second = nullptr;
diff --git a/src/FanMain.cpp b/src/FanMain.cpp
index b52abd9..6732575 100644
--- a/src/FanMain.cpp
+++ b/src/FanMain.cpp
@@ -18,7 +18,6 @@
#include <TachSensor.hpp>
#include <Utils.hpp>
#include <VariantVisitors.hpp>
-#include <boost/algorithm/string/predicate.hpp>
#include <boost/algorithm/string/replace.hpp>
#include <boost/container/flat_map.hpp>
#include <boost/container/flat_set.hpp>
@@ -68,12 +67,12 @@
{
fs::path linkPath = parentPath / "device";
std::string canonical = fs::read_symlink(linkPath);
- if (boost::ends_with(canonical, "pwm-tacho-controller") ||
- boost::ends_with(canonical, "pwm_tach:tach"))
+ if (canonical.ends_with("pwm-tacho-controller") ||
+ canonical.ends_with("pwm_tach:tach"))
{
return FanTypes::aspeed;
}
- if (boost::ends_with(canonical, "pwm-fan-controller"))
+ if (canonical.ends_with("pwm-fan-controller"))
{
return FanTypes::nuvoton;
}
@@ -344,7 +343,7 @@
for (auto it = sensorsChanged->begin();
it != sensorsChanged->end(); it++)
{
- if (boost::ends_with(*it, findSensor->second->name))
+ if (it->ends_with(findSensor->second->name))
{
sensorsChanged->erase(it);
findSensor->second = nullptr;
diff --git a/src/HwmonTempMain.cpp b/src/HwmonTempMain.cpp
index 47f2f07..1431508 100644
--- a/src/HwmonTempMain.cpp
+++ b/src/HwmonTempMain.cpp
@@ -16,7 +16,6 @@
#include <HwmonTempSensor.hpp>
#include <Utils.hpp>
-#include <boost/algorithm/string/predicate.hpp>
#include <boost/algorithm/string/replace.hpp>
#include <boost/container/flat_map.hpp>
#include <boost/container/flat_set.hpp>
@@ -359,7 +358,7 @@
auto it = sensorsChanged->begin();
while (it != sensorsChanged->end())
{
- if (boost::ends_with(*it, findSensor->second->name))
+ if (it->ends_with(findSensor->second->name))
{
it = sensorsChanged->erase(it);
findSensor->second = nullptr;
diff --git a/src/HwmonTempSensor.cpp b/src/HwmonTempSensor.cpp
index 744a40f..3f19ec1 100644
--- a/src/HwmonTempSensor.cpp
+++ b/src/HwmonTempSensor.cpp
@@ -17,7 +17,6 @@
#include <unistd.h>
#include <HwmonTempSensor.hpp>
-#include <boost/algorithm/string/predicate.hpp>
#include <boost/asio/read_until.hpp>
#include <boost/date_time/posix_time/posix_time.hpp>
#include <sdbusplus/asio/connection.hpp>
diff --git a/src/IntelCPUSensor.cpp b/src/IntelCPUSensor.cpp
index 79a51ed..8f04e99 100644
--- a/src/IntelCPUSensor.cpp
+++ b/src/IntelCPUSensor.cpp
@@ -18,7 +18,6 @@
#include <IntelCPUSensor.hpp>
#include <Utils.hpp>
-#include <boost/algorithm/string/predicate.hpp>
#include <boost/algorithm/string/replace.hpp>
#include <boost/asio/read_until.hpp>
#include <boost/date_time/posix_time/posix_time.hpp>
diff --git a/src/IntelCPUSensorMain.cpp b/src/IntelCPUSensorMain.cpp
index b2238a6..2780c1f 100644
--- a/src/IntelCPUSensorMain.cpp
+++ b/src/IntelCPUSensorMain.cpp
@@ -19,7 +19,6 @@
#include <IntelCPUSensor.hpp>
#include <Utils.hpp>
#include <VariantVisitors.hpp>
-#include <boost/algorithm/string/predicate.hpp>
#include <boost/algorithm/string/replace.hpp>
#include <boost/container/flat_map.hpp>
#include <boost/container/flat_set.hpp>
@@ -424,8 +423,8 @@
}
const std::string& directoryName = path.path().filename();
- if (boost::starts_with(directoryName, busStr) &&
- boost::ends_with(directoryName, addrHexStr))
+ if (directoryName.starts_with(busStr) &&
+ directoryName.ends_with(addrHexStr))
{
if (debug)
{
diff --git a/src/IntrusionSensorMain.cpp b/src/IntrusionSensorMain.cpp
index caa6f93..f85b1a6 100644
--- a/src/IntrusionSensorMain.cpp
+++ b/src/IntrusionSensorMain.cpp
@@ -16,7 +16,6 @@
#include <ChassisIntrusionSensor.hpp>
#include <Utils.hpp>
-#include <boost/algorithm/string/predicate.hpp>
#include <boost/asio/io_service.hpp>
#include <boost/container/flat_map.hpp>
#include <phosphor-logging/lg2.hpp>
diff --git a/src/IpmbSensor.cpp b/src/IpmbSensor.cpp
index 6c8bace..9d087a7 100644
--- a/src/IpmbSensor.cpp
+++ b/src/IpmbSensor.cpp
@@ -17,7 +17,6 @@
#include <IpmbSensor.hpp>
#include <Utils.hpp>
#include <VariantVisitors.hpp>
-#include <boost/algorithm/string/predicate.hpp>
#include <boost/container/flat_map.hpp>
#include <sdbusplus/asio/connection.hpp>
#include <sdbusplus/asio/object_server.hpp>
@@ -576,8 +575,8 @@
auto findStatus = values.find(power::property);
if (findStatus != values.end())
{
- bool powerStatus = boost::ends_with(
- std::get<std::string>(findStatus->second), ".Running");
+ bool powerStatus =
+ std::get<std::string>(findStatus->second).ends_with(".Running");
if (powerStatus)
{
if (!initCmdTimer)
diff --git a/src/MCUTempSensor.cpp b/src/MCUTempSensor.cpp
index 2786304..8c96154 100644
--- a/src/MCUTempSensor.cpp
+++ b/src/MCUTempSensor.cpp
@@ -16,7 +16,6 @@
#include <MCUTempSensor.hpp>
#include <Utils.hpp>
#include <VariantVisitors.hpp>
-#include <boost/algorithm/string/predicate.hpp>
#include <boost/container/flat_map.hpp>
#include <sdbusplus/asio/connection.hpp>
#include <sdbusplus/asio/object_server.hpp>
diff --git a/src/PSUSensor.cpp b/src/PSUSensor.cpp
index 9b7b38a..c5ed373 100644
--- a/src/PSUSensor.cpp
+++ b/src/PSUSensor.cpp
@@ -17,7 +17,6 @@
#include <unistd.h>
#include <PSUSensor.hpp>
-#include <boost/algorithm/string/predicate.hpp>
#include <boost/asio/random_access_file.hpp>
#include <boost/asio/read_until.hpp>
#include <boost/date_time/posix_time/posix_time.hpp>
diff --git a/src/PSUSensorMain.cpp b/src/PSUSensorMain.cpp
index 26cf7d1..e485598 100644
--- a/src/PSUSensorMain.cpp
+++ b/src/PSUSensorMain.cpp
@@ -17,7 +17,6 @@
#include <PSUEvent.hpp>
#include <PSUSensor.hpp>
#include <Utils.hpp>
-#include <boost/algorithm/string/predicate.hpp>
#include <boost/algorithm/string/replace.hpp>
#include <boost/container/flat_map.hpp>
#include <boost/container/flat_set.hpp>
@@ -477,7 +476,7 @@
auto it =
std::find_if(sensorsChanged->begin(), sensorsChanged->end(),
[psuNameStr](std::string& s) {
- return boost::ends_with(s, psuNameStr);
+ return s.ends_with(psuNameStr);
});
if (it == sensorsChanged->end())
diff --git a/src/TachSensor.cpp b/src/TachSensor.cpp
index 41cc212..dacbec6 100644
--- a/src/TachSensor.cpp
+++ b/src/TachSensor.cpp
@@ -18,7 +18,6 @@
#include <TachSensor.hpp>
#include <Utils.hpp>
-#include <boost/algorithm/string/predicate.hpp>
#include <boost/asio/read_until.hpp>
#include <boost/date_time/posix_time/posix_time.hpp>
#include <gpiod.hpp>
diff --git a/src/Utils.cpp b/src/Utils.cpp
index e247edd..7dc40c4 100644
--- a/src/Utils.cpp
+++ b/src/Utils.cpp
@@ -17,7 +17,6 @@
#include "dbus-sensor_config.h"
#include <Utils.hpp>
-#include <boost/algorithm/string/predicate.hpp>
#include <boost/container/flat_map.hpp>
#include <sdbusplus/asio/connection.hpp>
#include <sdbusplus/asio/object_server.hpp>
@@ -178,7 +177,7 @@
bool correctType = false;
for (const auto& [intf, cfg] : pathPair.second)
{
- if (boost::starts_with(intf, type))
+ if (intf.starts_with(type))
{
correctType = true;
break;
@@ -354,8 +353,7 @@
std::cerr << "error getting power status " << ec.message() << "\n";
return;
}
- powerStatusOn =
- boost::ends_with(std::get<std::string>(state), ".Running");
+ powerStatusOn = std::get<std::string>(state).ends_with(".Running");
},
power::busname, power::path, properties::interface, properties::get,
power::interface, power::property);
@@ -420,8 +418,8 @@
auto findState = values.find(power::property);
if (findState != values.end())
{
- bool on = boost::ends_with(std::get<std::string>(findState->second),
- ".Running");
+ bool on =
+ std::get<std::string>(findState->second).ends_with(".Running");
if (!on)
{
timer.cancel();