get rid of some foreach and Q_FOREACH constructs

See https://www.kdab.com/goodbye-q_foreach/

This is reduced to the places where the container is const or can be made const
without the need to always introduce an extra variable. Sadly qAsConst (Qt 5.7)
and std::as_const (C++17) are not available in all supported setups.

Also do some minor cleanups along the way.

Signed-off-by: Rolf Eike Beer <eike@sf-mail.de>
This commit is contained in:
Rolf Eike Beer 2019-04-01 22:15:19 +02:00 committed by Dirk Hohndel
parent 2b9ca488fd
commit c4c8094e32
21 changed files with 62 additions and 49 deletions

View file

@ -341,7 +341,7 @@ dc_status_t BLEObject::setHwCredit(unsigned int c)
return DC_STATUS_SUCCESS;
}
dc_status_t BLEObject::setupHwTerminalIo(QList<QLowEnergyCharacteristic> allC)
dc_status_t BLEObject::setupHwTerminalIo(const QList<QLowEnergyCharacteristic> &allC)
{ /* This initalizes the Terminal I/O client as described in
* http://www.telit.com/fileadmin/user_upload/products/Downloads/sr-rf/BlueMod/TIO_Implementation_Guide_r04.pdf
* Referenced section numbers below are from that document.
@ -479,16 +479,16 @@ dc_status_t qt_ble_open(void **io, dc_context_t *, const char *devaddr, dc_user_
return r;
}
} else {
foreach (const QLowEnergyCharacteristic &c, list) {
for (const QLowEnergyCharacteristic &c: list) {
if (!is_read_characteristic(c))
continue;
qDebug() << "Using read characteristic" << c.uuid();
QList<QLowEnergyDescriptor> l = c.descriptors();
const QList<QLowEnergyDescriptor> l = c.descriptors();
QLowEnergyDescriptor d = l.first();
foreach (const QLowEnergyDescriptor &tmp, l) {
for (const QLowEnergyDescriptor &tmp: l) {
if (tmp.type() == QBluetoothUuid::ClientCharacteristicConfiguration) {
d = tmp;
break;