From 10a48c737d347bcce765c8fbe009bc1dd0bb0c4d Mon Sep 17 00:00:00 2001 From: Arkadiy Illarionov Date: Wed, 13 Mar 2019 21:11:09 +0300 Subject: Simplify containers iterations in basctl, basegfx, basic, bridges Use range-based loop or replace with STL functions Change-Id: I8594740103bdc2091c2d03d4b92bbe8393f5378c Reviewed-on: https://gerrit.libreoffice.org/69223 Tested-by: Jenkins Reviewed-by: Noel Grandin --- basegfx/source/polygon/b3dpolygon.cxx | 48 +++++++++++------------------------ 1 file changed, 15 insertions(+), 33 deletions(-) (limited to 'basegfx/source') diff --git a/basegfx/source/polygon/b3dpolygon.cxx b/basegfx/source/polygon/b3dpolygon.cxx index 9817fb43f6fb..5d23be90562c 100644 --- a/basegfx/source/polygon/b3dpolygon.cxx +++ b/basegfx/source/polygon/b3dpolygon.cxx @@ -335,11 +335,8 @@ public: BColorDataVector::const_iterator aEnd(rSource.maVector.end()); maVector.insert(aIndex, aStart, aEnd); - for(; aStart != aEnd; ++aStart) - { - if(!aStart->equalZero()) - mnUsedEntries++; - } + mnUsedEntries += std::count_if(aStart, aEnd, + [](BColorDataVector::const_reference rData) { return !rData.equalZero(); }); } } @@ -349,13 +346,10 @@ public: { const BColorDataVector::iterator aDeleteStart(maVector.begin() + nIndex); const BColorDataVector::iterator aDeleteEnd(aDeleteStart + nCount); - BColorDataVector::const_iterator aStart(aDeleteStart); - for(; mnUsedEntries && aStart != aDeleteEnd; ++aStart) - { - if(!aStart->equalZero()) - mnUsedEntries--; - } + auto nDeleteUsed = std::count_if(aDeleteStart, aDeleteEnd, + [](BColorDataVector::const_reference rData) { return !rData.equalZero(); }); + mnUsedEntries -= std::min(mnUsedEntries, static_cast(nDeleteUsed)); // remove point data maVector.erase(aDeleteStart, aDeleteEnd); @@ -482,11 +476,8 @@ public: NormalsData3DVector::const_iterator aEnd(rSource.maVector.end()); maVector.insert(aIndex, aStart, aEnd); - for(; aStart != aEnd; ++aStart) - { - if(!aStart->equalZero()) - mnUsedEntries++; - } + mnUsedEntries += std::count_if(aStart, aEnd, + [](NormalsData3DVector::const_reference rData) { return !rData.equalZero(); }); } } @@ -496,13 +487,10 @@ public: { const NormalsData3DVector::iterator aDeleteStart(maVector.begin() + nIndex); const NormalsData3DVector::iterator aDeleteEnd(aDeleteStart + nCount); - NormalsData3DVector::const_iterator aStart(aDeleteStart); - for(; mnUsedEntries && aStart != aDeleteEnd; ++aStart) - { - if(!aStart->equalZero()) - mnUsedEntries--; - } + auto nDeleteUsed = std::count_if(aDeleteStart, aDeleteEnd, + [](NormalsData3DVector::const_reference rData) { return !rData.equalZero(); }); + mnUsedEntries -= std::min(mnUsedEntries, static_cast(nDeleteUsed)); // remove point data maVector.erase(aDeleteStart, aDeleteEnd); @@ -637,11 +625,8 @@ public: TextureData2DVector::const_iterator aEnd(rSource.maVector.end()); maVector.insert(aIndex, aStart, aEnd); - for(; aStart != aEnd; ++aStart) - { - if(!aStart->equalZero()) - mnUsedEntries++; - } + mnUsedEntries += std::count_if(aStart, aEnd, + [](TextureData2DVector::const_reference rData) { return !rData.equalZero(); }); } } @@ -651,13 +636,10 @@ public: { const TextureData2DVector::iterator aDeleteStart(maVector.begin() + nIndex); const TextureData2DVector::iterator aDeleteEnd(aDeleteStart + nCount); - TextureData2DVector::const_iterator aStart(aDeleteStart); - for(; mnUsedEntries && aStart != aDeleteEnd; ++aStart) - { - if(!aStart->equalZero()) - mnUsedEntries--; - } + auto nDeleteUsed = std::count_if(aDeleteStart, aDeleteEnd, + [](TextureData2DVector::const_reference rData) { return !rData.equalZero(); }); + mnUsedEntries -= std::min(mnUsedEntries, static_cast(nDeleteUsed)); // remove point data maVector.erase(aDeleteStart, aDeleteEnd); -- cgit