CX Framework
Cross-platform C utility framework
Loading...
Searching...
No Matches
args.h
Go to the documentation of this file.
1
6
7
#pragma once
8
9
// argument counting
10
11
#define _get_nth_arg_50(_1, \
12
_2, \
13
_3, \
14
_4, \
15
_5, \
16
_6, \
17
_7, \
18
_8, \
19
_9, \
20
_10, \
21
_11, \
22
_12, \
23
_13, \
24
_14, \
25
_15, \
26
_16, \
27
_17, \
28
_18, \
29
_19, \
30
_20, \
31
_21, \
32
_22, \
33
_23, \
34
_24, \
35
_25, \
36
_26, \
37
_27, \
38
_28, \
39
_29, \
40
_30, \
41
_31, \
42
_32, \
43
_33, \
44
_34, \
45
_35, \
46
_36, \
47
_37, \
48
_38, \
49
_39, \
50
_40, \
51
_41, \
52
_42, \
53
_43, \
54
_44, \
55
_45, \
56
_46, \
57
_47, \
58
_48, \
59
_49, \
60
_50, \
61
N, \
62
...) \
63
N
64
// extra indirection macro to workaround MSVC brokenness
65
#define __get_nth_arg_50(args) _get_nth_arg_50 args
66
81
#define count_macro_args(...) \
82
__get_nth_arg_50((__VA_ARGS__, \
83
50, \
84
49, \
85
48, \
86
47, \
87
46, \
88
45, \
89
44, \
90
43, \
91
42, \
92
41, \
93
40, \
94
39, \
95
38, \
96
37, \
97
36, \
98
35, \
99
34, \
100
33, \
101
32, \
102
31, \
103
30, \
104
29, \
105
28, \
106
27, \
107
26, \
108
25, \
109
24, \
110
23, \
111
22, \
112
21, \
113
20, \
114
19, \
115
18, \
116
17, \
117
16, \
118
15, \
119
14, \
120
13, \
121
12, \
122
11, \
123
10, \
124
9, \
125
8, \
126
7, \
127
6, \
128
5, \
129
4, \
130
3, \
131
2, \
132
1))
133
cx
utils
macros
args.h
Generated by
1.9.8