Telkin
Loading...
Searching...
No Matches
Preprocessor.h File Reference

Go to the source code of this file.

Macros

#define PP_CONCAT(x, y)
#define PP_CONCAT_VAL(x, y)
#define PP_STR(...)
#define PP_STR_VAL(...)
#define PP_ARG_N( _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _60, _61, _62, _63, _64, N, ...)
#define PP_NARG(...)
#define PP_EVAL_0(...)
#define PP_EVAL_1(...)
#define PP_EVAL_2(...)
#define PP_EVAL_3(...)
#define PP_EVAL_4(...)
#define PP_EVAL(...)
#define PP_FOREACH_END(...)
#define PP_FOREACH_OUT
#define PP_FOREACH_COMMA   ,
#define PP_FOREACH_GET_END2()
#define PP_FOREACH_GET_END1(...)
#define PP_FOREACH_GET_END(...)
#define PP_FOREACH_NEXT0(test, next, ...)
#define PP_FOREACH_NEXT1(test, next)
#define PP_FOREACH_NEXT(test, next)
#define PP_FOREACH_0(f, x, peek, ...)
#define PP_FOREACH_1(f, x, peek, ...)
#define PP_FOREACH_LIST_NEXT1(test, next)
#define PP_FOREACH_LIST_NEXT(test, next)
#define PP_FOREACH_LIST0(f, x, peek, ...)
#define PP_FOREACH_LIST1(f, x, peek, ...)
#define PP_FOREACH(f, ...)

Macro Definition Documentation

◆ PP_CONCAT

#define PP_CONCAT ( x,
y )
Value:
x ## y

◆ PP_CONCAT_VAL

#define PP_CONCAT_VAL ( x,
y )
Value:
PP_CONCAT(x, y)
#define PP_CONCAT(x, y)
Definition Preprocessor.h:4

◆ PP_STR

#define PP_STR ( ...)
Value:
#__VA_ARGS__

◆ PP_STR_VAL

#define PP_STR_VAL ( ...)
Value:
PP_STR(__VA_ARGS__)
#define PP_STR(...)
Definition Preprocessor.h:12

◆ PP_ARG_N

#define PP_ARG_N ( _1,
_2,
_3,
_4,
_5,
_6,
_7,
_8,
_9,
_10,
_11,
_12,
_13,
_14,
_15,
_16,
_17,
_18,
_19,
_20,
_21,
_22,
_23,
_24,
_25,
_26,
_27,
_28,
_29,
_30,
_31,
_32,
_33,
_34,
_35,
_36,
_37,
_38,
_39,
_40,
_41,
_42,
_43,
_44,
_45,
_46,
_47,
_48,
_49,
_50,
_51,
_52,
_53,
_54,
_55,
_56,
_57,
_58,
_59,
_60,
_61,
_62,
_63,
_64,
N,
... )
Value:
N

◆ PP_NARG

#define PP_NARG ( ...)
Value:
PP_ARG_N(__VA_ARGS__, 64, 63, 62, 61, 60, 59, 58, 57, 56, 55, \
54, 53, 52, 51, 50, 49, 48, 47, 46, 45, 44, 43, 42, 41, 40, \
39, 38, 37, 36, 35, 34, 33, 32, 31, 30, 29, 28, 27, 26, 25, \
24, 23, 22, 21, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, \
9, 8, 7, 6, 5, 4, 3, 2, 1, 0)
#define PP_ARG_N( _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _60, _61, _62, _63, _64, N,...)
Definition Preprocessor.h:20

◆ PP_EVAL_0

#define PP_EVAL_0 ( ...)
Value:
__VA_ARGS__

◆ PP_EVAL_1

#define PP_EVAL_1 ( ...)
Value:
#define PP_EVAL_0(...)
Definition Preprocessor.h:40

◆ PP_EVAL_2

#define PP_EVAL_2 ( ...)
Value:
#define PP_EVAL_1(...)
Definition Preprocessor.h:43

◆ PP_EVAL_3

#define PP_EVAL_3 ( ...)
Value:
#define PP_EVAL_2(...)
Definition Preprocessor.h:46

◆ PP_EVAL_4

#define PP_EVAL_4 ( ...)
Value:
#define PP_EVAL_3(...)
Definition Preprocessor.h:49

◆ PP_EVAL

#define PP_EVAL ( ...)
Value:
#define PP_EVAL_4(...)
Definition Preprocessor.h:52

◆ PP_FOREACH_END

#define PP_FOREACH_END ( ...)

◆ PP_FOREACH_OUT

#define PP_FOREACH_OUT

◆ PP_FOREACH_COMMA

#define PP_FOREACH_COMMA   ,

◆ PP_FOREACH_GET_END2

#define PP_FOREACH_GET_END2 ( )
Value:
#define PP_FOREACH_END(...)
Definition Preprocessor.h:59

◆ PP_FOREACH_GET_END1

#define PP_FOREACH_GET_END1 ( ...)
Value:
#define PP_FOREACH_GET_END2()
Definition Preprocessor.h:69

◆ PP_FOREACH_GET_END

#define PP_FOREACH_GET_END ( ...)
Value:
#define PP_FOREACH_GET_END1(...)
Definition Preprocessor.h:72

◆ PP_FOREACH_NEXT0

#define PP_FOREACH_NEXT0 ( test,
next,
... )
Value:
#define PP_FOREACH_OUT
Definition Preprocessor.h:62

◆ PP_FOREACH_NEXT1

#define PP_FOREACH_NEXT1 ( test,
next )
Value:
PP_FOREACH_NEXT0(test, next, 0)
#define PP_FOREACH_NEXT0(test, next,...)
Definition Preprocessor.h:78

◆ PP_FOREACH_NEXT

#define PP_FOREACH_NEXT ( test,
next )
Value:
#define PP_FOREACH_NEXT1(test, next)
Definition Preprocessor.h:81
#define PP_FOREACH_GET_END(...)
Definition Preprocessor.h:75

◆ PP_FOREACH_0

#define PP_FOREACH_0 ( f,
x,
peek,
... )
Value:
f(x) PP_FOREACH_NEXT(peek, PP_FOREACH_1)(f, peek, __VA_ARGS__)
#define PP_FOREACH_NEXT(test, next)
Definition Preprocessor.h:84
#define PP_FOREACH_1(f, x, peek,...)
Definition Preprocessor.h:91

◆ PP_FOREACH_1

#define PP_FOREACH_1 ( f,
x,
peek,
... )
Value:
f(x) PP_FOREACH_NEXT(peek, PP_FOREACH_0)(f, peek, __VA_ARGS__)
#define PP_FOREACH_0(f, x, peek,...)
Definition Preprocessor.h:88

◆ PP_FOREACH_LIST_NEXT1

#define PP_FOREACH_LIST_NEXT1 ( test,
next )
Value:
#define PP_FOREACH_COMMA
Definition Preprocessor.h:65

◆ PP_FOREACH_LIST_NEXT

#define PP_FOREACH_LIST_NEXT ( test,
next )
Value:
#define PP_FOREACH_LIST_NEXT1(test, next)
Definition Preprocessor.h:95

◆ PP_FOREACH_LIST0

#define PP_FOREACH_LIST0 ( f,
x,
peek,
... )
Value:
f(x) PP_FOREACH_LIST_NEXT(peek, PP_FOREACH_LIST1)(f, peek, __VA_ARGS__)
#define PP_FOREACH_LIST1(f, x, peek,...)
Definition Preprocessor.h:105
#define PP_FOREACH_LIST_NEXT(test, next)
Definition Preprocessor.h:98

◆ PP_FOREACH_LIST1

#define PP_FOREACH_LIST1 ( f,
x,
peek,
... )
Value:
f(x) PP_FOREACH_LIST_NEXT(peek, PP_FOREACH_LIST0)(f, peek, __VA_ARGS__)
#define PP_FOREACH_LIST0(f, x, peek,...)
Definition Preprocessor.h:102

◆ PP_FOREACH

#define PP_FOREACH ( f,
... )
Value:
PP_EVAL(PP_FOREACH_1(f, __VA_ARGS__, ()()(), ()()(), ()()(), 0))
#define PP_EVAL(...)
Definition Preprocessor.h:55