summaryrefslogtreecommitdiff
path: root/Source/Core/InputCommon/ControlReference
diff options
context:
space:
mode:
authormitaclaw <140017135+mitaclaw@users.noreply.github.com>2024-09-29 11:43:52 -0700
committermitaclaw <140017135+mitaclaw@users.noreply.github.com>2024-12-15 19:50:34 -0800
commit860e6cf5cb7d96499aecf6f6067783bdb71c29ad (patch)
tree212a451cbdd72d6525703c2f1369198fbdbe2b85 /Source/Core/InputCommon/ControlReference
parent826e2bbf98ca5c6088c3d19968272b29fc335972 (diff)
Modernize `std::all_of` with ranges
In DITSpecification.cpp, MaterialAsset.cpp, and ShaderAsset.cpp, lambda predicates were replaced by pointers to member functions because ranges algorithms are able invoke those. In NetPlayClient.cpp, the non-trivial `NetPlay::Player` elements were being passed by value in `NetPlayClient::DoAllPlayersHaveGame()`. This has been fixed. In WIABlob.cpp, the second example's predicate was returning the `std::optional` by value instead of implicitly converting it to a bool. This has been fixed.
Diffstat (limited to 'Source/Core/InputCommon/ControlReference')
-rw-r--r--Source/Core/InputCommon/ControlReference/ExpressionParser.cpp6
1 files changed, 2 insertions, 4 deletions
diff --git a/Source/Core/InputCommon/ControlReference/ExpressionParser.cpp b/Source/Core/InputCommon/ControlReference/ExpressionParser.cpp
index b558d6b78f..dd897c2535 100644
--- a/Source/Core/InputCommon/ControlReference/ExpressionParser.cpp
+++ b/Source/Core/InputCommon/ControlReference/ExpressionParser.cpp
@@ -495,10 +495,8 @@ public:
ControlState GetValue() const override
{
// True if we have no modifiers
- const bool modifiers_pressed = std::all_of(m_modifiers.begin(), m_modifiers.end(),
- [](const std::unique_ptr<ControlExpression>& input) {
- return input->GetValue() > CONDITION_THRESHOLD;
- });
+ const bool modifiers_pressed = std::ranges::all_of(
+ m_modifiers, [](const auto& input) { return input->GetValue() > CONDITION_THRESHOLD; });
const auto final_input_state = m_final_input->GetValueIgnoringSuppression();