1// Boost.Function library
2
3// Copyright Douglas Gregor 2003. Use, modification and
4// distribution is subject to the Boost Software License, Version
5// 1.0. (See accompanying file LICENSE_1_0.txt or copy at
6// http://www.boost.org/LICENSE_1_0.txt)
7
8// For more information, see http://www.boost.org
9
10#if BOOST_FUNCTION_NUM_ARGS == 0
11# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
12# define BOOST_FUNCTION_MAX_ARGS_DEFINED 0
13# ifndef BOOST_FUNCTION_0
14# define BOOST_FUNCTION_0
15# include <boost/function/function_template.hpp>
16# endif
17#elif BOOST_FUNCTION_NUM_ARGS == 1
18# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
19# define BOOST_FUNCTION_MAX_ARGS_DEFINED 1
20# ifndef BOOST_FUNCTION_1
21# define BOOST_FUNCTION_1
22# include <boost/function/function_template.hpp>
23# endif
24#elif BOOST_FUNCTION_NUM_ARGS == 2
25# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
26# define BOOST_FUNCTION_MAX_ARGS_DEFINED 2
27# ifndef BOOST_FUNCTION_2
28# define BOOST_FUNCTION_2
29# include <boost/function/function_template.hpp>
30# endif
31#elif BOOST_FUNCTION_NUM_ARGS == 3
32# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
33# define BOOST_FUNCTION_MAX_ARGS_DEFINED 3
34# ifndef BOOST_FUNCTION_3
35# define BOOST_FUNCTION_3
36# include <boost/function/function_template.hpp>
37# endif
38#elif BOOST_FUNCTION_NUM_ARGS == 4
39# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
40# define BOOST_FUNCTION_MAX_ARGS_DEFINED 4
41# ifndef BOOST_FUNCTION_4
42# define BOOST_FUNCTION_4
43# include <boost/function/function_template.hpp>
44# endif
45#elif BOOST_FUNCTION_NUM_ARGS == 5
46# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
47# define BOOST_FUNCTION_MAX_ARGS_DEFINED 5
48# ifndef BOOST_FUNCTION_5
49# define BOOST_FUNCTION_5
50# include <boost/function/function_template.hpp>
51# endif
52#elif BOOST_FUNCTION_NUM_ARGS == 6
53# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
54# define BOOST_FUNCTION_MAX_ARGS_DEFINED 6
55# ifndef BOOST_FUNCTION_6
56# define BOOST_FUNCTION_6
57# include <boost/function/function_template.hpp>
58# endif
59#elif BOOST_FUNCTION_NUM_ARGS == 7
60# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
61# define BOOST_FUNCTION_MAX_ARGS_DEFINED 7
62# ifndef BOOST_FUNCTION_7
63# define BOOST_FUNCTION_7
64# include <boost/function/function_template.hpp>
65# endif
66#elif BOOST_FUNCTION_NUM_ARGS == 8
67# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
68# define BOOST_FUNCTION_MAX_ARGS_DEFINED 8
69# ifndef BOOST_FUNCTION_8
70# define BOOST_FUNCTION_8
71# include <boost/function/function_template.hpp>
72# endif
73#elif BOOST_FUNCTION_NUM_ARGS == 9
74# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
75# define BOOST_FUNCTION_MAX_ARGS_DEFINED 9
76# ifndef BOOST_FUNCTION_9
77# define BOOST_FUNCTION_9
78# include <boost/function/function_template.hpp>
79# endif
80#elif BOOST_FUNCTION_NUM_ARGS == 10
81# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
82# define BOOST_FUNCTION_MAX_ARGS_DEFINED 10
83# ifndef BOOST_FUNCTION_10
84# define BOOST_FUNCTION_10
85# include <boost/function/function_template.hpp>
86# endif
87#elif BOOST_FUNCTION_NUM_ARGS == 11
88# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
89# define BOOST_FUNCTION_MAX_ARGS_DEFINED 11
90# ifndef BOOST_FUNCTION_11
91# define BOOST_FUNCTION_11
92# include <boost/function/function_template.hpp>
93# endif
94#elif BOOST_FUNCTION_NUM_ARGS == 12
95# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
96# define BOOST_FUNCTION_MAX_ARGS_DEFINED 12
97# ifndef BOOST_FUNCTION_12
98# define BOOST_FUNCTION_12
99# include <boost/function/function_template.hpp>
100# endif
101#elif BOOST_FUNCTION_NUM_ARGS == 13
102# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
103# define BOOST_FUNCTION_MAX_ARGS_DEFINED 13
104# ifndef BOOST_FUNCTION_13
105# define BOOST_FUNCTION_13
106# include <boost/function/function_template.hpp>
107# endif
108#elif BOOST_FUNCTION_NUM_ARGS == 14
109# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
110# define BOOST_FUNCTION_MAX_ARGS_DEFINED 14
111# ifndef BOOST_FUNCTION_14
112# define BOOST_FUNCTION_14
113# include <boost/function/function_template.hpp>
114# endif
115#elif BOOST_FUNCTION_NUM_ARGS == 15
116# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
117# define BOOST_FUNCTION_MAX_ARGS_DEFINED 15
118# ifndef BOOST_FUNCTION_15
119# define BOOST_FUNCTION_15
120# include <boost/function/function_template.hpp>
121# endif
122#elif BOOST_FUNCTION_NUM_ARGS == 16
123# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
124# define BOOST_FUNCTION_MAX_ARGS_DEFINED 16
125# ifndef BOOST_FUNCTION_16
126# define BOOST_FUNCTION_16
127# include <boost/function/function_template.hpp>
128# endif
129#elif BOOST_FUNCTION_NUM_ARGS == 17
130# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
131# define BOOST_FUNCTION_MAX_ARGS_DEFINED 17
132# ifndef BOOST_FUNCTION_17
133# define BOOST_FUNCTION_17
134# include <boost/function/function_template.hpp>
135# endif
136#elif BOOST_FUNCTION_NUM_ARGS == 18
137# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
138# define BOOST_FUNCTION_MAX_ARGS_DEFINED 18
139# ifndef BOOST_FUNCTION_18
140# define BOOST_FUNCTION_18
141# include <boost/function/function_template.hpp>
142# endif
143#elif BOOST_FUNCTION_NUM_ARGS == 19
144# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
145# define BOOST_FUNCTION_MAX_ARGS_DEFINED 19
146# ifndef BOOST_FUNCTION_19
147# define BOOST_FUNCTION_19
148# include <boost/function/function_template.hpp>
149# endif
150#elif BOOST_FUNCTION_NUM_ARGS == 20
151# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
152# define BOOST_FUNCTION_MAX_ARGS_DEFINED 20
153# ifndef BOOST_FUNCTION_20
154# define BOOST_FUNCTION_20
155# include <boost/function/function_template.hpp>
156# endif
157#elif BOOST_FUNCTION_NUM_ARGS == 21
158# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
159# define BOOST_FUNCTION_MAX_ARGS_DEFINED 21
160# ifndef BOOST_FUNCTION_21
161# define BOOST_FUNCTION_21
162# include <boost/function/function_template.hpp>
163# endif
164#elif BOOST_FUNCTION_NUM_ARGS == 22
165# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
166# define BOOST_FUNCTION_MAX_ARGS_DEFINED 22
167# ifndef BOOST_FUNCTION_22
168# define BOOST_FUNCTION_22
169# include <boost/function/function_template.hpp>
170# endif
171#elif BOOST_FUNCTION_NUM_ARGS == 23
172# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
173# define BOOST_FUNCTION_MAX_ARGS_DEFINED 23
174# ifndef BOOST_FUNCTION_23
175# define BOOST_FUNCTION_23
176# include <boost/function/function_template.hpp>
177# endif
178#elif BOOST_FUNCTION_NUM_ARGS == 24
179# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
180# define BOOST_FUNCTION_MAX_ARGS_DEFINED 24
181# ifndef BOOST_FUNCTION_24
182# define BOOST_FUNCTION_24
183# include <boost/function/function_template.hpp>
184# endif
185#elif BOOST_FUNCTION_NUM_ARGS == 25
186# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
187# define BOOST_FUNCTION_MAX_ARGS_DEFINED 25
188# ifndef BOOST_FUNCTION_25
189# define BOOST_FUNCTION_25
190# include <boost/function/function_template.hpp>
191# endif
192#elif BOOST_FUNCTION_NUM_ARGS == 26
193# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
194# define BOOST_FUNCTION_MAX_ARGS_DEFINED 26
195# ifndef BOOST_FUNCTION_26
196# define BOOST_FUNCTION_26
197# include <boost/function/function_template.hpp>
198# endif
199#elif BOOST_FUNCTION_NUM_ARGS == 27
200# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
201# define BOOST_FUNCTION_MAX_ARGS_DEFINED 27
202# ifndef BOOST_FUNCTION_27
203# define BOOST_FUNCTION_27
204# include <boost/function/function_template.hpp>
205# endif
206#elif BOOST_FUNCTION_NUM_ARGS == 28
207# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
208# define BOOST_FUNCTION_MAX_ARGS_DEFINED 28
209# ifndef BOOST_FUNCTION_28
210# define BOOST_FUNCTION_28
211# include <boost/function/function_template.hpp>
212# endif
213#elif BOOST_FUNCTION_NUM_ARGS == 29
214# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
215# define BOOST_FUNCTION_MAX_ARGS_DEFINED 29
216# ifndef BOOST_FUNCTION_29
217# define BOOST_FUNCTION_29
218# include <boost/function/function_template.hpp>
219# endif
220#elif BOOST_FUNCTION_NUM_ARGS == 30
221# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
222# define BOOST_FUNCTION_MAX_ARGS_DEFINED 30
223# ifndef BOOST_FUNCTION_30
224# define BOOST_FUNCTION_30
225# include <boost/function/function_template.hpp>
226# endif
227#elif BOOST_FUNCTION_NUM_ARGS == 31
228# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
229# define BOOST_FUNCTION_MAX_ARGS_DEFINED 31
230# ifndef BOOST_FUNCTION_31
231# define BOOST_FUNCTION_31
232# include <boost/function/function_template.hpp>
233# endif
234#elif BOOST_FUNCTION_NUM_ARGS == 32
235# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
236# define BOOST_FUNCTION_MAX_ARGS_DEFINED 32
237# ifndef BOOST_FUNCTION_32
238# define BOOST_FUNCTION_32
239# include <boost/function/function_template.hpp>
240# endif
241#elif BOOST_FUNCTION_NUM_ARGS == 33
242# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
243# define BOOST_FUNCTION_MAX_ARGS_DEFINED 33
244# ifndef BOOST_FUNCTION_33
245# define BOOST_FUNCTION_33
246# include <boost/function/function_template.hpp>
247# endif
248#elif BOOST_FUNCTION_NUM_ARGS == 34
249# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
250# define BOOST_FUNCTION_MAX_ARGS_DEFINED 34
251# ifndef BOOST_FUNCTION_34
252# define BOOST_FUNCTION_34
253# include <boost/function/function_template.hpp>
254# endif
255#elif BOOST_FUNCTION_NUM_ARGS == 35
256# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
257# define BOOST_FUNCTION_MAX_ARGS_DEFINED 35
258# ifndef BOOST_FUNCTION_35
259# define BOOST_FUNCTION_35
260# include <boost/function/function_template.hpp>
261# endif
262#elif BOOST_FUNCTION_NUM_ARGS == 36
263# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
264# define BOOST_FUNCTION_MAX_ARGS_DEFINED 36
265# ifndef BOOST_FUNCTION_36
266# define BOOST_FUNCTION_36
267# include <boost/function/function_template.hpp>
268# endif
269#elif BOOST_FUNCTION_NUM_ARGS == 37
270# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
271# define BOOST_FUNCTION_MAX_ARGS_DEFINED 37
272# ifndef BOOST_FUNCTION_37
273# define BOOST_FUNCTION_37
274# include <boost/function/function_template.hpp>
275# endif
276#elif BOOST_FUNCTION_NUM_ARGS == 38
277# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
278# define BOOST_FUNCTION_MAX_ARGS_DEFINED 38
279# ifndef BOOST_FUNCTION_38
280# define BOOST_FUNCTION_38
281# include <boost/function/function_template.hpp>
282# endif
283#elif BOOST_FUNCTION_NUM_ARGS == 39
284# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
285# define BOOST_FUNCTION_MAX_ARGS_DEFINED 39
286# ifndef BOOST_FUNCTION_39
287# define BOOST_FUNCTION_39
288# include <boost/function/function_template.hpp>
289# endif
290#elif BOOST_FUNCTION_NUM_ARGS == 40
291# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
292# define BOOST_FUNCTION_MAX_ARGS_DEFINED 40
293# ifndef BOOST_FUNCTION_40
294# define BOOST_FUNCTION_40
295# include <boost/function/function_template.hpp>
296# endif
297#elif BOOST_FUNCTION_NUM_ARGS == 41
298# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
299# define BOOST_FUNCTION_MAX_ARGS_DEFINED 41
300# ifndef BOOST_FUNCTION_41
301# define BOOST_FUNCTION_41
302# include <boost/function/function_template.hpp>
303# endif
304#elif BOOST_FUNCTION_NUM_ARGS == 42
305# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
306# define BOOST_FUNCTION_MAX_ARGS_DEFINED 42
307# ifndef BOOST_FUNCTION_42
308# define BOOST_FUNCTION_42
309# include <boost/function/function_template.hpp>
310# endif
311#elif BOOST_FUNCTION_NUM_ARGS == 43
312# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
313# define BOOST_FUNCTION_MAX_ARGS_DEFINED 43
314# ifndef BOOST_FUNCTION_43
315# define BOOST_FUNCTION_43
316# include <boost/function/function_template.hpp>
317# endif
318#elif BOOST_FUNCTION_NUM_ARGS == 44
319# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
320# define BOOST_FUNCTION_MAX_ARGS_DEFINED 44
321# ifndef BOOST_FUNCTION_44
322# define BOOST_FUNCTION_44
323# include <boost/function/function_template.hpp>
324# endif
325#elif BOOST_FUNCTION_NUM_ARGS == 45
326# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
327# define BOOST_FUNCTION_MAX_ARGS_DEFINED 45
328# ifndef BOOST_FUNCTION_45
329# define BOOST_FUNCTION_45
330# include <boost/function/function_template.hpp>
331# endif
332#elif BOOST_FUNCTION_NUM_ARGS == 46
333# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
334# define BOOST_FUNCTION_MAX_ARGS_DEFINED 46
335# ifndef BOOST_FUNCTION_46
336# define BOOST_FUNCTION_46
337# include <boost/function/function_template.hpp>
338# endif
339#elif BOOST_FUNCTION_NUM_ARGS == 47
340# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
341# define BOOST_FUNCTION_MAX_ARGS_DEFINED 47
342# ifndef BOOST_FUNCTION_47
343# define BOOST_FUNCTION_47
344# include <boost/function/function_template.hpp>
345# endif
346#elif BOOST_FUNCTION_NUM_ARGS == 48
347# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
348# define BOOST_FUNCTION_MAX_ARGS_DEFINED 48
349# ifndef BOOST_FUNCTION_48
350# define BOOST_FUNCTION_48
351# include <boost/function/function_template.hpp>
352# endif
353#elif BOOST_FUNCTION_NUM_ARGS == 49
354# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
355# define BOOST_FUNCTION_MAX_ARGS_DEFINED 49
356# ifndef BOOST_FUNCTION_49
357# define BOOST_FUNCTION_49
358# include <boost/function/function_template.hpp>
359# endif
360#elif BOOST_FUNCTION_NUM_ARGS == 50
361# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
362# define BOOST_FUNCTION_MAX_ARGS_DEFINED 50
363# ifndef BOOST_FUNCTION_50
364# define BOOST_FUNCTION_50
365# include <boost/function/function_template.hpp>
366# endif
367#else
368# error Cannot handle Boost.Function objects that accept more than 50 arguments!
369#endif
370

source code of include/boost/function/detail/maybe_include.hpp