diff --git a/src/libs/utils/algorithm.h b/src/libs/utils/algorithm.h index fbfe906acd2..d4fcac1ae95 100644 --- a/src/libs/utils/algorithm.h +++ b/src/libs/utils/algorithm.h @@ -337,6 +337,18 @@ auto transform(const SC &container, R (S::*p)() const) >::call(container, p); } +////////////////// +// filtered +///////////////// +template +C filtered(const C &container, F predicate) +{ + C out; + std::copy_if(container.begin(), container.end(), + inserter(out), predicate); + return out; +} + ////////////////// // sort /////////////////