H3D API  2.4.1
TypedFieldAnyTmpl.h
Go to the documentation of this file.
1 // Copyright 2004-2019, SenseGraphics AB
3 //
4 // This file is part of H3D API.
5 //
6 // H3D API is free software; you can redistribute it and/or modify
7 // it under the terms of the GNU General Public License as published by
8 // the Free Software Foundation; either version 2 of the License, or
9 // (at your option) any later version.
10 //
11 // H3D API is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 // GNU General Public License for more details.
15 //
16 // You should have received a copy of the GNU General Public License
17 // along with H3D API; if not, write to the Free Software
18 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19 //
20 // A commercial license is also available. Please contact us at
21 // www.sensegraphics.com for more information.
22 //
23 //
28 //
30 #ifndef __TYPESFIELDANYTEMPL_H__
31 #define __TYPESFIELDANYTEMPL_H__
32 
33 #include <typeinfo>
34 
35 #define H3D_ANY_TEMPLATE_LIST class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10, class Type11, class Type12, class Type13, class Type14, class Type15, class Type16, class Type17, class Type18, class Type19, class Type20, class Type21, class Type22, class Type23, class Type24, class Type25, class Type26, class Type27, class Type28, class Type29, class Type30, class Type31, class Type32, class Type33, class Type34, class Type35, class Type36, class Type37, class Type38, class Type39
36 
37 #define H3D_ANY_CLASS Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24, Type25, Type26, Type27, Type28, Type29, Type30, Type31, Type32, Type33, Type34, Type35, Type36, Type37, Type38, Type39 >
38 
39 #define H3D_ANY_TEMPLATE_SPEC class Type0 = void, class Type1 = void, class Type2 = void, class Type3 = void, class Type4 = void, class Type5 = void, class Type6 = void, class Type7 = void, class Type8 = void, class Type9 = void, class Type10 = void, class Type11 = void, class Type12 = void, class Type13 = void, class Type14 = void, class Type15 = void, class Type16 = void, class Type17 = void, class Type18 = void, class Type19 = void, class Type20 = void, class Type21 = void, class Type22 = void, class Type23 = void, class Type24 = void, class Type25 = void, class Type26 = void, class Type27 = void, class Type28 = void, class Type29 = void, class Type30 = void, class Type31 = void, class Type32 = void, class Type33 = void, class Type34 = void, class Type35 = void, class Type36 = void, class Type37 = void, class Type38 = void, class Type39 = void
40 
41 namespace H3D {
42  namespace TypedFieldTypeCheck {
43  template< class Type > struct AnyType;
44 
49  H3D_VALUE_EXCEPTION( string, InvalidType );
50 
66  template< H3D_ANY_TEMPLATE_SPEC >
67  struct Any {
71  static void checkTemplateArguments() {
72  AnyType< Type0 >::checkTemplateArguments();
73  AnyType< Type1 >::checkTemplateArguments();
74  AnyType< Type2 >::checkTemplateArguments();
75  AnyType< Type3 >::checkTemplateArguments();
76  AnyType< Type4 >::checkTemplateArguments();
77  AnyType< Type5 >::checkTemplateArguments();
78  AnyType< Type6 >::checkTemplateArguments();
79  AnyType< Type7 >::checkTemplateArguments();
80  AnyType< Type8 >::checkTemplateArguments();
81  AnyType< Type9 >::checkTemplateArguments();
82  AnyType< Type10 >::checkTemplateArguments();
83  AnyType< Type11 >::checkTemplateArguments();
84  AnyType< Type12 >::checkTemplateArguments();
85  AnyType< Type13 >::checkTemplateArguments();
86  AnyType< Type14 >::checkTemplateArguments();
87  AnyType< Type15 >::checkTemplateArguments();
88  AnyType< Type16 >::checkTemplateArguments();
89  AnyType< Type17 >::checkTemplateArguments();
90  AnyType< Type18 >::checkTemplateArguments();
91  AnyType< Type19 >::checkTemplateArguments();
92  AnyType< Type20 >::checkTemplateArguments();
93  AnyType< Type21 >::checkTemplateArguments();
94  AnyType< Type22 >::checkTemplateArguments();
95  AnyType< Type23 >::checkTemplateArguments();
96  AnyType< Type24 >::checkTemplateArguments();
97  AnyType< Type25 >::checkTemplateArguments();
98  AnyType< Type26 >::checkTemplateArguments();
99  AnyType< Type27 >::checkTemplateArguments();
100  AnyType< Type28 >::checkTemplateArguments();
101  AnyType< Type29 >::checkTemplateArguments();
102  AnyType< Type30 >::checkTemplateArguments();
103  AnyType< Type31 >::checkTemplateArguments();
104  AnyType< Type32 >::checkTemplateArguments();
105  AnyType< Type33 >::checkTemplateArguments();
106  AnyType< Type34 >::checkTemplateArguments();
107  AnyType< Type35 >::checkTemplateArguments();
108  AnyType< Type36 >::checkTemplateArguments();
109  AnyType< Type37 >::checkTemplateArguments();
110  AnyType< Type38 >::checkTemplateArguments();
111  AnyType< Type39 >::checkTemplateArguments();
112  }
113 
118  static void checkType( Field *f ) {
119  if(
120  !AnyType< Type0 >::checkType( f ) &&
121  !AnyType< Type1 >::checkType( f ) &&
122  !AnyType< Type2 >::checkType( f ) &&
123  !AnyType< Type3 >::checkType( f ) &&
124  !AnyType< Type4 >::checkType( f ) &&
125  !AnyType< Type5 >::checkType( f ) &&
126  !AnyType< Type6 >::checkType( f ) &&
127  !AnyType< Type7 >::checkType( f ) &&
128  !AnyType< Type8 >::checkType( f ) &&
129  !AnyType< Type9 >::checkType( f ) &&
130  !AnyType< Type10 >::checkType( f ) &&
131  !AnyType< Type11 >::checkType( f ) &&
132  !AnyType< Type12 >::checkType( f ) &&
133  !AnyType< Type13 >::checkType( f ) &&
134  !AnyType< Type14 >::checkType( f ) &&
135  !AnyType< Type15 >::checkType( f ) &&
136  !AnyType< Type16 >::checkType( f ) &&
137  !AnyType< Type17 >::checkType( f ) &&
138  !AnyType< Type18 >::checkType( f ) &&
139  !AnyType< Type19 >::checkType( f ) &&
140  !AnyType< Type20 >::checkType( f ) &&
141  !AnyType< Type21 >::checkType( f ) &&
142  !AnyType< Type22 >::checkType( f ) &&
143  !AnyType< Type23 >::checkType( f ) &&
144  !AnyType< Type24 >::checkType( f ) &&
145  !AnyType< Type25 >::checkType( f ) &&
146  !AnyType< Type26 >::checkType( f ) &&
147  !AnyType< Type27 >::checkType( f ) &&
148  !AnyType< Type28 >::checkType( f ) &&
149  !AnyType< Type29 >::checkType( f ) &&
150  !AnyType< Type30 >::checkType( f ) &&
151  !AnyType< Type31 >::checkType( f ) &&
152  !AnyType< Type32 >::checkType( f ) &&
153  !AnyType< Type33 >::checkType( f ) &&
154  !AnyType< Type34 >::checkType( f ) &&
155  !AnyType< Type35 >::checkType( f ) &&
156  !AnyType< Type36 >::checkType( f ) &&
157  !AnyType< Type37 >::checkType( f ) &&
158  !AnyType< Type38 >::checkType( f ) &&
159  !AnyType< Type39 >::checkType( f ) ) {
160  throw InvalidType( typeid( f ).name(),
162  }
163  }
164  };
165  template< class Type0 >
166  struct Any< Type0, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void > {
170  static void checkTemplateArguments() {
171  AnyType< Type0 >::checkTemplateArguments();
172  }
173 
180  static void checkType( Field *f ) {
181  if(
182  !AnyType< Type0 >::checkType( f ) ) {
183  throw InvalidType( typeid( f ).name(),
184  typeid( Any< Type0> ).name() );
185  }
186  }
187  };
188  template< class Type0, class Type1 >
189  struct Any< Type0, Type1, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void > {
193  static void checkTemplateArguments() {
194  AnyType< Type0 >::checkTemplateArguments();
195  AnyType< Type1 >::checkTemplateArguments();
196  }
197 
204  static void checkType( Field *f ) {
205  if(
206  !AnyType< Type0 >::checkType( f ) &&
207  !AnyType< Type1 >::checkType( f ) ) {
208  throw InvalidType( typeid( f ).name(),
209  typeid( Any< Type0, Type1> ).name() );
210  }
211  }
212  };
213  template< class Type0, class Type1, class Type2 >
214  struct Any< Type0, Type1, Type2, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void > {
218  static void checkTemplateArguments() {
219  AnyType< Type0 >::checkTemplateArguments();
220  AnyType< Type1 >::checkTemplateArguments();
221  AnyType< Type2 >::checkTemplateArguments();
222  }
223 
230  static void checkType( Field *f ) {
231  if(
232  !AnyType< Type0 >::checkType( f ) &&
233  !AnyType< Type1 >::checkType( f ) &&
234  !AnyType< Type2 >::checkType( f ) ) {
235  throw InvalidType( typeid( f ).name(),
236  typeid( Any< Type0, Type1, Type2> ).name() );
237  }
238  }
239  };
240  template< class Type0, class Type1, class Type2, class Type3 >
241  struct Any< Type0, Type1, Type2, Type3, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void > {
245  static void checkTemplateArguments() {
246  AnyType< Type0 >::checkTemplateArguments();
247  AnyType< Type1 >::checkTemplateArguments();
248  AnyType< Type2 >::checkTemplateArguments();
249  AnyType< Type3 >::checkTemplateArguments();
250  }
251 
258  static void checkType( Field *f ) {
259  if(
260  !AnyType< Type0 >::checkType( f ) &&
261  !AnyType< Type1 >::checkType( f ) &&
262  !AnyType< Type2 >::checkType( f ) &&
263  !AnyType< Type3 >::checkType( f ) ) {
264  throw InvalidType( typeid( f ).name(),
265  typeid( Any< Type0, Type1, Type2, Type3> ).name() );
266  }
267  }
268  };
269  template< class Type0, class Type1, class Type2, class Type3, class Type4 >
270  struct Any< Type0, Type1, Type2, Type3, Type4, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void > {
274  static void checkTemplateArguments() {
275  AnyType< Type0 >::checkTemplateArguments();
276  AnyType< Type1 >::checkTemplateArguments();
277  AnyType< Type2 >::checkTemplateArguments();
278  AnyType< Type3 >::checkTemplateArguments();
279  AnyType< Type4 >::checkTemplateArguments();
280  }
281 
288  static void checkType( Field *f ) {
289  if(
290  !AnyType< Type0 >::checkType( f ) &&
291  !AnyType< Type1 >::checkType( f ) &&
292  !AnyType< Type2 >::checkType( f ) &&
293  !AnyType< Type3 >::checkType( f ) &&
294  !AnyType< Type4 >::checkType( f ) ) {
295  throw InvalidType( typeid( f ).name(),
296  typeid( Any< Type0, Type1, Type2, Type3, Type4> ).name() );
297  }
298  }
299  };
300  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5 >
301  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void > {
305  static void checkTemplateArguments() {
306  AnyType< Type0 >::checkTemplateArguments();
307  AnyType< Type1 >::checkTemplateArguments();
308  AnyType< Type2 >::checkTemplateArguments();
309  AnyType< Type3 >::checkTemplateArguments();
310  AnyType< Type4 >::checkTemplateArguments();
311  AnyType< Type5 >::checkTemplateArguments();
312  }
313 
320  static void checkType( Field *f ) {
321  if(
322  !AnyType< Type0 >::checkType( f ) &&
323  !AnyType< Type1 >::checkType( f ) &&
324  !AnyType< Type2 >::checkType( f ) &&
325  !AnyType< Type3 >::checkType( f ) &&
326  !AnyType< Type4 >::checkType( f ) &&
327  !AnyType< Type5 >::checkType( f ) ) {
328  throw InvalidType( typeid( f ).name(),
329  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5> ).name() );
330  }
331  }
332  };
333  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6 >
334  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void > {
338  static void checkTemplateArguments() {
339  AnyType< Type0 >::checkTemplateArguments();
340  AnyType< Type1 >::checkTemplateArguments();
341  AnyType< Type2 >::checkTemplateArguments();
342  AnyType< Type3 >::checkTemplateArguments();
343  AnyType< Type4 >::checkTemplateArguments();
344  AnyType< Type5 >::checkTemplateArguments();
345  AnyType< Type6 >::checkTemplateArguments();
346  }
347 
354  static void checkType( Field *f ) {
355  if(
356  !AnyType< Type0 >::checkType( f ) &&
357  !AnyType< Type1 >::checkType( f ) &&
358  !AnyType< Type2 >::checkType( f ) &&
359  !AnyType< Type3 >::checkType( f ) &&
360  !AnyType< Type4 >::checkType( f ) &&
361  !AnyType< Type5 >::checkType( f ) &&
362  !AnyType< Type6 >::checkType( f ) ) {
363  throw InvalidType( typeid( f ).name(),
364  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6> ).name() );
365  }
366  }
367  };
368  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7 >
369  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void > {
373  static void checkTemplateArguments() {
374  AnyType< Type0 >::checkTemplateArguments();
375  AnyType< Type1 >::checkTemplateArguments();
376  AnyType< Type2 >::checkTemplateArguments();
377  AnyType< Type3 >::checkTemplateArguments();
378  AnyType< Type4 >::checkTemplateArguments();
379  AnyType< Type5 >::checkTemplateArguments();
380  AnyType< Type6 >::checkTemplateArguments();
381  AnyType< Type7 >::checkTemplateArguments();
382  }
383 
390  static void checkType( Field *f ) {
391  if(
392  !AnyType< Type0 >::checkType( f ) &&
393  !AnyType< Type1 >::checkType( f ) &&
394  !AnyType< Type2 >::checkType( f ) &&
395  !AnyType< Type3 >::checkType( f ) &&
396  !AnyType< Type4 >::checkType( f ) &&
397  !AnyType< Type5 >::checkType( f ) &&
398  !AnyType< Type6 >::checkType( f ) &&
399  !AnyType< Type7 >::checkType( f ) ) {
400  throw InvalidType( typeid( f ).name(),
401  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7> ).name() );
402  }
403  }
404  };
405  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8 >
406  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void > {
410  static void checkTemplateArguments() {
411  AnyType< Type0 >::checkTemplateArguments();
412  AnyType< Type1 >::checkTemplateArguments();
413  AnyType< Type2 >::checkTemplateArguments();
414  AnyType< Type3 >::checkTemplateArguments();
415  AnyType< Type4 >::checkTemplateArguments();
416  AnyType< Type5 >::checkTemplateArguments();
417  AnyType< Type6 >::checkTemplateArguments();
418  AnyType< Type7 >::checkTemplateArguments();
419  AnyType< Type8 >::checkTemplateArguments();
420  }
421 
428  static void checkType( Field *f ) {
429  if(
430  !AnyType< Type0 >::checkType( f ) &&
431  !AnyType< Type1 >::checkType( f ) &&
432  !AnyType< Type2 >::checkType( f ) &&
433  !AnyType< Type3 >::checkType( f ) &&
434  !AnyType< Type4 >::checkType( f ) &&
435  !AnyType< Type5 >::checkType( f ) &&
436  !AnyType< Type6 >::checkType( f ) &&
437  !AnyType< Type7 >::checkType( f ) &&
438  !AnyType< Type8 >::checkType( f ) ) {
439  throw InvalidType( typeid( f ).name(),
440  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8> ).name() );
441  }
442  }
443  };
444  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9 >
445  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void > {
449  static void checkTemplateArguments() {
450  AnyType< Type0 >::checkTemplateArguments();
451  AnyType< Type1 >::checkTemplateArguments();
452  AnyType< Type2 >::checkTemplateArguments();
453  AnyType< Type3 >::checkTemplateArguments();
454  AnyType< Type4 >::checkTemplateArguments();
455  AnyType< Type5 >::checkTemplateArguments();
456  AnyType< Type6 >::checkTemplateArguments();
457  AnyType< Type7 >::checkTemplateArguments();
458  AnyType< Type8 >::checkTemplateArguments();
459  AnyType< Type9 >::checkTemplateArguments();
460  }
461 
468  static void checkType( Field *f ) {
469  if(
470  !AnyType< Type0 >::checkType( f ) &&
471  !AnyType< Type1 >::checkType( f ) &&
472  !AnyType< Type2 >::checkType( f ) &&
473  !AnyType< Type3 >::checkType( f ) &&
474  !AnyType< Type4 >::checkType( f ) &&
475  !AnyType< Type5 >::checkType( f ) &&
476  !AnyType< Type6 >::checkType( f ) &&
477  !AnyType< Type7 >::checkType( f ) &&
478  !AnyType< Type8 >::checkType( f ) &&
479  !AnyType< Type9 >::checkType( f ) ) {
480  throw InvalidType( typeid( f ).name(),
481  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9> ).name() );
482  }
483  }
484  };
485  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10 >
486  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void > {
490  static void checkTemplateArguments() {
491  AnyType< Type0 >::checkTemplateArguments();
492  AnyType< Type1 >::checkTemplateArguments();
493  AnyType< Type2 >::checkTemplateArguments();
494  AnyType< Type3 >::checkTemplateArguments();
495  AnyType< Type4 >::checkTemplateArguments();
496  AnyType< Type5 >::checkTemplateArguments();
497  AnyType< Type6 >::checkTemplateArguments();
498  AnyType< Type7 >::checkTemplateArguments();
499  AnyType< Type8 >::checkTemplateArguments();
500  AnyType< Type9 >::checkTemplateArguments();
501  AnyType< Type10 >::checkTemplateArguments();
502  }
503 
510  static void checkType( Field *f ) {
511  if(
512  !AnyType< Type0 >::checkType( f ) &&
513  !AnyType< Type1 >::checkType( f ) &&
514  !AnyType< Type2 >::checkType( f ) &&
515  !AnyType< Type3 >::checkType( f ) &&
516  !AnyType< Type4 >::checkType( f ) &&
517  !AnyType< Type5 >::checkType( f ) &&
518  !AnyType< Type6 >::checkType( f ) &&
519  !AnyType< Type7 >::checkType( f ) &&
520  !AnyType< Type8 >::checkType( f ) &&
521  !AnyType< Type9 >::checkType( f ) &&
522  !AnyType< Type10 >::checkType( f ) ) {
523  throw InvalidType( typeid( f ).name(),
524  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10> ).name() );
525  }
526  }
527  };
528  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10, class Type11 >
529  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void > {
533  static void checkTemplateArguments() {
534  AnyType< Type0 >::checkTemplateArguments();
535  AnyType< Type1 >::checkTemplateArguments();
536  AnyType< Type2 >::checkTemplateArguments();
537  AnyType< Type3 >::checkTemplateArguments();
538  AnyType< Type4 >::checkTemplateArguments();
539  AnyType< Type5 >::checkTemplateArguments();
540  AnyType< Type6 >::checkTemplateArguments();
541  AnyType< Type7 >::checkTemplateArguments();
542  AnyType< Type8 >::checkTemplateArguments();
543  AnyType< Type9 >::checkTemplateArguments();
544  AnyType< Type10 >::checkTemplateArguments();
545  AnyType< Type11 >::checkTemplateArguments();
546  }
547 
554  static void checkType( Field *f ) {
555  if(
556  !AnyType< Type0 >::checkType( f ) &&
557  !AnyType< Type1 >::checkType( f ) &&
558  !AnyType< Type2 >::checkType( f ) &&
559  !AnyType< Type3 >::checkType( f ) &&
560  !AnyType< Type4 >::checkType( f ) &&
561  !AnyType< Type5 >::checkType( f ) &&
562  !AnyType< Type6 >::checkType( f ) &&
563  !AnyType< Type7 >::checkType( f ) &&
564  !AnyType< Type8 >::checkType( f ) &&
565  !AnyType< Type9 >::checkType( f ) &&
566  !AnyType< Type10 >::checkType( f ) &&
567  !AnyType< Type11 >::checkType( f ) ) {
568  throw InvalidType( typeid( f ).name(),
569  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11> ).name() );
570  }
571  }
572  };
573  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10, class Type11, class Type12 >
574  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void > {
578  static void checkTemplateArguments() {
579  AnyType< Type0 >::checkTemplateArguments();
580  AnyType< Type1 >::checkTemplateArguments();
581  AnyType< Type2 >::checkTemplateArguments();
582  AnyType< Type3 >::checkTemplateArguments();
583  AnyType< Type4 >::checkTemplateArguments();
584  AnyType< Type5 >::checkTemplateArguments();
585  AnyType< Type6 >::checkTemplateArguments();
586  AnyType< Type7 >::checkTemplateArguments();
587  AnyType< Type8 >::checkTemplateArguments();
588  AnyType< Type9 >::checkTemplateArguments();
589  AnyType< Type10 >::checkTemplateArguments();
590  AnyType< Type11 >::checkTemplateArguments();
591  AnyType< Type12 >::checkTemplateArguments();
592  }
593 
600  static void checkType( Field *f ) {
601  if(
602  !AnyType< Type0 >::checkType( f ) &&
603  !AnyType< Type1 >::checkType( f ) &&
604  !AnyType< Type2 >::checkType( f ) &&
605  !AnyType< Type3 >::checkType( f ) &&
606  !AnyType< Type4 >::checkType( f ) &&
607  !AnyType< Type5 >::checkType( f ) &&
608  !AnyType< Type6 >::checkType( f ) &&
609  !AnyType< Type7 >::checkType( f ) &&
610  !AnyType< Type8 >::checkType( f ) &&
611  !AnyType< Type9 >::checkType( f ) &&
612  !AnyType< Type10 >::checkType( f ) &&
613  !AnyType< Type11 >::checkType( f ) &&
614  !AnyType< Type12 >::checkType( f ) ) {
615  throw InvalidType( typeid( f ).name(),
616  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12> ).name() );
617  }
618  }
619  };
620  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10, class Type11, class Type12, class Type13 >
621  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void > {
625  static void checkTemplateArguments() {
626  AnyType< Type0 >::checkTemplateArguments();
627  AnyType< Type1 >::checkTemplateArguments();
628  AnyType< Type2 >::checkTemplateArguments();
629  AnyType< Type3 >::checkTemplateArguments();
630  AnyType< Type4 >::checkTemplateArguments();
631  AnyType< Type5 >::checkTemplateArguments();
632  AnyType< Type6 >::checkTemplateArguments();
633  AnyType< Type7 >::checkTemplateArguments();
634  AnyType< Type8 >::checkTemplateArguments();
635  AnyType< Type9 >::checkTemplateArguments();
636  AnyType< Type10 >::checkTemplateArguments();
637  AnyType< Type11 >::checkTemplateArguments();
638  AnyType< Type12 >::checkTemplateArguments();
639  AnyType< Type13 >::checkTemplateArguments();
640  }
641 
648  static void checkType( Field *f ) {
649  if(
650  !AnyType< Type0 >::checkType( f ) &&
651  !AnyType< Type1 >::checkType( f ) &&
652  !AnyType< Type2 >::checkType( f ) &&
653  !AnyType< Type3 >::checkType( f ) &&
654  !AnyType< Type4 >::checkType( f ) &&
655  !AnyType< Type5 >::checkType( f ) &&
656  !AnyType< Type6 >::checkType( f ) &&
657  !AnyType< Type7 >::checkType( f ) &&
658  !AnyType< Type8 >::checkType( f ) &&
659  !AnyType< Type9 >::checkType( f ) &&
660  !AnyType< Type10 >::checkType( f ) &&
661  !AnyType< Type11 >::checkType( f ) &&
662  !AnyType< Type12 >::checkType( f ) &&
663  !AnyType< Type13 >::checkType( f ) ) {
664  throw InvalidType( typeid( f ).name(),
665  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13> ).name() );
666  }
667  }
668  };
669  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10, class Type11, class Type12, class Type13, class Type14 >
670  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void > {
674  static void checkTemplateArguments() {
675  AnyType< Type0 >::checkTemplateArguments();
676  AnyType< Type1 >::checkTemplateArguments();
677  AnyType< Type2 >::checkTemplateArguments();
678  AnyType< Type3 >::checkTemplateArguments();
679  AnyType< Type4 >::checkTemplateArguments();
680  AnyType< Type5 >::checkTemplateArguments();
681  AnyType< Type6 >::checkTemplateArguments();
682  AnyType< Type7 >::checkTemplateArguments();
683  AnyType< Type8 >::checkTemplateArguments();
684  AnyType< Type9 >::checkTemplateArguments();
685  AnyType< Type10 >::checkTemplateArguments();
686  AnyType< Type11 >::checkTemplateArguments();
687  AnyType< Type12 >::checkTemplateArguments();
688  AnyType< Type13 >::checkTemplateArguments();
689  AnyType< Type14 >::checkTemplateArguments();
690  }
691 
698  static void checkType( Field *f ) {
699  if(
700  !AnyType< Type0 >::checkType( f ) &&
701  !AnyType< Type1 >::checkType( f ) &&
702  !AnyType< Type2 >::checkType( f ) &&
703  !AnyType< Type3 >::checkType( f ) &&
704  !AnyType< Type4 >::checkType( f ) &&
705  !AnyType< Type5 >::checkType( f ) &&
706  !AnyType< Type6 >::checkType( f ) &&
707  !AnyType< Type7 >::checkType( f ) &&
708  !AnyType< Type8 >::checkType( f ) &&
709  !AnyType< Type9 >::checkType( f ) &&
710  !AnyType< Type10 >::checkType( f ) &&
711  !AnyType< Type11 >::checkType( f ) &&
712  !AnyType< Type12 >::checkType( f ) &&
713  !AnyType< Type13 >::checkType( f ) &&
714  !AnyType< Type14 >::checkType( f ) ) {
715  throw InvalidType( typeid( f ).name(),
716  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14> ).name() );
717  }
718  }
719  };
720  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10, class Type11, class Type12, class Type13, class Type14, class Type15 >
721  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void > {
725  static void checkTemplateArguments() {
726  AnyType< Type0 >::checkTemplateArguments();
727  AnyType< Type1 >::checkTemplateArguments();
728  AnyType< Type2 >::checkTemplateArguments();
729  AnyType< Type3 >::checkTemplateArguments();
730  AnyType< Type4 >::checkTemplateArguments();
731  AnyType< Type5 >::checkTemplateArguments();
732  AnyType< Type6 >::checkTemplateArguments();
733  AnyType< Type7 >::checkTemplateArguments();
734  AnyType< Type8 >::checkTemplateArguments();
735  AnyType< Type9 >::checkTemplateArguments();
736  AnyType< Type10 >::checkTemplateArguments();
737  AnyType< Type11 >::checkTemplateArguments();
738  AnyType< Type12 >::checkTemplateArguments();
739  AnyType< Type13 >::checkTemplateArguments();
740  AnyType< Type14 >::checkTemplateArguments();
741  AnyType< Type15 >::checkTemplateArguments();
742  }
743 
750  static void checkType( Field *f ) {
751  if(
752  !AnyType< Type0 >::checkType( f ) &&
753  !AnyType< Type1 >::checkType( f ) &&
754  !AnyType< Type2 >::checkType( f ) &&
755  !AnyType< Type3 >::checkType( f ) &&
756  !AnyType< Type4 >::checkType( f ) &&
757  !AnyType< Type5 >::checkType( f ) &&
758  !AnyType< Type6 >::checkType( f ) &&
759  !AnyType< Type7 >::checkType( f ) &&
760  !AnyType< Type8 >::checkType( f ) &&
761  !AnyType< Type9 >::checkType( f ) &&
762  !AnyType< Type10 >::checkType( f ) &&
763  !AnyType< Type11 >::checkType( f ) &&
764  !AnyType< Type12 >::checkType( f ) &&
765  !AnyType< Type13 >::checkType( f ) &&
766  !AnyType< Type14 >::checkType( f ) &&
767  !AnyType< Type15 >::checkType( f ) ) {
768  throw InvalidType( typeid( f ).name(),
769  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15> ).name() );
770  }
771  }
772  };
773  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10, class Type11, class Type12, class Type13, class Type14, class Type15, class Type16 >
774  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void > {
778  static void checkTemplateArguments() {
779  AnyType< Type0 >::checkTemplateArguments();
780  AnyType< Type1 >::checkTemplateArguments();
781  AnyType< Type2 >::checkTemplateArguments();
782  AnyType< Type3 >::checkTemplateArguments();
783  AnyType< Type4 >::checkTemplateArguments();
784  AnyType< Type5 >::checkTemplateArguments();
785  AnyType< Type6 >::checkTemplateArguments();
786  AnyType< Type7 >::checkTemplateArguments();
787  AnyType< Type8 >::checkTemplateArguments();
788  AnyType< Type9 >::checkTemplateArguments();
789  AnyType< Type10 >::checkTemplateArguments();
790  AnyType< Type11 >::checkTemplateArguments();
791  AnyType< Type12 >::checkTemplateArguments();
792  AnyType< Type13 >::checkTemplateArguments();
793  AnyType< Type14 >::checkTemplateArguments();
794  AnyType< Type15 >::checkTemplateArguments();
795  AnyType< Type16 >::checkTemplateArguments();
796  }
797 
804  static void checkType( Field *f ) {
805  if(
806  !AnyType< Type0 >::checkType( f ) &&
807  !AnyType< Type1 >::checkType( f ) &&
808  !AnyType< Type2 >::checkType( f ) &&
809  !AnyType< Type3 >::checkType( f ) &&
810  !AnyType< Type4 >::checkType( f ) &&
811  !AnyType< Type5 >::checkType( f ) &&
812  !AnyType< Type6 >::checkType( f ) &&
813  !AnyType< Type7 >::checkType( f ) &&
814  !AnyType< Type8 >::checkType( f ) &&
815  !AnyType< Type9 >::checkType( f ) &&
816  !AnyType< Type10 >::checkType( f ) &&
817  !AnyType< Type11 >::checkType( f ) &&
818  !AnyType< Type12 >::checkType( f ) &&
819  !AnyType< Type13 >::checkType( f ) &&
820  !AnyType< Type14 >::checkType( f ) &&
821  !AnyType< Type15 >::checkType( f ) &&
822  !AnyType< Type16 >::checkType( f ) ) {
823  throw InvalidType( typeid( f ).name(),
824  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16> ).name() );
825  }
826  }
827  };
828  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10, class Type11, class Type12, class Type13, class Type14, class Type15, class Type16, class Type17 >
829  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void > {
833  static void checkTemplateArguments() {
834  AnyType< Type0 >::checkTemplateArguments();
835  AnyType< Type1 >::checkTemplateArguments();
836  AnyType< Type2 >::checkTemplateArguments();
837  AnyType< Type3 >::checkTemplateArguments();
838  AnyType< Type4 >::checkTemplateArguments();
839  AnyType< Type5 >::checkTemplateArguments();
840  AnyType< Type6 >::checkTemplateArguments();
841  AnyType< Type7 >::checkTemplateArguments();
842  AnyType< Type8 >::checkTemplateArguments();
843  AnyType< Type9 >::checkTemplateArguments();
844  AnyType< Type10 >::checkTemplateArguments();
845  AnyType< Type11 >::checkTemplateArguments();
846  AnyType< Type12 >::checkTemplateArguments();
847  AnyType< Type13 >::checkTemplateArguments();
848  AnyType< Type14 >::checkTemplateArguments();
849  AnyType< Type15 >::checkTemplateArguments();
850  AnyType< Type16 >::checkTemplateArguments();
851  AnyType< Type17 >::checkTemplateArguments();
852  }
853 
860  static void checkType( Field *f ) {
861  if(
862  !AnyType< Type0 >::checkType( f ) &&
863  !AnyType< Type1 >::checkType( f ) &&
864  !AnyType< Type2 >::checkType( f ) &&
865  !AnyType< Type3 >::checkType( f ) &&
866  !AnyType< Type4 >::checkType( f ) &&
867  !AnyType< Type5 >::checkType( f ) &&
868  !AnyType< Type6 >::checkType( f ) &&
869  !AnyType< Type7 >::checkType( f ) &&
870  !AnyType< Type8 >::checkType( f ) &&
871  !AnyType< Type9 >::checkType( f ) &&
872  !AnyType< Type10 >::checkType( f ) &&
873  !AnyType< Type11 >::checkType( f ) &&
874  !AnyType< Type12 >::checkType( f ) &&
875  !AnyType< Type13 >::checkType( f ) &&
876  !AnyType< Type14 >::checkType( f ) &&
877  !AnyType< Type15 >::checkType( f ) &&
878  !AnyType< Type16 >::checkType( f ) &&
879  !AnyType< Type17 >::checkType( f ) ) {
880  throw InvalidType( typeid( f ).name(),
881  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17> ).name() );
882  }
883  }
884  };
885  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10, class Type11, class Type12, class Type13, class Type14, class Type15, class Type16, class Type17, class Type18 >
886  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void > {
890  static void checkTemplateArguments() {
891  AnyType< Type0 >::checkTemplateArguments();
892  AnyType< Type1 >::checkTemplateArguments();
893  AnyType< Type2 >::checkTemplateArguments();
894  AnyType< Type3 >::checkTemplateArguments();
895  AnyType< Type4 >::checkTemplateArguments();
896  AnyType< Type5 >::checkTemplateArguments();
897  AnyType< Type6 >::checkTemplateArguments();
898  AnyType< Type7 >::checkTemplateArguments();
899  AnyType< Type8 >::checkTemplateArguments();
900  AnyType< Type9 >::checkTemplateArguments();
901  AnyType< Type10 >::checkTemplateArguments();
902  AnyType< Type11 >::checkTemplateArguments();
903  AnyType< Type12 >::checkTemplateArguments();
904  AnyType< Type13 >::checkTemplateArguments();
905  AnyType< Type14 >::checkTemplateArguments();
906  AnyType< Type15 >::checkTemplateArguments();
907  AnyType< Type16 >::checkTemplateArguments();
908  AnyType< Type17 >::checkTemplateArguments();
909  AnyType< Type18 >::checkTemplateArguments();
910  }
911 
918  static void checkType( Field *f ) {
919  if(
920  !AnyType< Type0 >::checkType( f ) &&
921  !AnyType< Type1 >::checkType( f ) &&
922  !AnyType< Type2 >::checkType( f ) &&
923  !AnyType< Type3 >::checkType( f ) &&
924  !AnyType< Type4 >::checkType( f ) &&
925  !AnyType< Type5 >::checkType( f ) &&
926  !AnyType< Type6 >::checkType( f ) &&
927  !AnyType< Type7 >::checkType( f ) &&
928  !AnyType< Type8 >::checkType( f ) &&
929  !AnyType< Type9 >::checkType( f ) &&
930  !AnyType< Type10 >::checkType( f ) &&
931  !AnyType< Type11 >::checkType( f ) &&
932  !AnyType< Type12 >::checkType( f ) &&
933  !AnyType< Type13 >::checkType( f ) &&
934  !AnyType< Type14 >::checkType( f ) &&
935  !AnyType< Type15 >::checkType( f ) &&
936  !AnyType< Type16 >::checkType( f ) &&
937  !AnyType< Type17 >::checkType( f ) &&
938  !AnyType< Type18 >::checkType( f ) ) {
939  throw InvalidType( typeid( f ).name(),
940  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18> ).name() );
941  }
942  }
943  };
944  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10, class Type11, class Type12, class Type13, class Type14, class Type15, class Type16, class Type17, class Type18, class Type19 >
945  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void > {
949  static void checkTemplateArguments() {
950  AnyType< Type0 >::checkTemplateArguments();
951  AnyType< Type1 >::checkTemplateArguments();
952  AnyType< Type2 >::checkTemplateArguments();
953  AnyType< Type3 >::checkTemplateArguments();
954  AnyType< Type4 >::checkTemplateArguments();
955  AnyType< Type5 >::checkTemplateArguments();
956  AnyType< Type6 >::checkTemplateArguments();
957  AnyType< Type7 >::checkTemplateArguments();
958  AnyType< Type8 >::checkTemplateArguments();
959  AnyType< Type9 >::checkTemplateArguments();
960  AnyType< Type10 >::checkTemplateArguments();
961  AnyType< Type11 >::checkTemplateArguments();
962  AnyType< Type12 >::checkTemplateArguments();
963  AnyType< Type13 >::checkTemplateArguments();
964  AnyType< Type14 >::checkTemplateArguments();
965  AnyType< Type15 >::checkTemplateArguments();
966  AnyType< Type16 >::checkTemplateArguments();
967  AnyType< Type17 >::checkTemplateArguments();
968  AnyType< Type18 >::checkTemplateArguments();
969  AnyType< Type19 >::checkTemplateArguments();
970  }
971 
978  static void checkType( Field *f ) {
979  if(
980  !AnyType< Type0 >::checkType( f ) &&
981  !AnyType< Type1 >::checkType( f ) &&
982  !AnyType< Type2 >::checkType( f ) &&
983  !AnyType< Type3 >::checkType( f ) &&
984  !AnyType< Type4 >::checkType( f ) &&
985  !AnyType< Type5 >::checkType( f ) &&
986  !AnyType< Type6 >::checkType( f ) &&
987  !AnyType< Type7 >::checkType( f ) &&
988  !AnyType< Type8 >::checkType( f ) &&
989  !AnyType< Type9 >::checkType( f ) &&
990  !AnyType< Type10 >::checkType( f ) &&
991  !AnyType< Type11 >::checkType( f ) &&
992  !AnyType< Type12 >::checkType( f ) &&
993  !AnyType< Type13 >::checkType( f ) &&
994  !AnyType< Type14 >::checkType( f ) &&
995  !AnyType< Type15 >::checkType( f ) &&
996  !AnyType< Type16 >::checkType( f ) &&
997  !AnyType< Type17 >::checkType( f ) &&
998  !AnyType< Type18 >::checkType( f ) &&
999  !AnyType< Type19 >::checkType( f ) ) {
1000  throw InvalidType( typeid( f ).name(),
1001  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19> ).name() );
1002  }
1003  }
1004  };
1005  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10, class Type11, class Type12, class Type13, class Type14, class Type15, class Type16, class Type17, class Type18, class Type19, class Type20 >
1006  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void > {
1010  static void checkTemplateArguments() {
1011  AnyType< Type0 >::checkTemplateArguments();
1012  AnyType< Type1 >::checkTemplateArguments();
1013  AnyType< Type2 >::checkTemplateArguments();
1014  AnyType< Type3 >::checkTemplateArguments();
1015  AnyType< Type4 >::checkTemplateArguments();
1016  AnyType< Type5 >::checkTemplateArguments();
1017  AnyType< Type6 >::checkTemplateArguments();
1018  AnyType< Type7 >::checkTemplateArguments();
1019  AnyType< Type8 >::checkTemplateArguments();
1020  AnyType< Type9 >::checkTemplateArguments();
1021  AnyType< Type10 >::checkTemplateArguments();
1022  AnyType< Type11 >::checkTemplateArguments();
1023  AnyType< Type12 >::checkTemplateArguments();
1024  AnyType< Type13 >::checkTemplateArguments();
1025  AnyType< Type14 >::checkTemplateArguments();
1026  AnyType< Type15 >::checkTemplateArguments();
1027  AnyType< Type16 >::checkTemplateArguments();
1028  AnyType< Type17 >::checkTemplateArguments();
1029  AnyType< Type18 >::checkTemplateArguments();
1030  AnyType< Type19 >::checkTemplateArguments();
1031  AnyType< Type20 >::checkTemplateArguments();
1032  }
1033 
1040  static void checkType( Field *f ) {
1041  if(
1042  !AnyType< Type0 >::checkType( f ) &&
1043  !AnyType< Type1 >::checkType( f ) &&
1044  !AnyType< Type2 >::checkType( f ) &&
1045  !AnyType< Type3 >::checkType( f ) &&
1046  !AnyType< Type4 >::checkType( f ) &&
1047  !AnyType< Type5 >::checkType( f ) &&
1048  !AnyType< Type6 >::checkType( f ) &&
1049  !AnyType< Type7 >::checkType( f ) &&
1050  !AnyType< Type8 >::checkType( f ) &&
1051  !AnyType< Type9 >::checkType( f ) &&
1052  !AnyType< Type10 >::checkType( f ) &&
1053  !AnyType< Type11 >::checkType( f ) &&
1054  !AnyType< Type12 >::checkType( f ) &&
1055  !AnyType< Type13 >::checkType( f ) &&
1056  !AnyType< Type14 >::checkType( f ) &&
1057  !AnyType< Type15 >::checkType( f ) &&
1058  !AnyType< Type16 >::checkType( f ) &&
1059  !AnyType< Type17 >::checkType( f ) &&
1060  !AnyType< Type18 >::checkType( f ) &&
1061  !AnyType< Type19 >::checkType( f ) &&
1062  !AnyType< Type20 >::checkType( f ) ) {
1063  throw InvalidType( typeid( f ).name(),
1064  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20> ).name() );
1065  }
1066  }
1067  };
1068  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10, class Type11, class Type12, class Type13, class Type14, class Type15, class Type16, class Type17, class Type18, class Type19, class Type20, class Type21 >
1069  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void > {
1073  static void checkTemplateArguments() {
1074  AnyType< Type0 >::checkTemplateArguments();
1075  AnyType< Type1 >::checkTemplateArguments();
1076  AnyType< Type2 >::checkTemplateArguments();
1077  AnyType< Type3 >::checkTemplateArguments();
1078  AnyType< Type4 >::checkTemplateArguments();
1079  AnyType< Type5 >::checkTemplateArguments();
1080  AnyType< Type6 >::checkTemplateArguments();
1081  AnyType< Type7 >::checkTemplateArguments();
1082  AnyType< Type8 >::checkTemplateArguments();
1083  AnyType< Type9 >::checkTemplateArguments();
1084  AnyType< Type10 >::checkTemplateArguments();
1085  AnyType< Type11 >::checkTemplateArguments();
1086  AnyType< Type12 >::checkTemplateArguments();
1087  AnyType< Type13 >::checkTemplateArguments();
1088  AnyType< Type14 >::checkTemplateArguments();
1089  AnyType< Type15 >::checkTemplateArguments();
1090  AnyType< Type16 >::checkTemplateArguments();
1091  AnyType< Type17 >::checkTemplateArguments();
1092  AnyType< Type18 >::checkTemplateArguments();
1093  AnyType< Type19 >::checkTemplateArguments();
1094  AnyType< Type20 >::checkTemplateArguments();
1095  AnyType< Type21 >::checkTemplateArguments();
1096  }
1097 
1104  static void checkType( Field *f ) {
1105  if(
1106  !AnyType< Type0 >::checkType( f ) &&
1107  !AnyType< Type1 >::checkType( f ) &&
1108  !AnyType< Type2 >::checkType( f ) &&
1109  !AnyType< Type3 >::checkType( f ) &&
1110  !AnyType< Type4 >::checkType( f ) &&
1111  !AnyType< Type5 >::checkType( f ) &&
1112  !AnyType< Type6 >::checkType( f ) &&
1113  !AnyType< Type7 >::checkType( f ) &&
1114  !AnyType< Type8 >::checkType( f ) &&
1115  !AnyType< Type9 >::checkType( f ) &&
1116  !AnyType< Type10 >::checkType( f ) &&
1117  !AnyType< Type11 >::checkType( f ) &&
1118  !AnyType< Type12 >::checkType( f ) &&
1119  !AnyType< Type13 >::checkType( f ) &&
1120  !AnyType< Type14 >::checkType( f ) &&
1121  !AnyType< Type15 >::checkType( f ) &&
1122  !AnyType< Type16 >::checkType( f ) &&
1123  !AnyType< Type17 >::checkType( f ) &&
1124  !AnyType< Type18 >::checkType( f ) &&
1125  !AnyType< Type19 >::checkType( f ) &&
1126  !AnyType< Type20 >::checkType( f ) &&
1127  !AnyType< Type21 >::checkType( f ) ) {
1128  throw InvalidType( typeid( f ).name(),
1129  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21> ).name() );
1130  }
1131  }
1132  };
1133  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10, class Type11, class Type12, class Type13, class Type14, class Type15, class Type16, class Type17, class Type18, class Type19, class Type20, class Type21, class Type22 >
1134  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void > {
1138  static void checkTemplateArguments() {
1139  AnyType< Type0 >::checkTemplateArguments();
1140  AnyType< Type1 >::checkTemplateArguments();
1141  AnyType< Type2 >::checkTemplateArguments();
1142  AnyType< Type3 >::checkTemplateArguments();
1143  AnyType< Type4 >::checkTemplateArguments();
1144  AnyType< Type5 >::checkTemplateArguments();
1145  AnyType< Type6 >::checkTemplateArguments();
1146  AnyType< Type7 >::checkTemplateArguments();
1147  AnyType< Type8 >::checkTemplateArguments();
1148  AnyType< Type9 >::checkTemplateArguments();
1149  AnyType< Type10 >::checkTemplateArguments();
1150  AnyType< Type11 >::checkTemplateArguments();
1151  AnyType< Type12 >::checkTemplateArguments();
1152  AnyType< Type13 >::checkTemplateArguments();
1153  AnyType< Type14 >::checkTemplateArguments();
1154  AnyType< Type15 >::checkTemplateArguments();
1155  AnyType< Type16 >::checkTemplateArguments();
1156  AnyType< Type17 >::checkTemplateArguments();
1157  AnyType< Type18 >::checkTemplateArguments();
1158  AnyType< Type19 >::checkTemplateArguments();
1159  AnyType< Type20 >::checkTemplateArguments();
1160  AnyType< Type21 >::checkTemplateArguments();
1161  AnyType< Type22 >::checkTemplateArguments();
1162  }
1163 
1170  static void checkType( Field *f ) {
1171  if(
1172  !AnyType< Type0 >::checkType( f ) &&
1173  !AnyType< Type1 >::checkType( f ) &&
1174  !AnyType< Type2 >::checkType( f ) &&
1175  !AnyType< Type3 >::checkType( f ) &&
1176  !AnyType< Type4 >::checkType( f ) &&
1177  !AnyType< Type5 >::checkType( f ) &&
1178  !AnyType< Type6 >::checkType( f ) &&
1179  !AnyType< Type7 >::checkType( f ) &&
1180  !AnyType< Type8 >::checkType( f ) &&
1181  !AnyType< Type9 >::checkType( f ) &&
1182  !AnyType< Type10 >::checkType( f ) &&
1183  !AnyType< Type11 >::checkType( f ) &&
1184  !AnyType< Type12 >::checkType( f ) &&
1185  !AnyType< Type13 >::checkType( f ) &&
1186  !AnyType< Type14 >::checkType( f ) &&
1187  !AnyType< Type15 >::checkType( f ) &&
1188  !AnyType< Type16 >::checkType( f ) &&
1189  !AnyType< Type17 >::checkType( f ) &&
1190  !AnyType< Type18 >::checkType( f ) &&
1191  !AnyType< Type19 >::checkType( f ) &&
1192  !AnyType< Type20 >::checkType( f ) &&
1193  !AnyType< Type21 >::checkType( f ) &&
1194  !AnyType< Type22 >::checkType( f ) ) {
1195  throw InvalidType( typeid( f ).name(),
1196  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22> ).name() );
1197  }
1198  }
1199  };
1200  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10, class Type11, class Type12, class Type13, class Type14, class Type15, class Type16, class Type17, class Type18, class Type19, class Type20, class Type21, class Type22, class Type23 >
1201  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void > {
1205  static void checkTemplateArguments() {
1206  AnyType< Type0 >::checkTemplateArguments();
1207  AnyType< Type1 >::checkTemplateArguments();
1208  AnyType< Type2 >::checkTemplateArguments();
1209  AnyType< Type3 >::checkTemplateArguments();
1210  AnyType< Type4 >::checkTemplateArguments();
1211  AnyType< Type5 >::checkTemplateArguments();
1212  AnyType< Type6 >::checkTemplateArguments();
1213  AnyType< Type7 >::checkTemplateArguments();
1214  AnyType< Type8 >::checkTemplateArguments();
1215  AnyType< Type9 >::checkTemplateArguments();
1216  AnyType< Type10 >::checkTemplateArguments();
1217  AnyType< Type11 >::checkTemplateArguments();
1218  AnyType< Type12 >::checkTemplateArguments();
1219  AnyType< Type13 >::checkTemplateArguments();
1220  AnyType< Type14 >::checkTemplateArguments();
1221  AnyType< Type15 >::checkTemplateArguments();
1222  AnyType< Type16 >::checkTemplateArguments();
1223  AnyType< Type17 >::checkTemplateArguments();
1224  AnyType< Type18 >::checkTemplateArguments();
1225  AnyType< Type19 >::checkTemplateArguments();
1226  AnyType< Type20 >::checkTemplateArguments();
1227  AnyType< Type21 >::checkTemplateArguments();
1228  AnyType< Type22 >::checkTemplateArguments();
1229  AnyType< Type23 >::checkTemplateArguments();
1230  }
1231 
1238  static void checkType( Field *f ) {
1239  if(
1240  !AnyType< Type0 >::checkType( f ) &&
1241  !AnyType< Type1 >::checkType( f ) &&
1242  !AnyType< Type2 >::checkType( f ) &&
1243  !AnyType< Type3 >::checkType( f ) &&
1244  !AnyType< Type4 >::checkType( f ) &&
1245  !AnyType< Type5 >::checkType( f ) &&
1246  !AnyType< Type6 >::checkType( f ) &&
1247  !AnyType< Type7 >::checkType( f ) &&
1248  !AnyType< Type8 >::checkType( f ) &&
1249  !AnyType< Type9 >::checkType( f ) &&
1250  !AnyType< Type10 >::checkType( f ) &&
1251  !AnyType< Type11 >::checkType( f ) &&
1252  !AnyType< Type12 >::checkType( f ) &&
1253  !AnyType< Type13 >::checkType( f ) &&
1254  !AnyType< Type14 >::checkType( f ) &&
1255  !AnyType< Type15 >::checkType( f ) &&
1256  !AnyType< Type16 >::checkType( f ) &&
1257  !AnyType< Type17 >::checkType( f ) &&
1258  !AnyType< Type18 >::checkType( f ) &&
1259  !AnyType< Type19 >::checkType( f ) &&
1260  !AnyType< Type20 >::checkType( f ) &&
1261  !AnyType< Type21 >::checkType( f ) &&
1262  !AnyType< Type22 >::checkType( f ) &&
1263  !AnyType< Type23 >::checkType( f ) ) {
1264  throw InvalidType( typeid( f ).name(),
1265  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23> ).name() );
1266  }
1267  }
1268  };
1269  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10, class Type11, class Type12, class Type13, class Type14, class Type15, class Type16, class Type17, class Type18, class Type19, class Type20, class Type21, class Type22, class Type23, class Type24 >
1270  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void > {
1274  static void checkTemplateArguments() {
1275  AnyType< Type0 >::checkTemplateArguments();
1276  AnyType< Type1 >::checkTemplateArguments();
1277  AnyType< Type2 >::checkTemplateArguments();
1278  AnyType< Type3 >::checkTemplateArguments();
1279  AnyType< Type4 >::checkTemplateArguments();
1280  AnyType< Type5 >::checkTemplateArguments();
1281  AnyType< Type6 >::checkTemplateArguments();
1282  AnyType< Type7 >::checkTemplateArguments();
1283  AnyType< Type8 >::checkTemplateArguments();
1284  AnyType< Type9 >::checkTemplateArguments();
1285  AnyType< Type10 >::checkTemplateArguments();
1286  AnyType< Type11 >::checkTemplateArguments();
1287  AnyType< Type12 >::checkTemplateArguments();
1288  AnyType< Type13 >::checkTemplateArguments();
1289  AnyType< Type14 >::checkTemplateArguments();
1290  AnyType< Type15 >::checkTemplateArguments();
1291  AnyType< Type16 >::checkTemplateArguments();
1292  AnyType< Type17 >::checkTemplateArguments();
1293  AnyType< Type18 >::checkTemplateArguments();
1294  AnyType< Type19 >::checkTemplateArguments();
1295  AnyType< Type20 >::checkTemplateArguments();
1296  AnyType< Type21 >::checkTemplateArguments();
1297  AnyType< Type22 >::checkTemplateArguments();
1298  AnyType< Type23 >::checkTemplateArguments();
1299  AnyType< Type24 >::checkTemplateArguments();
1300  }
1301 
1308  static void checkType( Field *f ) {
1309  if(
1310  !AnyType< Type0 >::checkType( f ) &&
1311  !AnyType< Type1 >::checkType( f ) &&
1312  !AnyType< Type2 >::checkType( f ) &&
1313  !AnyType< Type3 >::checkType( f ) &&
1314  !AnyType< Type4 >::checkType( f ) &&
1315  !AnyType< Type5 >::checkType( f ) &&
1316  !AnyType< Type6 >::checkType( f ) &&
1317  !AnyType< Type7 >::checkType( f ) &&
1318  !AnyType< Type8 >::checkType( f ) &&
1319  !AnyType< Type9 >::checkType( f ) &&
1320  !AnyType< Type10 >::checkType( f ) &&
1321  !AnyType< Type11 >::checkType( f ) &&
1322  !AnyType< Type12 >::checkType( f ) &&
1323  !AnyType< Type13 >::checkType( f ) &&
1324  !AnyType< Type14 >::checkType( f ) &&
1325  !AnyType< Type15 >::checkType( f ) &&
1326  !AnyType< Type16 >::checkType( f ) &&
1327  !AnyType< Type17 >::checkType( f ) &&
1328  !AnyType< Type18 >::checkType( f ) &&
1329  !AnyType< Type19 >::checkType( f ) &&
1330  !AnyType< Type20 >::checkType( f ) &&
1331  !AnyType< Type21 >::checkType( f ) &&
1332  !AnyType< Type22 >::checkType( f ) &&
1333  !AnyType< Type23 >::checkType( f ) &&
1334  !AnyType< Type24 >::checkType( f ) ) {
1335  throw InvalidType( typeid( f ).name(),
1336  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24> ).name() );
1337  }
1338  }
1339  };
1340  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10, class Type11, class Type12, class Type13, class Type14, class Type15, class Type16, class Type17, class Type18, class Type19, class Type20, class Type21, class Type22, class Type23, class Type24, class Type25 >
1341  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24, Type25, void, void, void, void, void, void, void, void, void, void, void, void, void, void > {
1345  static void checkTemplateArguments() {
1346  AnyType< Type0 >::checkTemplateArguments();
1347  AnyType< Type1 >::checkTemplateArguments();
1348  AnyType< Type2 >::checkTemplateArguments();
1349  AnyType< Type3 >::checkTemplateArguments();
1350  AnyType< Type4 >::checkTemplateArguments();
1351  AnyType< Type5 >::checkTemplateArguments();
1352  AnyType< Type6 >::checkTemplateArguments();
1353  AnyType< Type7 >::checkTemplateArguments();
1354  AnyType< Type8 >::checkTemplateArguments();
1355  AnyType< Type9 >::checkTemplateArguments();
1356  AnyType< Type10 >::checkTemplateArguments();
1357  AnyType< Type11 >::checkTemplateArguments();
1358  AnyType< Type12 >::checkTemplateArguments();
1359  AnyType< Type13 >::checkTemplateArguments();
1360  AnyType< Type14 >::checkTemplateArguments();
1361  AnyType< Type15 >::checkTemplateArguments();
1362  AnyType< Type16 >::checkTemplateArguments();
1363  AnyType< Type17 >::checkTemplateArguments();
1364  AnyType< Type18 >::checkTemplateArguments();
1365  AnyType< Type19 >::checkTemplateArguments();
1366  AnyType< Type20 >::checkTemplateArguments();
1367  AnyType< Type21 >::checkTemplateArguments();
1368  AnyType< Type22 >::checkTemplateArguments();
1369  AnyType< Type23 >::checkTemplateArguments();
1370  AnyType< Type24 >::checkTemplateArguments();
1371  AnyType< Type25 >::checkTemplateArguments();
1372  }
1373 
1380  static void checkType( Field *f ) {
1381  if(
1382  !AnyType< Type0 >::checkType( f ) &&
1383  !AnyType< Type1 >::checkType( f ) &&
1384  !AnyType< Type2 >::checkType( f ) &&
1385  !AnyType< Type3 >::checkType( f ) &&
1386  !AnyType< Type4 >::checkType( f ) &&
1387  !AnyType< Type5 >::checkType( f ) &&
1388  !AnyType< Type6 >::checkType( f ) &&
1389  !AnyType< Type7 >::checkType( f ) &&
1390  !AnyType< Type8 >::checkType( f ) &&
1391  !AnyType< Type9 >::checkType( f ) &&
1392  !AnyType< Type10 >::checkType( f ) &&
1393  !AnyType< Type11 >::checkType( f ) &&
1394  !AnyType< Type12 >::checkType( f ) &&
1395  !AnyType< Type13 >::checkType( f ) &&
1396  !AnyType< Type14 >::checkType( f ) &&
1397  !AnyType< Type15 >::checkType( f ) &&
1398  !AnyType< Type16 >::checkType( f ) &&
1399  !AnyType< Type17 >::checkType( f ) &&
1400  !AnyType< Type18 >::checkType( f ) &&
1401  !AnyType< Type19 >::checkType( f ) &&
1402  !AnyType< Type20 >::checkType( f ) &&
1403  !AnyType< Type21 >::checkType( f ) &&
1404  !AnyType< Type22 >::checkType( f ) &&
1405  !AnyType< Type23 >::checkType( f ) &&
1406  !AnyType< Type24 >::checkType( f ) &&
1407  !AnyType< Type25 >::checkType( f ) ) {
1408  throw InvalidType( typeid( f ).name(),
1409  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24, Type25> ).name() );
1410  }
1411  }
1412  };
1413  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10, class Type11, class Type12, class Type13, class Type14, class Type15, class Type16, class Type17, class Type18, class Type19, class Type20, class Type21, class Type22, class Type23, class Type24, class Type25, class Type26 >
1414  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24, Type25, Type26, void, void, void, void, void, void, void, void, void, void, void, void, void > {
1418  static void checkTemplateArguments() {
1419  AnyType< Type0 >::checkTemplateArguments();
1420  AnyType< Type1 >::checkTemplateArguments();
1421  AnyType< Type2 >::checkTemplateArguments();
1422  AnyType< Type3 >::checkTemplateArguments();
1423  AnyType< Type4 >::checkTemplateArguments();
1424  AnyType< Type5 >::checkTemplateArguments();
1425  AnyType< Type6 >::checkTemplateArguments();
1426  AnyType< Type7 >::checkTemplateArguments();
1427  AnyType< Type8 >::checkTemplateArguments();
1428  AnyType< Type9 >::checkTemplateArguments();
1429  AnyType< Type10 >::checkTemplateArguments();
1430  AnyType< Type11 >::checkTemplateArguments();
1431  AnyType< Type12 >::checkTemplateArguments();
1432  AnyType< Type13 >::checkTemplateArguments();
1433  AnyType< Type14 >::checkTemplateArguments();
1434  AnyType< Type15 >::checkTemplateArguments();
1435  AnyType< Type16 >::checkTemplateArguments();
1436  AnyType< Type17 >::checkTemplateArguments();
1437  AnyType< Type18 >::checkTemplateArguments();
1438  AnyType< Type19 >::checkTemplateArguments();
1439  AnyType< Type20 >::checkTemplateArguments();
1440  AnyType< Type21 >::checkTemplateArguments();
1441  AnyType< Type22 >::checkTemplateArguments();
1442  AnyType< Type23 >::checkTemplateArguments();
1443  AnyType< Type24 >::checkTemplateArguments();
1444  AnyType< Type25 >::checkTemplateArguments();
1445  AnyType< Type26 >::checkTemplateArguments();
1446  }
1447 
1454  static void checkType( Field *f ) {
1455  if(
1456  !AnyType< Type0 >::checkType( f ) &&
1457  !AnyType< Type1 >::checkType( f ) &&
1458  !AnyType< Type2 >::checkType( f ) &&
1459  !AnyType< Type3 >::checkType( f ) &&
1460  !AnyType< Type4 >::checkType( f ) &&
1461  !AnyType< Type5 >::checkType( f ) &&
1462  !AnyType< Type6 >::checkType( f ) &&
1463  !AnyType< Type7 >::checkType( f ) &&
1464  !AnyType< Type8 >::checkType( f ) &&
1465  !AnyType< Type9 >::checkType( f ) &&
1466  !AnyType< Type10 >::checkType( f ) &&
1467  !AnyType< Type11 >::checkType( f ) &&
1468  !AnyType< Type12 >::checkType( f ) &&
1469  !AnyType< Type13 >::checkType( f ) &&
1470  !AnyType< Type14 >::checkType( f ) &&
1471  !AnyType< Type15 >::checkType( f ) &&
1472  !AnyType< Type16 >::checkType( f ) &&
1473  !AnyType< Type17 >::checkType( f ) &&
1474  !AnyType< Type18 >::checkType( f ) &&
1475  !AnyType< Type19 >::checkType( f ) &&
1476  !AnyType< Type20 >::checkType( f ) &&
1477  !AnyType< Type21 >::checkType( f ) &&
1478  !AnyType< Type22 >::checkType( f ) &&
1479  !AnyType< Type23 >::checkType( f ) &&
1480  !AnyType< Type24 >::checkType( f ) &&
1481  !AnyType< Type25 >::checkType( f ) &&
1482  !AnyType< Type26 >::checkType( f ) ) {
1483  throw InvalidType( typeid( f ).name(),
1484  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24, Type25, Type26> ).name() );
1485  }
1486  }
1487  };
1488  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10, class Type11, class Type12, class Type13, class Type14, class Type15, class Type16, class Type17, class Type18, class Type19, class Type20, class Type21, class Type22, class Type23, class Type24, class Type25, class Type26, class Type27 >
1489  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24, Type25, Type26, Type27, void, void, void, void, void, void, void, void, void, void, void, void > {
1493  static void checkTemplateArguments() {
1494  AnyType< Type0 >::checkTemplateArguments();
1495  AnyType< Type1 >::checkTemplateArguments();
1496  AnyType< Type2 >::checkTemplateArguments();
1497  AnyType< Type3 >::checkTemplateArguments();
1498  AnyType< Type4 >::checkTemplateArguments();
1499  AnyType< Type5 >::checkTemplateArguments();
1500  AnyType< Type6 >::checkTemplateArguments();
1501  AnyType< Type7 >::checkTemplateArguments();
1502  AnyType< Type8 >::checkTemplateArguments();
1503  AnyType< Type9 >::checkTemplateArguments();
1504  AnyType< Type10 >::checkTemplateArguments();
1505  AnyType< Type11 >::checkTemplateArguments();
1506  AnyType< Type12 >::checkTemplateArguments();
1507  AnyType< Type13 >::checkTemplateArguments();
1508  AnyType< Type14 >::checkTemplateArguments();
1509  AnyType< Type15 >::checkTemplateArguments();
1510  AnyType< Type16 >::checkTemplateArguments();
1511  AnyType< Type17 >::checkTemplateArguments();
1512  AnyType< Type18 >::checkTemplateArguments();
1513  AnyType< Type19 >::checkTemplateArguments();
1514  AnyType< Type20 >::checkTemplateArguments();
1515  AnyType< Type21 >::checkTemplateArguments();
1516  AnyType< Type22 >::checkTemplateArguments();
1517  AnyType< Type23 >::checkTemplateArguments();
1518  AnyType< Type24 >::checkTemplateArguments();
1519  AnyType< Type25 >::checkTemplateArguments();
1520  AnyType< Type26 >::checkTemplateArguments();
1521  AnyType< Type27 >::checkTemplateArguments();
1522  }
1523 
1530  static void checkType( Field *f ) {
1531  if(
1532  !AnyType< Type0 >::checkType( f ) &&
1533  !AnyType< Type1 >::checkType( f ) &&
1534  !AnyType< Type2 >::checkType( f ) &&
1535  !AnyType< Type3 >::checkType( f ) &&
1536  !AnyType< Type4 >::checkType( f ) &&
1537  !AnyType< Type5 >::checkType( f ) &&
1538  !AnyType< Type6 >::checkType( f ) &&
1539  !AnyType< Type7 >::checkType( f ) &&
1540  !AnyType< Type8 >::checkType( f ) &&
1541  !AnyType< Type9 >::checkType( f ) &&
1542  !AnyType< Type10 >::checkType( f ) &&
1543  !AnyType< Type11 >::checkType( f ) &&
1544  !AnyType< Type12 >::checkType( f ) &&
1545  !AnyType< Type13 >::checkType( f ) &&
1546  !AnyType< Type14 >::checkType( f ) &&
1547  !AnyType< Type15 >::checkType( f ) &&
1548  !AnyType< Type16 >::checkType( f ) &&
1549  !AnyType< Type17 >::checkType( f ) &&
1550  !AnyType< Type18 >::checkType( f ) &&
1551  !AnyType< Type19 >::checkType( f ) &&
1552  !AnyType< Type20 >::checkType( f ) &&
1553  !AnyType< Type21 >::checkType( f ) &&
1554  !AnyType< Type22 >::checkType( f ) &&
1555  !AnyType< Type23 >::checkType( f ) &&
1556  !AnyType< Type24 >::checkType( f ) &&
1557  !AnyType< Type25 >::checkType( f ) &&
1558  !AnyType< Type26 >::checkType( f ) &&
1559  !AnyType< Type27 >::checkType( f ) ) {
1560  throw InvalidType( typeid( f ).name(),
1561  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24, Type25, Type26, Type27> ).name() );
1562  }
1563  }
1564  };
1565  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10, class Type11, class Type12, class Type13, class Type14, class Type15, class Type16, class Type17, class Type18, class Type19, class Type20, class Type21, class Type22, class Type23, class Type24, class Type25, class Type26, class Type27, class Type28 >
1566  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24, Type25, Type26, Type27, Type28, void, void, void, void, void, void, void, void, void, void, void > {
1570  static void checkTemplateArguments() {
1571  AnyType< Type0 >::checkTemplateArguments();
1572  AnyType< Type1 >::checkTemplateArguments();
1573  AnyType< Type2 >::checkTemplateArguments();
1574  AnyType< Type3 >::checkTemplateArguments();
1575  AnyType< Type4 >::checkTemplateArguments();
1576  AnyType< Type5 >::checkTemplateArguments();
1577  AnyType< Type6 >::checkTemplateArguments();
1578  AnyType< Type7 >::checkTemplateArguments();
1579  AnyType< Type8 >::checkTemplateArguments();
1580  AnyType< Type9 >::checkTemplateArguments();
1581  AnyType< Type10 >::checkTemplateArguments();
1582  AnyType< Type11 >::checkTemplateArguments();
1583  AnyType< Type12 >::checkTemplateArguments();
1584  AnyType< Type13 >::checkTemplateArguments();
1585  AnyType< Type14 >::checkTemplateArguments();
1586  AnyType< Type15 >::checkTemplateArguments();
1587  AnyType< Type16 >::checkTemplateArguments();
1588  AnyType< Type17 >::checkTemplateArguments();
1589  AnyType< Type18 >::checkTemplateArguments();
1590  AnyType< Type19 >::checkTemplateArguments();
1591  AnyType< Type20 >::checkTemplateArguments();
1592  AnyType< Type21 >::checkTemplateArguments();
1593  AnyType< Type22 >::checkTemplateArguments();
1594  AnyType< Type23 >::checkTemplateArguments();
1595  AnyType< Type24 >::checkTemplateArguments();
1596  AnyType< Type25 >::checkTemplateArguments();
1597  AnyType< Type26 >::checkTemplateArguments();
1598  AnyType< Type27 >::checkTemplateArguments();
1599  AnyType< Type28 >::checkTemplateArguments();
1600  }
1601 
1608  static void checkType( Field *f ) {
1609  if(
1610  !AnyType< Type0 >::checkType( f ) &&
1611  !AnyType< Type1 >::checkType( f ) &&
1612  !AnyType< Type2 >::checkType( f ) &&
1613  !AnyType< Type3 >::checkType( f ) &&
1614  !AnyType< Type4 >::checkType( f ) &&
1615  !AnyType< Type5 >::checkType( f ) &&
1616  !AnyType< Type6 >::checkType( f ) &&
1617  !AnyType< Type7 >::checkType( f ) &&
1618  !AnyType< Type8 >::checkType( f ) &&
1619  !AnyType< Type9 >::checkType( f ) &&
1620  !AnyType< Type10 >::checkType( f ) &&
1621  !AnyType< Type11 >::checkType( f ) &&
1622  !AnyType< Type12 >::checkType( f ) &&
1623  !AnyType< Type13 >::checkType( f ) &&
1624  !AnyType< Type14 >::checkType( f ) &&
1625  !AnyType< Type15 >::checkType( f ) &&
1626  !AnyType< Type16 >::checkType( f ) &&
1627  !AnyType< Type17 >::checkType( f ) &&
1628  !AnyType< Type18 >::checkType( f ) &&
1629  !AnyType< Type19 >::checkType( f ) &&
1630  !AnyType< Type20 >::checkType( f ) &&
1631  !AnyType< Type21 >::checkType( f ) &&
1632  !AnyType< Type22 >::checkType( f ) &&
1633  !AnyType< Type23 >::checkType( f ) &&
1634  !AnyType< Type24 >::checkType( f ) &&
1635  !AnyType< Type25 >::checkType( f ) &&
1636  !AnyType< Type26 >::checkType( f ) &&
1637  !AnyType< Type27 >::checkType( f ) &&
1638  !AnyType< Type28 >::checkType( f ) ) {
1639  throw InvalidType( typeid( f ).name(),
1640  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24, Type25, Type26, Type27, Type28> ).name() );
1641  }
1642  }
1643  };
1644  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10, class Type11, class Type12, class Type13, class Type14, class Type15, class Type16, class Type17, class Type18, class Type19, class Type20, class Type21, class Type22, class Type23, class Type24, class Type25, class Type26, class Type27, class Type28, class Type29 >
1645  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24, Type25, Type26, Type27, Type28, Type29, void, void, void, void, void, void, void, void, void, void > {
1649  static void checkTemplateArguments() {
1650  AnyType< Type0 >::checkTemplateArguments();
1651  AnyType< Type1 >::checkTemplateArguments();
1652  AnyType< Type2 >::checkTemplateArguments();
1653  AnyType< Type3 >::checkTemplateArguments();
1654  AnyType< Type4 >::checkTemplateArguments();
1655  AnyType< Type5 >::checkTemplateArguments();
1656  AnyType< Type6 >::checkTemplateArguments();
1657  AnyType< Type7 >::checkTemplateArguments();
1658  AnyType< Type8 >::checkTemplateArguments();
1659  AnyType< Type9 >::checkTemplateArguments();
1660  AnyType< Type10 >::checkTemplateArguments();
1661  AnyType< Type11 >::checkTemplateArguments();
1662  AnyType< Type12 >::checkTemplateArguments();
1663  AnyType< Type13 >::checkTemplateArguments();
1664  AnyType< Type14 >::checkTemplateArguments();
1665  AnyType< Type15 >::checkTemplateArguments();
1666  AnyType< Type16 >::checkTemplateArguments();
1667  AnyType< Type17 >::checkTemplateArguments();
1668  AnyType< Type18 >::checkTemplateArguments();
1669  AnyType< Type19 >::checkTemplateArguments();
1670  AnyType< Type20 >::checkTemplateArguments();
1671  AnyType< Type21 >::checkTemplateArguments();
1672  AnyType< Type22 >::checkTemplateArguments();
1673  AnyType< Type23 >::checkTemplateArguments();
1674  AnyType< Type24 >::checkTemplateArguments();
1675  AnyType< Type25 >::checkTemplateArguments();
1676  AnyType< Type26 >::checkTemplateArguments();
1677  AnyType< Type27 >::checkTemplateArguments();
1678  AnyType< Type28 >::checkTemplateArguments();
1679  AnyType< Type29 >::checkTemplateArguments();
1680  }
1681 
1688  static void checkType( Field *f ) {
1689  if(
1690  !AnyType< Type0 >::checkType( f ) &&
1691  !AnyType< Type1 >::checkType( f ) &&
1692  !AnyType< Type2 >::checkType( f ) &&
1693  !AnyType< Type3 >::checkType( f ) &&
1694  !AnyType< Type4 >::checkType( f ) &&
1695  !AnyType< Type5 >::checkType( f ) &&
1696  !AnyType< Type6 >::checkType( f ) &&
1697  !AnyType< Type7 >::checkType( f ) &&
1698  !AnyType< Type8 >::checkType( f ) &&
1699  !AnyType< Type9 >::checkType( f ) &&
1700  !AnyType< Type10 >::checkType( f ) &&
1701  !AnyType< Type11 >::checkType( f ) &&
1702  !AnyType< Type12 >::checkType( f ) &&
1703  !AnyType< Type13 >::checkType( f ) &&
1704  !AnyType< Type14 >::checkType( f ) &&
1705  !AnyType< Type15 >::checkType( f ) &&
1706  !AnyType< Type16 >::checkType( f ) &&
1707  !AnyType< Type17 >::checkType( f ) &&
1708  !AnyType< Type18 >::checkType( f ) &&
1709  !AnyType< Type19 >::checkType( f ) &&
1710  !AnyType< Type20 >::checkType( f ) &&
1711  !AnyType< Type21 >::checkType( f ) &&
1712  !AnyType< Type22 >::checkType( f ) &&
1713  !AnyType< Type23 >::checkType( f ) &&
1714  !AnyType< Type24 >::checkType( f ) &&
1715  !AnyType< Type25 >::checkType( f ) &&
1716  !AnyType< Type26 >::checkType( f ) &&
1717  !AnyType< Type27 >::checkType( f ) &&
1718  !AnyType< Type28 >::checkType( f ) &&
1719  !AnyType< Type29 >::checkType( f ) ) {
1720  throw InvalidType( typeid( f ).name(),
1721  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24, Type25, Type26, Type27, Type28, Type29> ).name() );
1722  }
1723  }
1724  };
1725  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10, class Type11, class Type12, class Type13, class Type14, class Type15, class Type16, class Type17, class Type18, class Type19, class Type20, class Type21, class Type22, class Type23, class Type24, class Type25, class Type26, class Type27, class Type28, class Type29, class Type30 >
1726  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24, Type25, Type26, Type27, Type28, Type29, Type30, void, void, void, void, void, void, void, void, void > {
1730  static void checkTemplateArguments() {
1731  AnyType< Type0 >::checkTemplateArguments();
1732  AnyType< Type1 >::checkTemplateArguments();
1733  AnyType< Type2 >::checkTemplateArguments();
1734  AnyType< Type3 >::checkTemplateArguments();
1735  AnyType< Type4 >::checkTemplateArguments();
1736  AnyType< Type5 >::checkTemplateArguments();
1737  AnyType< Type6 >::checkTemplateArguments();
1738  AnyType< Type7 >::checkTemplateArguments();
1739  AnyType< Type8 >::checkTemplateArguments();
1740  AnyType< Type9 >::checkTemplateArguments();
1741  AnyType< Type10 >::checkTemplateArguments();
1742  AnyType< Type11 >::checkTemplateArguments();
1743  AnyType< Type12 >::checkTemplateArguments();
1744  AnyType< Type13 >::checkTemplateArguments();
1745  AnyType< Type14 >::checkTemplateArguments();
1746  AnyType< Type15 >::checkTemplateArguments();
1747  AnyType< Type16 >::checkTemplateArguments();
1748  AnyType< Type17 >::checkTemplateArguments();
1749  AnyType< Type18 >::checkTemplateArguments();
1750  AnyType< Type19 >::checkTemplateArguments();
1751  AnyType< Type20 >::checkTemplateArguments();
1752  AnyType< Type21 >::checkTemplateArguments();
1753  AnyType< Type22 >::checkTemplateArguments();
1754  AnyType< Type23 >::checkTemplateArguments();
1755  AnyType< Type24 >::checkTemplateArguments();
1756  AnyType< Type25 >::checkTemplateArguments();
1757  AnyType< Type26 >::checkTemplateArguments();
1758  AnyType< Type27 >::checkTemplateArguments();
1759  AnyType< Type28 >::checkTemplateArguments();
1760  AnyType< Type29 >::checkTemplateArguments();
1761  AnyType< Type30 >::checkTemplateArguments();
1762  }
1763 
1770  static void checkType( Field *f ) {
1771  if(
1772  !AnyType< Type0 >::checkType( f ) &&
1773  !AnyType< Type1 >::checkType( f ) &&
1774  !AnyType< Type2 >::checkType( f ) &&
1775  !AnyType< Type3 >::checkType( f ) &&
1776  !AnyType< Type4 >::checkType( f ) &&
1777  !AnyType< Type5 >::checkType( f ) &&
1778  !AnyType< Type6 >::checkType( f ) &&
1779  !AnyType< Type7 >::checkType( f ) &&
1780  !AnyType< Type8 >::checkType( f ) &&
1781  !AnyType< Type9 >::checkType( f ) &&
1782  !AnyType< Type10 >::checkType( f ) &&
1783  !AnyType< Type11 >::checkType( f ) &&
1784  !AnyType< Type12 >::checkType( f ) &&
1785  !AnyType< Type13 >::checkType( f ) &&
1786  !AnyType< Type14 >::checkType( f ) &&
1787  !AnyType< Type15 >::checkType( f ) &&
1788  !AnyType< Type16 >::checkType( f ) &&
1789  !AnyType< Type17 >::checkType( f ) &&
1790  !AnyType< Type18 >::checkType( f ) &&
1791  !AnyType< Type19 >::checkType( f ) &&
1792  !AnyType< Type20 >::checkType( f ) &&
1793  !AnyType< Type21 >::checkType( f ) &&
1794  !AnyType< Type22 >::checkType( f ) &&
1795  !AnyType< Type23 >::checkType( f ) &&
1796  !AnyType< Type24 >::checkType( f ) &&
1797  !AnyType< Type25 >::checkType( f ) &&
1798  !AnyType< Type26 >::checkType( f ) &&
1799  !AnyType< Type27 >::checkType( f ) &&
1800  !AnyType< Type28 >::checkType( f ) &&
1801  !AnyType< Type29 >::checkType( f ) &&
1802  !AnyType< Type30 >::checkType( f ) ) {
1803  throw InvalidType( typeid( f ).name(),
1804  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24, Type25, Type26, Type27, Type28, Type29, Type30> ).name() );
1805  }
1806  }
1807  };
1808  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10, class Type11, class Type12, class Type13, class Type14, class Type15, class Type16, class Type17, class Type18, class Type19, class Type20, class Type21, class Type22, class Type23, class Type24, class Type25, class Type26, class Type27, class Type28, class Type29, class Type30, class Type31 >
1809  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24, Type25, Type26, Type27, Type28, Type29, Type30, Type31, void, void, void, void, void, void, void, void > {
1813  static void checkTemplateArguments() {
1814  AnyType< Type0 >::checkTemplateArguments();
1815  AnyType< Type1 >::checkTemplateArguments();
1816  AnyType< Type2 >::checkTemplateArguments();
1817  AnyType< Type3 >::checkTemplateArguments();
1818  AnyType< Type4 >::checkTemplateArguments();
1819  AnyType< Type5 >::checkTemplateArguments();
1820  AnyType< Type6 >::checkTemplateArguments();
1821  AnyType< Type7 >::checkTemplateArguments();
1822  AnyType< Type8 >::checkTemplateArguments();
1823  AnyType< Type9 >::checkTemplateArguments();
1824  AnyType< Type10 >::checkTemplateArguments();
1825  AnyType< Type11 >::checkTemplateArguments();
1826  AnyType< Type12 >::checkTemplateArguments();
1827  AnyType< Type13 >::checkTemplateArguments();
1828  AnyType< Type14 >::checkTemplateArguments();
1829  AnyType< Type15 >::checkTemplateArguments();
1830  AnyType< Type16 >::checkTemplateArguments();
1831  AnyType< Type17 >::checkTemplateArguments();
1832  AnyType< Type18 >::checkTemplateArguments();
1833  AnyType< Type19 >::checkTemplateArguments();
1834  AnyType< Type20 >::checkTemplateArguments();
1835  AnyType< Type21 >::checkTemplateArguments();
1836  AnyType< Type22 >::checkTemplateArguments();
1837  AnyType< Type23 >::checkTemplateArguments();
1838  AnyType< Type24 >::checkTemplateArguments();
1839  AnyType< Type25 >::checkTemplateArguments();
1840  AnyType< Type26 >::checkTemplateArguments();
1841  AnyType< Type27 >::checkTemplateArguments();
1842  AnyType< Type28 >::checkTemplateArguments();
1843  AnyType< Type29 >::checkTemplateArguments();
1844  AnyType< Type30 >::checkTemplateArguments();
1845  AnyType< Type31 >::checkTemplateArguments();
1846  }
1847 
1854  static void checkType( Field *f ) {
1855  if(
1856  !AnyType< Type0 >::checkType( f ) &&
1857  !AnyType< Type1 >::checkType( f ) &&
1858  !AnyType< Type2 >::checkType( f ) &&
1859  !AnyType< Type3 >::checkType( f ) &&
1860  !AnyType< Type4 >::checkType( f ) &&
1861  !AnyType< Type5 >::checkType( f ) &&
1862  !AnyType< Type6 >::checkType( f ) &&
1863  !AnyType< Type7 >::checkType( f ) &&
1864  !AnyType< Type8 >::checkType( f ) &&
1865  !AnyType< Type9 >::checkType( f ) &&
1866  !AnyType< Type10 >::checkType( f ) &&
1867  !AnyType< Type11 >::checkType( f ) &&
1868  !AnyType< Type12 >::checkType( f ) &&
1869  !AnyType< Type13 >::checkType( f ) &&
1870  !AnyType< Type14 >::checkType( f ) &&
1871  !AnyType< Type15 >::checkType( f ) &&
1872  !AnyType< Type16 >::checkType( f ) &&
1873  !AnyType< Type17 >::checkType( f ) &&
1874  !AnyType< Type18 >::checkType( f ) &&
1875  !AnyType< Type19 >::checkType( f ) &&
1876  !AnyType< Type20 >::checkType( f ) &&
1877  !AnyType< Type21 >::checkType( f ) &&
1878  !AnyType< Type22 >::checkType( f ) &&
1879  !AnyType< Type23 >::checkType( f ) &&
1880  !AnyType< Type24 >::checkType( f ) &&
1881  !AnyType< Type25 >::checkType( f ) &&
1882  !AnyType< Type26 >::checkType( f ) &&
1883  !AnyType< Type27 >::checkType( f ) &&
1884  !AnyType< Type28 >::checkType( f ) &&
1885  !AnyType< Type29 >::checkType( f ) &&
1886  !AnyType< Type30 >::checkType( f ) &&
1887  !AnyType< Type31 >::checkType( f ) ) {
1888  throw InvalidType( typeid( f ).name(),
1889  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24, Type25, Type26, Type27, Type28, Type29, Type30, Type31> ).name() );
1890  }
1891  }
1892  };
1893  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10, class Type11, class Type12, class Type13, class Type14, class Type15, class Type16, class Type17, class Type18, class Type19, class Type20, class Type21, class Type22, class Type23, class Type24, class Type25, class Type26, class Type27, class Type28, class Type29, class Type30, class Type31, class Type32 >
1894  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24, Type25, Type26, Type27, Type28, Type29, Type30, Type31, Type32, void, void, void, void, void, void, void > {
1898  static void checkTemplateArguments() {
1899  AnyType< Type0 >::checkTemplateArguments();
1900  AnyType< Type1 >::checkTemplateArguments();
1901  AnyType< Type2 >::checkTemplateArguments();
1902  AnyType< Type3 >::checkTemplateArguments();
1903  AnyType< Type4 >::checkTemplateArguments();
1904  AnyType< Type5 >::checkTemplateArguments();
1905  AnyType< Type6 >::checkTemplateArguments();
1906  AnyType< Type7 >::checkTemplateArguments();
1907  AnyType< Type8 >::checkTemplateArguments();
1908  AnyType< Type9 >::checkTemplateArguments();
1909  AnyType< Type10 >::checkTemplateArguments();
1910  AnyType< Type11 >::checkTemplateArguments();
1911  AnyType< Type12 >::checkTemplateArguments();
1912  AnyType< Type13 >::checkTemplateArguments();
1913  AnyType< Type14 >::checkTemplateArguments();
1914  AnyType< Type15 >::checkTemplateArguments();
1915  AnyType< Type16 >::checkTemplateArguments();
1916  AnyType< Type17 >::checkTemplateArguments();
1917  AnyType< Type18 >::checkTemplateArguments();
1918  AnyType< Type19 >::checkTemplateArguments();
1919  AnyType< Type20 >::checkTemplateArguments();
1920  AnyType< Type21 >::checkTemplateArguments();
1921  AnyType< Type22 >::checkTemplateArguments();
1922  AnyType< Type23 >::checkTemplateArguments();
1923  AnyType< Type24 >::checkTemplateArguments();
1924  AnyType< Type25 >::checkTemplateArguments();
1925  AnyType< Type26 >::checkTemplateArguments();
1926  AnyType< Type27 >::checkTemplateArguments();
1927  AnyType< Type28 >::checkTemplateArguments();
1928  AnyType< Type29 >::checkTemplateArguments();
1929  AnyType< Type30 >::checkTemplateArguments();
1930  AnyType< Type31 >::checkTemplateArguments();
1931  AnyType< Type32 >::checkTemplateArguments();
1932  }
1933 
1940  static void checkType( Field *f ) {
1941  if(
1942  !AnyType< Type0 >::checkType( f ) &&
1943  !AnyType< Type1 >::checkType( f ) &&
1944  !AnyType< Type2 >::checkType( f ) &&
1945  !AnyType< Type3 >::checkType( f ) &&
1946  !AnyType< Type4 >::checkType( f ) &&
1947  !AnyType< Type5 >::checkType( f ) &&
1948  !AnyType< Type6 >::checkType( f ) &&
1949  !AnyType< Type7 >::checkType( f ) &&
1950  !AnyType< Type8 >::checkType( f ) &&
1951  !AnyType< Type9 >::checkType( f ) &&
1952  !AnyType< Type10 >::checkType( f ) &&
1953  !AnyType< Type11 >::checkType( f ) &&
1954  !AnyType< Type12 >::checkType( f ) &&
1955  !AnyType< Type13 >::checkType( f ) &&
1956  !AnyType< Type14 >::checkType( f ) &&
1957  !AnyType< Type15 >::checkType( f ) &&
1958  !AnyType< Type16 >::checkType( f ) &&
1959  !AnyType< Type17 >::checkType( f ) &&
1960  !AnyType< Type18 >::checkType( f ) &&
1961  !AnyType< Type19 >::checkType( f ) &&
1962  !AnyType< Type20 >::checkType( f ) &&
1963  !AnyType< Type21 >::checkType( f ) &&
1964  !AnyType< Type22 >::checkType( f ) &&
1965  !AnyType< Type23 >::checkType( f ) &&
1966  !AnyType< Type24 >::checkType( f ) &&
1967  !AnyType< Type25 >::checkType( f ) &&
1968  !AnyType< Type26 >::checkType( f ) &&
1969  !AnyType< Type27 >::checkType( f ) &&
1970  !AnyType< Type28 >::checkType( f ) &&
1971  !AnyType< Type29 >::checkType( f ) &&
1972  !AnyType< Type30 >::checkType( f ) &&
1973  !AnyType< Type31 >::checkType( f ) &&
1974  !AnyType< Type32 >::checkType( f ) ) {
1975  throw InvalidType( typeid( f ).name(),
1976  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24, Type25, Type26, Type27, Type28, Type29, Type30, Type31, Type32> ).name() );
1977  }
1978  }
1979  };
1980  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10, class Type11, class Type12, class Type13, class Type14, class Type15, class Type16, class Type17, class Type18, class Type19, class Type20, class Type21, class Type22, class Type23, class Type24, class Type25, class Type26, class Type27, class Type28, class Type29, class Type30, class Type31, class Type32, class Type33 >
1981  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24, Type25, Type26, Type27, Type28, Type29, Type30, Type31, Type32, Type33, void, void, void, void, void, void > {
1985  static void checkTemplateArguments() {
1986  AnyType< Type0 >::checkTemplateArguments();
1987  AnyType< Type1 >::checkTemplateArguments();
1988  AnyType< Type2 >::checkTemplateArguments();
1989  AnyType< Type3 >::checkTemplateArguments();
1990  AnyType< Type4 >::checkTemplateArguments();
1991  AnyType< Type5 >::checkTemplateArguments();
1992  AnyType< Type6 >::checkTemplateArguments();
1993  AnyType< Type7 >::checkTemplateArguments();
1994  AnyType< Type8 >::checkTemplateArguments();
1995  AnyType< Type9 >::checkTemplateArguments();
1996  AnyType< Type10 >::checkTemplateArguments();
1997  AnyType< Type11 >::checkTemplateArguments();
1998  AnyType< Type12 >::checkTemplateArguments();
1999  AnyType< Type13 >::checkTemplateArguments();
2000  AnyType< Type14 >::checkTemplateArguments();
2001  AnyType< Type15 >::checkTemplateArguments();
2002  AnyType< Type16 >::checkTemplateArguments();
2003  AnyType< Type17 >::checkTemplateArguments();
2004  AnyType< Type18 >::checkTemplateArguments();
2005  AnyType< Type19 >::checkTemplateArguments();
2006  AnyType< Type20 >::checkTemplateArguments();
2007  AnyType< Type21 >::checkTemplateArguments();
2008  AnyType< Type22 >::checkTemplateArguments();
2009  AnyType< Type23 >::checkTemplateArguments();
2010  AnyType< Type24 >::checkTemplateArguments();
2011  AnyType< Type25 >::checkTemplateArguments();
2012  AnyType< Type26 >::checkTemplateArguments();
2013  AnyType< Type27 >::checkTemplateArguments();
2014  AnyType< Type28 >::checkTemplateArguments();
2015  AnyType< Type29 >::checkTemplateArguments();
2016  AnyType< Type30 >::checkTemplateArguments();
2017  AnyType< Type31 >::checkTemplateArguments();
2018  AnyType< Type32 >::checkTemplateArguments();
2019  AnyType< Type33 >::checkTemplateArguments();
2020  }
2021 
2028  static void checkType( Field *f ) {
2029  if(
2030  !AnyType< Type0 >::checkType( f ) &&
2031  !AnyType< Type1 >::checkType( f ) &&
2032  !AnyType< Type2 >::checkType( f ) &&
2033  !AnyType< Type3 >::checkType( f ) &&
2034  !AnyType< Type4 >::checkType( f ) &&
2035  !AnyType< Type5 >::checkType( f ) &&
2036  !AnyType< Type6 >::checkType( f ) &&
2037  !AnyType< Type7 >::checkType( f ) &&
2038  !AnyType< Type8 >::checkType( f ) &&
2039  !AnyType< Type9 >::checkType( f ) &&
2040  !AnyType< Type10 >::checkType( f ) &&
2041  !AnyType< Type11 >::checkType( f ) &&
2042  !AnyType< Type12 >::checkType( f ) &&
2043  !AnyType< Type13 >::checkType( f ) &&
2044  !AnyType< Type14 >::checkType( f ) &&
2045  !AnyType< Type15 >::checkType( f ) &&
2046  !AnyType< Type16 >::checkType( f ) &&
2047  !AnyType< Type17 >::checkType( f ) &&
2048  !AnyType< Type18 >::checkType( f ) &&
2049  !AnyType< Type19 >::checkType( f ) &&
2050  !AnyType< Type20 >::checkType( f ) &&
2051  !AnyType< Type21 >::checkType( f ) &&
2052  !AnyType< Type22 >::checkType( f ) &&
2053  !AnyType< Type23 >::checkType( f ) &&
2054  !AnyType< Type24 >::checkType( f ) &&
2055  !AnyType< Type25 >::checkType( f ) &&
2056  !AnyType< Type26 >::checkType( f ) &&
2057  !AnyType< Type27 >::checkType( f ) &&
2058  !AnyType< Type28 >::checkType( f ) &&
2059  !AnyType< Type29 >::checkType( f ) &&
2060  !AnyType< Type30 >::checkType( f ) &&
2061  !AnyType< Type31 >::checkType( f ) &&
2062  !AnyType< Type32 >::checkType( f ) &&
2063  !AnyType< Type33 >::checkType( f ) ) {
2064  throw InvalidType( typeid( f ).name(),
2065  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24, Type25, Type26, Type27, Type28, Type29, Type30, Type31, Type32, Type33> ).name() );
2066  }
2067  }
2068  };
2069  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10, class Type11, class Type12, class Type13, class Type14, class Type15, class Type16, class Type17, class Type18, class Type19, class Type20, class Type21, class Type22, class Type23, class Type24, class Type25, class Type26, class Type27, class Type28, class Type29, class Type30, class Type31, class Type32, class Type33, class Type34 >
2070  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24, Type25, Type26, Type27, Type28, Type29, Type30, Type31, Type32, Type33, Type34, void, void, void, void, void > {
2074  static void checkTemplateArguments() {
2075  AnyType< Type0 >::checkTemplateArguments();
2076  AnyType< Type1 >::checkTemplateArguments();
2077  AnyType< Type2 >::checkTemplateArguments();
2078  AnyType< Type3 >::checkTemplateArguments();
2079  AnyType< Type4 >::checkTemplateArguments();
2080  AnyType< Type5 >::checkTemplateArguments();
2081  AnyType< Type6 >::checkTemplateArguments();
2082  AnyType< Type7 >::checkTemplateArguments();
2083  AnyType< Type8 >::checkTemplateArguments();
2084  AnyType< Type9 >::checkTemplateArguments();
2085  AnyType< Type10 >::checkTemplateArguments();
2086  AnyType< Type11 >::checkTemplateArguments();
2087  AnyType< Type12 >::checkTemplateArguments();
2088  AnyType< Type13 >::checkTemplateArguments();
2089  AnyType< Type14 >::checkTemplateArguments();
2090  AnyType< Type15 >::checkTemplateArguments();
2091  AnyType< Type16 >::checkTemplateArguments();
2092  AnyType< Type17 >::checkTemplateArguments();
2093  AnyType< Type18 >::checkTemplateArguments();
2094  AnyType< Type19 >::checkTemplateArguments();
2095  AnyType< Type20 >::checkTemplateArguments();
2096  AnyType< Type21 >::checkTemplateArguments();
2097  AnyType< Type22 >::checkTemplateArguments();
2098  AnyType< Type23 >::checkTemplateArguments();
2099  AnyType< Type24 >::checkTemplateArguments();
2100  AnyType< Type25 >::checkTemplateArguments();
2101  AnyType< Type26 >::checkTemplateArguments();
2102  AnyType< Type27 >::checkTemplateArguments();
2103  AnyType< Type28 >::checkTemplateArguments();
2104  AnyType< Type29 >::checkTemplateArguments();
2105  AnyType< Type30 >::checkTemplateArguments();
2106  AnyType< Type31 >::checkTemplateArguments();
2107  AnyType< Type32 >::checkTemplateArguments();
2108  AnyType< Type33 >::checkTemplateArguments();
2109  AnyType< Type34 >::checkTemplateArguments();
2110  }
2111 
2118  static void checkType( Field *f ) {
2119  if(
2120  !AnyType< Type0 >::checkType( f ) &&
2121  !AnyType< Type1 >::checkType( f ) &&
2122  !AnyType< Type2 >::checkType( f ) &&
2123  !AnyType< Type3 >::checkType( f ) &&
2124  !AnyType< Type4 >::checkType( f ) &&
2125  !AnyType< Type5 >::checkType( f ) &&
2126  !AnyType< Type6 >::checkType( f ) &&
2127  !AnyType< Type7 >::checkType( f ) &&
2128  !AnyType< Type8 >::checkType( f ) &&
2129  !AnyType< Type9 >::checkType( f ) &&
2130  !AnyType< Type10 >::checkType( f ) &&
2131  !AnyType< Type11 >::checkType( f ) &&
2132  !AnyType< Type12 >::checkType( f ) &&
2133  !AnyType< Type13 >::checkType( f ) &&
2134  !AnyType< Type14 >::checkType( f ) &&
2135  !AnyType< Type15 >::checkType( f ) &&
2136  !AnyType< Type16 >::checkType( f ) &&
2137  !AnyType< Type17 >::checkType( f ) &&
2138  !AnyType< Type18 >::checkType( f ) &&
2139  !AnyType< Type19 >::checkType( f ) &&
2140  !AnyType< Type20 >::checkType( f ) &&
2141  !AnyType< Type21 >::checkType( f ) &&
2142  !AnyType< Type22 >::checkType( f ) &&
2143  !AnyType< Type23 >::checkType( f ) &&
2144  !AnyType< Type24 >::checkType( f ) &&
2145  !AnyType< Type25 >::checkType( f ) &&
2146  !AnyType< Type26 >::checkType( f ) &&
2147  !AnyType< Type27 >::checkType( f ) &&
2148  !AnyType< Type28 >::checkType( f ) &&
2149  !AnyType< Type29 >::checkType( f ) &&
2150  !AnyType< Type30 >::checkType( f ) &&
2151  !AnyType< Type31 >::checkType( f ) &&
2152  !AnyType< Type32 >::checkType( f ) &&
2153  !AnyType< Type33 >::checkType( f ) &&
2154  !AnyType< Type34 >::checkType( f ) ) {
2155  throw InvalidType( typeid( f ).name(),
2156  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24, Type25, Type26, Type27, Type28, Type29, Type30, Type31, Type32, Type33, Type34> ).name() );
2157  }
2158  }
2159  };
2160  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10, class Type11, class Type12, class Type13, class Type14, class Type15, class Type16, class Type17, class Type18, class Type19, class Type20, class Type21, class Type22, class Type23, class Type24, class Type25, class Type26, class Type27, class Type28, class Type29, class Type30, class Type31, class Type32, class Type33, class Type34, class Type35 >
2161  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24, Type25, Type26, Type27, Type28, Type29, Type30, Type31, Type32, Type33, Type34, Type35, void, void, void, void > {
2165  static void checkTemplateArguments() {
2166  AnyType< Type0 >::checkTemplateArguments();
2167  AnyType< Type1 >::checkTemplateArguments();
2168  AnyType< Type2 >::checkTemplateArguments();
2169  AnyType< Type3 >::checkTemplateArguments();
2170  AnyType< Type4 >::checkTemplateArguments();
2171  AnyType< Type5 >::checkTemplateArguments();
2172  AnyType< Type6 >::checkTemplateArguments();
2173  AnyType< Type7 >::checkTemplateArguments();
2174  AnyType< Type8 >::checkTemplateArguments();
2175  AnyType< Type9 >::checkTemplateArguments();
2176  AnyType< Type10 >::checkTemplateArguments();
2177  AnyType< Type11 >::checkTemplateArguments();
2178  AnyType< Type12 >::checkTemplateArguments();
2179  AnyType< Type13 >::checkTemplateArguments();
2180  AnyType< Type14 >::checkTemplateArguments();
2181  AnyType< Type15 >::checkTemplateArguments();
2182  AnyType< Type16 >::checkTemplateArguments();
2183  AnyType< Type17 >::checkTemplateArguments();
2184  AnyType< Type18 >::checkTemplateArguments();
2185  AnyType< Type19 >::checkTemplateArguments();
2186  AnyType< Type20 >::checkTemplateArguments();
2187  AnyType< Type21 >::checkTemplateArguments();
2188  AnyType< Type22 >::checkTemplateArguments();
2189  AnyType< Type23 >::checkTemplateArguments();
2190  AnyType< Type24 >::checkTemplateArguments();
2191  AnyType< Type25 >::checkTemplateArguments();
2192  AnyType< Type26 >::checkTemplateArguments();
2193  AnyType< Type27 >::checkTemplateArguments();
2194  AnyType< Type28 >::checkTemplateArguments();
2195  AnyType< Type29 >::checkTemplateArguments();
2196  AnyType< Type30 >::checkTemplateArguments();
2197  AnyType< Type31 >::checkTemplateArguments();
2198  AnyType< Type32 >::checkTemplateArguments();
2199  AnyType< Type33 >::checkTemplateArguments();
2200  AnyType< Type34 >::checkTemplateArguments();
2201  AnyType< Type35 >::checkTemplateArguments();
2202  }
2203 
2210  static void checkType( Field *f ) {
2211  if(
2212  !AnyType< Type0 >::checkType( f ) &&
2213  !AnyType< Type1 >::checkType( f ) &&
2214  !AnyType< Type2 >::checkType( f ) &&
2215  !AnyType< Type3 >::checkType( f ) &&
2216  !AnyType< Type4 >::checkType( f ) &&
2217  !AnyType< Type5 >::checkType( f ) &&
2218  !AnyType< Type6 >::checkType( f ) &&
2219  !AnyType< Type7 >::checkType( f ) &&
2220  !AnyType< Type8 >::checkType( f ) &&
2221  !AnyType< Type9 >::checkType( f ) &&
2222  !AnyType< Type10 >::checkType( f ) &&
2223  !AnyType< Type11 >::checkType( f ) &&
2224  !AnyType< Type12 >::checkType( f ) &&
2225  !AnyType< Type13 >::checkType( f ) &&
2226  !AnyType< Type14 >::checkType( f ) &&
2227  !AnyType< Type15 >::checkType( f ) &&
2228  !AnyType< Type16 >::checkType( f ) &&
2229  !AnyType< Type17 >::checkType( f ) &&
2230  !AnyType< Type18 >::checkType( f ) &&
2231  !AnyType< Type19 >::checkType( f ) &&
2232  !AnyType< Type20 >::checkType( f ) &&
2233  !AnyType< Type21 >::checkType( f ) &&
2234  !AnyType< Type22 >::checkType( f ) &&
2235  !AnyType< Type23 >::checkType( f ) &&
2236  !AnyType< Type24 >::checkType( f ) &&
2237  !AnyType< Type25 >::checkType( f ) &&
2238  !AnyType< Type26 >::checkType( f ) &&
2239  !AnyType< Type27 >::checkType( f ) &&
2240  !AnyType< Type28 >::checkType( f ) &&
2241  !AnyType< Type29 >::checkType( f ) &&
2242  !AnyType< Type30 >::checkType( f ) &&
2243  !AnyType< Type31 >::checkType( f ) &&
2244  !AnyType< Type32 >::checkType( f ) &&
2245  !AnyType< Type33 >::checkType( f ) &&
2246  !AnyType< Type34 >::checkType( f ) &&
2247  !AnyType< Type35 >::checkType( f ) ) {
2248  throw InvalidType( typeid( f ).name(),
2249  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24, Type25, Type26, Type27, Type28, Type29, Type30, Type31, Type32, Type33, Type34, Type35> ).name() );
2250  }
2251  }
2252  };
2253  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10, class Type11, class Type12, class Type13, class Type14, class Type15, class Type16, class Type17, class Type18, class Type19, class Type20, class Type21, class Type22, class Type23, class Type24, class Type25, class Type26, class Type27, class Type28, class Type29, class Type30, class Type31, class Type32, class Type33, class Type34, class Type35, class Type36 >
2254  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24, Type25, Type26, Type27, Type28, Type29, Type30, Type31, Type32, Type33, Type34, Type35, Type36, void, void, void > {
2258  static void checkTemplateArguments() {
2259  AnyType< Type0 >::checkTemplateArguments();
2260  AnyType< Type1 >::checkTemplateArguments();
2261  AnyType< Type2 >::checkTemplateArguments();
2262  AnyType< Type3 >::checkTemplateArguments();
2263  AnyType< Type4 >::checkTemplateArguments();
2264  AnyType< Type5 >::checkTemplateArguments();
2265  AnyType< Type6 >::checkTemplateArguments();
2266  AnyType< Type7 >::checkTemplateArguments();
2267  AnyType< Type8 >::checkTemplateArguments();
2268  AnyType< Type9 >::checkTemplateArguments();
2269  AnyType< Type10 >::checkTemplateArguments();
2270  AnyType< Type11 >::checkTemplateArguments();
2271  AnyType< Type12 >::checkTemplateArguments();
2272  AnyType< Type13 >::checkTemplateArguments();
2273  AnyType< Type14 >::checkTemplateArguments();
2274  AnyType< Type15 >::checkTemplateArguments();
2275  AnyType< Type16 >::checkTemplateArguments();
2276  AnyType< Type17 >::checkTemplateArguments();
2277  AnyType< Type18 >::checkTemplateArguments();
2278  AnyType< Type19 >::checkTemplateArguments();
2279  AnyType< Type20 >::checkTemplateArguments();
2280  AnyType< Type21 >::checkTemplateArguments();
2281  AnyType< Type22 >::checkTemplateArguments();
2282  AnyType< Type23 >::checkTemplateArguments();
2283  AnyType< Type24 >::checkTemplateArguments();
2284  AnyType< Type25 >::checkTemplateArguments();
2285  AnyType< Type26 >::checkTemplateArguments();
2286  AnyType< Type27 >::checkTemplateArguments();
2287  AnyType< Type28 >::checkTemplateArguments();
2288  AnyType< Type29 >::checkTemplateArguments();
2289  AnyType< Type30 >::checkTemplateArguments();
2290  AnyType< Type31 >::checkTemplateArguments();
2291  AnyType< Type32 >::checkTemplateArguments();
2292  AnyType< Type33 >::checkTemplateArguments();
2293  AnyType< Type34 >::checkTemplateArguments();
2294  AnyType< Type35 >::checkTemplateArguments();
2295  AnyType< Type36 >::checkTemplateArguments();
2296  }
2297 
2304  static void checkType( Field *f ) {
2305  if(
2306  !AnyType< Type0 >::checkType( f ) &&
2307  !AnyType< Type1 >::checkType( f ) &&
2308  !AnyType< Type2 >::checkType( f ) &&
2309  !AnyType< Type3 >::checkType( f ) &&
2310  !AnyType< Type4 >::checkType( f ) &&
2311  !AnyType< Type5 >::checkType( f ) &&
2312  !AnyType< Type6 >::checkType( f ) &&
2313  !AnyType< Type7 >::checkType( f ) &&
2314  !AnyType< Type8 >::checkType( f ) &&
2315  !AnyType< Type9 >::checkType( f ) &&
2316  !AnyType< Type10 >::checkType( f ) &&
2317  !AnyType< Type11 >::checkType( f ) &&
2318  !AnyType< Type12 >::checkType( f ) &&
2319  !AnyType< Type13 >::checkType( f ) &&
2320  !AnyType< Type14 >::checkType( f ) &&
2321  !AnyType< Type15 >::checkType( f ) &&
2322  !AnyType< Type16 >::checkType( f ) &&
2323  !AnyType< Type17 >::checkType( f ) &&
2324  !AnyType< Type18 >::checkType( f ) &&
2325  !AnyType< Type19 >::checkType( f ) &&
2326  !AnyType< Type20 >::checkType( f ) &&
2327  !AnyType< Type21 >::checkType( f ) &&
2328  !AnyType< Type22 >::checkType( f ) &&
2329  !AnyType< Type23 >::checkType( f ) &&
2330  !AnyType< Type24 >::checkType( f ) &&
2331  !AnyType< Type25 >::checkType( f ) &&
2332  !AnyType< Type26 >::checkType( f ) &&
2333  !AnyType< Type27 >::checkType( f ) &&
2334  !AnyType< Type28 >::checkType( f ) &&
2335  !AnyType< Type29 >::checkType( f ) &&
2336  !AnyType< Type30 >::checkType( f ) &&
2337  !AnyType< Type31 >::checkType( f ) &&
2338  !AnyType< Type32 >::checkType( f ) &&
2339  !AnyType< Type33 >::checkType( f ) &&
2340  !AnyType< Type34 >::checkType( f ) &&
2341  !AnyType< Type35 >::checkType( f ) &&
2342  !AnyType< Type36 >::checkType( f ) ) {
2343  throw InvalidType( typeid( f ).name(),
2344  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24, Type25, Type26, Type27, Type28, Type29, Type30, Type31, Type32, Type33, Type34, Type35, Type36> ).name() );
2345  }
2346  }
2347  };
2348  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10, class Type11, class Type12, class Type13, class Type14, class Type15, class Type16, class Type17, class Type18, class Type19, class Type20, class Type21, class Type22, class Type23, class Type24, class Type25, class Type26, class Type27, class Type28, class Type29, class Type30, class Type31, class Type32, class Type33, class Type34, class Type35, class Type36, class Type37 >
2349  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24, Type25, Type26, Type27, Type28, Type29, Type30, Type31, Type32, Type33, Type34, Type35, Type36, Type37, void, void > {
2353  static void checkTemplateArguments() {
2354  AnyType< Type0 >::checkTemplateArguments();
2355  AnyType< Type1 >::checkTemplateArguments();
2356  AnyType< Type2 >::checkTemplateArguments();
2357  AnyType< Type3 >::checkTemplateArguments();
2358  AnyType< Type4 >::checkTemplateArguments();
2359  AnyType< Type5 >::checkTemplateArguments();
2360  AnyType< Type6 >::checkTemplateArguments();
2361  AnyType< Type7 >::checkTemplateArguments();
2362  AnyType< Type8 >::checkTemplateArguments();
2363  AnyType< Type9 >::checkTemplateArguments();
2364  AnyType< Type10 >::checkTemplateArguments();
2365  AnyType< Type11 >::checkTemplateArguments();
2366  AnyType< Type12 >::checkTemplateArguments();
2367  AnyType< Type13 >::checkTemplateArguments();
2368  AnyType< Type14 >::checkTemplateArguments();
2369  AnyType< Type15 >::checkTemplateArguments();
2370  AnyType< Type16 >::checkTemplateArguments();
2371  AnyType< Type17 >::checkTemplateArguments();
2372  AnyType< Type18 >::checkTemplateArguments();
2373  AnyType< Type19 >::checkTemplateArguments();
2374  AnyType< Type20 >::checkTemplateArguments();
2375  AnyType< Type21 >::checkTemplateArguments();
2376  AnyType< Type22 >::checkTemplateArguments();
2377  AnyType< Type23 >::checkTemplateArguments();
2378  AnyType< Type24 >::checkTemplateArguments();
2379  AnyType< Type25 >::checkTemplateArguments();
2380  AnyType< Type26 >::checkTemplateArguments();
2381  AnyType< Type27 >::checkTemplateArguments();
2382  AnyType< Type28 >::checkTemplateArguments();
2383  AnyType< Type29 >::checkTemplateArguments();
2384  AnyType< Type30 >::checkTemplateArguments();
2385  AnyType< Type31 >::checkTemplateArguments();
2386  AnyType< Type32 >::checkTemplateArguments();
2387  AnyType< Type33 >::checkTemplateArguments();
2388  AnyType< Type34 >::checkTemplateArguments();
2389  AnyType< Type35 >::checkTemplateArguments();
2390  AnyType< Type36 >::checkTemplateArguments();
2391  AnyType< Type37 >::checkTemplateArguments();
2392  }
2393 
2400  static void checkType( Field *f ) {
2401  if(
2402  !AnyType< Type0 >::checkType( f ) &&
2403  !AnyType< Type1 >::checkType( f ) &&
2404  !AnyType< Type2 >::checkType( f ) &&
2405  !AnyType< Type3 >::checkType( f ) &&
2406  !AnyType< Type4 >::checkType( f ) &&
2407  !AnyType< Type5 >::checkType( f ) &&
2408  !AnyType< Type6 >::checkType( f ) &&
2409  !AnyType< Type7 >::checkType( f ) &&
2410  !AnyType< Type8 >::checkType( f ) &&
2411  !AnyType< Type9 >::checkType( f ) &&
2412  !AnyType< Type10 >::checkType( f ) &&
2413  !AnyType< Type11 >::checkType( f ) &&
2414  !AnyType< Type12 >::checkType( f ) &&
2415  !AnyType< Type13 >::checkType( f ) &&
2416  !AnyType< Type14 >::checkType( f ) &&
2417  !AnyType< Type15 >::checkType( f ) &&
2418  !AnyType< Type16 >::checkType( f ) &&
2419  !AnyType< Type17 >::checkType( f ) &&
2420  !AnyType< Type18 >::checkType( f ) &&
2421  !AnyType< Type19 >::checkType( f ) &&
2422  !AnyType< Type20 >::checkType( f ) &&
2423  !AnyType< Type21 >::checkType( f ) &&
2424  !AnyType< Type22 >::checkType( f ) &&
2425  !AnyType< Type23 >::checkType( f ) &&
2426  !AnyType< Type24 >::checkType( f ) &&
2427  !AnyType< Type25 >::checkType( f ) &&
2428  !AnyType< Type26 >::checkType( f ) &&
2429  !AnyType< Type27 >::checkType( f ) &&
2430  !AnyType< Type28 >::checkType( f ) &&
2431  !AnyType< Type29 >::checkType( f ) &&
2432  !AnyType< Type30 >::checkType( f ) &&
2433  !AnyType< Type31 >::checkType( f ) &&
2434  !AnyType< Type32 >::checkType( f ) &&
2435  !AnyType< Type33 >::checkType( f ) &&
2436  !AnyType< Type34 >::checkType( f ) &&
2437  !AnyType< Type35 >::checkType( f ) &&
2438  !AnyType< Type36 >::checkType( f ) &&
2439  !AnyType< Type37 >::checkType( f ) ) {
2440  throw InvalidType( typeid( f ).name(),
2441  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24, Type25, Type26, Type27, Type28, Type29, Type30, Type31, Type32, Type33, Type34, Type35, Type36, Type37> ).name() );
2442  }
2443  }
2444  };
2445  template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10, class Type11, class Type12, class Type13, class Type14, class Type15, class Type16, class Type17, class Type18, class Type19, class Type20, class Type21, class Type22, class Type23, class Type24, class Type25, class Type26, class Type27, class Type28, class Type29, class Type30, class Type31, class Type32, class Type33, class Type34, class Type35, class Type36, class Type37, class Type38 >
2446  struct Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24, Type25, Type26, Type27, Type28, Type29, Type30, Type31, Type32, Type33, Type34, Type35, Type36, Type37, Type38, void > {
2450  static void checkTemplateArguments() {
2451  AnyType< Type0 >::checkTemplateArguments();
2452  AnyType< Type1 >::checkTemplateArguments();
2453  AnyType< Type2 >::checkTemplateArguments();
2454  AnyType< Type3 >::checkTemplateArguments();
2455  AnyType< Type4 >::checkTemplateArguments();
2456  AnyType< Type5 >::checkTemplateArguments();
2457  AnyType< Type6 >::checkTemplateArguments();
2458  AnyType< Type7 >::checkTemplateArguments();
2459  AnyType< Type8 >::checkTemplateArguments();
2460  AnyType< Type9 >::checkTemplateArguments();
2461  AnyType< Type10 >::checkTemplateArguments();
2462  AnyType< Type11 >::checkTemplateArguments();
2463  AnyType< Type12 >::checkTemplateArguments();
2464  AnyType< Type13 >::checkTemplateArguments();
2465  AnyType< Type14 >::checkTemplateArguments();
2466  AnyType< Type15 >::checkTemplateArguments();
2467  AnyType< Type16 >::checkTemplateArguments();
2468  AnyType< Type17 >::checkTemplateArguments();
2469  AnyType< Type18 >::checkTemplateArguments();
2470  AnyType< Type19 >::checkTemplateArguments();
2471  AnyType< Type20 >::checkTemplateArguments();
2472  AnyType< Type21 >::checkTemplateArguments();
2473  AnyType< Type22 >::checkTemplateArguments();
2474  AnyType< Type23 >::checkTemplateArguments();
2475  AnyType< Type24 >::checkTemplateArguments();
2476  AnyType< Type25 >::checkTemplateArguments();
2477  AnyType< Type26 >::checkTemplateArguments();
2478  AnyType< Type27 >::checkTemplateArguments();
2479  AnyType< Type28 >::checkTemplateArguments();
2480  AnyType< Type29 >::checkTemplateArguments();
2481  AnyType< Type30 >::checkTemplateArguments();
2482  AnyType< Type31 >::checkTemplateArguments();
2483  AnyType< Type32 >::checkTemplateArguments();
2484  AnyType< Type33 >::checkTemplateArguments();
2485  AnyType< Type34 >::checkTemplateArguments();
2486  AnyType< Type35 >::checkTemplateArguments();
2487  AnyType< Type36 >::checkTemplateArguments();
2488  AnyType< Type37 >::checkTemplateArguments();
2489  AnyType< Type38 >::checkTemplateArguments();
2490  }
2491 
2498  static void checkType( Field *f ) {
2499  if(
2500  !AnyType< Type0 >::checkType( f ) &&
2501  !AnyType< Type1 >::checkType( f ) &&
2502  !AnyType< Type2 >::checkType( f ) &&
2503  !AnyType< Type3 >::checkType( f ) &&
2504  !AnyType< Type4 >::checkType( f ) &&
2505  !AnyType< Type5 >::checkType( f ) &&
2506  !AnyType< Type6 >::checkType( f ) &&
2507  !AnyType< Type7 >::checkType( f ) &&
2508  !AnyType< Type8 >::checkType( f ) &&
2509  !AnyType< Type9 >::checkType( f ) &&
2510  !AnyType< Type10 >::checkType( f ) &&
2511  !AnyType< Type11 >::checkType( f ) &&
2512  !AnyType< Type12 >::checkType( f ) &&
2513  !AnyType< Type13 >::checkType( f ) &&
2514  !AnyType< Type14 >::checkType( f ) &&
2515  !AnyType< Type15 >::checkType( f ) &&
2516  !AnyType< Type16 >::checkType( f ) &&
2517  !AnyType< Type17 >::checkType( f ) &&
2518  !AnyType< Type18 >::checkType( f ) &&
2519  !AnyType< Type19 >::checkType( f ) &&
2520  !AnyType< Type20 >::checkType( f ) &&
2521  !AnyType< Type21 >::checkType( f ) &&
2522  !AnyType< Type22 >::checkType( f ) &&
2523  !AnyType< Type23 >::checkType( f ) &&
2524  !AnyType< Type24 >::checkType( f ) &&
2525  !AnyType< Type25 >::checkType( f ) &&
2526  !AnyType< Type26 >::checkType( f ) &&
2527  !AnyType< Type27 >::checkType( f ) &&
2528  !AnyType< Type28 >::checkType( f ) &&
2529  !AnyType< Type29 >::checkType( f ) &&
2530  !AnyType< Type30 >::checkType( f ) &&
2531  !AnyType< Type31 >::checkType( f ) &&
2532  !AnyType< Type32 >::checkType( f ) &&
2533  !AnyType< Type33 >::checkType( f ) &&
2534  !AnyType< Type34 >::checkType( f ) &&
2535  !AnyType< Type35 >::checkType( f ) &&
2536  !AnyType< Type36 >::checkType( f ) &&
2537  !AnyType< Type37 >::checkType( f ) &&
2538  !AnyType< Type38 >::checkType( f ) ) {
2539  throw InvalidType( typeid( f ).name(),
2540  typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20, Type21, Type22, Type23, Type24, Type25, Type26, Type27, Type28, Type29, Type30, Type31, Type32, Type33, Type34, Type35, Type36, Type37, Type38> ).name() );
2541  }
2542  }
2543  };
2544 
2545  }
2546 }
2547 
2548 #endif
2549 
The Field class.
Definition: Field.h:46
H3D_VALUE_EXCEPTION(string, InvalidType)
An exception thrown when a field is of the wrong type when it is checked.
H3D API namespace.
Definition: Anchor.h:38
The Any template can be used in the RequiredArgTypes or OptionalArgTypes arguments of a TypedField te...
Definition: TypedFieldAnyTmpl.h:67
static void checkTemplateArguments()
Checks that the template arguments is of valid form.
Definition: TypedFieldAnyTmpl.h:71
static void checkType(Field *f)
Check that a field is of the correct type.
Definition: TypedFieldAnyTmpl.h:118