• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*==============================================================================
2     Copyright (c) 2005-2010 Joel de Guzman
3     Copyright (c) 2010 Thomas Heller
4 
5     Distributed under the Boost Software License, Version 1.0. (See accompanying
6     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
7 ==============================================================================*/
8 
9 
10 
11 
12 
13 
14 
15         template <
16             typename Try
17 
18 
19         >
20         struct try_catch<
21             Try
22 
23 
24         >
25             : expr_ext<
26                 try_catch_actor
27               , tag::try_catch
28               , Try
29 
30             >
31         {};
32 
33 
34 
35 
36 
37 
38 
39 
40         template <
41             typename Try
42             ,
43             typename A0
44         >
45         struct try_catch<
46             Try
47             ,
48             A0
49         >
50             : expr_ext<
51                 try_catch_actor
52               , tag::try_catch
53               , Try
54               , A0
55             >
56         {};
57 
58 
59 
60 
61 
62 
63 
64 
65         template <
66             typename Try
67             ,
68             typename A0 , typename A1
69         >
70         struct try_catch<
71             Try
72             ,
73             A0 , A1
74         >
75             : expr_ext<
76                 try_catch_actor
77               , tag::try_catch
78               , Try
79               , A0 , A1
80             >
81         {};
82 
83 
84 
85 
86 
87 
88 
89 
90         template <
91             typename Try
92             ,
93             typename A0 , typename A1 , typename A2
94         >
95         struct try_catch<
96             Try
97             ,
98             A0 , A1 , A2
99         >
100             : expr_ext<
101                 try_catch_actor
102               , tag::try_catch
103               , Try
104               , A0 , A1 , A2
105             >
106         {};
107 
108 
109 
110 
111 
112 
113 
114 
115         template <
116             typename Try
117             ,
118             typename A0 , typename A1 , typename A2 , typename A3
119         >
120         struct try_catch<
121             Try
122             ,
123             A0 , A1 , A2 , A3
124         >
125             : expr_ext<
126                 try_catch_actor
127               , tag::try_catch
128               , Try
129               , A0 , A1 , A2 , A3
130             >
131         {};
132 
133 
134 
135 
136 
137 
138 
139 
140         template <
141             typename Try
142             ,
143             typename A0 , typename A1 , typename A2 , typename A3 , typename A4
144         >
145         struct try_catch<
146             Try
147             ,
148             A0 , A1 , A2 , A3 , A4
149         >
150             : expr_ext<
151                 try_catch_actor
152               , tag::try_catch
153               , Try
154               , A0 , A1 , A2 , A3 , A4
155             >
156         {};
157 
158 
159 
160 
161 
162 
163 
164 
165         template <
166             typename Try
167             ,
168             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5
169         >
170         struct try_catch<
171             Try
172             ,
173             A0 , A1 , A2 , A3 , A4 , A5
174         >
175             : expr_ext<
176                 try_catch_actor
177               , tag::try_catch
178               , Try
179               , A0 , A1 , A2 , A3 , A4 , A5
180             >
181         {};
182 
183 
184 
185 
186 
187 
188 
189 
190         template <
191             typename Try
192             ,
193             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6
194         >
195         struct try_catch<
196             Try
197             ,
198             A0 , A1 , A2 , A3 , A4 , A5 , A6
199         >
200             : expr_ext<
201                 try_catch_actor
202               , tag::try_catch
203               , Try
204               , A0 , A1 , A2 , A3 , A4 , A5 , A6
205             >
206         {};
207 
208 
209 
210 
211 
212 
213 
214 
215         template <
216             typename Try
217             ,
218             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7
219         >
220         struct try_catch<
221             Try
222             ,
223             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7
224         >
225             : expr_ext<
226                 try_catch_actor
227               , tag::try_catch
228               , Try
229               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7
230             >
231         {};
232 
233 
234 
235 
236 
237 
238 
239 
240         template <
241             typename Try
242             ,
243             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8
244         >
245         struct try_catch<
246             Try
247             ,
248             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8
249         >
250             : expr_ext<
251                 try_catch_actor
252               , tag::try_catch
253               , Try
254               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8
255             >
256         {};
257 
258 
259 
260 
261 
262 
263 
264 
265         template <
266             typename Try
267             ,
268             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9
269         >
270         struct try_catch<
271             Try
272             ,
273             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9
274         >
275             : expr_ext<
276                 try_catch_actor
277               , tag::try_catch
278               , Try
279               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9
280             >
281         {};
282 
283 
284 
285 
286 
287 
288 
289 
290         template <
291             typename Try
292             ,
293             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10
294         >
295         struct try_catch<
296             Try
297             ,
298             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10
299         >
300             : expr_ext<
301                 try_catch_actor
302               , tag::try_catch
303               , Try
304               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10
305             >
306         {};
307 
308 
309 
310 
311 
312 
313 
314 
315         template <
316             typename Try
317             ,
318             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11
319         >
320         struct try_catch<
321             Try
322             ,
323             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11
324         >
325             : expr_ext<
326                 try_catch_actor
327               , tag::try_catch
328               , Try
329               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11
330             >
331         {};
332 
333 
334 
335 
336 
337 
338 
339 
340         template <
341             typename Try
342             ,
343             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12
344         >
345         struct try_catch<
346             Try
347             ,
348             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12
349         >
350             : expr_ext<
351                 try_catch_actor
352               , tag::try_catch
353               , Try
354               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12
355             >
356         {};
357 
358 
359 
360 
361 
362 
363 
364 
365         template <
366             typename Try
367             ,
368             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13
369         >
370         struct try_catch<
371             Try
372             ,
373             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13
374         >
375             : expr_ext<
376                 try_catch_actor
377               , tag::try_catch
378               , Try
379               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13
380             >
381         {};
382 
383 
384 
385 
386 
387 
388 
389 
390         template <
391             typename Try
392             ,
393             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14
394         >
395         struct try_catch<
396             Try
397             ,
398             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14
399         >
400             : expr_ext<
401                 try_catch_actor
402               , tag::try_catch
403               , Try
404               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14
405             >
406         {};
407 
408 
409 
410 
411 
412 
413 
414 
415         template <
416             typename Try
417             ,
418             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15
419         >
420         struct try_catch<
421             Try
422             ,
423             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15
424         >
425             : expr_ext<
426                 try_catch_actor
427               , tag::try_catch
428               , Try
429               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15
430             >
431         {};
432 
433 
434 
435 
436 
437 
438 
439 
440         template <
441             typename Try
442             ,
443             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16
444         >
445         struct try_catch<
446             Try
447             ,
448             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16
449         >
450             : expr_ext<
451                 try_catch_actor
452               , tag::try_catch
453               , Try
454               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16
455             >
456         {};
457 
458 
459 
460 
461 
462 
463 
464 
465         template <
466             typename Try
467             ,
468             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17
469         >
470         struct try_catch<
471             Try
472             ,
473             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17
474         >
475             : expr_ext<
476                 try_catch_actor
477               , tag::try_catch
478               , Try
479               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17
480             >
481         {};
482 
483 
484 
485 
486 
487 
488 
489 
490         template <
491             typename Try
492             ,
493             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18
494         >
495         struct try_catch<
496             Try
497             ,
498             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18
499         >
500             : expr_ext<
501                 try_catch_actor
502               , tag::try_catch
503               , Try
504               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18
505             >
506         {};
507 
508 
509 
510 
511 
512 
513 
514 
515         template <
516             typename Try
517             ,
518             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19
519         >
520         struct try_catch<
521             Try
522             ,
523             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19
524         >
525             : expr_ext<
526                 try_catch_actor
527               , tag::try_catch
528               , Try
529               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19
530             >
531         {};
532 
533 
534 
535 
536 
537 
538 
539 
540         template <
541             typename Try
542             ,
543             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20
544         >
545         struct try_catch<
546             Try
547             ,
548             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20
549         >
550             : expr_ext<
551                 try_catch_actor
552               , tag::try_catch
553               , Try
554               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20
555             >
556         {};
557 
558 
559 
560 
561 
562 
563 
564 
565         template <
566             typename Try
567             ,
568             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21
569         >
570         struct try_catch<
571             Try
572             ,
573             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21
574         >
575             : expr_ext<
576                 try_catch_actor
577               , tag::try_catch
578               , Try
579               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21
580             >
581         {};
582 
583 
584 
585 
586 
587 
588 
589 
590         template <
591             typename Try
592             ,
593             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22
594         >
595         struct try_catch<
596             Try
597             ,
598             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22
599         >
600             : expr_ext<
601                 try_catch_actor
602               , tag::try_catch
603               , Try
604               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22
605             >
606         {};
607 
608 
609 
610 
611 
612 
613 
614 
615         template <
616             typename Try
617             ,
618             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23
619         >
620         struct try_catch<
621             Try
622             ,
623             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23
624         >
625             : expr_ext<
626                 try_catch_actor
627               , tag::try_catch
628               , Try
629               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23
630             >
631         {};
632 
633 
634 
635 
636 
637 
638 
639 
640         template <
641             typename Try
642             ,
643             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24
644         >
645         struct try_catch<
646             Try
647             ,
648             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24
649         >
650             : expr_ext<
651                 try_catch_actor
652               , tag::try_catch
653               , Try
654               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24
655             >
656         {};
657 
658 
659 
660 
661 
662 
663 
664 
665         template <
666             typename Try
667             ,
668             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24 , typename A25
669         >
670         struct try_catch<
671             Try
672             ,
673             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25
674         >
675             : expr_ext<
676                 try_catch_actor
677               , tag::try_catch
678               , Try
679               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25
680             >
681         {};
682 
683 
684 
685 
686 
687 
688 
689 
690         template <
691             typename Try
692             ,
693             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24 , typename A25 , typename A26
694         >
695         struct try_catch<
696             Try
697             ,
698             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26
699         >
700             : expr_ext<
701                 try_catch_actor
702               , tag::try_catch
703               , Try
704               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26
705             >
706         {};
707 
708 
709 
710 
711 
712 
713 
714 
715         template <
716             typename Try
717             ,
718             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24 , typename A25 , typename A26 , typename A27
719         >
720         struct try_catch<
721             Try
722             ,
723             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27
724         >
725             : expr_ext<
726                 try_catch_actor
727               , tag::try_catch
728               , Try
729               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27
730             >
731         {};
732 
733 
734 
735 
736 
737 
738 
739 
740         template <
741             typename Try
742             ,
743             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24 , typename A25 , typename A26 , typename A27 , typename A28
744         >
745         struct try_catch<
746             Try
747             ,
748             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28
749         >
750             : expr_ext<
751                 try_catch_actor
752               , tag::try_catch
753               , Try
754               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28
755             >
756         {};
757 
758 
759 
760 
761 
762 
763 
764 
765         template <
766             typename Try
767             ,
768             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24 , typename A25 , typename A26 , typename A27 , typename A28 , typename A29
769         >
770         struct try_catch<
771             Try
772             ,
773             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28 , A29
774         >
775             : expr_ext<
776                 try_catch_actor
777               , tag::try_catch
778               , Try
779               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28 , A29
780             >
781         {};
782 
783 
784 
785 
786 
787 
788 
789 
790         template <
791             typename Try
792             ,
793             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24 , typename A25 , typename A26 , typename A27 , typename A28 , typename A29 , typename A30
794         >
795         struct try_catch<
796             Try
797             ,
798             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28 , A29 , A30
799         >
800             : expr_ext<
801                 try_catch_actor
802               , tag::try_catch
803               , Try
804               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28 , A29 , A30
805             >
806         {};
807 
808 
809 
810 
811 
812 
813 
814 
815         template <
816             typename Try
817             ,
818             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24 , typename A25 , typename A26 , typename A27 , typename A28 , typename A29 , typename A30 , typename A31
819         >
820         struct try_catch<
821             Try
822             ,
823             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28 , A29 , A30 , A31
824         >
825             : expr_ext<
826                 try_catch_actor
827               , tag::try_catch
828               , Try
829               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28 , A29 , A30 , A31
830             >
831         {};
832 
833 
834 
835 
836 
837 
838 
839 
840         template <
841             typename Try
842             ,
843             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24 , typename A25 , typename A26 , typename A27 , typename A28 , typename A29 , typename A30 , typename A31 , typename A32
844         >
845         struct try_catch<
846             Try
847             ,
848             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28 , A29 , A30 , A31 , A32
849         >
850             : expr_ext<
851                 try_catch_actor
852               , tag::try_catch
853               , Try
854               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28 , A29 , A30 , A31 , A32
855             >
856         {};
857 
858 
859 
860 
861 
862 
863 
864 
865         template <
866             typename Try
867             ,
868             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24 , typename A25 , typename A26 , typename A27 , typename A28 , typename A29 , typename A30 , typename A31 , typename A32 , typename A33
869         >
870         struct try_catch<
871             Try
872             ,
873             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28 , A29 , A30 , A31 , A32 , A33
874         >
875             : expr_ext<
876                 try_catch_actor
877               , tag::try_catch
878               , Try
879               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28 , A29 , A30 , A31 , A32 , A33
880             >
881         {};
882 
883 
884 
885 
886 
887 
888 
889 
890         template <
891             typename Try
892             ,
893             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24 , typename A25 , typename A26 , typename A27 , typename A28 , typename A29 , typename A30 , typename A31 , typename A32 , typename A33 , typename A34
894         >
895         struct try_catch<
896             Try
897             ,
898             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28 , A29 , A30 , A31 , A32 , A33 , A34
899         >
900             : expr_ext<
901                 try_catch_actor
902               , tag::try_catch
903               , Try
904               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28 , A29 , A30 , A31 , A32 , A33 , A34
905             >
906         {};
907 
908 
909 
910 
911 
912 
913 
914 
915         template <
916             typename Try
917             ,
918             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24 , typename A25 , typename A26 , typename A27 , typename A28 , typename A29 , typename A30 , typename A31 , typename A32 , typename A33 , typename A34 , typename A35
919         >
920         struct try_catch<
921             Try
922             ,
923             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28 , A29 , A30 , A31 , A32 , A33 , A34 , A35
924         >
925             : expr_ext<
926                 try_catch_actor
927               , tag::try_catch
928               , Try
929               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28 , A29 , A30 , A31 , A32 , A33 , A34 , A35
930             >
931         {};
932 
933 
934 
935 
936 
937 
938 
939 
940         template <
941             typename Try
942             ,
943             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24 , typename A25 , typename A26 , typename A27 , typename A28 , typename A29 , typename A30 , typename A31 , typename A32 , typename A33 , typename A34 , typename A35 , typename A36
944         >
945         struct try_catch<
946             Try
947             ,
948             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28 , A29 , A30 , A31 , A32 , A33 , A34 , A35 , A36
949         >
950             : expr_ext<
951                 try_catch_actor
952               , tag::try_catch
953               , Try
954               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28 , A29 , A30 , A31 , A32 , A33 , A34 , A35 , A36
955             >
956         {};
957 
958 
959 
960 
961 
962 
963 
964 
965         template <
966             typename Try
967             ,
968             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24 , typename A25 , typename A26 , typename A27 , typename A28 , typename A29 , typename A30 , typename A31 , typename A32 , typename A33 , typename A34 , typename A35 , typename A36 , typename A37
969         >
970         struct try_catch<
971             Try
972             ,
973             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28 , A29 , A30 , A31 , A32 , A33 , A34 , A35 , A36 , A37
974         >
975             : expr_ext<
976                 try_catch_actor
977               , tag::try_catch
978               , Try
979               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28 , A29 , A30 , A31 , A32 , A33 , A34 , A35 , A36 , A37
980             >
981         {};
982 
983 
984 
985 
986 
987 
988 
989 
990         template <
991             typename Try
992             ,
993             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24 , typename A25 , typename A26 , typename A27 , typename A28 , typename A29 , typename A30 , typename A31 , typename A32 , typename A33 , typename A34 , typename A35 , typename A36 , typename A37 , typename A38
994         >
995         struct try_catch<
996             Try
997             ,
998             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28 , A29 , A30 , A31 , A32 , A33 , A34 , A35 , A36 , A37 , A38
999         >
1000             : expr_ext<
1001                 try_catch_actor
1002               , tag::try_catch
1003               , Try
1004               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28 , A29 , A30 , A31 , A32 , A33 , A34 , A35 , A36 , A37 , A38
1005             >
1006         {};
1007 
1008 
1009 
1010 
1011 
1012 
1013 
1014 
1015         template <
1016             typename Try
1017             ,
1018             typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24 , typename A25 , typename A26 , typename A27 , typename A28 , typename A29 , typename A30 , typename A31 , typename A32 , typename A33 , typename A34 , typename A35 , typename A36 , typename A37 , typename A38 , typename A39
1019         >
1020         struct try_catch<
1021             Try
1022             ,
1023             A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28 , A29 , A30 , A31 , A32 , A33 , A34 , A35 , A36 , A37 , A38 , A39
1024         >
1025             : expr_ext<
1026                 try_catch_actor
1027               , tag::try_catch
1028               , Try
1029               , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28 , A29 , A30 , A31 , A32 , A33 , A34 , A35 , A36 , A37 , A38 , A39
1030             >
1031         {};
1032 
1033