Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
qforeach.h File Reference

(aa37e67ef7f5ff22da0ef95fb5221bc1fff9b3ca)

#include <QtCore/qtclasshelpermacros.h>
#include <QtCore/qtconfigmacros.h>
#include <QtCore/qtdeprecationmarkers.h>
#include <QtCore/qttypetraits.h>
+ Include dependency graph for qforeach.h:

Go to the source code of this file.

Classes

class  QtPrivate::QForeachContainer< T >
 

Namespaces

namespace  QtPrivate
 \macro QT_NO_KEYWORDS >
 

Macros

#define Q_FOREACH_IMPL(variable, name, container)
 
#define Q_FOREACH_JOIN(A, B)   Q_FOREACH_JOIN_IMPL(A, B)
 
#define Q_FOREACH_JOIN_IMPL(A, B)   A ## B
 
#define Q_FOREACH(variable, container)    Q_FOREACH_IMPL(variable, Q_FOREACH_JOIN(_container_, __LINE__), container)
 
#define Q_FOREVER   for(;;)
 
#define foreach   Q_FOREACH
 [19]
 
#define forever   Q_FOREVER
 

Functions

template<typename T , typename = decltype(std::declval<T>().detach())>
void QtPrivate::warnIfContainerIsNotShared (int)
 
template<typename T >
QForeachContainer< typename std::decay< T >::typeQtPrivate::qMakeForeachContainer (T &&t)
 

Macro Definition Documentation

◆ foreach

foreach(const QString &str, map.keys() map) qDebug()<< str<< ' QMultiMap< QString, int >   Q_FOREACH

[19]

[20]

Definition at line 74 of file qforeach.h.

◆ forever

#define forever   Q_FOREVER

◆ Q_FOREACH

◆ Q_FOREACH_IMPL

#define Q_FOREACH_IMPL ( variable,
name,
container )
Value:
for (auto name = QtPrivate::qMakeForeachContainer(container); name.i != name.e; ++name.i) \
if (variable = *name.i; false) {} else
QForeachContainer< typename std::decay< T >::type > qMakeForeachContainer(T &&t)
Definition qforeach.h:49
GLuint name
GLenum GLenum variable

Definition at line 59 of file qforeach.h.

◆ Q_FOREACH_JOIN

#define Q_FOREACH_JOIN ( A,
B )   Q_FOREACH_JOIN_IMPL(A, B)

Definition at line 63 of file qforeach.h.

◆ Q_FOREACH_JOIN_IMPL

#define Q_FOREACH_JOIN_IMPL ( A,
B )   A ## B

Definition at line 64 of file qforeach.h.

◆ Q_FOREVER

#define Q_FOREVER   for(;;)