mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-23 06:09:50 -06:00
Modernize std::any_of
with ranges
In WiimoteReal.cpp, JitRegCache.cpp, lambda predicates were replaced by pointers to member functions because ranges algorithms are able invoke those. In ConvertDialog.cpp, the `std::mem_fn` helper was removed because ranges algorithms are able to handle pointers to member functions as predicates.
This commit is contained in:
@ -248,7 +248,7 @@ bool ControllerInterface::AddDevice(std::shared_ptr<ciface::Core::Device> device
|
||||
std::lock_guard lk(m_devices_mutex);
|
||||
|
||||
const auto is_id_in_use = [&device, this](int id) {
|
||||
return std::any_of(m_devices.begin(), m_devices.end(), [&device, &id](const auto& d) {
|
||||
return std::ranges::any_of(m_devices, [&device, &id](const auto& d) {
|
||||
return d->GetSource() == device->GetSource() && d->GetName() == device->GetName() &&
|
||||
d->GetId() == id;
|
||||
});
|
||||
@ -368,10 +368,8 @@ void ControllerInterface::UpdateInput()
|
||||
if (devices_to_remove.size() > 0)
|
||||
{
|
||||
RemoveDevice([&](const ciface::Core::Device* device) {
|
||||
return std::any_of(devices_to_remove.begin(), devices_to_remove.end(),
|
||||
[device](const std::weak_ptr<ciface::Core::Device>& d) {
|
||||
return d.lock().get() == device;
|
||||
});
|
||||
return std::ranges::any_of(devices_to_remove,
|
||||
[device](const auto& d) { return d.lock().get() == device; });
|
||||
});
|
||||
}
|
||||
}
|
||||
|
@ -137,8 +137,8 @@ BuildExpression(const std::vector<ciface::Core::DeviceContainer::InputDetection>
|
||||
void RemoveSpuriousTriggerCombinations(
|
||||
std::vector<ciface::Core::DeviceContainer::InputDetection>* detections)
|
||||
{
|
||||
const auto is_spurious = [&](auto& detection) {
|
||||
return std::any_of(detections->begin(), detections->end(), [&](auto& d) {
|
||||
const auto is_spurious = [&](const auto& detection) {
|
||||
return std::ranges::any_of(*detections, [&](const auto& d) {
|
||||
// This is a spurious digital detection if a "smooth" (analog) detection is temporally near.
|
||||
return &d != &detection && d.smoothness > 1 && d.smoothness > detection.smoothness &&
|
||||
abs(d.press_time - detection.press_time) < SPURIOUS_TRIGGER_COMBO_THRESHOLD;
|
||||
|
Reference in New Issue
Block a user