Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qoverload.h File Reference

(4842cc176881ae22e14ca193fba46c6a04d09530)

#include <QtCore/qtconfigmacros.h>
+ Include dependency graph for qoverload.h:

Go to the source code of this file.

Classes

struct  QNonConstOverload< Args >
 
struct  QConstOverload< Args >
 
struct  QOverload< Args >
 

Macros

#define QT_VA_ARGS_CHOOSE(_1, _2, _3, _4, _5, _6, _7, _8, _9, N, ...)
 
#define QT_VA_ARGS_EXPAND(...)
 
#define QT_VA_ARGS_COUNT(...)
 
#define QT_OVERLOADED_MACRO_EXPAND(MACRO, ARGC)
 
#define QT_OVERLOADED_MACRO_IMP(MACRO, ARGC)
 
#define QT_OVERLOADED_MACRO(MACRO, ...)
 

Variables

template<typename... Args>
constexpr QOverload< Args... > qOverload = {}
 
template<typename... Args>
constexpr QConstOverload< Args... > qConstOverload = {}
 
template<typename... Args>
constexpr QNonConstOverload< Args... > qNonConstOverload = {}
 

Macro Definition Documentation

◆ QT_OVERLOADED_MACRO

#define QT_OVERLOADED_MACRO ( MACRO,
... )
Value:
#define QT_OVERLOADED_MACRO_IMP(MACRO, ARGC)
Definition qoverload.h:75
#define QT_VA_ARGS_EXPAND(...)
Definition qoverload.h:72
#define QT_VA_ARGS_COUNT(...)
Definition qoverload.h:73

Definition at line 76 of file qoverload.h.

◆ QT_OVERLOADED_MACRO_EXPAND

#define QT_OVERLOADED_MACRO_EXPAND ( MACRO,
ARGC )
Value:
MACRO##_##ARGC

Definition at line 74 of file qoverload.h.

◆ QT_OVERLOADED_MACRO_IMP

#define QT_OVERLOADED_MACRO_IMP ( MACRO,
ARGC )
Value:
#define QT_OVERLOADED_MACRO_EXPAND(MACRO, ARGC)
Definition qoverload.h:74

Definition at line 75 of file qoverload.h.

◆ QT_VA_ARGS_CHOOSE

#define QT_VA_ARGS_CHOOSE ( _1,
_2,
_3,
_4,
_5,
_6,
_7,
_8,
_9,
N,
... )
Value:
N

Definition at line 71 of file qoverload.h.

◆ QT_VA_ARGS_COUNT

#define QT_VA_ARGS_COUNT ( ...)
Value:
QT_VA_ARGS_EXPAND(QT_VA_ARGS_CHOOSE(__VA_ARGS__, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0))
#define QT_VA_ARGS_CHOOSE(_1, _2, _3, _4, _5, _6, _7, _8, _9, N,...)
Definition qoverload.h:71

Definition at line 73 of file qoverload.h.

◆ QT_VA_ARGS_EXPAND

#define QT_VA_ARGS_EXPAND ( ...)
Value:
__VA_ARGS__

Definition at line 72 of file qoverload.h.

Variable Documentation

◆ qConstOverload

template<typename... Args>
QConstOverload<Args...> qConstOverload = {}
inlineconstexpr

Definition at line 66 of file qoverload.h.

◆ qNonConstOverload

template<typename... Args>
QNonConstOverload<Args...> qNonConstOverload = {}
inlineconstexpr

Definition at line 67 of file qoverload.h.

◆ qOverload

template<typename... Args>
QOverload<Args...> qOverload = {}
inlineconstexpr

Definition at line 65 of file qoverload.h.