nRF Connect SDK API
3.3.99
Loading...
Searching...
No Matches
util_internal.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2025 Nordic Semiconductor ASA
3
*
4
* SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
5
*/
6
14
#ifndef UTIL_INTERNAL_H_
15
#define UTIL_INTERNAL_H_
16
17
#include <zephyr/sys/util_internal.h>
18
19
/* Helper macro for IS_ENABLED_ALL */
20
#define Z_IS_ENABLED_ALL(...) \
21
Z_IS_ENABLED_ALL_N(NUM_VA_ARGS(__VA_ARGS__), __VA_ARGS__)
22
#define Z_IS_ENABLED_ALL_N(N, ...) UTIL_CAT(Z_IS_ENABLED_ALL_, N)(__VA_ARGS__)
23
#define Z_IS_ENABLED_ALL_0(...)
24
#define Z_IS_ENABLED_ALL_1(a, ...) COND_CODE_1(a, (1), (0))
25
#define Z_IS_ENABLED_ALL_2(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_1(__VA_ARGS__,)), (0))
26
#define Z_IS_ENABLED_ALL_3(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_2(__VA_ARGS__,)), (0))
27
#define Z_IS_ENABLED_ALL_4(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_3(__VA_ARGS__,)), (0))
28
#define Z_IS_ENABLED_ALL_5(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_4(__VA_ARGS__,)), (0))
29
#define Z_IS_ENABLED_ALL_6(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_5(__VA_ARGS__,)), (0))
30
#define Z_IS_ENABLED_ALL_7(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_6(__VA_ARGS__,)), (0))
31
#define Z_IS_ENABLED_ALL_8(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_7(__VA_ARGS__,)), (0))
32
#define Z_IS_ENABLED_ALL_9(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_8(__VA_ARGS__,)), (0))
33
#define Z_IS_ENABLED_ALL_10(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_9(__VA_ARGS__,)), (0))
34
#define Z_IS_ENABLED_ALL_11(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_10(__VA_ARGS__,)), (0))
35
#define Z_IS_ENABLED_ALL_12(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_11(__VA_ARGS__,)), (0))
36
#define Z_IS_ENABLED_ALL_13(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_12(__VA_ARGS__,)), (0))
37
#define Z_IS_ENABLED_ALL_14(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_13(__VA_ARGS__,)), (0))
38
#define Z_IS_ENABLED_ALL_15(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_14(__VA_ARGS__,)), (0))
39
#define Z_IS_ENABLED_ALL_16(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_15(__VA_ARGS__,)), (0))
40
#define Z_IS_ENABLED_ALL_17(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_16(__VA_ARGS__,)), (0))
41
#define Z_IS_ENABLED_ALL_18(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_17(__VA_ARGS__,)), (0))
42
#define Z_IS_ENABLED_ALL_19(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_18(__VA_ARGS__,)), (0))
43
#define Z_IS_ENABLED_ALL_20(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_19(__VA_ARGS__,)), (0))
44
#define Z_IS_ENABLED_ALL_21(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_20(__VA_ARGS__,)), (0))
45
#define Z_IS_ENABLED_ALL_22(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_21(__VA_ARGS__,)), (0))
46
#define Z_IS_ENABLED_ALL_23(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_22(__VA_ARGS__,)), (0))
47
#define Z_IS_ENABLED_ALL_24(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_23(__VA_ARGS__,)), (0))
48
#define Z_IS_ENABLED_ALL_25(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_24(__VA_ARGS__,)), (0))
49
#define Z_IS_ENABLED_ALL_26(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_25(__VA_ARGS__,)), (0))
50
#define Z_IS_ENABLED_ALL_27(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_26(__VA_ARGS__,)), (0))
51
#define Z_IS_ENABLED_ALL_28(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_27(__VA_ARGS__,)), (0))
52
#define Z_IS_ENABLED_ALL_29(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_28(__VA_ARGS__,)), (0))
53
#define Z_IS_ENABLED_ALL_30(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_29(__VA_ARGS__,)), (0))
54
#define Z_IS_ENABLED_ALL_31(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_30(__VA_ARGS__,)), (0))
55
#define Z_IS_ENABLED_ALL_32(a, ...) COND_CODE_1(a, (Z_IS_ENABLED_ALL_31(__VA_ARGS__,)), (0))
56
57
/* Helper macro for IS_ENABLED_ANY */
58
#define Z_IS_ENABLED_ANY(...) \
59
Z_IS_ENABLED_ANY_N(NUM_VA_ARGS(__VA_ARGS__), __VA_ARGS__)
60
#define Z_IS_ENABLED_ANY_N(N, ...) UTIL_CAT(Z_IS_ENABLED_ANY_, N)(__VA_ARGS__)
61
#define Z_IS_ENABLED_ANY_0(...)
62
#define Z_IS_ENABLED_ANY_1(a, ...) COND_CODE_1(a, (1), (0))
63
#define Z_IS_ENABLED_ANY_2(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_1(__VA_ARGS__,)))
64
#define Z_IS_ENABLED_ANY_3(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_2(__VA_ARGS__,)))
65
#define Z_IS_ENABLED_ANY_4(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_3(__VA_ARGS__,)))
66
#define Z_IS_ENABLED_ANY_5(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_4(__VA_ARGS__,)))
67
#define Z_IS_ENABLED_ANY_6(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_5(__VA_ARGS__,)))
68
#define Z_IS_ENABLED_ANY_7(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_6(__VA_ARGS__,)))
69
#define Z_IS_ENABLED_ANY_8(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_7(__VA_ARGS__,)))
70
#define Z_IS_ENABLED_ANY_9(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_8(__VA_ARGS__,)))
71
#define Z_IS_ENABLED_ANY_10(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_9(__VA_ARGS__,)))
72
#define Z_IS_ENABLED_ANY_11(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_10(__VA_ARGS__,)))
73
#define Z_IS_ENABLED_ANY_12(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_11(__VA_ARGS__,)))
74
#define Z_IS_ENABLED_ANY_13(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_12(__VA_ARGS__,)))
75
#define Z_IS_ENABLED_ANY_14(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_13(__VA_ARGS__,)))
76
#define Z_IS_ENABLED_ANY_15(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_14(__VA_ARGS__,)))
77
#define Z_IS_ENABLED_ANY_16(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_15(__VA_ARGS__,)))
78
#define Z_IS_ENABLED_ANY_17(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_16(__VA_ARGS__,)))
79
#define Z_IS_ENABLED_ANY_18(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_17(__VA_ARGS__,)))
80
#define Z_IS_ENABLED_ANY_19(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_18(__VA_ARGS__,)))
81
#define Z_IS_ENABLED_ANY_20(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_19(__VA_ARGS__,)))
82
#define Z_IS_ENABLED_ANY_21(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_20(__VA_ARGS__,)))
83
#define Z_IS_ENABLED_ANY_22(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_21(__VA_ARGS__,)))
84
#define Z_IS_ENABLED_ANY_23(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_22(__VA_ARGS__,)))
85
#define Z_IS_ENABLED_ANY_24(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_23(__VA_ARGS__,)))
86
#define Z_IS_ENABLED_ANY_25(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_24(__VA_ARGS__,)))
87
#define Z_IS_ENABLED_ANY_26(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_25(__VA_ARGS__,)))
88
#define Z_IS_ENABLED_ANY_27(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_26(__VA_ARGS__,)))
89
#define Z_IS_ENABLED_ANY_28(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_27(__VA_ARGS__,)))
90
#define Z_IS_ENABLED_ANY_29(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_28(__VA_ARGS__,)))
91
#define Z_IS_ENABLED_ANY_30(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_29(__VA_ARGS__,)))
92
#define Z_IS_ENABLED_ANY_31(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_30(__VA_ARGS__,)))
93
#define Z_IS_ENABLED_ANY_32(a, ...) COND_CODE_1(a, (1), (Z_IS_ENABLED_ANY_31(__VA_ARGS__,)))
94
95
/* Helper macro for IF_ENABLED_ALL */
96
#define Z_IF_ENABLED_ALL(_code, ...) \
97
Z_IF_ENABLED_ALL_N(NUM_VA_ARGS(__VA_ARGS__), _code, __VA_ARGS__)
98
#define Z_IF_ENABLED_ALL_N(N, _code, ...) \
99
UTIL_CAT(Z_IF_ENABLED_ALL_, N)(_code, __VA_ARGS__)
100
#define IF_ENABLED_ALL_0(_code, ...)
101
#define Z_IF_ENABLED_ALL_1(_code, a, ...) \
102
COND_CODE_1(a, _code, ())
103
#define Z_IF_ENABLED_ALL_2(_code, a, ...) \
104
COND_CODE_1(a, (Z_IF_ENABLED_ALL_1(_code, __VA_ARGS__,)), ())
105
#define Z_IF_ENABLED_ALL_3(_code, a, ...) \
106
COND_CODE_1(a, (Z_IF_ENABLED_ALL_2(_code, __VA_ARGS__,)), ())
107
#define Z_IF_ENABLED_ALL_4(_code, a, ...) \
108
COND_CODE_1(a, (Z_IF_ENABLED_ALL_3(_code, __VA_ARGS__,)), ())
109
#define Z_IF_ENABLED_ALL_5(_code, a, ...) \
110
COND_CODE_1(a, (Z_IF_ENABLED_ALL_4(_code, __VA_ARGS__,)), ())
111
#define Z_IF_ENABLED_ALL_6(_code, a, ...) \
112
COND_CODE_1(a, (Z_IF_ENABLED_ALL_5(_code, __VA_ARGS__,)), ())
113
#define Z_IF_ENABLED_ALL_7(_code, a, ...) \
114
COND_CODE_1(a, (Z_IF_ENABLED_ALL_6(_code, __VA_ARGS__,)), ())
115
#define Z_IF_ENABLED_ALL_8(_code, a, ...) \
116
COND_CODE_1(a, (Z_IF_ENABLED_ALL_7(_code, __VA_ARGS__,)), ())
117
#define Z_IF_ENABLED_ALL_9(_code, a, ...) \
118
COND_CODE_1(a, (Z_IF_ENABLED_ALL_8(_code, __VA_ARGS__,)), ())
119
#define Z_IF_ENABLED_ALL_10(_code, a, ...) \
120
COND_CODE_1(a, (Z_IF_ENABLED_ALL_9(_code, __VA_ARGS__,)), ())
121
#define Z_IF_ENABLED_ALL_11(_code, a, ...) \
122
COND_CODE_1(a, (Z_IF_ENABLED_ALL_10(_code, __VA_ARGS__,)), ())
123
#define Z_IF_ENABLED_ALL_12(_code, a, ...) \
124
COND_CODE_1(a, (Z_IF_ENABLED_ALL_11(_code, __VA_ARGS__,)), ())
125
#define Z_IF_ENABLED_ALL_13(_code, a, ...) \
126
COND_CODE_1(a, (Z_IF_ENABLED_ALL_12(_code, __VA_ARGS__,)), ())
127
#define Z_IF_ENABLED_ALL_14(_code, a, ...) \
128
COND_CODE_1(a, (Z_IF_ENABLED_ALL_13(_code, __VA_ARGS__,)), ())
129
#define Z_IF_ENABLED_ALL_15(_code, a, ...) \
130
COND_CODE_1(a, (Z_IF_ENABLED_ALL_14(_code, __VA_ARGS__,)), ())
131
#define Z_IF_ENABLED_ALL_16(_code, a, ...) \
132
COND_CODE_1(a, (Z_IF_ENABLED_ALL_15(_code, __VA_ARGS__,)), ())
133
#define Z_IF_ENABLED_ALL_17(_code, a, ...) \
134
COND_CODE_1(a, (Z_IF_ENABLED_ALL_16(_code, __VA_ARGS__,)), ())
135
#define Z_IF_ENABLED_ALL_18(_code, a, ...) \
136
COND_CODE_1(a, (Z_IF_ENABLED_ALL_17(_code, __VA_ARGS__,)), ())
137
#define Z_IF_ENABLED_ALL_19(_code, a, ...) \
138
COND_CODE_1(a, (Z_IF_ENABLED_ALL_18(_code, __VA_ARGS__,)), ())
139
#define Z_IF_ENABLED_ALL_20(_code, a, ...) \
140
COND_CODE_1(a, (Z_IF_ENABLED_ALL_19(_code, __VA_ARGS__,)), ())
141
#define Z_IF_ENABLED_ALL_21(_code, a, ...) \
142
COND_CODE_1(a, (Z_IF_ENABLED_ALL_20(_code, __VA_ARGS__,)), ())
143
#define Z_IF_ENABLED_ALL_22(_code, a, ...) \
144
COND_CODE_1(a, (Z_IF_ENABLED_ALL_21(_code, __VA_ARGS__,)), ())
145
#define Z_IF_ENABLED_ALL_23(_code, a, ...) \
146
COND_CODE_1(a, (Z_IF_ENABLED_ALL_22(_code, __VA_ARGS__,)), ())
147
#define Z_IF_ENABLED_ALL_24(_code, a, ...) \
148
COND_CODE_1(a, (Z_IF_ENABLED_ALL_23(_code, __VA_ARGS__,)), ())
149
#define Z_IF_ENABLED_ALL_25(_code, a, ...) \
150
COND_CODE_1(a, (Z_IF_ENABLED_ALL_24(_code, __VA_ARGS__,)), ())
151
#define Z_IF_ENABLED_ALL_26(_code, a, ...) \
152
COND_CODE_1(a, (Z_IF_ENABLED_ALL_25(_code, __VA_ARGS__,)), ())
153
#define Z_IF_ENABLED_ALL_27(_code, a, ...) \
154
COND_CODE_1(a, (Z_IF_ENABLED_ALL_26(_code, __VA_ARGS__,)), ())
155
#define Z_IF_ENABLED_ALL_28(_code, a, ...) \
156
COND_CODE_1(a, (Z_IF_ENABLED_ALL_27(_code, __VA_ARGS__,)), ())
157
#define Z_IF_ENABLED_ALL_29(_code, a, ...) \
158
COND_CODE_1(a, (Z_IF_ENABLED_ALL_28(_code, __VA_ARGS__,)), ())
159
#define Z_IF_ENABLED_ALL_30(_code, a, ...) \
160
COND_CODE_1(a, (Z_IF_ENABLED_ALL_29(_code, __VA_ARGS__,)), ())
161
#define Z_IF_ENABLED_ALL_31(_code, a, ...) \
162
COND_CODE_1(a, (Z_IF_ENABLED_ALL_30(_code, __VA_ARGS__,)), ())
163
#define Z_IF_ENABLED_ALL_32(_code, a, ...) \
164
COND_CODE_1(a, (Z_IF_ENABLED_ALL_31(_code, __VA_ARGS__,)), ())
165
166
/* Helper macro for IF_ENABLED_ANY */
167
#define Z_IF_ENABLED_ANY(_code, ...) \
168
Z_IF_ENABLED_ANY_N(NUM_VA_ARGS(__VA_ARGS__), _code, __VA_ARGS__)
169
#define Z_IF_ENABLED_ANY_N(N, _code, ...) \
170
UTIL_CAT(Z_IF_ENABLED_ANY_, N)(_code, __VA_ARGS__)
171
#define Z_IF_ENABLED_ANY_0(_code, ...)
172
#define Z_IF_ENABLED_ANY_1(_code, a, ...) \
173
COND_CODE_1(a, _code, ())
174
#define Z_IF_ENABLED_ANY_2(_code, a, ...) \
175
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_1(_code, __VA_ARGS__,)))
176
#define Z_IF_ENABLED_ANY_3(_code, a, ...) \
177
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_2(_code, __VA_ARGS__,)))
178
#define Z_IF_ENABLED_ANY_4(_code, a, ...) \
179
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_3(_code, __VA_ARGS__,)))
180
#define Z_IF_ENABLED_ANY_5(_code, a, ...) \
181
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_4(_code, __VA_ARGS__,)))
182
#define Z_IF_ENABLED_ANY_6(_code, a, ...) \
183
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_5(_code, __VA_ARGS__,)))
184
#define Z_IF_ENABLED_ANY_7(_code, a, ...) \
185
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_6(_code, __VA_ARGS__,)))
186
#define Z_IF_ENABLED_ANY_8(_code, a, ...) \
187
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_7(_code, __VA_ARGS__,)))
188
#define Z_IF_ENABLED_ANY_9(_code, a, ...) \
189
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_8(_code, __VA_ARGS__,)))
190
#define Z_IF_ENABLED_ANY_10(_code, a, ...) \
191
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_9(_code, __VA_ARGS__,)))
192
#define Z_IF_ENABLED_ANY_11(_code, a, ...) \
193
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_10(_code, __VA_ARGS__,)))
194
#define Z_IF_ENABLED_ANY_12(_code, a, ...) \
195
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_11(_code, __VA_ARGS__,)))
196
#define Z_IF_ENABLED_ANY_13(_code, a, ...) \
197
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_12(_code, __VA_ARGS__,)))
198
#define Z_IF_ENABLED_ANY_14(_code, a, ...) \
199
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_13(_code, __VA_ARGS__,)))
200
#define Z_IF_ENABLED_ANY_15(_code, a, ...) \
201
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_14(_code, __VA_ARGS__,)))
202
#define Z_IF_ENABLED_ANY_16(_code, a, ...) \
203
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_15(_code, __VA_ARGS__,)))
204
#define Z_IF_ENABLED_ANY_17(_code, a, ...) \
205
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_16(_code, __VA_ARGS__,)))
206
#define Z_IF_ENABLED_ANY_18(_code, a, ...) \
207
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_17(_code, __VA_ARGS__,)))
208
#define Z_IF_ENABLED_ANY_19(_code, a, ...) \
209
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_18(_code, __VA_ARGS__,)))
210
#define Z_IF_ENABLED_ANY_20(_code, a, ...) \
211
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_19(_code, __VA_ARGS__,)))
212
#define Z_IF_ENABLED_ANY_21(_code, a, ...) \
213
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_20(_code, __VA_ARGS__,)))
214
#define Z_IF_ENABLED_ANY_22(_code, a, ...) \
215
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_21(_code, __VA_ARGS__,)))
216
#define Z_IF_ENABLED_ANY_23(_code, a, ...) \
217
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_22(_code, __VA_ARGS__,)))
218
#define Z_IF_ENABLED_ANY_24(_code, a, ...) \
219
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_23(_code, __VA_ARGS__,)))
220
#define Z_IF_ENABLED_ANY_25(_code, a, ...) \
221
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_24(_code, __VA_ARGS__,)))
222
#define Z_IF_ENABLED_ANY_26(_code, a, ...) \
223
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_25(_code, __VA_ARGS__,)))
224
#define Z_IF_ENABLED_ANY_27(_code, a, ...) \
225
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_26(_code, __VA_ARGS__,)))
226
#define Z_IF_ENABLED_ANY_28(_code, a, ...) \
227
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_27(_code, __VA_ARGS__,)))
228
#define Z_IF_ENABLED_ANY_29(_code, a, ...) \
229
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_28(_code, __VA_ARGS__,)))
230
#define Z_IF_ENABLED_ANY_30(_code, a, ...) \
231
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_29(_code, __VA_ARGS__,)))
232
#define Z_IF_ENABLED_ANY_31(_code, a, ...) \
233
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_30(_code, __VA_ARGS__,)))
234
#define Z_IF_ENABLED_ANY_32(_code, a, ...) \
235
COND_CODE_1(a, _code, (Z_IF_ENABLED_ANY_31(_code, __VA_ARGS__,)))
236
237
#define UTIL_AND_CAT(a, b) a && b
238
/* Used by UTIL_CONCAT_AND */
239
#define Z_UTIL_CONCAT_AND(...) \
240
(Z_UTIL_CONCAT_AND_N(NUM_VA_ARGS(__VA_ARGS__), __VA_ARGS__))
241
#define Z_UTIL_CONCAT_AND_N(N, ...) UTIL_CAT(Z_UTIL_CONCAT_AND_, N)(__VA_ARGS__)
242
#define Z_UTIL_CONCAT_AND_0
243
#define Z_UTIL_CONCAT_AND_1(a, ...) a
244
#define Z_UTIL_CONCAT_AND_2(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_1(__VA_ARGS__,))
245
#define Z_UTIL_CONCAT_AND_3(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_2(__VA_ARGS__,))
246
#define Z_UTIL_CONCAT_AND_4(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_3(__VA_ARGS__,))
247
#define Z_UTIL_CONCAT_AND_5(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_4(__VA_ARGS__,))
248
#define Z_UTIL_CONCAT_AND_6(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_5(__VA_ARGS__,))
249
#define Z_UTIL_CONCAT_AND_7(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_6(__VA_ARGS__,))
250
#define Z_UTIL_CONCAT_AND_8(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_7(__VA_ARGS__,))
251
#define Z_UTIL_CONCAT_AND_9(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_8(__VA_ARGS__,))
252
#define Z_UTIL_CONCAT_AND_10(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_9(__VA_ARGS__,))
253
#define Z_UTIL_CONCAT_AND_11(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_10(__VA_ARGS__,))
254
#define Z_UTIL_CONCAT_AND_12(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_11(__VA_ARGS__,))
255
#define Z_UTIL_CONCAT_AND_13(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_12(__VA_ARGS__,))
256
#define Z_UTIL_CONCAT_AND_14(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_13(__VA_ARGS__,))
257
#define Z_UTIL_CONCAT_AND_15(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_14(__VA_ARGS__,))
258
#define Z_UTIL_CONCAT_AND_16(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_15(__VA_ARGS__,))
259
#define Z_UTIL_CONCAT_AND_17(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_16(__VA_ARGS__,))
260
#define Z_UTIL_CONCAT_AND_18(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_17(__VA_ARGS__,))
261
#define Z_UTIL_CONCAT_AND_19(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_18(__VA_ARGS__,))
262
#define Z_UTIL_CONCAT_AND_20(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_19(__VA_ARGS__,))
263
#define Z_UTIL_CONCAT_AND_21(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_20(__VA_ARGS__,))
264
#define Z_UTIL_CONCAT_AND_22(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_21(__VA_ARGS__,))
265
#define Z_UTIL_CONCAT_AND_23(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_22(__VA_ARGS__,))
266
#define Z_UTIL_CONCAT_AND_24(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_23(__VA_ARGS__,))
267
#define Z_UTIL_CONCAT_AND_25(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_24(__VA_ARGS__,))
268
#define Z_UTIL_CONCAT_AND_26(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_25(__VA_ARGS__,))
269
#define Z_UTIL_CONCAT_AND_27(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_26(__VA_ARGS__,))
270
#define Z_UTIL_CONCAT_AND_28(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_27(__VA_ARGS__,))
271
#define Z_UTIL_CONCAT_AND_29(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_28(__VA_ARGS__,))
272
#define Z_UTIL_CONCAT_AND_30(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_29(__VA_ARGS__,))
273
#define Z_UTIL_CONCAT_AND_31(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_30(__VA_ARGS__,))
274
#define Z_UTIL_CONCAT_AND_32(a, ...) UTIL_AND_CAT(a, Z_UTIL_CONCAT_AND_31(__VA_ARGS__,))
275
276
#define UTIL_OR_CAT(a, b) a || b
277
/* Used by UTIL_CONCAT_OR */
278
#define Z_UTIL_CONCAT_OR(...) \
279
(Z_UTIL_CONCAT_OR_N(NUM_VA_ARGS(__VA_ARGS__), __VA_ARGS__))
280
#define Z_UTIL_CONCAT_OR_N(N, ...) UTIL_CAT(Z_UTIL_CONCAT_OR_, N)(__VA_ARGS__)
281
#define Z_UTIL_CONCAT_OR_0
282
#define Z_UTIL_CONCAT_OR_1(a, ...) a
283
#define Z_UTIL_CONCAT_OR_2(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_1(__VA_ARGS__,))
284
#define Z_UTIL_CONCAT_OR_3(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_2(__VA_ARGS__,))
285
#define Z_UTIL_CONCAT_OR_4(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_3(__VA_ARGS__,))
286
#define Z_UTIL_CONCAT_OR_5(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_4(__VA_ARGS__,))
287
#define Z_UTIL_CONCAT_OR_6(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_5(__VA_ARGS__,))
288
#define Z_UTIL_CONCAT_OR_7(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_6(__VA_ARGS__,))
289
#define Z_UTIL_CONCAT_OR_8(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_7(__VA_ARGS__,))
290
#define Z_UTIL_CONCAT_OR_9(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_8(__VA_ARGS__,))
291
#define Z_UTIL_CONCAT_OR_10(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_9(__VA_ARGS__,))
292
#define Z_UTIL_CONCAT_OR_11(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_10(__VA_ARGS__,))
293
#define Z_UTIL_CONCAT_OR_12(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_11(__VA_ARGS__,))
294
#define Z_UTIL_CONCAT_OR_13(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_12(__VA_ARGS__,))
295
#define Z_UTIL_CONCAT_OR_14(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_13(__VA_ARGS__,))
296
#define Z_UTIL_CONCAT_OR_15(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_14(__VA_ARGS__,))
297
#define Z_UTIL_CONCAT_OR_16(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_15(__VA_ARGS__,))
298
#define Z_UTIL_CONCAT_OR_17(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_16(__VA_ARGS__,))
299
#define Z_UTIL_CONCAT_OR_18(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_17(__VA_ARGS__,))
300
#define Z_UTIL_CONCAT_OR_19(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_18(__VA_ARGS__,))
301
#define Z_UTIL_CONCAT_OR_20(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_19(__VA_ARGS__,))
302
#define Z_UTIL_CONCAT_OR_21(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_20(__VA_ARGS__,))
303
#define Z_UTIL_CONCAT_OR_22(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_21(__VA_ARGS__,))
304
#define Z_UTIL_CONCAT_OR_23(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_22(__VA_ARGS__,))
305
#define Z_UTIL_CONCAT_OR_24(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_23(__VA_ARGS__,))
306
#define Z_UTIL_CONCAT_OR_25(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_24(__VA_ARGS__,))
307
#define Z_UTIL_CONCAT_OR_26(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_25(__VA_ARGS__,))
308
#define Z_UTIL_CONCAT_OR_27(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_26(__VA_ARGS__,))
309
#define Z_UTIL_CONCAT_OR_28(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_27(__VA_ARGS__,))
310
#define Z_UTIL_CONCAT_OR_29(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_28(__VA_ARGS__,))
311
#define Z_UTIL_CONCAT_OR_30(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_29(__VA_ARGS__,))
312
#define Z_UTIL_CONCAT_OR_31(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_30(__VA_ARGS__,))
313
#define Z_UTIL_CONCAT_OR_32(a, ...) UTIL_OR_CAT(a, Z_UTIL_CONCAT_OR_31(__VA_ARGS__,))
314
315
#endif
/* UTIL_INTERNAL_H_ */
include
util
util_internal.h
Generated on Wed Jun 10 2026 17:22:24 for nRF Connect SDK API by
1.12.0