GNU Radio C++ API Reference 3.10.10.0
The Free & Open Software Radio Ecosystem
 
Loading...
Searching...
No Matches
pydoc_macros.h File Reference

Go to the source code of this file.

Macros

#define __EXPAND(x)   x
 
#define __COUNT(_1, _2, _3, _4, _5, _6, _7, COUNT, ...)   COUNT
 
#define __VA_SIZE(...)   __EXPAND(__COUNT(__VA_ARGS__, 7, 6, 5, 4, 3, 2, 1))
 
#define __CAT1(a, b)   a##b
 
#define __CAT2(a, b)   __CAT1(a, b)
 
#define __DOC1(n1)   __doc_##n1
 
#define __DOC2(n1, n2)   __doc_##n1##_##n2
 
#define __DOC3(n1, n2, n3)   __doc_##n1##_##n2##_##n3
 
#define __DOC4(n1, n2, n3, n4)   __doc_##n1##_##n2##_##n3##_##n4
 
#define __DOC5(n1, n2, n3, n4, n5)   __doc_##n1##_##n2##_##n3##_##n4##_##n5
 
#define __DOC6(n1, n2, n3, n4, n5, n6)   __doc_##n1##_##n2##_##n3##_##n4##_##n5##_##n6
 
#define __DOC7(n1, n2, n3, n4, n5, n6, n7)    __doc_##n1##_##n2##_##n3##_##n4##_##n5##_##n6##_##n7
 
#define DOC(...)   __EXPAND(__EXPAND(__CAT2(__DOC, __VA_SIZE(__VA_ARGS__)))(__VA_ARGS__))
 

Macro Definition Documentation

◆ __CAT1

#define __CAT1 ( a,
b )   a##b

◆ __CAT2

#define __CAT2 ( a,
b )   __CAT1(a, b)

◆ __COUNT

#define __COUNT ( _1,
_2,
_3,
_4,
_5,
_6,
_7,
COUNT,
... )   COUNT

◆ __DOC1

#define __DOC1 ( n1)    __doc_##n1

◆ __DOC2

#define __DOC2 ( n1,
n2 )   __doc_##n1##_##n2

◆ __DOC3

#define __DOC3 ( n1,
n2,
n3 )   __doc_##n1##_##n2##_##n3

◆ __DOC4

#define __DOC4 ( n1,
n2,
n3,
n4 )   __doc_##n1##_##n2##_##n3##_##n4

◆ __DOC5

#define __DOC5 ( n1,
n2,
n3,
n4,
n5 )   __doc_##n1##_##n2##_##n3##_##n4##_##n5

◆ __DOC6

#define __DOC6 ( n1,
n2,
n3,
n4,
n5,
n6 )   __doc_##n1##_##n2##_##n3##_##n4##_##n5##_##n6

◆ __DOC7

#define __DOC7 ( n1,
n2,
n3,
n4,
n5,
n6,
n7 )    __doc_##n1##_##n2##_##n3##_##n4##_##n5##_##n6##_##n7

◆ __EXPAND

#define __EXPAND ( x)    x

◆ __VA_SIZE

#define __VA_SIZE ( ...)    __EXPAND(__COUNT(__VA_ARGS__, 7, 6, 5, 4, 3, 2, 1))

◆ DOC

#define DOC ( ...)    __EXPAND(__EXPAND(__CAT2(__DOC, __VA_SIZE(__VA_ARGS__)))(__VA_ARGS__))