forked from qt-creator/qt-creator
Utils: Implement more Utils::anyOf variations
Change-Id: I0cba5b58dde6003f5c5cb399142f985cbe83f0a7 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
@@ -40,6 +40,11 @@ namespace Utils
|
||||
//////////////////
|
||||
// anyOf
|
||||
/////////////////
|
||||
template<typename T, typename F>
|
||||
bool anyOf(const T &container, F predicate)
|
||||
{
|
||||
return std::any_of(std::begin(container), std::end(container), predicate);
|
||||
}
|
||||
|
||||
// anyOf taking a member function pointer
|
||||
template<typename T, typename R, typename S>
|
||||
@@ -48,12 +53,17 @@ bool anyOf(const T &container, R (S::*predicate)() const)
|
||||
return std::any_of(std::begin(container), std::end(container), std::mem_fn(predicate));
|
||||
}
|
||||
|
||||
template<typename T, typename F>
|
||||
bool anyOf(const T &container, F predicate)
|
||||
// anyOf taking a member pointer
|
||||
template<typename T, typename R, typename S>
|
||||
bool anyOf(const T &container, R S::*member)
|
||||
{
|
||||
return std::any_of(std::begin(container), std::end(container), predicate);
|
||||
return std::any_of(std::begin(container), std::end(container), std::mem_fn(member));
|
||||
}
|
||||
|
||||
|
||||
//////////////////
|
||||
// count
|
||||
/////////////////
|
||||
template<typename T, typename F>
|
||||
int count(const T &container, F predicate)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user