TypedFieldAnyTmpl.h

00001 
00003 //    Copyright 2004, SenseGraphics AB
00004 //
00005 //    This file is part of H3D API.
00006 //
00007 //    H3D API is free software; you can redistribute it and/or modify
00008 //    it under the terms of the GNU General Public License as published by
00009 //    the Free Software Foundation; either version 2 of the License, or
00010 //    (at your option) any later version.
00011 //
00012 //    H3D API is distributed in the hope that it will be useful,
00013 //    but WITHOUT ANY WARRANTY; without even the implied warranty of
00014 //    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015 //    GNU General Public License for more details.
00016 //
00017 //    You should have received a copy of the GNU General Public License
00018 //    along with H3D API; if not, write to the Free Software
00019 //    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00020 //
00021 //    A commercial license is also available. Please contact us at 
00022 //    www.sensegraphics.com for more information.
00023 //
00024 //
00028 //
00030 #ifndef __TYPESFIELDANYTEMPL_H__
00031 #define __TYPESFIELDANYTEMPL_H__
00032 
00033 #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
00034 
00035 #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 >
00036 
00037 #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
00038 
00039 namespace H3D {
00040   namespace TypedFieldTypeCheck {
00041     template< class Type > struct AnyType;
00042         
00047     H3D_VALUE_EXCEPTION( string, InvalidType );
00048 
00064     template< H3D_ANY_TEMPLATE_SPEC > 
00065     struct Any {
00069       static void checkTemplateArguments() {
00070         AnyType< Type0 >::checkTemplateArguments();
00071         AnyType< Type1 >::checkTemplateArguments();
00072         AnyType< Type2 >::checkTemplateArguments();
00073         AnyType< Type3 >::checkTemplateArguments();
00074         AnyType< Type4 >::checkTemplateArguments();
00075         AnyType< Type5 >::checkTemplateArguments();
00076         AnyType< Type6 >::checkTemplateArguments();
00077         AnyType< Type7 >::checkTemplateArguments();
00078         AnyType< Type8 >::checkTemplateArguments();
00079         AnyType< Type9 >::checkTemplateArguments();
00080         AnyType< Type10 >::checkTemplateArguments();
00081         AnyType< Type11 >::checkTemplateArguments();
00082         AnyType< Type12 >::checkTemplateArguments();
00083         AnyType< Type13 >::checkTemplateArguments();
00084         AnyType< Type14 >::checkTemplateArguments();
00085         AnyType< Type15 >::checkTemplateArguments();
00086         AnyType< Type16 >::checkTemplateArguments();
00087         AnyType< Type17 >::checkTemplateArguments();
00088         AnyType< Type18 >::checkTemplateArguments();
00089         AnyType< Type19 >::checkTemplateArguments();
00090         AnyType< Type20 >::checkTemplateArguments();
00091         AnyType< Type21 >::checkTemplateArguments();
00092         AnyType< Type22 >::checkTemplateArguments();
00093         AnyType< Type23 >::checkTemplateArguments();
00094         AnyType< Type24 >::checkTemplateArguments();
00095         AnyType< Type25 >::checkTemplateArguments();
00096         AnyType< Type26 >::checkTemplateArguments();
00097         AnyType< Type27 >::checkTemplateArguments();
00098         AnyType< Type28 >::checkTemplateArguments();
00099         AnyType< Type29 >::checkTemplateArguments();
00100         AnyType< Type30 >::checkTemplateArguments();
00101         AnyType< Type31 >::checkTemplateArguments();
00102         AnyType< Type32 >::checkTemplateArguments();
00103         AnyType< Type33 >::checkTemplateArguments();
00104         AnyType< Type34 >::checkTemplateArguments();
00105         AnyType< Type35 >::checkTemplateArguments();
00106         AnyType< Type36 >::checkTemplateArguments();
00107         AnyType< Type37 >::checkTemplateArguments();
00108         AnyType< Type38 >::checkTemplateArguments();
00109         AnyType< Type39 >::checkTemplateArguments();
00110       }
00111 
00118       static void checkType( Field *f ) { 
00119         if( 
00120            !AnyType< Type0 >::checkType( f ) &&
00121            !AnyType< Type1 >::checkType( f ) &&
00122            !AnyType< Type2 >::checkType( f ) &&
00123            !AnyType< Type3 >::checkType( f ) &&
00124            !AnyType< Type4 >::checkType( f ) &&
00125            !AnyType< Type5 >::checkType( f ) &&
00126            !AnyType< Type6 >::checkType( f ) &&
00127            !AnyType< Type7 >::checkType( f ) &&
00128            !AnyType< Type8 >::checkType( f ) &&
00129            !AnyType< Type9 >::checkType( f ) &&
00130            !AnyType< Type10 >::checkType( f ) &&
00131            !AnyType< Type11 >::checkType( f ) &&
00132            !AnyType< Type12 >::checkType( f ) &&
00133            !AnyType< Type13 >::checkType( f ) &&
00134            !AnyType< Type14 >::checkType( f ) &&
00135            !AnyType< Type15 >::checkType( f ) &&
00136            !AnyType< Type16 >::checkType( f ) &&
00137            !AnyType< Type17 >::checkType( f ) &&
00138            !AnyType< Type18 >::checkType( f ) &&
00139            !AnyType< Type19 >::checkType( f ) &&
00140            !AnyType< Type20 >::checkType( f ) &&
00141            !AnyType< Type21 >::checkType( f ) &&
00142            !AnyType< Type22 >::checkType( f ) &&
00143            !AnyType< Type23 >::checkType( f ) &&
00144            !AnyType< Type24 >::checkType( f ) &&
00145            !AnyType< Type25 >::checkType( f ) &&
00146            !AnyType< Type26 >::checkType( f ) &&
00147            !AnyType< Type27 >::checkType( f ) &&
00148            !AnyType< Type28 >::checkType( f ) &&
00149            !AnyType< Type29 >::checkType( f ) &&
00150            !AnyType< Type30 >::checkType( f ) &&
00151            !AnyType< Type31 >::checkType( f ) &&
00152            !AnyType< Type32 >::checkType( f ) &&
00153            !AnyType< Type33 >::checkType( f ) &&
00154            !AnyType< Type34 >::checkType( f ) &&
00155            !AnyType< Type35 >::checkType( f ) &&
00156            !AnyType< Type36 >::checkType( f ) &&
00157            !AnyType< Type37 >::checkType( f ) &&
00158            !AnyType< Type38 >::checkType( f ) &&
00159            !AnyType< Type39 >::checkType( f )        ) { 
00160           throw InvalidType( typeid( f ).name(),
00161                              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, Type39> ).name() ); 
00162         }
00163       }
00164     };
00165     template< class Type0 >
00166     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 > {
00170       static void checkTemplateArguments() {
00171         AnyType< Type0 >::checkTemplateArguments();
00172       }
00173 
00180       static void checkType( Field *f ) { 
00181         if( 
00182            !AnyType< Type0 >::checkType( f )        ) { 
00183           throw InvalidType( typeid( f ).name(),
00184                              typeid( Any< Type0> ).name() ); 
00185         }
00186       }
00187     };
00188     template< class Type0, class Type1 >
00189     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 > {
00193       static void checkTemplateArguments() {
00194         AnyType< Type0 >::checkTemplateArguments();
00195         AnyType< Type1 >::checkTemplateArguments();
00196       }
00197 
00204       static void checkType( Field *f ) { 
00205         if( 
00206            !AnyType< Type0 >::checkType( f ) &&
00207            !AnyType< Type1 >::checkType( f )        ) { 
00208           throw InvalidType( typeid( f ).name(),
00209                              typeid( Any< Type0, Type1> ).name() ); 
00210         }
00211       }
00212     };
00213     template< class Type0, class Type1, class Type2 >
00214     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 > {
00218       static void checkTemplateArguments() {
00219         AnyType< Type0 >::checkTemplateArguments();
00220         AnyType< Type1 >::checkTemplateArguments();
00221         AnyType< Type2 >::checkTemplateArguments();
00222       }
00223 
00230       static void checkType( Field *f ) { 
00231         if( 
00232            !AnyType< Type0 >::checkType( f ) &&
00233            !AnyType< Type1 >::checkType( f ) &&
00234            !AnyType< Type2 >::checkType( f )        ) { 
00235           throw InvalidType( typeid( f ).name(),
00236                              typeid( Any< Type0, Type1, Type2> ).name() ); 
00237         }
00238       }
00239     };
00240     template< class Type0, class Type1, class Type2, class Type3 >
00241     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 > {
00245       static void checkTemplateArguments() {
00246         AnyType< Type0 >::checkTemplateArguments();
00247         AnyType< Type1 >::checkTemplateArguments();
00248         AnyType< Type2 >::checkTemplateArguments();
00249         AnyType< Type3 >::checkTemplateArguments();
00250       }
00251 
00258       static void checkType( Field *f ) { 
00259         if( 
00260            !AnyType< Type0 >::checkType( f ) &&
00261            !AnyType< Type1 >::checkType( f ) &&
00262            !AnyType< Type2 >::checkType( f ) &&
00263            !AnyType< Type3 >::checkType( f )        ) { 
00264           throw InvalidType( typeid( f ).name(),
00265                              typeid( Any< Type0, Type1, Type2, Type3> ).name() ); 
00266         }
00267       }
00268     };
00269     template< class Type0, class Type1, class Type2, class Type3, class Type4 >
00270     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 > {
00274       static void checkTemplateArguments() {
00275         AnyType< Type0 >::checkTemplateArguments();
00276         AnyType< Type1 >::checkTemplateArguments();
00277         AnyType< Type2 >::checkTemplateArguments();
00278         AnyType< Type3 >::checkTemplateArguments();
00279         AnyType< Type4 >::checkTemplateArguments();
00280       }
00281 
00288       static void checkType( Field *f ) { 
00289         if( 
00290            !AnyType< Type0 >::checkType( f ) &&
00291            !AnyType< Type1 >::checkType( f ) &&
00292            !AnyType< Type2 >::checkType( f ) &&
00293            !AnyType< Type3 >::checkType( f ) &&
00294            !AnyType< Type4 >::checkType( f )        ) { 
00295           throw InvalidType( typeid( f ).name(),
00296                              typeid( Any< Type0, Type1, Type2, Type3, Type4> ).name() ); 
00297         }
00298       }
00299     };
00300     template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5 >
00301     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 > {
00305       static void checkTemplateArguments() {
00306         AnyType< Type0 >::checkTemplateArguments();
00307         AnyType< Type1 >::checkTemplateArguments();
00308         AnyType< Type2 >::checkTemplateArguments();
00309         AnyType< Type3 >::checkTemplateArguments();
00310         AnyType< Type4 >::checkTemplateArguments();
00311         AnyType< Type5 >::checkTemplateArguments();
00312       }
00313 
00320       static void checkType( Field *f ) { 
00321         if( 
00322            !AnyType< Type0 >::checkType( f ) &&
00323            !AnyType< Type1 >::checkType( f ) &&
00324            !AnyType< Type2 >::checkType( f ) &&
00325            !AnyType< Type3 >::checkType( f ) &&
00326            !AnyType< Type4 >::checkType( f ) &&
00327            !AnyType< Type5 >::checkType( f )        ) { 
00328           throw InvalidType( typeid( f ).name(),
00329                              typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5> ).name() ); 
00330         }
00331       }
00332     };
00333     template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6 >
00334     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 > {
00338       static void checkTemplateArguments() {
00339         AnyType< Type0 >::checkTemplateArguments();
00340         AnyType< Type1 >::checkTemplateArguments();
00341         AnyType< Type2 >::checkTemplateArguments();
00342         AnyType< Type3 >::checkTemplateArguments();
00343         AnyType< Type4 >::checkTemplateArguments();
00344         AnyType< Type5 >::checkTemplateArguments();
00345         AnyType< Type6 >::checkTemplateArguments();
00346       }
00347 
00354       static void checkType( Field *f ) { 
00355         if( 
00356            !AnyType< Type0 >::checkType( f ) &&
00357            !AnyType< Type1 >::checkType( f ) &&
00358            !AnyType< Type2 >::checkType( f ) &&
00359            !AnyType< Type3 >::checkType( f ) &&
00360            !AnyType< Type4 >::checkType( f ) &&
00361            !AnyType< Type5 >::checkType( f ) &&
00362            !AnyType< Type6 >::checkType( f )        ) { 
00363           throw InvalidType( typeid( f ).name(),
00364                              typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6> ).name() ); 
00365         }
00366       }
00367     };
00368     template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7 >
00369     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 > {
00373       static void checkTemplateArguments() {
00374         AnyType< Type0 >::checkTemplateArguments();
00375         AnyType< Type1 >::checkTemplateArguments();
00376         AnyType< Type2 >::checkTemplateArguments();
00377         AnyType< Type3 >::checkTemplateArguments();
00378         AnyType< Type4 >::checkTemplateArguments();
00379         AnyType< Type5 >::checkTemplateArguments();
00380         AnyType< Type6 >::checkTemplateArguments();
00381         AnyType< Type7 >::checkTemplateArguments();
00382       }
00383 
00390       static void checkType( Field *f ) { 
00391         if( 
00392            !AnyType< Type0 >::checkType( f ) &&
00393            !AnyType< Type1 >::checkType( f ) &&
00394            !AnyType< Type2 >::checkType( f ) &&
00395            !AnyType< Type3 >::checkType( f ) &&
00396            !AnyType< Type4 >::checkType( f ) &&
00397            !AnyType< Type5 >::checkType( f ) &&
00398            !AnyType< Type6 >::checkType( f ) &&
00399            !AnyType< Type7 >::checkType( f )        ) { 
00400           throw InvalidType( typeid( f ).name(),
00401                              typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7> ).name() ); 
00402         }
00403       }
00404     };
00405     template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8 >
00406     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 > {
00410       static void checkTemplateArguments() {
00411         AnyType< Type0 >::checkTemplateArguments();
00412         AnyType< Type1 >::checkTemplateArguments();
00413         AnyType< Type2 >::checkTemplateArguments();
00414         AnyType< Type3 >::checkTemplateArguments();
00415         AnyType< Type4 >::checkTemplateArguments();
00416         AnyType< Type5 >::checkTemplateArguments();
00417         AnyType< Type6 >::checkTemplateArguments();
00418         AnyType< Type7 >::checkTemplateArguments();
00419         AnyType< Type8 >::checkTemplateArguments();
00420       }
00421 
00428       static void checkType( Field *f ) { 
00429         if( 
00430            !AnyType< Type0 >::checkType( f ) &&
00431            !AnyType< Type1 >::checkType( f ) &&
00432            !AnyType< Type2 >::checkType( f ) &&
00433            !AnyType< Type3 >::checkType( f ) &&
00434            !AnyType< Type4 >::checkType( f ) &&
00435            !AnyType< Type5 >::checkType( f ) &&
00436            !AnyType< Type6 >::checkType( f ) &&
00437            !AnyType< Type7 >::checkType( f ) &&
00438            !AnyType< Type8 >::checkType( f )        ) { 
00439           throw InvalidType( typeid( f ).name(),
00440                              typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8> ).name() ); 
00441         }
00442       }
00443     };
00444     template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9 >
00445     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 > {
00449       static void checkTemplateArguments() {
00450         AnyType< Type0 >::checkTemplateArguments();
00451         AnyType< Type1 >::checkTemplateArguments();
00452         AnyType< Type2 >::checkTemplateArguments();
00453         AnyType< Type3 >::checkTemplateArguments();
00454         AnyType< Type4 >::checkTemplateArguments();
00455         AnyType< Type5 >::checkTemplateArguments();
00456         AnyType< Type6 >::checkTemplateArguments();
00457         AnyType< Type7 >::checkTemplateArguments();
00458         AnyType< Type8 >::checkTemplateArguments();
00459         AnyType< Type9 >::checkTemplateArguments();
00460       }
00461 
00468       static void checkType( Field *f ) { 
00469         if( 
00470            !AnyType< Type0 >::checkType( f ) &&
00471            !AnyType< Type1 >::checkType( f ) &&
00472            !AnyType< Type2 >::checkType( f ) &&
00473            !AnyType< Type3 >::checkType( f ) &&
00474            !AnyType< Type4 >::checkType( f ) &&
00475            !AnyType< Type5 >::checkType( f ) &&
00476            !AnyType< Type6 >::checkType( f ) &&
00477            !AnyType< Type7 >::checkType( f ) &&
00478            !AnyType< Type8 >::checkType( f ) &&
00479            !AnyType< Type9 >::checkType( f )        ) { 
00480           throw InvalidType( typeid( f ).name(),
00481                              typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9> ).name() ); 
00482         }
00483       }
00484     };
00485     template< class Type0, class Type1, class Type2, class Type3, class Type4, class Type5, class Type6, class Type7, class Type8, class Type9, class Type10 >
00486     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 > {
00490       static void checkTemplateArguments() {
00491         AnyType< Type0 >::checkTemplateArguments();
00492         AnyType< Type1 >::checkTemplateArguments();
00493         AnyType< Type2 >::checkTemplateArguments();
00494         AnyType< Type3 >::checkTemplateArguments();
00495         AnyType< Type4 >::checkTemplateArguments();
00496         AnyType< Type5 >::checkTemplateArguments();
00497         AnyType< Type6 >::checkTemplateArguments();
00498         AnyType< Type7 >::checkTemplateArguments();
00499         AnyType< Type8 >::checkTemplateArguments();
00500         AnyType< Type9 >::checkTemplateArguments();
00501         AnyType< Type10 >::checkTemplateArguments();
00502       }
00503 
00510       static void checkType( Field *f ) { 
00511         if( 
00512            !AnyType< Type0 >::checkType( f ) &&
00513            !AnyType< Type1 >::checkType( f ) &&
00514            !AnyType< Type2 >::checkType( f ) &&
00515            !AnyType< Type3 >::checkType( f ) &&
00516            !AnyType< Type4 >::checkType( f ) &&
00517            !AnyType< Type5 >::checkType( f ) &&
00518            !AnyType< Type6 >::checkType( f ) &&
00519            !AnyType< Type7 >::checkType( f ) &&
00520            !AnyType< Type8 >::checkType( f ) &&
00521            !AnyType< Type9 >::checkType( f ) &&
00522            !AnyType< Type10 >::checkType( f )        ) { 
00523           throw InvalidType( typeid( f ).name(),
00524                              typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10> ).name() ); 
00525         }
00526       }
00527     };
00528     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 >
00529     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 > {
00533       static void checkTemplateArguments() {
00534         AnyType< Type0 >::checkTemplateArguments();
00535         AnyType< Type1 >::checkTemplateArguments();
00536         AnyType< Type2 >::checkTemplateArguments();
00537         AnyType< Type3 >::checkTemplateArguments();
00538         AnyType< Type4 >::checkTemplateArguments();
00539         AnyType< Type5 >::checkTemplateArguments();
00540         AnyType< Type6 >::checkTemplateArguments();
00541         AnyType< Type7 >::checkTemplateArguments();
00542         AnyType< Type8 >::checkTemplateArguments();
00543         AnyType< Type9 >::checkTemplateArguments();
00544         AnyType< Type10 >::checkTemplateArguments();
00545         AnyType< Type11 >::checkTemplateArguments();
00546       }
00547 
00554       static void checkType( Field *f ) { 
00555         if( 
00556            !AnyType< Type0 >::checkType( f ) &&
00557            !AnyType< Type1 >::checkType( f ) &&
00558            !AnyType< Type2 >::checkType( f ) &&
00559            !AnyType< Type3 >::checkType( f ) &&
00560            !AnyType< Type4 >::checkType( f ) &&
00561            !AnyType< Type5 >::checkType( f ) &&
00562            !AnyType< Type6 >::checkType( f ) &&
00563            !AnyType< Type7 >::checkType( f ) &&
00564            !AnyType< Type8 >::checkType( f ) &&
00565            !AnyType< Type9 >::checkType( f ) &&
00566            !AnyType< Type10 >::checkType( f ) &&
00567            !AnyType< Type11 >::checkType( f )        ) { 
00568           throw InvalidType( typeid( f ).name(),
00569                              typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11> ).name() ); 
00570         }
00571       }
00572     };
00573     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 >
00574     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 > {
00578       static void checkTemplateArguments() {
00579         AnyType< Type0 >::checkTemplateArguments();
00580         AnyType< Type1 >::checkTemplateArguments();
00581         AnyType< Type2 >::checkTemplateArguments();
00582         AnyType< Type3 >::checkTemplateArguments();
00583         AnyType< Type4 >::checkTemplateArguments();
00584         AnyType< Type5 >::checkTemplateArguments();
00585         AnyType< Type6 >::checkTemplateArguments();
00586         AnyType< Type7 >::checkTemplateArguments();
00587         AnyType< Type8 >::checkTemplateArguments();
00588         AnyType< Type9 >::checkTemplateArguments();
00589         AnyType< Type10 >::checkTemplateArguments();
00590         AnyType< Type11 >::checkTemplateArguments();
00591         AnyType< Type12 >::checkTemplateArguments();
00592       }
00593 
00600       static void checkType( Field *f ) { 
00601         if( 
00602            !AnyType< Type0 >::checkType( f ) &&
00603            !AnyType< Type1 >::checkType( f ) &&
00604            !AnyType< Type2 >::checkType( f ) &&
00605            !AnyType< Type3 >::checkType( f ) &&
00606            !AnyType< Type4 >::checkType( f ) &&
00607            !AnyType< Type5 >::checkType( f ) &&
00608            !AnyType< Type6 >::checkType( f ) &&
00609            !AnyType< Type7 >::checkType( f ) &&
00610            !AnyType< Type8 >::checkType( f ) &&
00611            !AnyType< Type9 >::checkType( f ) &&
00612            !AnyType< Type10 >::checkType( f ) &&
00613            !AnyType< Type11 >::checkType( f ) &&
00614            !AnyType< Type12 >::checkType( f )        ) { 
00615           throw InvalidType( typeid( f ).name(),
00616                              typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12> ).name() ); 
00617         }
00618       }
00619     };
00620     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 >
00621     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 > {
00625       static void checkTemplateArguments() {
00626         AnyType< Type0 >::checkTemplateArguments();
00627         AnyType< Type1 >::checkTemplateArguments();
00628         AnyType< Type2 >::checkTemplateArguments();
00629         AnyType< Type3 >::checkTemplateArguments();
00630         AnyType< Type4 >::checkTemplateArguments();
00631         AnyType< Type5 >::checkTemplateArguments();
00632         AnyType< Type6 >::checkTemplateArguments();
00633         AnyType< Type7 >::checkTemplateArguments();
00634         AnyType< Type8 >::checkTemplateArguments();
00635         AnyType< Type9 >::checkTemplateArguments();
00636         AnyType< Type10 >::checkTemplateArguments();
00637         AnyType< Type11 >::checkTemplateArguments();
00638         AnyType< Type12 >::checkTemplateArguments();
00639         AnyType< Type13 >::checkTemplateArguments();
00640       }
00641 
00648       static void checkType( Field *f ) { 
00649         if( 
00650            !AnyType< Type0 >::checkType( f ) &&
00651            !AnyType< Type1 >::checkType( f ) &&
00652            !AnyType< Type2 >::checkType( f ) &&
00653            !AnyType< Type3 >::checkType( f ) &&
00654            !AnyType< Type4 >::checkType( f ) &&
00655            !AnyType< Type5 >::checkType( f ) &&
00656            !AnyType< Type6 >::checkType( f ) &&
00657            !AnyType< Type7 >::checkType( f ) &&
00658            !AnyType< Type8 >::checkType( f ) &&
00659            !AnyType< Type9 >::checkType( f ) &&
00660            !AnyType< Type10 >::checkType( f ) &&
00661            !AnyType< Type11 >::checkType( f ) &&
00662            !AnyType< Type12 >::checkType( f ) &&
00663            !AnyType< Type13 >::checkType( f )        ) { 
00664           throw InvalidType( typeid( f ).name(),
00665                              typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13> ).name() ); 
00666         }
00667       }
00668     };
00669     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 >
00670     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 > {
00674       static void checkTemplateArguments() {
00675         AnyType< Type0 >::checkTemplateArguments();
00676         AnyType< Type1 >::checkTemplateArguments();
00677         AnyType< Type2 >::checkTemplateArguments();
00678         AnyType< Type3 >::checkTemplateArguments();
00679         AnyType< Type4 >::checkTemplateArguments();
00680         AnyType< Type5 >::checkTemplateArguments();
00681         AnyType< Type6 >::checkTemplateArguments();
00682         AnyType< Type7 >::checkTemplateArguments();
00683         AnyType< Type8 >::checkTemplateArguments();
00684         AnyType< Type9 >::checkTemplateArguments();
00685         AnyType< Type10 >::checkTemplateArguments();
00686         AnyType< Type11 >::checkTemplateArguments();
00687         AnyType< Type12 >::checkTemplateArguments();
00688         AnyType< Type13 >::checkTemplateArguments();
00689         AnyType< Type14 >::checkTemplateArguments();
00690       }
00691 
00698       static void checkType( Field *f ) { 
00699         if( 
00700            !AnyType< Type0 >::checkType( f ) &&
00701            !AnyType< Type1 >::checkType( f ) &&
00702            !AnyType< Type2 >::checkType( f ) &&
00703            !AnyType< Type3 >::checkType( f ) &&
00704            !AnyType< Type4 >::checkType( f ) &&
00705            !AnyType< Type5 >::checkType( f ) &&
00706            !AnyType< Type6 >::checkType( f ) &&
00707            !AnyType< Type7 >::checkType( f ) &&
00708            !AnyType< Type8 >::checkType( f ) &&
00709            !AnyType< Type9 >::checkType( f ) &&
00710            !AnyType< Type10 >::checkType( f ) &&
00711            !AnyType< Type11 >::checkType( f ) &&
00712            !AnyType< Type12 >::checkType( f ) &&
00713            !AnyType< Type13 >::checkType( f ) &&
00714            !AnyType< Type14 >::checkType( f )        ) { 
00715           throw InvalidType( typeid( f ).name(),
00716                              typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14> ).name() ); 
00717         }
00718       }
00719     };
00720     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 >
00721     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 > {
00725       static void checkTemplateArguments() {
00726         AnyType< Type0 >::checkTemplateArguments();
00727         AnyType< Type1 >::checkTemplateArguments();
00728         AnyType< Type2 >::checkTemplateArguments();
00729         AnyType< Type3 >::checkTemplateArguments();
00730         AnyType< Type4 >::checkTemplateArguments();
00731         AnyType< Type5 >::checkTemplateArguments();
00732         AnyType< Type6 >::checkTemplateArguments();
00733         AnyType< Type7 >::checkTemplateArguments();
00734         AnyType< Type8 >::checkTemplateArguments();
00735         AnyType< Type9 >::checkTemplateArguments();
00736         AnyType< Type10 >::checkTemplateArguments();
00737         AnyType< Type11 >::checkTemplateArguments();
00738         AnyType< Type12 >::checkTemplateArguments();
00739         AnyType< Type13 >::checkTemplateArguments();
00740         AnyType< Type14 >::checkTemplateArguments();
00741         AnyType< Type15 >::checkTemplateArguments();
00742       }
00743 
00750       static void checkType( Field *f ) { 
00751         if( 
00752            !AnyType< Type0 >::checkType( f ) &&
00753            !AnyType< Type1 >::checkType( f ) &&
00754            !AnyType< Type2 >::checkType( f ) &&
00755            !AnyType< Type3 >::checkType( f ) &&
00756            !AnyType< Type4 >::checkType( f ) &&
00757            !AnyType< Type5 >::checkType( f ) &&
00758            !AnyType< Type6 >::checkType( f ) &&
00759            !AnyType< Type7 >::checkType( f ) &&
00760            !AnyType< Type8 >::checkType( f ) &&
00761            !AnyType< Type9 >::checkType( f ) &&
00762            !AnyType< Type10 >::checkType( f ) &&
00763            !AnyType< Type11 >::checkType( f ) &&
00764            !AnyType< Type12 >::checkType( f ) &&
00765            !AnyType< Type13 >::checkType( f ) &&
00766            !AnyType< Type14 >::checkType( f ) &&
00767            !AnyType< Type15 >::checkType( f )        ) { 
00768           throw InvalidType( typeid( f ).name(),
00769                              typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15> ).name() ); 
00770         }
00771       }
00772     };
00773     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 >
00774     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 > {
00778       static void checkTemplateArguments() {
00779         AnyType< Type0 >::checkTemplateArguments();
00780         AnyType< Type1 >::checkTemplateArguments();
00781         AnyType< Type2 >::checkTemplateArguments();
00782         AnyType< Type3 >::checkTemplateArguments();
00783         AnyType< Type4 >::checkTemplateArguments();
00784         AnyType< Type5 >::checkTemplateArguments();
00785         AnyType< Type6 >::checkTemplateArguments();
00786         AnyType< Type7 >::checkTemplateArguments();
00787         AnyType< Type8 >::checkTemplateArguments();
00788         AnyType< Type9 >::checkTemplateArguments();
00789         AnyType< Type10 >::checkTemplateArguments();
00790         AnyType< Type11 >::checkTemplateArguments();
00791         AnyType< Type12 >::checkTemplateArguments();
00792         AnyType< Type13 >::checkTemplateArguments();
00793         AnyType< Type14 >::checkTemplateArguments();
00794         AnyType< Type15 >::checkTemplateArguments();
00795         AnyType< Type16 >::checkTemplateArguments();
00796       }
00797 
00804       static void checkType( Field *f ) { 
00805         if( 
00806            !AnyType< Type0 >::checkType( f ) &&
00807            !AnyType< Type1 >::checkType( f ) &&
00808            !AnyType< Type2 >::checkType( f ) &&
00809            !AnyType< Type3 >::checkType( f ) &&
00810            !AnyType< Type4 >::checkType( f ) &&
00811            !AnyType< Type5 >::checkType( f ) &&
00812            !AnyType< Type6 >::checkType( f ) &&
00813            !AnyType< Type7 >::checkType( f ) &&
00814            !AnyType< Type8 >::checkType( f ) &&
00815            !AnyType< Type9 >::checkType( f ) &&
00816            !AnyType< Type10 >::checkType( f ) &&
00817            !AnyType< Type11 >::checkType( f ) &&
00818            !AnyType< Type12 >::checkType( f ) &&
00819            !AnyType< Type13 >::checkType( f ) &&
00820            !AnyType< Type14 >::checkType( f ) &&
00821            !AnyType< Type15 >::checkType( f ) &&
00822            !AnyType< Type16 >::checkType( f )        ) { 
00823           throw InvalidType( typeid( f ).name(),
00824                              typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16> ).name() ); 
00825         }
00826       }
00827     };
00828     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 >
00829     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 > {
00833       static void checkTemplateArguments() {
00834         AnyType< Type0 >::checkTemplateArguments();
00835         AnyType< Type1 >::checkTemplateArguments();
00836         AnyType< Type2 >::checkTemplateArguments();
00837         AnyType< Type3 >::checkTemplateArguments();
00838         AnyType< Type4 >::checkTemplateArguments();
00839         AnyType< Type5 >::checkTemplateArguments();
00840         AnyType< Type6 >::checkTemplateArguments();
00841         AnyType< Type7 >::checkTemplateArguments();
00842         AnyType< Type8 >::checkTemplateArguments();
00843         AnyType< Type9 >::checkTemplateArguments();
00844         AnyType< Type10 >::checkTemplateArguments();
00845         AnyType< Type11 >::checkTemplateArguments();
00846         AnyType< Type12 >::checkTemplateArguments();
00847         AnyType< Type13 >::checkTemplateArguments();
00848         AnyType< Type14 >::checkTemplateArguments();
00849         AnyType< Type15 >::checkTemplateArguments();
00850         AnyType< Type16 >::checkTemplateArguments();
00851         AnyType< Type17 >::checkTemplateArguments();
00852       }
00853 
00860       static void checkType( Field *f ) { 
00861         if( 
00862            !AnyType< Type0 >::checkType( f ) &&
00863            !AnyType< Type1 >::checkType( f ) &&
00864            !AnyType< Type2 >::checkType( f ) &&
00865            !AnyType< Type3 >::checkType( f ) &&
00866            !AnyType< Type4 >::checkType( f ) &&
00867            !AnyType< Type5 >::checkType( f ) &&
00868            !AnyType< Type6 >::checkType( f ) &&
00869            !AnyType< Type7 >::checkType( f ) &&
00870            !AnyType< Type8 >::checkType( f ) &&
00871            !AnyType< Type9 >::checkType( f ) &&
00872            !AnyType< Type10 >::checkType( f ) &&
00873            !AnyType< Type11 >::checkType( f ) &&
00874            !AnyType< Type12 >::checkType( f ) &&
00875            !AnyType< Type13 >::checkType( f ) &&
00876            !AnyType< Type14 >::checkType( f ) &&
00877            !AnyType< Type15 >::checkType( f ) &&
00878            !AnyType< Type16 >::checkType( f ) &&
00879            !AnyType< Type17 >::checkType( f )        ) { 
00880           throw InvalidType( typeid( f ).name(),
00881                              typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17> ).name() ); 
00882         }
00883       }
00884     };
00885     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 >
00886     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 > {
00890       static void checkTemplateArguments() {
00891         AnyType< Type0 >::checkTemplateArguments();
00892         AnyType< Type1 >::checkTemplateArguments();
00893         AnyType< Type2 >::checkTemplateArguments();
00894         AnyType< Type3 >::checkTemplateArguments();
00895         AnyType< Type4 >::checkTemplateArguments();
00896         AnyType< Type5 >::checkTemplateArguments();
00897         AnyType< Type6 >::checkTemplateArguments();
00898         AnyType< Type7 >::checkTemplateArguments();
00899         AnyType< Type8 >::checkTemplateArguments();
00900         AnyType< Type9 >::checkTemplateArguments();
00901         AnyType< Type10 >::checkTemplateArguments();
00902         AnyType< Type11 >::checkTemplateArguments();
00903         AnyType< Type12 >::checkTemplateArguments();
00904         AnyType< Type13 >::checkTemplateArguments();
00905         AnyType< Type14 >::checkTemplateArguments();
00906         AnyType< Type15 >::checkTemplateArguments();
00907         AnyType< Type16 >::checkTemplateArguments();
00908         AnyType< Type17 >::checkTemplateArguments();
00909         AnyType< Type18 >::checkTemplateArguments();
00910       }
00911 
00918       static void checkType( Field *f ) { 
00919         if( 
00920            !AnyType< Type0 >::checkType( f ) &&
00921            !AnyType< Type1 >::checkType( f ) &&
00922            !AnyType< Type2 >::checkType( f ) &&
00923            !AnyType< Type3 >::checkType( f ) &&
00924            !AnyType< Type4 >::checkType( f ) &&
00925            !AnyType< Type5 >::checkType( f ) &&
00926            !AnyType< Type6 >::checkType( f ) &&
00927            !AnyType< Type7 >::checkType( f ) &&
00928            !AnyType< Type8 >::checkType( f ) &&
00929            !AnyType< Type9 >::checkType( f ) &&
00930            !AnyType< Type10 >::checkType( f ) &&
00931            !AnyType< Type11 >::checkType( f ) &&
00932            !AnyType< Type12 >::checkType( f ) &&
00933            !AnyType< Type13 >::checkType( f ) &&
00934            !AnyType< Type14 >::checkType( f ) &&
00935            !AnyType< Type15 >::checkType( f ) &&
00936            !AnyType< Type16 >::checkType( f ) &&
00937            !AnyType< Type17 >::checkType( f ) &&
00938            !AnyType< Type18 >::checkType( f )        ) { 
00939           throw InvalidType( typeid( f ).name(),
00940                              typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18> ).name() ); 
00941         }
00942       }
00943     };
00944     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 >
00945     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 > {
00949       static void checkTemplateArguments() {
00950         AnyType< Type0 >::checkTemplateArguments();
00951         AnyType< Type1 >::checkTemplateArguments();
00952         AnyType< Type2 >::checkTemplateArguments();
00953         AnyType< Type3 >::checkTemplateArguments();
00954         AnyType< Type4 >::checkTemplateArguments();
00955         AnyType< Type5 >::checkTemplateArguments();
00956         AnyType< Type6 >::checkTemplateArguments();
00957         AnyType< Type7 >::checkTemplateArguments();
00958         AnyType< Type8 >::checkTemplateArguments();
00959         AnyType< Type9 >::checkTemplateArguments();
00960         AnyType< Type10 >::checkTemplateArguments();
00961         AnyType< Type11 >::checkTemplateArguments();
00962         AnyType< Type12 >::checkTemplateArguments();
00963         AnyType< Type13 >::checkTemplateArguments();
00964         AnyType< Type14 >::checkTemplateArguments();
00965         AnyType< Type15 >::checkTemplateArguments();
00966         AnyType< Type16 >::checkTemplateArguments();
00967         AnyType< Type17 >::checkTemplateArguments();
00968         AnyType< Type18 >::checkTemplateArguments();
00969         AnyType< Type19 >::checkTemplateArguments();
00970       }
00971 
00978       static void checkType( Field *f ) { 
00979         if( 
00980            !AnyType< Type0 >::checkType( f ) &&
00981            !AnyType< Type1 >::checkType( f ) &&
00982            !AnyType< Type2 >::checkType( f ) &&
00983            !AnyType< Type3 >::checkType( f ) &&
00984            !AnyType< Type4 >::checkType( f ) &&
00985            !AnyType< Type5 >::checkType( f ) &&
00986            !AnyType< Type6 >::checkType( f ) &&
00987            !AnyType< Type7 >::checkType( f ) &&
00988            !AnyType< Type8 >::checkType( f ) &&
00989            !AnyType< Type9 >::checkType( f ) &&
00990            !AnyType< Type10 >::checkType( f ) &&
00991            !AnyType< Type11 >::checkType( f ) &&
00992            !AnyType< Type12 >::checkType( f ) &&
00993            !AnyType< Type13 >::checkType( f ) &&
00994            !AnyType< Type14 >::checkType( f ) &&
00995            !AnyType< Type15 >::checkType( f ) &&
00996            !AnyType< Type16 >::checkType( f ) &&
00997            !AnyType< Type17 >::checkType( f ) &&
00998            !AnyType< Type18 >::checkType( f ) &&
00999            !AnyType< Type19 >::checkType( f )        ) { 
01000           throw InvalidType( typeid( f ).name(),
01001                              typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19> ).name() ); 
01002         }
01003       }
01004     };
01005     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 >
01006     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 > {
01010       static void checkTemplateArguments() {
01011         AnyType< Type0 >::checkTemplateArguments();
01012         AnyType< Type1 >::checkTemplateArguments();
01013         AnyType< Type2 >::checkTemplateArguments();
01014         AnyType< Type3 >::checkTemplateArguments();
01015         AnyType< Type4 >::checkTemplateArguments();
01016         AnyType< Type5 >::checkTemplateArguments();
01017         AnyType< Type6 >::checkTemplateArguments();
01018         AnyType< Type7 >::checkTemplateArguments();
01019         AnyType< Type8 >::checkTemplateArguments();
01020         AnyType< Type9 >::checkTemplateArguments();
01021         AnyType< Type10 >::checkTemplateArguments();
01022         AnyType< Type11 >::checkTemplateArguments();
01023         AnyType< Type12 >::checkTemplateArguments();
01024         AnyType< Type13 >::checkTemplateArguments();
01025         AnyType< Type14 >::checkTemplateArguments();
01026         AnyType< Type15 >::checkTemplateArguments();
01027         AnyType< Type16 >::checkTemplateArguments();
01028         AnyType< Type17 >::checkTemplateArguments();
01029         AnyType< Type18 >::checkTemplateArguments();
01030         AnyType< Type19 >::checkTemplateArguments();
01031         AnyType< Type20 >::checkTemplateArguments();
01032       }
01033 
01040       static void checkType( Field *f ) { 
01041         if( 
01042            !AnyType< Type0 >::checkType( f ) &&
01043            !AnyType< Type1 >::checkType( f ) &&
01044            !AnyType< Type2 >::checkType( f ) &&
01045            !AnyType< Type3 >::checkType( f ) &&
01046            !AnyType< Type4 >::checkType( f ) &&
01047            !AnyType< Type5 >::checkType( f ) &&
01048            !AnyType< Type6 >::checkType( f ) &&
01049            !AnyType< Type7 >::checkType( f ) &&
01050            !AnyType< Type8 >::checkType( f ) &&
01051            !AnyType< Type9 >::checkType( f ) &&
01052            !AnyType< Type10 >::checkType( f ) &&
01053            !AnyType< Type11 >::checkType( f ) &&
01054            !AnyType< Type12 >::checkType( f ) &&
01055            !AnyType< Type13 >::checkType( f ) &&
01056            !AnyType< Type14 >::checkType( f ) &&
01057            !AnyType< Type15 >::checkType( f ) &&
01058            !AnyType< Type16 >::checkType( f ) &&
01059            !AnyType< Type17 >::checkType( f ) &&
01060            !AnyType< Type18 >::checkType( f ) &&
01061            !AnyType< Type19 >::checkType( f ) &&
01062            !AnyType< Type20 >::checkType( f )        ) { 
01063           throw InvalidType( typeid( f ).name(),
01064                              typeid( Any< Type0, Type1, Type2, Type3, Type4, Type5, Type6, Type7, Type8, Type9, Type10, Type11, Type12, Type13, Type14, Type15, Type16, Type17, Type18, Type19, Type20> ).name() ); 
01065         }
01066       }
01067     };
01068     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 >
01069     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 > {
01073       static void checkTemplateArguments() {
01074         AnyType< Type0 >::checkTemplateArguments();
01075         AnyType< Type1 >::checkTemplateArguments();
01076         AnyType< Type2 >::checkTemplateArguments();
01077         AnyType< Type3 >::checkTemplateArguments();
01078         AnyType< Type4 >::checkTemplateArguments();
01079         AnyType< Type5 >::checkTemplateArguments();
01080         AnyType< Type6 >::checkTemplateArguments();
01081         AnyType< Type7 >::checkTemplateArguments();
01082         AnyType< Type8 >::checkTemplateArguments();
01083         AnyType< Type9 >::checkTemplateArguments();
01084         AnyType< Type10 >::checkTemplateArguments();
01085         AnyType< Type11 >::checkTemplateArguments();
01086         AnyType< Type12 >::checkTemplateArguments();
01087         AnyType< Type13 >::checkTemplateArguments();
01088         AnyType< Type14 >::checkTemplateArguments();
01089         AnyType< Type15 >::checkTemplateArguments();
01090         AnyType< Type16 >::checkTemplateArguments();
01091         AnyType< Type17 >::checkTemplateArguments();
01092         AnyType< Type18 >::checkTemplateArguments();
01093         AnyType< Type19 >::checkTemplateArguments();
01094         AnyType< Type20 >::checkTemplateArguments();
01095         AnyType< Type21 >::checkTemplateArguments();
01096       }
01097 
01104       static void checkType( Field *f ) { 
01105         if( 
01106            !AnyType< Type0 >::checkType( f ) &&
01107            !AnyType< Type1 >::checkType( f ) &&
01108            !AnyType< Type2 >::checkType( f ) &&
01109            !AnyType< Type3 >::checkType( f ) &&
01110            !AnyType< Type4 >::checkType( f ) &&
01111            !AnyType< Type5 >::checkType( f ) &&
01112            !AnyType< Type6 >::checkType( f ) &&
01113            !AnyType< Type7 >::checkType( f ) &&
01114            !AnyType< Type8 >::checkType( f ) &&
01115            !AnyType< Type9 >::checkType( f ) &&
01116            !AnyType< Type10 >::checkType( f ) &&
01117            !AnyType< Type11 >::checkType( f ) &&
01118            !AnyType< Type12 >::checkType( f ) &&
01119            !AnyType< Type13 >::checkType( f ) &&
01120            !AnyType< Type14 >::checkType( f ) &&
01121            !AnyType< Type15 >::checkType( f ) &&
01122            !AnyType< Type16 >::checkType( f ) &&
01123            !AnyType< Type17 >::checkType( f ) &&
01124            !AnyType< Type18 >::checkType( f ) &&
01125            !AnyType< Type19 >::checkType( f ) &&
01126            !AnyType< Type20 >::checkType( f ) &&
01127            !AnyType< Type21 >::checkType( f )        ) { 
01128           throw InvalidType( typeid( f ).name(),
01129                              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() ); 
01130         }
01131       }
01132     };
01133     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 >
01134     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 > {
01138       static void checkTemplateArguments() {
01139         AnyType< Type0 >::checkTemplateArguments();
01140         AnyType< Type1 >::checkTemplateArguments();
01141         AnyType< Type2 >::checkTemplateArguments();
01142         AnyType< Type3 >::checkTemplateArguments();
01143         AnyType< Type4 >::checkTemplateArguments();
01144         AnyType< Type5 >::checkTemplateArguments();
01145         AnyType< Type6 >::checkTemplateArguments();
01146         AnyType< Type7 >::checkTemplateArguments();
01147         AnyType< Type8 >::checkTemplateArguments();
01148         AnyType< Type9 >::checkTemplateArguments();
01149         AnyType< Type10 >::checkTemplateArguments();
01150         AnyType< Type11 >::checkTemplateArguments();
01151         AnyType< Type12 >::checkTemplateArguments();
01152         AnyType< Type13 >::checkTemplateArguments();
01153         AnyType< Type14 >::checkTemplateArguments();
01154         AnyType< Type15 >::checkTemplateArguments();
01155         AnyType< Type16 >::checkTemplateArguments();
01156         AnyType< Type17 >::checkTemplateArguments();
01157         AnyType< Type18 >::checkTemplateArguments();
01158         AnyType< Type19 >::checkTemplateArguments();
01159         AnyType< Type20 >::checkTemplateArguments();
01160         AnyType< Type21 >::checkTemplateArguments();
01161         AnyType< Type22 >::checkTemplateArguments();
01162       }
01163 
01170       static void checkType( Field *f ) { 
01171         if( 
01172            !AnyType< Type0 >::checkType( f ) &&
01173            !AnyType< Type1 >::checkType( f ) &&
01174            !AnyType< Type2 >::checkType( f ) &&
01175            !AnyType< Type3 >::checkType( f ) &&
01176            !AnyType< Type4 >::checkType( f ) &&
01177            !AnyType< Type5 >::checkType( f ) &&
01178            !AnyType< Type6 >::checkType( f ) &&
01179            !AnyType< Type7 >::checkType( f ) &&
01180            !AnyType< Type8 >::checkType( f ) &&
01181            !AnyType< Type9 >::checkType( f ) &&
01182            !AnyType< Type10 >::checkType( f ) &&
01183            !AnyType< Type11 >::checkType( f ) &&
01184            !AnyType< Type12 >::checkType( f ) &&
01185            !AnyType< Type13 >::checkType( f ) &&
01186            !AnyType< Type14 >::checkType( f ) &&
01187            !AnyType< Type15 >::checkType( f ) &&
01188            !AnyType< Type16 >::checkType( f ) &&
01189            !AnyType< Type17 >::checkType( f ) &&
01190            !AnyType< Type18 >::checkType( f ) &&
01191            !AnyType< Type19 >::checkType( f ) &&
01192            !AnyType< Type20 >::checkType( f ) &&
01193            !AnyType< Type21 >::checkType( f ) &&
01194            !AnyType< Type22 >::checkType( f )        ) { 
01195           throw InvalidType( typeid( f ).name(),
01196                              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() ); 
01197         }
01198       }
01199     };
01200     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 >
01201     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 > {
01205       static void checkTemplateArguments() {
01206         AnyType< Type0 >::checkTemplateArguments();
01207         AnyType< Type1 >::checkTemplateArguments();
01208         AnyType< Type2 >::checkTemplateArguments();
01209         AnyType< Type3 >::checkTemplateArguments();
01210         AnyType< Type4 >::checkTemplateArguments();
01211         AnyType< Type5 >::checkTemplateArguments();
01212         AnyType< Type6 >::checkTemplateArguments();
01213         AnyType< Type7 >::checkTemplateArguments();
01214         AnyType< Type8 >::checkTemplateArguments();
01215         AnyType< Type9 >::checkTemplateArguments();
01216         AnyType< Type10 >::checkTemplateArguments();
01217         AnyType< Type11 >::checkTemplateArguments();
01218         AnyType< Type12 >::checkTemplateArguments();
01219         AnyType< Type13 >::checkTemplateArguments();
01220         AnyType< Type14 >::checkTemplateArguments();
01221         AnyType< Type15 >::checkTemplateArguments();
01222         AnyType< Type16 >::checkTemplateArguments();
01223         AnyType< Type17 >::checkTemplateArguments();
01224         AnyType< Type18 >::checkTemplateArguments();
01225         AnyType< Type19 >::checkTemplateArguments();
01226         AnyType< Type20 >::checkTemplateArguments();
01227         AnyType< Type21 >::checkTemplateArguments();
01228         AnyType< Type22 >::checkTemplateArguments();
01229         AnyType< Type23 >::checkTemplateArguments();
01230       }
01231 
01238       static void checkType( Field *f ) { 
01239         if( 
01240            !AnyType< Type0 >::checkType( f ) &&
01241            !AnyType< Type1 >::checkType( f ) &&
01242            !AnyType< Type2 >::checkType( f ) &&
01243            !AnyType< Type3 >::checkType( f ) &&
01244            !AnyType< Type4 >::checkType( f ) &&
01245            !AnyType< Type5 >::checkType( f ) &&
01246            !AnyType< Type6 >::checkType( f ) &&
01247            !AnyType< Type7 >::checkType( f ) &&
01248            !AnyType< Type8 >::checkType( f ) &&
01249            !AnyType< Type9 >::checkType( f ) &&
01250            !AnyType< Type10 >::checkType( f ) &&
01251            !AnyType< Type11 >::checkType( f ) &&
01252            !AnyType< Type12 >::checkType( f ) &&
01253            !AnyType< Type13 >::checkType( f ) &&
01254            !AnyType< Type14 >::checkType( f ) &&
01255            !AnyType< Type15 >::checkType( f ) &&
01256            !AnyType< Type16 >::checkType( f ) &&
01257            !AnyType< Type17 >::checkType( f ) &&
01258            !AnyType< Type18 >::checkType( f ) &&
01259            !AnyType< Type19 >::checkType( f ) &&
01260            !AnyType< Type20 >::checkType( f ) &&
01261            !AnyType< Type21 >::checkType( f ) &&
01262            !AnyType< Type22 >::checkType( f ) &&
01263            !AnyType< Type23 >::checkType( f )        ) { 
01264           throw InvalidType( typeid( f ).name(),
01265                              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() ); 
01266         }
01267       }
01268     };
01269     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 >
01270     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 > {
01274       static void checkTemplateArguments() {
01275         AnyType< Type0 >::checkTemplateArguments();
01276         AnyType< Type1 >::checkTemplateArguments();
01277         AnyType< Type2 >::checkTemplateArguments();
01278         AnyType< Type3 >::checkTemplateArguments();
01279         AnyType< Type4 >::checkTemplateArguments();
01280         AnyType< Type5 >::checkTemplateArguments();
01281         AnyType< Type6 >::checkTemplateArguments();
01282         AnyType< Type7 >::checkTemplateArguments();
01283         AnyType< Type8 >::checkTemplateArguments();
01284         AnyType< Type9 >::checkTemplateArguments();
01285         AnyType< Type10 >::checkTemplateArguments();
01286         AnyType< Type11 >::checkTemplateArguments();
01287         AnyType< Type12 >::checkTemplateArguments();
01288         AnyType< Type13 >::checkTemplateArguments();
01289         AnyType< Type14 >::checkTemplateArguments();
01290         AnyType< Type15 >::checkTemplateArguments();
01291         AnyType< Type16 >::checkTemplateArguments();
01292         AnyType< Type17 >::checkTemplateArguments();
01293         AnyType< Type18 >::checkTemplateArguments();
01294         AnyType< Type19 >::checkTemplateArguments();
01295         AnyType< Type20 >::checkTemplateArguments();
01296         AnyType< Type21 >::checkTemplateArguments();
01297         AnyType< Type22 >::checkTemplateArguments();
01298         AnyType< Type23 >::checkTemplateArguments();
01299         AnyType< Type24 >::checkTemplateArguments();
01300       }
01301 
01308       static void checkType( Field *f ) { 
01309         if( 
01310            !AnyType< Type0 >::checkType( f ) &&
01311            !AnyType< Type1 >::checkType( f ) &&
01312            !AnyType< Type2 >::checkType( f ) &&
01313            !AnyType< Type3 >::checkType( f ) &&
01314            !AnyType< Type4 >::checkType( f ) &&
01315            !AnyType< Type5 >::checkType( f ) &&
01316            !AnyType< Type6 >::checkType( f ) &&
01317            !AnyType< Type7 >::checkType( f ) &&
01318            !AnyType< Type8 >::checkType( f ) &&
01319            !AnyType< Type9 >::checkType( f ) &&
01320            !AnyType< Type10 >::checkType( f ) &&
01321            !AnyType< Type11 >::checkType( f ) &&
01322            !AnyType< Type12 >::checkType( f ) &&
01323            !AnyType< Type13 >::checkType( f ) &&
01324            !AnyType< Type14 >::checkType( f ) &&
01325            !AnyType< Type15 >::checkType( f ) &&
01326            !AnyType< Type16 >::checkType( f ) &&
01327            !AnyType< Type17 >::checkType( f ) &&
01328            !AnyType< Type18 >::checkType( f ) &&
01329            !AnyType< Type19 >::checkType( f ) &&
01330            !AnyType< Type20 >::checkType( f ) &&
01331            !AnyType< Type21 >::checkType( f ) &&
01332            !AnyType< Type22 >::checkType( f ) &&
01333            !AnyType< Type23 >::checkType( f ) &&
01334            !AnyType< Type24 >::checkType( f )        ) { 
01335           throw InvalidType( typeid( f ).name(),
01336                              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() ); 
01337         }
01338       }
01339     };
01340     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 >
01341     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 > {
01345       static void checkTemplateArguments() {
01346         AnyType< Type0 >::checkTemplateArguments();
01347         AnyType< Type1 >::checkTemplateArguments();
01348         AnyType< Type2 >::checkTemplateArguments();
01349         AnyType< Type3 >::checkTemplateArguments();
01350         AnyType< Type4 >::checkTemplateArguments();
01351         AnyType< Type5 >::checkTemplateArguments();
01352         AnyType< Type6 >::checkTemplateArguments();
01353         AnyType< Type7 >::checkTemplateArguments();
01354         AnyType< Type8 >::checkTemplateArguments();
01355         AnyType< Type9 >::checkTemplateArguments();
01356         AnyType< Type10 >::checkTemplateArguments();
01357         AnyType< Type11 >::checkTemplateArguments();
01358         AnyType< Type12 >::checkTemplateArguments();
01359         AnyType< Type13 >::checkTemplateArguments();
01360         AnyType< Type14 >::checkTemplateArguments();
01361         AnyType< Type15 >::checkTemplateArguments();
01362         AnyType< Type16 >::checkTemplateArguments();
01363         AnyType< Type17 >::checkTemplateArguments();
01364         AnyType< Type18 >::checkTemplateArguments();
01365         AnyType< Type19 >::checkTemplateArguments();
01366         AnyType< Type20 >::checkTemplateArguments();
01367         AnyType< Type21 >::checkTemplateArguments();
01368         AnyType< Type22 >::checkTemplateArguments();
01369         AnyType< Type23 >::checkTemplateArguments();
01370         AnyType< Type24 >::checkTemplateArguments();
01371         AnyType< Type25 >::checkTemplateArguments();
01372       }
01373 
01380       static void checkType( Field *f ) { 
01381         if( 
01382            !AnyType< Type0 >::checkType( f ) &&
01383            !AnyType< Type1 >::checkType( f ) &&
01384            !AnyType< Type2 >::checkType( f ) &&
01385            !AnyType< Type3 >::checkType( f ) &&
01386            !AnyType< Type4 >::checkType( f ) &&
01387            !AnyType< Type5 >::checkType( f ) &&
01388            !AnyType< Type6 >::checkType( f ) &&
01389            !AnyType< Type7 >::checkType( f ) &&
01390            !AnyType< Type8 >::checkType( f ) &&
01391            !AnyType< Type9 >::checkType( f ) &&
01392            !AnyType< Type10 >::checkType( f ) &&
01393            !AnyType< Type11 >::checkType( f ) &&
01394            !AnyType< Type12 >::checkType( f ) &&
01395            !AnyType< Type13 >::checkType( f ) &&
01396            !AnyType< Type14 >::checkType( f ) &&
01397            !AnyType< Type15 >::checkType( f ) &&
01398            !AnyType< Type16 >::checkType( f ) &&
01399            !AnyType< Type17 >::checkType( f ) &&
01400            !AnyType< Type18 >::checkType( f ) &&
01401            !AnyType< Type19 >::checkType( f ) &&
01402            !AnyType< Type20 >::checkType( f ) &&
01403            !AnyType< Type21 >::checkType( f ) &&
01404            !AnyType< Type22 >::checkType( f ) &&
01405            !AnyType< Type23 >::checkType( f ) &&
01406            !AnyType< Type24 >::checkType( f ) &&
01407            !AnyType< Type25 >::checkType( f )        ) { 
01408           throw InvalidType( typeid( f ).name(),
01409                              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() ); 
01410         }
01411       }
01412     };
01413     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 >
01414     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 > {
01418       static void checkTemplateArguments() {
01419         AnyType< Type0 >::checkTemplateArguments();
01420         AnyType< Type1 >::checkTemplateArguments();
01421         AnyType< Type2 >::checkTemplateArguments();
01422         AnyType< Type3 >::checkTemplateArguments();
01423         AnyType< Type4 >::checkTemplateArguments();
01424         AnyType< Type5 >::checkTemplateArguments();
01425         AnyType< Type6 >::checkTemplateArguments();
01426         AnyType< Type7 >::checkTemplateArguments();
01427         AnyType< Type8 >::checkTemplateArguments();
01428         AnyType< Type9 >::checkTemplateArguments();
01429         AnyType< Type10 >::checkTemplateArguments();
01430         AnyType< Type11 >::checkTemplateArguments();
01431         AnyType< Type12 >::checkTemplateArguments();
01432         AnyType< Type13 >::checkTemplateArguments();
01433         AnyType< Type14 >::checkTemplateArguments();
01434         AnyType< Type15 >::checkTemplateArguments();
01435         AnyType< Type16 >::checkTemplateArguments();
01436         AnyType< Type17 >::checkTemplateArguments();
01437         AnyType< Type18 >::checkTemplateArguments();
01438         AnyType< Type19 >::checkTemplateArguments();
01439         AnyType< Type20 >::checkTemplateArguments();
01440         AnyType< Type21 >::checkTemplateArguments();
01441         AnyType< Type22 >::checkTemplateArguments();
01442         AnyType< Type23 >::checkTemplateArguments();
01443         AnyType< Type24 >::checkTemplateArguments();
01444         AnyType< Type25 >::checkTemplateArguments();
01445         AnyType< Type26 >::checkTemplateArguments();
01446       }
01447 
01454       static void checkType( Field *f ) { 
01455         if( 
01456            !AnyType< Type0 >::checkType( f ) &&
01457            !AnyType< Type1 >::checkType( f ) &&
01458            !AnyType< Type2 >::checkType( f ) &&
01459            !AnyType< Type3 >::checkType( f ) &&
01460            !AnyType< Type4 >::checkType( f ) &&
01461            !AnyType< Type5 >::checkType( f ) &&
01462            !AnyType< Type6 >::checkType( f ) &&
01463            !AnyType< Type7 >::checkType( f ) &&
01464            !AnyType< Type8 >::checkType( f ) &&
01465            !AnyType< Type9 >::checkType( f ) &&
01466            !AnyType< Type10 >::checkType( f ) &&
01467            !AnyType< Type11 >::checkType( f ) &&
01468            !AnyType< Type12 >::checkType( f ) &&
01469            !AnyType< Type13 >::checkType( f ) &&
01470            !AnyType< Type14 >::checkType( f ) &&
01471            !AnyType< Type15 >::checkType( f ) &&
01472            !AnyType< Type16 >::checkType( f ) &&
01473            !AnyType< Type17 >::checkType( f ) &&
01474            !AnyType< Type18 >::checkType( f ) &&
01475            !AnyType< Type19 >::checkType( f ) &&
01476            !AnyType< Type20 >::checkType( f ) &&
01477            !AnyType< Type21 >::checkType( f ) &&
01478            !AnyType< Type22 >::checkType( f ) &&
01479            !AnyType< Type23 >::checkType( f ) &&
01480            !AnyType< Type24 >::checkType( f ) &&
01481            !AnyType< Type25 >::checkType( f ) &&
01482            !AnyType< Type26 >::checkType( f )        ) { 
01483           throw InvalidType( typeid( f ).name(),
01484                              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() ); 
01485         }
01486       }
01487     };
01488     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 >
01489     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 > {
01493       static void checkTemplateArguments() {
01494         AnyType< Type0 >::checkTemplateArguments();
01495         AnyType< Type1 >::checkTemplateArguments();
01496         AnyType< Type2 >::checkTemplateArguments();
01497         AnyType< Type3 >::checkTemplateArguments();
01498         AnyType< Type4 >::checkTemplateArguments();
01499         AnyType< Type5 >::checkTemplateArguments();
01500         AnyType< Type6 >::checkTemplateArguments();
01501         AnyType< Type7 >::checkTemplateArguments();
01502         AnyType< Type8 >::checkTemplateArguments();
01503         AnyType< Type9 >::checkTemplateArguments();
01504         AnyType< Type10 >::checkTemplateArguments();
01505         AnyType< Type11 >::checkTemplateArguments();
01506         AnyType< Type12 >::checkTemplateArguments();
01507         AnyType< Type13 >::checkTemplateArguments();
01508         AnyType< Type14 >::checkTemplateArguments();
01509         AnyType< Type15 >::checkTemplateArguments();
01510         AnyType< Type16 >::checkTemplateArguments();
01511         AnyType< Type17 >::checkTemplateArguments();
01512         AnyType< Type18 >::checkTemplateArguments();
01513         AnyType< Type19 >::checkTemplateArguments();
01514         AnyType< Type20 >::checkTemplateArguments();
01515         AnyType< Type21 >::checkTemplateArguments();
01516         AnyType< Type22 >::checkTemplateArguments();
01517         AnyType< Type23 >::checkTemplateArguments();
01518         AnyType< Type24 >::checkTemplateArguments();
01519         AnyType< Type25 >::checkTemplateArguments();
01520         AnyType< Type26 >::checkTemplateArguments();
01521         AnyType< Type27 >::checkTemplateArguments();
01522       }
01523 
01530       static void checkType( Field *f ) { 
01531         if( 
01532            !AnyType< Type0 >::checkType( f ) &&
01533            !AnyType< Type1 >::checkType( f ) &&
01534            !AnyType< Type2 >::checkType( f ) &&
01535            !AnyType< Type3 >::checkType( f ) &&
01536            !AnyType< Type4 >::checkType( f ) &&
01537            !AnyType< Type5 >::checkType( f ) &&
01538            !AnyType< Type6 >::checkType( f ) &&
01539            !AnyType< Type7 >::checkType( f ) &&
01540            !AnyType< Type8 >::checkType( f ) &&
01541            !AnyType< Type9 >::checkType( f ) &&
01542            !AnyType< Type10 >::checkType( f ) &&
01543            !AnyType< Type11 >::checkType( f ) &&
01544            !AnyType< Type12 >::checkType( f ) &&
01545            !AnyType< Type13 >::checkType( f ) &&
01546            !AnyType< Type14 >::checkType( f ) &&
01547            !AnyType< Type15 >::checkType( f ) &&
01548            !AnyType< Type16 >::checkType( f ) &&
01549            !AnyType< Type17 >::checkType( f ) &&
01550            !AnyType< Type18 >::checkType( f ) &&
01551            !AnyType< Type19 >::checkType( f ) &&
01552            !AnyType< Type20 >::checkType( f ) &&
01553            !AnyType< Type21 >::checkType( f ) &&
01554            !AnyType< Type22 >::checkType( f ) &&
01555            !AnyType< Type23 >::checkType( f ) &&
01556            !AnyType< Type24 >::checkType( f ) &&
01557            !AnyType< Type25 >::checkType( f ) &&
01558            !AnyType< Type26 >::checkType( f ) &&
01559            !AnyType< Type27 >::checkType( f )        ) { 
01560           throw InvalidType( typeid( f ).name(),
01561                              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() ); 
01562         }
01563       }
01564     };
01565     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 >
01566     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 > {
01570       static void checkTemplateArguments() {
01571         AnyType< Type0 >::checkTemplateArguments();
01572         AnyType< Type1 >::checkTemplateArguments();
01573         AnyType< Type2 >::checkTemplateArguments();
01574         AnyType< Type3 >::checkTemplateArguments();
01575         AnyType< Type4 >::checkTemplateArguments();
01576         AnyType< Type5 >::checkTemplateArguments();
01577         AnyType< Type6 >::checkTemplateArguments();
01578         AnyType< Type7 >::checkTemplateArguments();
01579         AnyType< Type8 >::checkTemplateArguments();
01580         AnyType< Type9 >::checkTemplateArguments();
01581         AnyType< Type10 >::checkTemplateArguments();
01582         AnyType< Type11 >::checkTemplateArguments();
01583         AnyType< Type12 >::checkTemplateArguments();
01584         AnyType< Type13 >::checkTemplateArguments();
01585         AnyType< Type14 >::checkTemplateArguments();
01586         AnyType< Type15 >::checkTemplateArguments();
01587         AnyType< Type16 >::checkTemplateArguments();
01588         AnyType< Type17 >::checkTemplateArguments();
01589         AnyType< Type18 >::checkTemplateArguments();
01590         AnyType< Type19 >::checkTemplateArguments();
01591         AnyType< Type20 >::checkTemplateArguments();
01592         AnyType< Type21 >::checkTemplateArguments();
01593         AnyType< Type22 >::checkTemplateArguments();
01594         AnyType< Type23 >::checkTemplateArguments();
01595         AnyType< Type24 >::checkTemplateArguments();
01596         AnyType< Type25 >::checkTemplateArguments();
01597         AnyType< Type26 >::checkTemplateArguments();
01598         AnyType< Type27 >::checkTemplateArguments();
01599         AnyType< Type28 >::checkTemplateArguments();
01600       }
01601 
01608       static void checkType( Field *f ) { 
01609         if( 
01610            !AnyType< Type0 >::checkType( f ) &&
01611            !AnyType< Type1 >::checkType( f ) &&
01612            !AnyType< Type2 >::checkType( f ) &&
01613            !AnyType< Type3 >::checkType( f ) &&
01614            !AnyType< Type4 >::checkType( f ) &&
01615            !AnyType< Type5 >::checkType( f ) &&
01616            !AnyType< Type6 >::checkType( f ) &&
01617            !AnyType< Type7 >::checkType( f ) &&
01618            !AnyType< Type8 >::checkType( f ) &&
01619            !AnyType< Type9 >::checkType( f ) &&
01620            !AnyType< Type10 >::checkType( f ) &&
01621            !AnyType< Type11 >::checkType( f ) &&
01622            !AnyType< Type12 >::checkType( f ) &&
01623            !AnyType< Type13 >::checkType( f ) &&
01624            !AnyType< Type14 >::checkType( f ) &&
01625            !AnyType< Type15 >::checkType( f ) &&
01626            !AnyType< Type16 >::checkType( f ) &&
01627            !AnyType< Type17 >::checkType( f ) &&
01628            !AnyType< Type18 >::checkType( f ) &&
01629            !AnyType< Type19 >::checkType( f ) &&
01630            !AnyType< Type20 >::checkType( f ) &&
01631            !AnyType< Type21 >::checkType( f ) &&
01632            !AnyType< Type22 >::checkType( f ) &&
01633            !AnyType< Type23 >::checkType( f ) &&
01634            !AnyType< Type24 >::checkType( f ) &&
01635            !AnyType< Type25 >::checkType( f ) &&
01636            !AnyType< Type26 >::checkType( f ) &&
01637            !AnyType< Type27 >::checkType( f ) &&
01638            !AnyType< Type28 >::checkType( f )        ) { 
01639           throw InvalidType( typeid( f ).name(),
01640                              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() ); 
01641         }
01642       }
01643     };
01644     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 >
01645     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 > {
01649       static void checkTemplateArguments() {
01650         AnyType< Type0 >::checkTemplateArguments();
01651         AnyType< Type1 >::checkTemplateArguments();
01652         AnyType< Type2 >::checkTemplateArguments();
01653         AnyType< Type3 >::checkTemplateArguments();
01654         AnyType< Type4 >::checkTemplateArguments();
01655         AnyType< Type5 >::checkTemplateArguments();
01656         AnyType< Type6 >::checkTemplateArguments();
01657         AnyType< Type7 >::checkTemplateArguments();
01658         AnyType< Type8 >::checkTemplateArguments();
01659         AnyType< Type9 >::checkTemplateArguments();
01660         AnyType< Type10 >::checkTemplateArguments();
01661         AnyType< Type11 >::checkTemplateArguments();
01662         AnyType< Type12 >::checkTemplateArguments();
01663         AnyType< Type13 >::checkTemplateArguments();
01664         AnyType< Type14 >::checkTemplateArguments();
01665         AnyType< Type15 >::checkTemplateArguments();
01666         AnyType< Type16 >::checkTemplateArguments();
01667         AnyType< Type17 >::checkTemplateArguments();
01668         AnyType< Type18 >::checkTemplateArguments();
01669         AnyType< Type19 >::checkTemplateArguments();
01670         AnyType< Type20 >::checkTemplateArguments();
01671         AnyType< Type21 >::checkTemplateArguments();
01672         AnyType< Type22 >::checkTemplateArguments();
01673         AnyType< Type23 >::checkTemplateArguments();
01674         AnyType< Type24 >::checkTemplateArguments();
01675         AnyType< Type25 >::checkTemplateArguments();
01676         AnyType< Type26 >::checkTemplateArguments();
01677         AnyType< Type27 >::checkTemplateArguments();
01678         AnyType< Type28 >::checkTemplateArguments();
01679         AnyType< Type29 >::checkTemplateArguments();
01680       }
01681 
01688       static void checkType( Field *f ) { 
01689         if( 
01690            !AnyType< Type0 >::checkType( f ) &&
01691            !AnyType< Type1 >::checkType( f ) &&
01692            !AnyType< Type2 >::checkType( f ) &&
01693            !AnyType< Type3 >::checkType( f ) &&
01694            !AnyType< Type4 >::checkType( f ) &&
01695            !AnyType< Type5 >::checkType( f ) &&
01696            !AnyType< Type6 >::checkType( f ) &&
01697            !AnyType< Type7 >::checkType( f ) &&
01698            !AnyType< Type8 >::checkType( f ) &&
01699            !AnyType< Type9 >::checkType( f ) &&
01700            !AnyType< Type10 >::checkType( f ) &&
01701            !AnyType< Type11 >::checkType( f ) &&
01702            !AnyType< Type12 >::checkType( f ) &&
01703            !AnyType< Type13 >::checkType( f ) &&
01704            !AnyType< Type14 >::checkType( f ) &&
01705            !AnyType< Type15 >::checkType( f ) &&
01706            !AnyType< Type16 >::checkType( f ) &&
01707            !AnyType< Type17 >::checkType( f ) &&
01708            !AnyType< Type18 >::checkType( f ) &&
01709            !AnyType< Type19 >::checkType( f ) &&
01710            !AnyType< Type20 >::checkType( f ) &&
01711            !AnyType< Type21 >::checkType( f ) &&
01712            !AnyType< Type22 >::checkType( f ) &&
01713            !AnyType< Type23 >::checkType( f ) &&
01714            !AnyType< Type24 >::checkType( f ) &&
01715            !AnyType< Type25 >::checkType( f ) &&
01716            !AnyType< Type26 >::checkType( f ) &&
01717            !AnyType< Type27 >::checkType( f ) &&
01718            !AnyType< Type28 >::checkType( f ) &&
01719            !AnyType< Type29 >::checkType( f )        ) { 
01720           throw InvalidType( typeid( f ).name(),
01721                              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() ); 
01722         }
01723       }
01724     };
01725     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 >
01726     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 > {
01730       static void checkTemplateArguments() {
01731         AnyType< Type0 >::checkTemplateArguments();
01732         AnyType< Type1 >::checkTemplateArguments();
01733         AnyType< Type2 >::checkTemplateArguments();
01734         AnyType< Type3 >::checkTemplateArguments();
01735         AnyType< Type4 >::checkTemplateArguments();
01736         AnyType< Type5 >::checkTemplateArguments();
01737         AnyType< Type6 >::checkTemplateArguments();
01738         AnyType< Type7 >::checkTemplateArguments();
01739         AnyType< Type8 >::checkTemplateArguments();
01740         AnyType< Type9 >::checkTemplateArguments();
01741         AnyType< Type10 >::checkTemplateArguments();
01742         AnyType< Type11 >::checkTemplateArguments();
01743         AnyType< Type12 >::checkTemplateArguments();
01744         AnyType< Type13 >::checkTemplateArguments();
01745         AnyType< Type14 >::checkTemplateArguments();
01746         AnyType< Type15 >::checkTemplateArguments();
01747         AnyType< Type16 >::checkTemplateArguments();
01748         AnyType< Type17 >::checkTemplateArguments();
01749         AnyType< Type18 >::checkTemplateArguments();
01750         AnyType< Type19 >::checkTemplateArguments();
01751         AnyType< Type20 >::checkTemplateArguments();
01752         AnyType< Type21 >::checkTemplateArguments();
01753         AnyType< Type22 >::checkTemplateArguments();
01754         AnyType< Type23 >::checkTemplateArguments();
01755         AnyType< Type24 >::checkTemplateArguments();
01756         AnyType< Type25 >::checkTemplateArguments();
01757         AnyType< Type26 >::checkTemplateArguments();
01758         AnyType< Type27 >::checkTemplateArguments();
01759         AnyType< Type28 >::checkTemplateArguments();
01760         AnyType< Type29 >::checkTemplateArguments();
01761         AnyType< Type30 >::checkTemplateArguments();
01762       }
01763 
01770       static void checkType( Field *f ) { 
01771         if( 
01772            !AnyType< Type0 >::checkType( f ) &&
01773            !AnyType< Type1 >::checkType( f ) &&
01774            !AnyType< Type2 >::checkType( f ) &&
01775            !AnyType< Type3 >::checkType( f ) &&
01776            !AnyType< Type4 >::checkType( f ) &&
01777            !AnyType< Type5 >::checkType( f ) &&
01778            !AnyType< Type6 >::checkType( f ) &&
01779            !AnyType< Type7 >::checkType( f ) &&
01780            !AnyType< Type8 >::checkType( f ) &&
01781            !AnyType< Type9 >::checkType( f ) &&
01782            !AnyType< Type10 >::checkType( f ) &&
01783            !AnyType< Type11 >::checkType( f ) &&
01784            !AnyType< Type12 >::checkType( f ) &&
01785            !AnyType< Type13 >::checkType( f ) &&
01786            !AnyType< Type14 >::checkType( f ) &&
01787            !AnyType< Type15 >::checkType( f ) &&
01788            !AnyType< Type16 >::checkType( f ) &&
01789            !AnyType< Type17 >::checkType( f ) &&
01790            !AnyType< Type18 >::checkType( f ) &&
01791            !AnyType< Type19 >::checkType( f ) &&
01792            !AnyType< Type20 >::checkType( f ) &&
01793            !AnyType< Type21 >::checkType( f ) &&
01794            !AnyType< Type22 >::checkType( f ) &&
01795            !AnyType< Type23 >::checkType( f ) &&
01796            !AnyType< Type24 >::checkType( f ) &&
01797            !AnyType< Type25 >::checkType( f ) &&
01798            !AnyType< Type26 >::checkType( f ) &&
01799            !AnyType< Type27 >::checkType( f ) &&
01800            !AnyType< Type28 >::checkType( f ) &&
01801            !AnyType< Type29 >::checkType( f ) &&
01802            !AnyType< Type30 >::checkType( f )        ) { 
01803           throw InvalidType( typeid( f ).name(),
01804                              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() ); 
01805         }
01806       }
01807     };
01808     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 >
01809     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 > {
01813       static void checkTemplateArguments() {
01814         AnyType< Type0 >::checkTemplateArguments();
01815         AnyType< Type1 >::checkTemplateArguments();
01816         AnyType< Type2 >::checkTemplateArguments();
01817         AnyType< Type3 >::checkTemplateArguments();
01818         AnyType< Type4 >::checkTemplateArguments();
01819         AnyType< Type5 >::checkTemplateArguments();
01820         AnyType< Type6 >::checkTemplateArguments();
01821         AnyType< Type7 >::checkTemplateArguments();
01822         AnyType< Type8 >::checkTemplateArguments();
01823         AnyType< Type9 >::checkTemplateArguments();
01824         AnyType< Type10 >::checkTemplateArguments();
01825         AnyType< Type11 >::checkTemplateArguments();
01826         AnyType< Type12 >::checkTemplateArguments();
01827         AnyType< Type13 >::checkTemplateArguments();
01828         AnyType< Type14 >::checkTemplateArguments();
01829         AnyType< Type15 >::checkTemplateArguments();
01830         AnyType< Type16 >::checkTemplateArguments();
01831         AnyType< Type17 >::checkTemplateArguments();
01832         AnyType< Type18 >::checkTemplateArguments();
01833         AnyType< Type19 >::checkTemplateArguments();
01834         AnyType< Type20 >::checkTemplateArguments();
01835         AnyType< Type21 >::checkTemplateArguments();
01836         AnyType< Type22 >::checkTemplateArguments();
01837         AnyType< Type23 >::checkTemplateArguments();
01838         AnyType< Type24 >::checkTemplateArguments();
01839         AnyType< Type25 >::checkTemplateArguments();
01840         AnyType< Type26 >::checkTemplateArguments();
01841         AnyType< Type27 >::checkTemplateArguments();
01842         AnyType< Type28 >::checkTemplateArguments();
01843         AnyType< Type29 >::checkTemplateArguments();
01844         AnyType< Type30 >::checkTemplateArguments();
01845         AnyType< Type31 >::checkTemplateArguments();
01846       }
01847 
01854       static void checkType( Field *f ) { 
01855         if( 
01856            !AnyType< Type0 >::checkType( f ) &&
01857            !AnyType< Type1 >::checkType( f ) &&
01858            !AnyType< Type2 >::checkType( f ) &&
01859            !AnyType< Type3 >::checkType( f ) &&
01860            !AnyType< Type4 >::checkType( f ) &&
01861            !AnyType< Type5 >::checkType( f ) &&
01862            !AnyType< Type6 >::checkType( f ) &&
01863            !AnyType< Type7 >::checkType( f ) &&
01864            !AnyType< Type8 >::checkType( f ) &&
01865            !AnyType< Type9 >::checkType( f ) &&
01866            !AnyType< Type10 >::checkType( f ) &&
01867            !AnyType< Type11 >::checkType( f ) &&
01868            !AnyType< Type12 >::checkType( f ) &&
01869            !AnyType< Type13 >::checkType( f ) &&
01870            !AnyType< Type14 >::checkType( f ) &&
01871            !AnyType< Type15 >::checkType( f ) &&
01872            !AnyType< Type16 >::checkType( f ) &&
01873            !AnyType< Type17 >::checkType( f ) &&
01874            !AnyType< Type18 >::checkType( f ) &&
01875            !AnyType< Type19 >::checkType( f ) &&
01876            !AnyType< Type20 >::checkType( f ) &&
01877            !AnyType< Type21 >::checkType( f ) &&
01878            !AnyType< Type22 >::checkType( f ) &&
01879            !AnyType< Type23 >::checkType( f ) &&
01880            !AnyType< Type24 >::checkType( f ) &&
01881            !AnyType< Type25 >::checkType( f ) &&
01882            !AnyType< Type26 >::checkType( f ) &&
01883            !AnyType< Type27 >::checkType( f ) &&
01884            !AnyType< Type28 >::checkType( f ) &&
01885            !AnyType< Type29 >::checkType( f ) &&
01886            !AnyType< Type30 >::checkType( f ) &&
01887            !AnyType< Type31 >::checkType( f )        ) { 
01888           throw InvalidType( typeid( f ).name(),
01889                              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() ); 
01890         }
01891       }
01892     };
01893     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 >
01894     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 > {
01898       static void checkTemplateArguments() {
01899         AnyType< Type0 >::checkTemplateArguments();
01900         AnyType< Type1 >::checkTemplateArguments();
01901         AnyType< Type2 >::checkTemplateArguments();
01902         AnyType< Type3 >::checkTemplateArguments();
01903         AnyType< Type4 >::checkTemplateArguments();
01904         AnyType< Type5 >::checkTemplateArguments();
01905         AnyType< Type6 >::checkTemplateArguments();
01906         AnyType< Type7 >::checkTemplateArguments();
01907         AnyType< Type8 >::checkTemplateArguments();
01908         AnyType< Type9 >::checkTemplateArguments();
01909         AnyType< Type10 >::checkTemplateArguments();
01910         AnyType< Type11 >::checkTemplateArguments();
01911         AnyType< Type12 >::checkTemplateArguments();
01912         AnyType< Type13 >::checkTemplateArguments();
01913         AnyType< Type14 >::checkTemplateArguments();
01914         AnyType< Type15 >::checkTemplateArguments();
01915         AnyType< Type16 >::checkTemplateArguments();
01916         AnyType< Type17 >::checkTemplateArguments();
01917         AnyType< Type18 >::checkTemplateArguments();
01918         AnyType< Type19 >::checkTemplateArguments();
01919         AnyType< Type20 >::checkTemplateArguments();
01920         AnyType< Type21 >::checkTemplateArguments();
01921         AnyType< Type22 >::checkTemplateArguments();
01922         AnyType< Type23 >::checkTemplateArguments();
01923         AnyType< Type24 >::checkTemplateArguments();
01924         AnyType< Type25 >::checkTemplateArguments();
01925         AnyType< Type26 >::checkTemplateArguments();
01926         AnyType< Type27 >::checkTemplateArguments();
01927         AnyType< Type28 >::checkTemplateArguments();
01928         AnyType< Type29 >::checkTemplateArguments();
01929         AnyType< Type30 >::checkTemplateArguments();
01930         AnyType< Type31 >::checkTemplateArguments();
01931         AnyType< Type32 >::checkTemplateArguments();
01932       }
01933 
01940       static void checkType( Field *f ) { 
01941         if( 
01942            !AnyType< Type0 >::checkType( f ) &&
01943            !AnyType< Type1 >::checkType( f ) &&
01944            !AnyType< Type2 >::checkType( f ) &&
01945            !AnyType< Type3 >::checkType( f ) &&
01946            !AnyType< Type4 >::checkType( f ) &&
01947            !AnyType< Type5 >::checkType( f ) &&
01948            !AnyType< Type6 >::checkType( f ) &&
01949            !AnyType< Type7 >::checkType( f ) &&
01950            !AnyType< Type8 >::checkType( f ) &&
01951            !AnyType< Type9 >::checkType( f ) &&
01952            !AnyType< Type10 >::checkType( f ) &&
01953            !AnyType< Type11 >::checkType( f ) &&
01954            !AnyType< Type12 >::checkType( f ) &&
01955            !AnyType< Type13 >::checkType( f ) &&
01956            !AnyType< Type14 >::checkType( f ) &&
01957            !AnyType< Type15 >::checkType( f ) &&
01958            !AnyType< Type16 >::checkType( f ) &&
01959            !AnyType< Type17 >::checkType( f ) &&
01960            !AnyType< Type18 >::checkType( f ) &&
01961            !AnyType< Type19 >::checkType( f ) &&
01962            !AnyType< Type20 >::checkType( f ) &&
01963            !AnyType< Type21 >::checkType( f ) &&
01964            !AnyType< Type22 >::checkType( f ) &&
01965            !AnyType< Type23 >::checkType( f ) &&
01966            !AnyType< Type24 >::checkType( f ) &&
01967            !AnyType< Type25 >::checkType( f ) &&
01968            !AnyType< Type26 >::checkType( f ) &&
01969            !AnyType< Type27 >::checkType( f ) &&
01970            !AnyType< Type28 >::checkType( f ) &&
01971            !AnyType< Type29 >::checkType( f ) &&
01972            !AnyType< Type30 >::checkType( f ) &&
01973            !AnyType< Type31 >::checkType( f ) &&
01974            !AnyType< Type32 >::checkType( f )        ) { 
01975           throw InvalidType( typeid( f ).name(),
01976                              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() ); 
01977         }
01978       }
01979     };
01980     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 >
01981     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 > {
01985       static void checkTemplateArguments() {
01986         AnyType< Type0 >::checkTemplateArguments();
01987         AnyType< Type1 >::checkTemplateArguments();
01988         AnyType< Type2 >::checkTemplateArguments();
01989         AnyType< Type3 >::checkTemplateArguments();
01990         AnyType< Type4 >::checkTemplateArguments();
01991         AnyType< Type5 >::checkTemplateArguments();
01992         AnyType< Type6 >::checkTemplateArguments();
01993         AnyType< Type7 >::checkTemplateArguments();
01994         AnyType< Type8 >::checkTemplateArguments();
01995         AnyType< Type9 >::checkTemplateArguments();
01996         AnyType< Type10 >::checkTemplateArguments();
01997         AnyType< Type11 >::checkTemplateArguments();
01998         AnyType< Type12 >::checkTemplateArguments();
01999         AnyType< Type13 >::checkTemplateArguments();
02000         AnyType< Type14 >::checkTemplateArguments();
02001         AnyType< Type15 >::checkTemplateArguments();
02002         AnyType< Type16 >::checkTemplateArguments();
02003         AnyType< Type17 >::checkTemplateArguments();
02004         AnyType< Type18 >::checkTemplateArguments();
02005         AnyType< Type19 >::checkTemplateArguments();
02006         AnyType< Type20 >::checkTemplateArguments();
02007         AnyType< Type21 >::checkTemplateArguments();
02008         AnyType< Type22 >::checkTemplateArguments();
02009         AnyType< Type23 >::checkTemplateArguments();
02010         AnyType< Type24 >::checkTemplateArguments();
02011         AnyType< Type25 >::checkTemplateArguments();
02012         AnyType< Type26 >::checkTemplateArguments();
02013         AnyType< Type27 >::checkTemplateArguments();
02014         AnyType< Type28 >::checkTemplateArguments();
02015         AnyType< Type29 >::checkTemplateArguments();
02016         AnyType< Type30 >::checkTemplateArguments();
02017         AnyType< Type31 >::checkTemplateArguments();
02018         AnyType< Type32 >::checkTemplateArguments();
02019         AnyType< Type33 >::checkTemplateArguments();
02020       }
02021 
02028       static void checkType( Field *f ) { 
02029         if( 
02030            !AnyType< Type0 >::checkType( f ) &&
02031            !AnyType< Type1 >::checkType( f ) &&
02032            !AnyType< Type2 >::checkType( f ) &&
02033            !AnyType< Type3 >::checkType( f ) &&
02034            !AnyType< Type4 >::checkType( f ) &&
02035            !AnyType< Type5 >::checkType( f ) &&
02036            !AnyType< Type6 >::checkType( f ) &&
02037            !AnyType< Type7 >::checkType( f ) &&
02038            !AnyType< Type8 >::checkType( f ) &&
02039            !AnyType< Type9 >::checkType( f ) &&
02040            !AnyType< Type10 >::checkType( f ) &&
02041            !AnyType< Type11 >::checkType( f ) &&
02042            !AnyType< Type12 >::checkType( f ) &&
02043            !AnyType< Type13 >::checkType( f ) &&
02044            !AnyType< Type14 >::checkType( f ) &&
02045            !AnyType< Type15 >::checkType( f ) &&
02046            !AnyType< Type16 >::checkType( f ) &&
02047            !AnyType< Type17 >::checkType( f ) &&
02048            !AnyType< Type18 >::checkType( f ) &&
02049            !AnyType< Type19 >::checkType( f ) &&
02050            !AnyType< Type20 >::checkType( f ) &&
02051            !AnyType< Type21 >::checkType( f ) &&
02052            !AnyType< Type22 >::checkType( f ) &&
02053            !AnyType< Type23 >::checkType( f ) &&
02054            !AnyType< Type24 >::checkType( f ) &&
02055            !AnyType< Type25 >::checkType( f ) &&
02056            !AnyType< Type26 >::checkType( f ) &&
02057            !AnyType< Type27 >::checkType( f ) &&
02058            !AnyType< Type28 >::checkType( f ) &&
02059            !AnyType< Type29 >::checkType( f ) &&
02060            !AnyType< Type30 >::checkType( f ) &&
02061            !AnyType< Type31 >::checkType( f ) &&
02062            !AnyType< Type32 >::checkType( f ) &&
02063            !AnyType< Type33 >::checkType( f )        ) { 
02064           throw InvalidType( typeid( f ).name(),
02065                              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() ); 
02066         }
02067       }
02068     };
02069     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 >
02070     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 > {
02074       static void checkTemplateArguments() {
02075         AnyType< Type0 >::checkTemplateArguments();
02076         AnyType< Type1 >::checkTemplateArguments();
02077         AnyType< Type2 >::checkTemplateArguments();
02078         AnyType< Type3 >::checkTemplateArguments();
02079         AnyType< Type4 >::checkTemplateArguments();
02080         AnyType< Type5 >::checkTemplateArguments();
02081         AnyType< Type6 >::checkTemplateArguments();
02082         AnyType< Type7 >::checkTemplateArguments();
02083         AnyType< Type8 >::checkTemplateArguments();
02084         AnyType< Type9 >::checkTemplateArguments();
02085         AnyType< Type10 >::checkTemplateArguments();
02086         AnyType< Type11 >::checkTemplateArguments();
02087         AnyType< Type12 >::checkTemplateArguments();
02088         AnyType< Type13 >::checkTemplateArguments();
02089         AnyType< Type14 >::checkTemplateArguments();
02090         AnyType< Type15 >::checkTemplateArguments();
02091         AnyType< Type16 >::checkTemplateArguments();
02092         AnyType< Type17 >::checkTemplateArguments();
02093         AnyType< Type18 >::checkTemplateArguments();
02094         AnyType< Type19 >::checkTemplateArguments();
02095         AnyType< Type20 >::checkTemplateArguments();
02096         AnyType< Type21 >::checkTemplateArguments();
02097         AnyType< Type22 >::checkTemplateArguments();
02098         AnyType< Type23 >::checkTemplateArguments();
02099         AnyType< Type24 >::checkTemplateArguments();
02100         AnyType< Type25 >::checkTemplateArguments();
02101         AnyType< Type26 >::checkTemplateArguments();
02102         AnyType< Type27 >::checkTemplateArguments();
02103         AnyType< Type28 >::checkTemplateArguments();
02104         AnyType< Type29 >::checkTemplateArguments();
02105         AnyType< Type30 >::checkTemplateArguments();
02106         AnyType< Type31 >::checkTemplateArguments();
02107         AnyType< Type32 >::checkTemplateArguments();
02108         AnyType< Type33 >::checkTemplateArguments();
02109         AnyType< Type34 >::checkTemplateArguments();
02110       }
02111 
02118       static void checkType( Field *f ) { 
02119         if( 
02120            !AnyType< Type0 >::checkType( f ) &&
02121            !AnyType< Type1 >::checkType( f ) &&
02122            !AnyType< Type2 >::checkType( f ) &&
02123            !AnyType< Type3 >::checkType( f ) &&
02124            !AnyType< Type4 >::checkType( f ) &&
02125            !AnyType< Type5 >::checkType( f ) &&
02126            !AnyType< Type6 >::checkType( f ) &&
02127            !AnyType< Type7 >::checkType( f ) &&
02128            !AnyType< Type8 >::checkType( f ) &&
02129            !AnyType< Type9 >::checkType( f ) &&
02130            !AnyType< Type10 >::checkType( f ) &&
02131            !AnyType< Type11 >::checkType( f ) &&
02132            !AnyType< Type12 >::checkType( f ) &&
02133            !AnyType< Type13 >::checkType( f ) &&
02134            !AnyType< Type14 >::checkType( f ) &&
02135            !AnyType< Type15 >::checkType( f ) &&
02136            !AnyType< Type16 >::checkType( f ) &&
02137            !AnyType< Type17 >::checkType( f ) &&
02138            !AnyType< Type18 >::checkType( f ) &&
02139            !AnyType< Type19 >::checkType( f ) &&
02140            !AnyType< Type20 >::checkType( f ) &&
02141            !AnyType< Type21 >::checkType( f ) &&
02142            !AnyType< Type22 >::checkType( f ) &&
02143            !AnyType< Type23 >::checkType( f ) &&
02144            !AnyType< Type24 >::checkType( f ) &&
02145            !AnyType< Type25 >::checkType( f ) &&
02146            !AnyType< Type26 >::checkType( f ) &&
02147            !AnyType< Type27 >::checkType( f ) &&
02148            !AnyType< Type28 >::checkType( f ) &&
02149            !AnyType< Type29 >::checkType( f ) &&
02150            !AnyType< Type30 >::checkType( f ) &&
02151            !AnyType< Type31 >::checkType( f ) &&
02152            !AnyType< Type32 >::checkType( f ) &&
02153            !AnyType< Type33 >::checkType( f ) &&
02154            !AnyType< Type34 >::checkType( f )        ) { 
02155           throw InvalidType( typeid( f ).name(),
02156                              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() ); 
02157         }
02158       }
02159     };
02160     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 >
02161     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 > {
02165       static void checkTemplateArguments() {
02166         AnyType< Type0 >::checkTemplateArguments();
02167         AnyType< Type1 >::checkTemplateArguments();
02168         AnyType< Type2 >::checkTemplateArguments();
02169         AnyType< Type3 >::checkTemplateArguments();
02170         AnyType< Type4 >::checkTemplateArguments();
02171         AnyType< Type5 >::checkTemplateArguments();
02172         AnyType< Type6 >::checkTemplateArguments();
02173         AnyType< Type7 >::checkTemplateArguments();
02174         AnyType< Type8 >::checkTemplateArguments();
02175         AnyType< Type9 >::checkTemplateArguments();
02176         AnyType< Type10 >::checkTemplateArguments();
02177         AnyType< Type11 >::checkTemplateArguments();
02178         AnyType< Type12 >::checkTemplateArguments();
02179         AnyType< Type13 >::checkTemplateArguments();
02180         AnyType< Type14 >::checkTemplateArguments();
02181         AnyType< Type15 >::checkTemplateArguments();
02182         AnyType< Type16 >::checkTemplateArguments();
02183         AnyType< Type17 >::checkTemplateArguments();
02184         AnyType< Type18 >::checkTemplateArguments();
02185         AnyType< Type19 >::checkTemplateArguments();
02186         AnyType< Type20 >::checkTemplateArguments();
02187         AnyType< Type21 >::checkTemplateArguments();
02188         AnyType< Type22 >::checkTemplateArguments();
02189         AnyType< Type23 >::checkTemplateArguments();
02190         AnyType< Type24 >::checkTemplateArguments();
02191         AnyType< Type25 >::checkTemplateArguments();
02192         AnyType< Type26 >::checkTemplateArguments();
02193         AnyType< Type27 >::checkTemplateArguments();
02194         AnyType< Type28 >::checkTemplateArguments();
02195         AnyType< Type29 >::checkTemplateArguments();
02196         AnyType< Type30 >::checkTemplateArguments();
02197         AnyType< Type31 >::checkTemplateArguments();
02198         AnyType< Type32 >::checkTemplateArguments();
02199         AnyType< Type33 >::checkTemplateArguments();
02200         AnyType< Type34 >::checkTemplateArguments();
02201         AnyType< Type35 >::checkTemplateArguments();
02202       }
02203 
02210       static void checkType( Field *f ) { 
02211         if( 
02212            !AnyType< Type0 >::checkType( f ) &&
02213            !AnyType< Type1 >::checkType( f ) &&
02214            !AnyType< Type2 >::checkType( f ) &&
02215            !AnyType< Type3 >::checkType( f ) &&
02216            !AnyType< Type4 >::checkType( f ) &&
02217            !AnyType< Type5 >::checkType( f ) &&
02218            !AnyType< Type6 >::checkType( f ) &&
02219            !AnyType< Type7 >::checkType( f ) &&
02220            !AnyType< Type8 >::checkType( f ) &&
02221            !AnyType< Type9 >::checkType( f ) &&
02222            !AnyType< Type10 >::checkType( f ) &&
02223            !AnyType< Type11 >::checkType( f ) &&
02224            !AnyType< Type12 >::checkType( f ) &&
02225            !AnyType< Type13 >::checkType( f ) &&
02226            !AnyType< Type14 >::checkType( f ) &&
02227            !AnyType< Type15 >::checkType( f ) &&
02228            !AnyType< Type16 >::checkType( f ) &&
02229            !AnyType< Type17 >::checkType( f ) &&
02230            !AnyType< Type18 >::checkType( f ) &&
02231            !AnyType< Type19 >::checkType( f ) &&
02232            !AnyType< Type20 >::checkType( f ) &&
02233            !AnyType< Type21 >::checkType( f ) &&
02234            !AnyType< Type22 >::checkType( f ) &&
02235            !AnyType< Type23 >::checkType( f ) &&
02236            !AnyType< Type24 >::checkType( f ) &&
02237            !AnyType< Type25 >::checkType( f ) &&
02238            !AnyType< Type26 >::checkType( f ) &&
02239            !AnyType< Type27 >::checkType( f ) &&
02240            !AnyType< Type28 >::checkType( f ) &&
02241            !AnyType< Type29 >::checkType( f ) &&
02242            !AnyType< Type30 >::checkType( f ) &&
02243            !AnyType< Type31 >::checkType( f ) &&
02244            !AnyType< Type32 >::checkType( f ) &&
02245            !AnyType< Type33 >::checkType( f ) &&
02246            !AnyType< Type34 >::checkType( f ) &&
02247            !AnyType< Type35 >::checkType( f )        ) { 
02248           throw InvalidType( typeid( f ).name(),
02249                              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() ); 
02250         }
02251       }
02252     };
02253     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 >
02254     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 > {
02258       static void checkTemplateArguments() {
02259         AnyType< Type0 >::checkTemplateArguments();
02260         AnyType< Type1 >::checkTemplateArguments();
02261         AnyType< Type2 >::checkTemplateArguments();
02262         AnyType< Type3 >::checkTemplateArguments();
02263         AnyType< Type4 >::checkTemplateArguments();
02264         AnyType< Type5 >::checkTemplateArguments();
02265         AnyType< Type6 >::checkTemplateArguments();
02266         AnyType< Type7 >::checkTemplateArguments();
02267         AnyType< Type8 >::checkTemplateArguments();
02268         AnyType< Type9 >::checkTemplateArguments();
02269         AnyType< Type10 >::checkTemplateArguments();
02270         AnyType< Type11 >::checkTemplateArguments();
02271         AnyType< Type12 >::checkTemplateArguments();
02272         AnyType< Type13 >::checkTemplateArguments();
02273         AnyType< Type14 >::checkTemplateArguments();
02274         AnyType< Type15 >::checkTemplateArguments();
02275         AnyType< Type16 >::checkTemplateArguments();
02276         AnyType< Type17 >::checkTemplateArguments();
02277         AnyType< Type18 >::checkTemplateArguments();
02278         AnyType< Type19 >::checkTemplateArguments();
02279         AnyType< Type20 >::checkTemplateArguments();
02280         AnyType< Type21 >::checkTemplateArguments();
02281         AnyType< Type22 >::checkTemplateArguments();
02282         AnyType< Type23 >::checkTemplateArguments();
02283         AnyType< Type24 >::checkTemplateArguments();
02284         AnyType< Type25 >::checkTemplateArguments();
02285         AnyType< Type26 >::checkTemplateArguments();
02286         AnyType< Type27 >::checkTemplateArguments();
02287         AnyType< Type28 >::checkTemplateArguments();
02288         AnyType< Type29 >::checkTemplateArguments();
02289         AnyType< Type30 >::checkTemplateArguments();
02290         AnyType< Type31 >::checkTemplateArguments();
02291         AnyType< Type32 >::checkTemplateArguments();
02292         AnyType< Type33 >::checkTemplateArguments();
02293         AnyType< Type34 >::checkTemplateArguments();
02294         AnyType< Type35 >::checkTemplateArguments();
02295         AnyType< Type36 >::checkTemplateArguments();
02296       }
02297 
02304       static void checkType( Field *f ) { 
02305         if( 
02306            !AnyType< Type0 >::checkType( f ) &&
02307            !AnyType< Type1 >::checkType( f ) &&
02308            !AnyType< Type2 >::checkType( f ) &&
02309            !AnyType< Type3 >::checkType( f ) &&
02310            !AnyType< Type4 >::checkType( f ) &&
02311            !AnyType< Type5 >::checkType( f ) &&
02312            !AnyType< Type6 >::checkType( f ) &&
02313            !AnyType< Type7 >::checkType( f ) &&
02314            !AnyType< Type8 >::checkType( f ) &&
02315            !AnyType< Type9 >::checkType( f ) &&
02316            !AnyType< Type10 >::checkType( f ) &&
02317            !AnyType< Type11 >::checkType( f ) &&
02318            !AnyType< Type12 >::checkType( f ) &&
02319            !AnyType< Type13 >::checkType( f ) &&
02320            !AnyType< Type14 >::checkType( f ) &&
02321            !AnyType< Type15 >::checkType( f ) &&
02322            !AnyType< Type16 >::checkType( f ) &&
02323            !AnyType< Type17 >::checkType( f ) &&
02324            !AnyType< Type18 >::checkType( f ) &&
02325            !AnyType< Type19 >::checkType( f ) &&
02326            !AnyType< Type20 >::checkType( f ) &&
02327            !AnyType< Type21 >::checkType( f ) &&
02328            !AnyType< Type22 >::checkType( f ) &&
02329            !AnyType< Type23 >::checkType( f ) &&
02330            !AnyType< Type24 >::checkType( f ) &&
02331            !AnyType< Type25 >::checkType( f ) &&
02332            !AnyType< Type26 >::checkType( f ) &&
02333            !AnyType< Type27 >::checkType( f ) &&
02334            !AnyType< Type28 >::checkType( f ) &&
02335            !AnyType< Type29 >::checkType( f ) &&
02336            !AnyType< Type30 >::checkType( f ) &&
02337            !AnyType< Type31 >::checkType( f ) &&
02338            !AnyType< Type32 >::checkType( f ) &&
02339            !AnyType< Type33 >::checkType( f ) &&
02340            !AnyType< Type34 >::checkType( f ) &&
02341            !AnyType< Type35 >::checkType( f ) &&
02342            !AnyType< Type36 >::checkType( f )        ) { 
02343           throw InvalidType( typeid( f ).name(),
02344                              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() ); 
02345         }
02346       }
02347     };
02348     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 >
02349     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 > {
02353       static void checkTemplateArguments() {
02354         AnyType< Type0 >::checkTemplateArguments();
02355         AnyType< Type1 >::checkTemplateArguments();
02356         AnyType< Type2 >::checkTemplateArguments();
02357         AnyType< Type3 >::checkTemplateArguments();
02358         AnyType< Type4 >::checkTemplateArguments();
02359         AnyType< Type5 >::checkTemplateArguments();
02360         AnyType< Type6 >::checkTemplateArguments();
02361         AnyType< Type7 >::checkTemplateArguments();
02362         AnyType< Type8 >::checkTemplateArguments();
02363         AnyType< Type9 >::checkTemplateArguments();
02364         AnyType< Type10 >::checkTemplateArguments();
02365         AnyType< Type11 >::checkTemplateArguments();
02366         AnyType< Type12 >::checkTemplateArguments();
02367         AnyType< Type13 >::checkTemplateArguments();
02368         AnyType< Type14 >::checkTemplateArguments();
02369         AnyType< Type15 >::checkTemplateArguments();
02370         AnyType< Type16 >::checkTemplateArguments();
02371         AnyType< Type17 >::checkTemplateArguments();
02372         AnyType< Type18 >::checkTemplateArguments();
02373         AnyType< Type19 >::checkTemplateArguments();
02374         AnyType< Type20 >::checkTemplateArguments();
02375         AnyType< Type21 >::checkTemplateArguments();
02376         AnyType< Type22 >::checkTemplateArguments();
02377         AnyType< Type23 >::checkTemplateArguments();
02378         AnyType< Type24 >::checkTemplateArguments();
02379         AnyType< Type25 >::checkTemplateArguments();
02380         AnyType< Type26 >::checkTemplateArguments();
02381         AnyType< Type27 >::checkTemplateArguments();
02382         AnyType< Type28 >::checkTemplateArguments();
02383         AnyType< Type29 >::checkTemplateArguments();
02384         AnyType< Type30 >::checkTemplateArguments();
02385         AnyType< Type31 >::checkTemplateArguments();
02386         AnyType< Type32 >::checkTemplateArguments();
02387         AnyType< Type33 >::checkTemplateArguments();
02388         AnyType< Type34 >::checkTemplateArguments();
02389         AnyType< Type35 >::checkTemplateArguments();
02390         AnyType< Type36 >::checkTemplateArguments();
02391         AnyType< Type37 >::checkTemplateArguments();
02392       }
02393 
02400       static void checkType( Field *f ) { 
02401         if( 
02402            !AnyType< Type0 >::checkType( f ) &&
02403            !AnyType< Type1 >::checkType( f ) &&
02404            !AnyType< Type2 >::checkType( f ) &&
02405            !AnyType< Type3 >::checkType( f ) &&
02406            !AnyType< Type4 >::checkType( f ) &&
02407            !AnyType< Type5 >::checkType( f ) &&
02408            !AnyType< Type6 >::checkType( f ) &&
02409            !AnyType< Type7 >::checkType( f ) &&
02410            !AnyType< Type8 >::checkType( f ) &&
02411            !AnyType< Type9 >::checkType( f ) &&
02412            !AnyType< Type10 >::checkType( f ) &&
02413            !AnyType< Type11 >::checkType( f ) &&
02414            !AnyType< Type12 >::checkType( f ) &&
02415            !AnyType< Type13 >::checkType( f ) &&
02416            !AnyType< Type14 >::checkType( f ) &&
02417            !AnyType< Type15 >::checkType( f ) &&
02418            !AnyType< Type16 >::checkType( f ) &&
02419            !AnyType< Type17 >::checkType( f ) &&
02420            !AnyType< Type18 >::checkType( f ) &&
02421            !AnyType< Type19 >::checkType( f ) &&
02422            !AnyType< Type20 >::checkType( f ) &&
02423            !AnyType< Type21 >::checkType( f ) &&
02424            !AnyType< Type22 >::checkType( f ) &&
02425            !AnyType< Type23 >::checkType( f ) &&
02426            !AnyType< Type24 >::checkType( f ) &&
02427            !AnyType< Type25 >::checkType( f ) &&
02428            !AnyType< Type26 >::checkType( f ) &&
02429            !AnyType< Type27 >::checkType( f ) &&
02430            !AnyType< Type28 >::checkType( f ) &&
02431            !AnyType< Type29 >::checkType( f ) &&
02432            !AnyType< Type30 >::checkType( f ) &&
02433            !AnyType< Type31 >::checkType( f ) &&
02434            !AnyType< Type32 >::checkType( f ) &&
02435            !AnyType< Type33 >::checkType( f ) &&
02436            !AnyType< Type34 >::checkType( f ) &&
02437            !AnyType< Type35 >::checkType( f ) &&
02438            !AnyType< Type36 >::checkType( f ) &&
02439            !AnyType< Type37 >::checkType( f )        ) { 
02440           throw InvalidType( typeid( f ).name(),
02441                              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() ); 
02442         }
02443       }
02444     };
02445     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 >
02446     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 > {
02450       static void checkTemplateArguments() {
02451         AnyType< Type0 >::checkTemplateArguments();
02452         AnyType< Type1 >::checkTemplateArguments();
02453         AnyType< Type2 >::checkTemplateArguments();
02454         AnyType< Type3 >::checkTemplateArguments();
02455         AnyType< Type4 >::checkTemplateArguments();
02456         AnyType< Type5 >::checkTemplateArguments();
02457         AnyType< Type6 >::checkTemplateArguments();
02458         AnyType< Type7 >::checkTemplateArguments();
02459         AnyType< Type8 >::checkTemplateArguments();
02460         AnyType< Type9 >::checkTemplateArguments();
02461         AnyType< Type10 >::checkTemplateArguments();
02462         AnyType< Type11 >::checkTemplateArguments();
02463         AnyType< Type12 >::checkTemplateArguments();
02464         AnyType< Type13 >::checkTemplateArguments();
02465         AnyType< Type14 >::checkTemplateArguments();
02466         AnyType< Type15 >::checkTemplateArguments();
02467         AnyType< Type16 >::checkTemplateArguments();
02468         AnyType< Type17 >::checkTemplateArguments();
02469         AnyType< Type18 >::checkTemplateArguments();
02470         AnyType< Type19 >::checkTemplateArguments();
02471         AnyType< Type20 >::checkTemplateArguments();
02472         AnyType< Type21 >::checkTemplateArguments();
02473         AnyType< Type22 >::checkTemplateArguments();
02474         AnyType< Type23 >::checkTemplateArguments();
02475         AnyType< Type24 >::checkTemplateArguments();
02476         AnyType< Type25 >::checkTemplateArguments();
02477         AnyType< Type26 >::checkTemplateArguments();
02478         AnyType< Type27 >::checkTemplateArguments();
02479         AnyType< Type28 >::checkTemplateArguments();
02480         AnyType< Type29 >::checkTemplateArguments();
02481         AnyType< Type30 >::checkTemplateArguments();
02482         AnyType< Type31 >::checkTemplateArguments();
02483         AnyType< Type32 >::checkTemplateArguments();
02484         AnyType< Type33 >::checkTemplateArguments();
02485         AnyType< Type34 >::checkTemplateArguments();
02486         AnyType< Type35 >::checkTemplateArguments();
02487         AnyType< Type36 >::checkTemplateArguments();
02488         AnyType< Type37 >::checkTemplateArguments();
02489         AnyType< Type38 >::checkTemplateArguments();
02490       }
02491 
02498       static void checkType( Field *f ) { 
02499         if( 
02500            !AnyType< Type0 >::checkType( f ) &&
02501            !AnyType< Type1 >::checkType( f ) &&
02502            !AnyType< Type2 >::checkType( f ) &&
02503            !AnyType< Type3 >::checkType( f ) &&
02504            !AnyType< Type4 >::checkType( f ) &&
02505            !AnyType< Type5 >::checkType( f ) &&
02506            !AnyType< Type6 >::checkType( f ) &&
02507            !AnyType< Type7 >::checkType( f ) &&
02508            !AnyType< Type8 >::checkType( f ) &&
02509            !AnyType< Type9 >::checkType( f ) &&
02510            !AnyType< Type10 >::checkType( f ) &&
02511            !AnyType< Type11 >::checkType( f ) &&
02512            !AnyType< Type12 >::checkType( f ) &&
02513            !AnyType< Type13 >::checkType( f ) &&
02514            !AnyType< Type14 >::checkType( f ) &&
02515            !AnyType< Type15 >::checkType( f ) &&
02516            !AnyType< Type16 >::checkType( f ) &&
02517            !AnyType< Type17 >::checkType( f ) &&
02518            !AnyType< Type18 >::checkType( f ) &&
02519            !AnyType< Type19 >::checkType( f ) &&
02520            !AnyType< Type20 >::checkType( f ) &&
02521            !AnyType< Type21 >::checkType( f ) &&
02522            !AnyType< Type22 >::checkType( f ) &&
02523            !AnyType< Type23 >::checkType( f ) &&
02524            !AnyType< Type24 >::checkType( f ) &&
02525            !AnyType< Type25 >::checkType( f ) &&
02526            !AnyType< Type26 >::checkType( f ) &&
02527            !AnyType< Type27 >::checkType( f ) &&
02528            !AnyType< Type28 >::checkType( f ) &&
02529            !AnyType< Type29 >::checkType( f ) &&
02530            !AnyType< Type30 >::checkType( f ) &&
02531            !AnyType< Type31 >::checkType( f ) &&
02532            !AnyType< Type32 >::checkType( f ) &&
02533            !AnyType< Type33 >::checkType( f ) &&
02534            !AnyType< Type34 >::checkType( f ) &&
02535            !AnyType< Type35 >::checkType( f ) &&
02536            !AnyType< Type36 >::checkType( f ) &&
02537            !AnyType< Type37 >::checkType( f ) &&
02538            !AnyType< Type38 >::checkType( f )        ) { 
02539           throw InvalidType( typeid( f ).name(),
02540                              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() ); 
02541         }
02542       }
02543     };
02544 
02545   }
02546 }
02547 
02548 #endif
02549 

Generated on Thu Aug 24 12:38:34 2006 for H3D API by  doxygen 1.4.5