File indexing completed on 2025-01-26 05:06:09

0001 /*
0002     SPDX-FileCopyrightText: 2012 Ivan Cukic <ivan.cukic(at)kde.org>
0003 
0004     SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #ifndef UTILS_REMOVE_IF_H
0008 #define UTILS_REMOVE_IF_H
0009 
0010 #include <algorithm>
0011 
0012 /********************************************************************
0013  *  Syntactic sugar for the erase-remove idiom                      *
0014  ********************************************************************/
0015 
0016 namespace kamd
0017 {
0018 namespace utils
0019 {
0020 template<typename Collection, typename Filter>
0021 __inline void remove_if(Collection &collection, Filter filter)
0022 {
0023     collection.erase(std::remove_if(collection.begin(), collection.end(), filter), collection.end());
0024 }
0025 
0026 } // namespace utils
0027 } // namespace kamd
0028 
0029 #endif // UTILS_REMOVE_IF_H