From 5a4bbc82f0633971b14de344145f14374cf54ba4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9F=D0=B5=D0=BB=D0=B8=D0=BF=D0=B5=D0=BD=D0=BA=D0=BE=20?= =?UTF-8?q?=D0=98=D0=B2=D0=B0=D0=BD?= Date: Fri, 20 Mar 2020 07:28:07 +0000 Subject: [PATCH] git-svn-id: svn://db.shs.com.ru/pip@962 12ceb7fc-bf1f-11e4-8940-5bc7170c53b5 --- src_main/containers/pideque.h | 7 ++++++- src_main/containers/pivector.h | 7 ++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src_main/containers/pideque.h b/src_main/containers/pideque.h index dd2e3d3c..3a4d7c21 100755 --- a/src_main/containers/pideque.h +++ b/src_main/containers/pideque.h @@ -370,7 +370,12 @@ public: } #ifdef PIP_CXX11_SUPPORT - PIDeque forEach(std::function f) const { + const PIDeque & forEach(std::function f) const { + for (uint i = 0; i < pid_size; ++i) + f(pid_data[i + pid_start]); + return *this; + } + PIDeque copyForEach(std::function f) const { PIDeque ret; ret.reserve(pid_size); for (uint i = 0; i < pid_size; ++i) ret << f(pid_data[i + pid_start]); diff --git a/src_main/containers/pivector.h b/src_main/containers/pivector.h index 583e8980..41d7082c 100755 --- a/src_main/containers/pivector.h +++ b/src_main/containers/pivector.h @@ -362,7 +362,12 @@ public: } #ifdef PIP_CXX11_SUPPORT - PIVector forEach(std::function f) const { + const PIVector & forEach(std::function f) const { + for (uint i = 0; i < piv_size; ++i) + f(piv_data[i]); + return *this; + } + PIVector copyForEach(std::function f) const { PIVector ret; ret.reserve(piv_size); for (uint i = 0; i < piv_size; ++i) ret << f(piv_data[i]);