diff options
author | Mike Kaganski <mike.kaganski@collabora.com> | 2021-10-14 09:25:24 +0200 |
---|---|---|
committer | Mike Kaganski <mike.kaganski@collabora.com> | 2021-10-15 10:36:36 +0200 |
commit | 2484de6728bd11bb7949003d112f1ece2223c7a1 (patch) | |
tree | 1296534e396da284b38d2c478dcd2b31c4714179 /toolkit/source/controls/unocontrolmodel.cxx | |
parent | 88375fd36899d21d3309cf8333712e02a87d3a91 (diff) |
Remove non-const Sequence::begin()/end() in internal code
... to avoid hidden cost of multiple COW checks, because they
call getArray() internally.
This obsoletes [loplugin:sequenceloop].
Also rename toNonConstRange to asNonConstRange, to reflect that
the result is a view of the sequence, not an independent object.
TODO: also drop non-const operator[], but introduce operator[]
in SequenceRange.
Change-Id: Idd5fd7a3400fe65274d2a6343025e2ef8911635d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123518
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Diffstat (limited to 'toolkit/source/controls/unocontrolmodel.cxx')
-rw-r--r-- | toolkit/source/controls/unocontrolmodel.cxx | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/toolkit/source/controls/unocontrolmodel.cxx b/toolkit/source/controls/unocontrolmodel.cxx index 9f62a1ebc241..0bb8ca566368 100644 --- a/toolkit/source/controls/unocontrolmodel.cxx +++ b/toolkit/source/controls/unocontrolmodel.cxx @@ -496,7 +496,7 @@ css::uno::Sequence< css::beans::PropertyState > UnoControlModel::getPropertyStat css::uno::Sequence< css::beans::PropertyState > aStates( nNames ); - std::transform(PropertyNames.begin(), PropertyNames.end(), aStates.begin(), + std::transform(PropertyNames.begin(), PropertyNames.end(), aStates.getArray(), [this](const OUString& rName) -> css::beans::PropertyState { return getPropertyState(rName); }); return aStates; @@ -665,7 +665,7 @@ void UnoControlModel::write( const css::uno::Reference< css::io::XObjectOutputSt rValue >>= aSeq; tools::Long nEntries = aSeq.getLength(); OutStream->writeLong( nEntries ); - for ( const auto nVal : aSeq ) + for ( const auto nVal : std::as_const(aSeq) ) OutStream->writeShort( nVal ); } else if ( rType == cppu::UnoType< css::uno::Sequence<sal_Int16> >::get() ) @@ -674,7 +674,7 @@ void UnoControlModel::write( const css::uno::Reference< css::io::XObjectOutputSt rValue >>= aSeq; tools::Long nEntries = aSeq.getLength(); OutStream->writeLong( nEntries ); - for ( const auto nVal : aSeq ) + for ( const auto nVal : std::as_const(aSeq) ) OutStream->writeShort( nVal ); } else if ( rType.getTypeClass() == TypeClass_ENUM ) |