Port from qAsConst() to std::as_const()

We've been requiring C++17 since Qt 6.0, and our qAsConst use finally
starts to bother us (QTBUG-99313), so time to port away from it
now.

Since qAsConst has exactly the same semantics as std::as_const (down
to rvalue treatment, constexpr'ness and noexcept'ness), there's really
nothing more to it than a global search-and-replace.

Task-number: QTBUG-99313
Change-Id: I88edd91395849574436299b8badda21bb93bea39
Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
Marc Mutz
2022-10-07 14:46:06 +02:00
parent 90de29d530
commit 8eb4d52342
498 changed files with 1270 additions and 1270 deletions

View File

@@ -329,7 +329,7 @@ Command *ActionContainerPrivate::addSeparator(const Context &context, Id group,
void ActionContainerPrivate::clear()
{
for (Group &group : m_groups) {
for (QObject *item : qAsConst(group.items)) {
for (QObject *item : std::as_const(group.items)) {
if (auto command = qobject_cast<Command *>(item)) {
removeAction(command);
disconnect(command, &Command::activeStateChanged,
@@ -458,8 +458,8 @@ bool MenuActionContainer::updateInternal()
bool hasitems = false;
QList<QAction *> actions = m_menu->actions();
for (const Group &group : qAsConst(m_groups)) {
for (QObject *item : qAsConst(group.items)) {
for (const Group &group : std::as_const(m_groups)) {
for (QObject *item : std::as_const(group.items)) {
if (auto container = qobject_cast<ActionContainerPrivate*>(item)) {
actions.removeAll(container->menu()->menuAction());
if (container == this) {
@@ -491,7 +491,7 @@ bool MenuActionContainer::updateInternal()
}
if (!hasitems) {
// look if there were actions added that we don't control and check if they are enabled
for (const QAction *action : qAsConst(actions)) {
for (const QAction *action : std::as_const(actions)) {
if (!action->isSeparator() && action->isEnabled()) {
hasitems = true;
break;