Github User Fetcher
1.0.0
C Application with Server and GUI
Loading...
Searching...
No Matches
designated-initializer-compat.h
Go to the documentation of this file.
1
/*
2
* The MIT License (MIT)
3
*
4
* Copyright © 2015-2016 Franklin "Snaipe" Mathieu <http://snai.pe/>
5
*
6
* Permission is hereby granted, free of charge, to any person obtaining a copy
7
* of this software and associated documentation files (the "Software"), to deal
8
* in the Software without restriction, including without limitation the rights
9
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
* copies of the Software, and to permit persons to whom the Software is
11
* furnished to do so, subject to the following conditions:
12
*
13
* The above copyright notice and this permission notice shall be included in
14
* all copies or substantial portions of the Software.
15
*
16
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
22
* THE SOFTWARE.
23
*/
24
#ifndef CRITERION_DESIGNATED_INITIALIZER_COMPAT_HH_
25
#define CRITERION_DESIGNATED_INITIALIZER_COMPAT_HH_
26
27
#include "
common.h
"
28
29
#define CRITERION_ARG_LENGTH(...) \
30
CR_EXPAND(CRITERION_ARG_LENGTH_(__VA_ARGS__, \
31
63, 62, 61, 60, 59, 58, 57, 56, 55, 54, 53, 52, 51, 50, 49, 48, 47, 46, 45, \
32
44, 43, 42, 41, 40, 39, 38, 37, 36, 35, 34, 33, 32, 31, 30, 29, 28, 27, 26, \
33
25, 24, 23, 22, 21, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, \
34
5, 4, 3, 2, 1, 0))
35
#define CRITERION_ARG_LENGTH_(_63, _62, _61, _60, _59, _58, _57, _56, _55, _54, _53, \
36
_52, _51, _50, _49, _48, _47, _46, _45, _44, _43, _42, _41, _40, _39, _38, \
37
_37, _36, _35, _34, _33, _32, _31, _30, _29, _28, _27, _26, _25, _24, _23, \
38
_22, _21, _20, _19, _18, _17, _16, _15, _14, _13, _12, _11, _10, _9, _8, \
39
_7, _6, _5, _4, _3, _2, _1, count, ...) count
40
41
#define CRITERION_APPLY_1(Macro, ...)
42
#define CRITERION_APPLY_2(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_1(Macro, Prefix, __VA_ARGS__))
43
#define CRITERION_APPLY_3(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_2(Macro, Prefix, __VA_ARGS__))
44
#define CRITERION_APPLY_4(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_3(Macro, Prefix, __VA_ARGS__))
45
#define CRITERION_APPLY_5(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_4(Macro, Prefix, __VA_ARGS__))
46
#define CRITERION_APPLY_6(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_5(Macro, Prefix, __VA_ARGS__))
47
#define CRITERION_APPLY_7(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_6(Macro, Prefix, __VA_ARGS__))
48
#define CRITERION_APPLY_8(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_7(Macro, Prefix, __VA_ARGS__))
49
#define CRITERION_APPLY_9(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_8(Macro, Prefix, __VA_ARGS__))
50
#define CRITERION_APPLY_10(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_9(Macro, Prefix, __VA_ARGS__))
51
#define CRITERION_APPLY_11(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_10(Macro, Prefix, __VA_ARGS__))
52
#define CRITERION_APPLY_12(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_11(Macro, Prefix, __VA_ARGS__))
53
#define CRITERION_APPLY_13(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_12(Macro, Prefix, __VA_ARGS__))
54
#define CRITERION_APPLY_14(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_13(Macro, Prefix, __VA_ARGS__))
55
#define CRITERION_APPLY_15(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_14(Macro, Prefix, __VA_ARGS__))
56
#define CRITERION_APPLY_16(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_15(Macro, Prefix, __VA_ARGS__))
57
#define CRITERION_APPLY_17(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_16(Macro, Prefix, __VA_ARGS__))
58
#define CRITERION_APPLY_18(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_17(Macro, Prefix, __VA_ARGS__))
59
#define CRITERION_APPLY_19(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_18(Macro, Prefix, __VA_ARGS__))
60
#define CRITERION_APPLY_20(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_19(Macro, Prefix, __VA_ARGS__))
61
#define CRITERION_APPLY_21(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_20(Macro, Prefix, __VA_ARGS__))
62
#define CRITERION_APPLY_22(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_21(Macro, Prefix, __VA_ARGS__))
63
#define CRITERION_APPLY_23(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_22(Macro, Prefix, __VA_ARGS__))
64
#define CRITERION_APPLY_24(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_23(Macro, Prefix, __VA_ARGS__))
65
#define CRITERION_APPLY_25(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_24(Macro, Prefix, __VA_ARGS__))
66
#define CRITERION_APPLY_26(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_25(Macro, Prefix, __VA_ARGS__))
67
#define CRITERION_APPLY_27(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_26(Macro, Prefix, __VA_ARGS__))
68
#define CRITERION_APPLY_28(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_27(Macro, Prefix, __VA_ARGS__))
69
#define CRITERION_APPLY_29(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_28(Macro, Prefix, __VA_ARGS__))
70
#define CRITERION_APPLY_30(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_29(Macro, Prefix, __VA_ARGS__))
71
#define CRITERION_APPLY_31(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_30(Macro, Prefix, __VA_ARGS__))
72
#define CRITERION_APPLY_32(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_31(Macro, Prefix, __VA_ARGS__))
73
#define CRITERION_APPLY_33(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_32(Macro, Prefix, __VA_ARGS__))
74
#define CRITERION_APPLY_34(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_33(Macro, Prefix, __VA_ARGS__))
75
#define CRITERION_APPLY_35(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_34(Macro, Prefix, __VA_ARGS__))
76
#define CRITERION_APPLY_36(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_35(Macro, Prefix, __VA_ARGS__))
77
#define CRITERION_APPLY_37(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_36(Macro, Prefix, __VA_ARGS__))
78
#define CRITERION_APPLY_38(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_37(Macro, Prefix, __VA_ARGS__))
79
#define CRITERION_APPLY_39(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_38(Macro, Prefix, __VA_ARGS__))
80
#define CRITERION_APPLY_40(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_39(Macro, Prefix, __VA_ARGS__))
81
#define CRITERION_APPLY_41(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_40(Macro, Prefix, __VA_ARGS__))
82
#define CRITERION_APPLY_42(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_41(Macro, Prefix, __VA_ARGS__))
83
#define CRITERION_APPLY_43(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_42(Macro, Prefix, __VA_ARGS__))
84
#define CRITERION_APPLY_44(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_43(Macro, Prefix, __VA_ARGS__))
85
#define CRITERION_APPLY_45(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_44(Macro, Prefix, __VA_ARGS__))
86
#define CRITERION_APPLY_46(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_45(Macro, Prefix, __VA_ARGS__))
87
#define CRITERION_APPLY_47(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_46(Macro, Prefix, __VA_ARGS__))
88
#define CRITERION_APPLY_48(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_47(Macro, Prefix, __VA_ARGS__))
89
#define CRITERION_APPLY_49(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_48(Macro, Prefix, __VA_ARGS__))
90
#define CRITERION_APPLY_50(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_49(Macro, Prefix, __VA_ARGS__))
91
#define CRITERION_APPLY_51(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_50(Macro, Prefix, __VA_ARGS__))
92
#define CRITERION_APPLY_52(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_51(Macro, Prefix, __VA_ARGS__))
93
#define CRITERION_APPLY_53(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_52(Macro, Prefix, __VA_ARGS__))
94
#define CRITERION_APPLY_54(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_53(Macro, Prefix, __VA_ARGS__))
95
#define CRITERION_APPLY_55(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_54(Macro, Prefix, __VA_ARGS__))
96
#define CRITERION_APPLY_56(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_55(Macro, Prefix, __VA_ARGS__))
97
#define CRITERION_APPLY_57(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_56(Macro, Prefix, __VA_ARGS__))
98
#define CRITERION_APPLY_58(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_57(Macro, Prefix, __VA_ARGS__))
99
#define CRITERION_APPLY_59(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_58(Macro, Prefix, __VA_ARGS__))
100
#define CRITERION_APPLY_60(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_59(Macro, Prefix, __VA_ARGS__))
101
#define CRITERION_APPLY_61(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_60(Macro, Prefix, __VA_ARGS__))
102
#define CRITERION_APPLY_62(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_61(Macro, Prefix, __VA_ARGS__))
103
#define CRITERION_APPLY_63(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_62(Macro, Prefix, __VA_ARGS__))
104
#define CRITERION_APPLY_64(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_63(Macro, Prefix, __VA_ARGS__))
105
#define CRITERION_APPLY_65(Macro, Prefix, Head, ...) Macro(Prefix, Head)CR_EXPAND(CRITERION_APPLY_64(Macro, Prefix, __VA_ARGS__))
106
107
#define CRITERION_APPLY__(Macro, Prefix, n, ...) CR_EXPAND(CRITERION_APPLY_ ## n(Macro, Prefix, __VA_ARGS__, ))
108
#define CRITERION_APPLY_(Macro, n, Prefix, ...) CR_EXPAND(CRITERION_APPLY__(Macro, Prefix, n, __VA_ARGS__))
109
#define CRITERION_APPLY(Macro, ...) CR_EXPAND(CRITERION_APPLY_(Macro, CRITERION_ARG_LENGTH(__VA_ARGS__), __VA_ARGS__))
110
111
#define CRITERION_ADD_PREFIX_ONCE(Prefix, Field) Prefix Field;
112
#define CRITERION_ADD_PREFIX(...) \
113
CR_EXPAND(CRITERION_APPLY(CRITERION_ADD_PREFIX_ONCE, __VA_ARGS__))
114
115
#ifdef __cplusplus
116
# define CRITERION_MAKE_STRUCT(Type, ...) \
117
[]() -> Type { \
118
Type t; \
119
std::memset(&t, 0, sizeof (t)); \
120
CR_EXPAND(CRITERION_ADD_PREFIX(t, __VA_ARGS__)) \
121
return t; \
122
} ()
123
#else
124
# define CRITERION_MAKE_STRUCT(Type, ...) { __VA_ARGS__ }
125
#endif
126
127
#endif
/* !CRITERION_DESIGNATED_INITIALIZER_COMPAT_HH_ */
common.h
nix
store
2xpcmdrzviw89gzpf8p7l7691wk51i89-criterion-2.4.2-dev
include
criterion
internal
designated-initializer-compat.h
Generated by
1.10.0