Qt 6.x
The Qt SDK
Loading...
Searching...
No Matches
qforeach.h File Reference
#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_NAMESPACE
 

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   Q_FOREACH

[19]

[20]

Definition at line 74 of file qforeach.h.

◆ forever

#define forever   Q_FOREVER

Definition at line 78 of file qforeach.h.

◆ Q_FOREACH

#define Q_FOREACH (   variable,
  container 
)     Q_FOREACH_IMPL(variable, Q_FOREACH_JOIN(_container_, __LINE__), container)

Definition at line 66 of file qforeach.h.

◆ 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(;;)

Definition at line 70 of file qforeach.h.