Last active
October 21, 2016 15:46
-
-
Save in4lio/9102547 to your computer and use it in GitHub Desktop.
Unfolding of C macros
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* \file unfold.h (generated by unfold_h.py) | |
* \brief Unfolding of C macros (up to 255). | |
* \code | |
* UNFOLD( 3, T0, T, arg1, arg2 ) --> T0( 0, arg1, arg2 ) T( 1, arg1, arg2 ) T( 2, arg1, arg2 ) | |
* UNFOLD_FROM( 10, 3, T0, T, arg1, arg2 ) --> T0( 10, arg1, arg2 ) T( 11, arg1, arg2 ) T( 12, arg1, arg2 ) | |
* \endcode | |
* In case of `UNFOLD_FROM`, you must use `__concat_X` in macros (`T`) to concatenate index (`N`), for example: | |
* \code | |
* #define T0( N ) BIT_##N | |
* #define T( N ) | __concat_2( BIT_, N ) | |
* pool = UNFOLD_FROM( 2, 4, T0, T ); | |
* pool = BIT_2 | BIT_3 | BIT_4 | BIT_5; | |
* \endcode | |
*/ | |
#ifndef UNFOLD_H | |
#define UNFOLD_H | |
#ifndef __concat | |
#define __concat_2( h, t ) h##t | |
#define __concat( h, t ) __concat_2( h, t ) | |
#define __concat_3( h, b, t ) h##b##t | |
#endif | |
#define o_O( x ) x /* MSVC __VA_ARGS__ bug workaround */ | |
#define UNFOLD( L, T0, T, ... ) o_O( _UNFOLD( L, T0, T, ## __VA_ARGS__ )) | |
#define _UNFOLD( L, T0, T, ... ) o_O( UNFOLD_##L( T0, T, ## __VA_ARGS__ )) | |
#define UNFOLD_0( T0, T, ... ) | |
#define UNFOLD_1( T0, T, ... ) o_O( T0( 0, ## __VA_ARGS__ )) | |
/** \cond */ | |
#define UNFOLD_2( T0, T, ... ) o_O( UNFOLD_1( T0, T, ## __VA_ARGS__ )) o_O( T( 1, ## __VA_ARGS__ )) | |
#define UNFOLD_3( T0, T, ... ) o_O( UNFOLD_2( T0, T, ## __VA_ARGS__ )) o_O( T( 2, ## __VA_ARGS__ )) | |
#define UNFOLD_4( T0, T, ... ) o_O( UNFOLD_3( T0, T, ## __VA_ARGS__ )) o_O( T( 3, ## __VA_ARGS__ )) | |
#define UNFOLD_5( T0, T, ... ) o_O( UNFOLD_4( T0, T, ## __VA_ARGS__ )) o_O( T( 4, ## __VA_ARGS__ )) | |
#define UNFOLD_6( T0, T, ... ) o_O( UNFOLD_5( T0, T, ## __VA_ARGS__ )) o_O( T( 5, ## __VA_ARGS__ )) | |
#define UNFOLD_7( T0, T, ... ) o_O( UNFOLD_6( T0, T, ## __VA_ARGS__ )) o_O( T( 6, ## __VA_ARGS__ )) | |
#define UNFOLD_8( T0, T, ... ) o_O( UNFOLD_7( T0, T, ## __VA_ARGS__ )) o_O( T( 7, ## __VA_ARGS__ )) | |
#define UNFOLD_9( T0, T, ... ) o_O( UNFOLD_8( T0, T, ## __VA_ARGS__ )) o_O( T( 8, ## __VA_ARGS__ )) | |
#define UNFOLD_10( T0, T, ... ) o_O( UNFOLD_9( T0, T, ## __VA_ARGS__ )) o_O( T( 9, ## __VA_ARGS__ )) | |
#define UNFOLD_11( T0, T, ... ) o_O( UNFOLD_10( T0, T, ## __VA_ARGS__ )) o_O( T( 10, ## __VA_ARGS__ )) | |
#define UNFOLD_12( T0, T, ... ) o_O( UNFOLD_11( T0, T, ## __VA_ARGS__ )) o_O( T( 11, ## __VA_ARGS__ )) | |
#define UNFOLD_13( T0, T, ... ) o_O( UNFOLD_12( T0, T, ## __VA_ARGS__ )) o_O( T( 12, ## __VA_ARGS__ )) | |
#define UNFOLD_14( T0, T, ... ) o_O( UNFOLD_13( T0, T, ## __VA_ARGS__ )) o_O( T( 13, ## __VA_ARGS__ )) | |
#define UNFOLD_15( T0, T, ... ) o_O( UNFOLD_14( T0, T, ## __VA_ARGS__ )) o_O( T( 14, ## __VA_ARGS__ )) | |
#define UNFOLD_16( T0, T, ... ) o_O( UNFOLD_15( T0, T, ## __VA_ARGS__ )) o_O( T( 15, ## __VA_ARGS__ )) | |
#define UNFOLD_17( T0, T, ... ) o_O( UNFOLD_16( T0, T, ## __VA_ARGS__ )) o_O( T( 16, ## __VA_ARGS__ )) | |
#define UNFOLD_18( T0, T, ... ) o_O( UNFOLD_17( T0, T, ## __VA_ARGS__ )) o_O( T( 17, ## __VA_ARGS__ )) | |
#define UNFOLD_19( T0, T, ... ) o_O( UNFOLD_18( T0, T, ## __VA_ARGS__ )) o_O( T( 18, ## __VA_ARGS__ )) | |
#define UNFOLD_20( T0, T, ... ) o_O( UNFOLD_19( T0, T, ## __VA_ARGS__ )) o_O( T( 19, ## __VA_ARGS__ )) | |
#define UNFOLD_21( T0, T, ... ) o_O( UNFOLD_20( T0, T, ## __VA_ARGS__ )) o_O( T( 20, ## __VA_ARGS__ )) | |
#define UNFOLD_22( T0, T, ... ) o_O( UNFOLD_21( T0, T, ## __VA_ARGS__ )) o_O( T( 21, ## __VA_ARGS__ )) | |
#define UNFOLD_23( T0, T, ... ) o_O( UNFOLD_22( T0, T, ## __VA_ARGS__ )) o_O( T( 22, ## __VA_ARGS__ )) | |
#define UNFOLD_24( T0, T, ... ) o_O( UNFOLD_23( T0, T, ## __VA_ARGS__ )) o_O( T( 23, ## __VA_ARGS__ )) | |
#define UNFOLD_25( T0, T, ... ) o_O( UNFOLD_24( T0, T, ## __VA_ARGS__ )) o_O( T( 24, ## __VA_ARGS__ )) | |
#define UNFOLD_26( T0, T, ... ) o_O( UNFOLD_25( T0, T, ## __VA_ARGS__ )) o_O( T( 25, ## __VA_ARGS__ )) | |
#define UNFOLD_27( T0, T, ... ) o_O( UNFOLD_26( T0, T, ## __VA_ARGS__ )) o_O( T( 26, ## __VA_ARGS__ )) | |
#define UNFOLD_28( T0, T, ... ) o_O( UNFOLD_27( T0, T, ## __VA_ARGS__ )) o_O( T( 27, ## __VA_ARGS__ )) | |
#define UNFOLD_29( T0, T, ... ) o_O( UNFOLD_28( T0, T, ## __VA_ARGS__ )) o_O( T( 28, ## __VA_ARGS__ )) | |
#define UNFOLD_30( T0, T, ... ) o_O( UNFOLD_29( T0, T, ## __VA_ARGS__ )) o_O( T( 29, ## __VA_ARGS__ )) | |
#define UNFOLD_31( T0, T, ... ) o_O( UNFOLD_30( T0, T, ## __VA_ARGS__ )) o_O( T( 30, ## __VA_ARGS__ )) | |
#define UNFOLD_32( T0, T, ... ) o_O( UNFOLD_31( T0, T, ## __VA_ARGS__ )) o_O( T( 31, ## __VA_ARGS__ )) | |
#define UNFOLD_33( T0, T, ... ) o_O( UNFOLD_32( T0, T, ## __VA_ARGS__ )) o_O( T( 32, ## __VA_ARGS__ )) | |
#define UNFOLD_34( T0, T, ... ) o_O( UNFOLD_33( T0, T, ## __VA_ARGS__ )) o_O( T( 33, ## __VA_ARGS__ )) | |
#define UNFOLD_35( T0, T, ... ) o_O( UNFOLD_34( T0, T, ## __VA_ARGS__ )) o_O( T( 34, ## __VA_ARGS__ )) | |
#define UNFOLD_36( T0, T, ... ) o_O( UNFOLD_35( T0, T, ## __VA_ARGS__ )) o_O( T( 35, ## __VA_ARGS__ )) | |
#define UNFOLD_37( T0, T, ... ) o_O( UNFOLD_36( T0, T, ## __VA_ARGS__ )) o_O( T( 36, ## __VA_ARGS__ )) | |
#define UNFOLD_38( T0, T, ... ) o_O( UNFOLD_37( T0, T, ## __VA_ARGS__ )) o_O( T( 37, ## __VA_ARGS__ )) | |
#define UNFOLD_39( T0, T, ... ) o_O( UNFOLD_38( T0, T, ## __VA_ARGS__ )) o_O( T( 38, ## __VA_ARGS__ )) | |
#define UNFOLD_40( T0, T, ... ) o_O( UNFOLD_39( T0, T, ## __VA_ARGS__ )) o_O( T( 39, ## __VA_ARGS__ )) | |
#define UNFOLD_41( T0, T, ... ) o_O( UNFOLD_40( T0, T, ## __VA_ARGS__ )) o_O( T( 40, ## __VA_ARGS__ )) | |
#define UNFOLD_42( T0, T, ... ) o_O( UNFOLD_41( T0, T, ## __VA_ARGS__ )) o_O( T( 41, ## __VA_ARGS__ )) | |
#define UNFOLD_43( T0, T, ... ) o_O( UNFOLD_42( T0, T, ## __VA_ARGS__ )) o_O( T( 42, ## __VA_ARGS__ )) | |
#define UNFOLD_44( T0, T, ... ) o_O( UNFOLD_43( T0, T, ## __VA_ARGS__ )) o_O( T( 43, ## __VA_ARGS__ )) | |
#define UNFOLD_45( T0, T, ... ) o_O( UNFOLD_44( T0, T, ## __VA_ARGS__ )) o_O( T( 44, ## __VA_ARGS__ )) | |
#define UNFOLD_46( T0, T, ... ) o_O( UNFOLD_45( T0, T, ## __VA_ARGS__ )) o_O( T( 45, ## __VA_ARGS__ )) | |
#define UNFOLD_47( T0, T, ... ) o_O( UNFOLD_46( T0, T, ## __VA_ARGS__ )) o_O( T( 46, ## __VA_ARGS__ )) | |
#define UNFOLD_48( T0, T, ... ) o_O( UNFOLD_47( T0, T, ## __VA_ARGS__ )) o_O( T( 47, ## __VA_ARGS__ )) | |
#define UNFOLD_49( T0, T, ... ) o_O( UNFOLD_48( T0, T, ## __VA_ARGS__ )) o_O( T( 48, ## __VA_ARGS__ )) | |
#define UNFOLD_50( T0, T, ... ) o_O( UNFOLD_49( T0, T, ## __VA_ARGS__ )) o_O( T( 49, ## __VA_ARGS__ )) | |
#define UNFOLD_51( T0, T, ... ) o_O( UNFOLD_50( T0, T, ## __VA_ARGS__ )) o_O( T( 50, ## __VA_ARGS__ )) | |
#define UNFOLD_52( T0, T, ... ) o_O( UNFOLD_51( T0, T, ## __VA_ARGS__ )) o_O( T( 51, ## __VA_ARGS__ )) | |
#define UNFOLD_53( T0, T, ... ) o_O( UNFOLD_52( T0, T, ## __VA_ARGS__ )) o_O( T( 52, ## __VA_ARGS__ )) | |
#define UNFOLD_54( T0, T, ... ) o_O( UNFOLD_53( T0, T, ## __VA_ARGS__ )) o_O( T( 53, ## __VA_ARGS__ )) | |
#define UNFOLD_55( T0, T, ... ) o_O( UNFOLD_54( T0, T, ## __VA_ARGS__ )) o_O( T( 54, ## __VA_ARGS__ )) | |
#define UNFOLD_56( T0, T, ... ) o_O( UNFOLD_55( T0, T, ## __VA_ARGS__ )) o_O( T( 55, ## __VA_ARGS__ )) | |
#define UNFOLD_57( T0, T, ... ) o_O( UNFOLD_56( T0, T, ## __VA_ARGS__ )) o_O( T( 56, ## __VA_ARGS__ )) | |
#define UNFOLD_58( T0, T, ... ) o_O( UNFOLD_57( T0, T, ## __VA_ARGS__ )) o_O( T( 57, ## __VA_ARGS__ )) | |
#define UNFOLD_59( T0, T, ... ) o_O( UNFOLD_58( T0, T, ## __VA_ARGS__ )) o_O( T( 58, ## __VA_ARGS__ )) | |
#define UNFOLD_60( T0, T, ... ) o_O( UNFOLD_59( T0, T, ## __VA_ARGS__ )) o_O( T( 59, ## __VA_ARGS__ )) | |
#define UNFOLD_61( T0, T, ... ) o_O( UNFOLD_60( T0, T, ## __VA_ARGS__ )) o_O( T( 60, ## __VA_ARGS__ )) | |
#define UNFOLD_62( T0, T, ... ) o_O( UNFOLD_61( T0, T, ## __VA_ARGS__ )) o_O( T( 61, ## __VA_ARGS__ )) | |
#define UNFOLD_63( T0, T, ... ) o_O( UNFOLD_62( T0, T, ## __VA_ARGS__ )) o_O( T( 62, ## __VA_ARGS__ )) | |
#define UNFOLD_64( T0, T, ... ) o_O( UNFOLD_63( T0, T, ## __VA_ARGS__ )) o_O( T( 63, ## __VA_ARGS__ )) | |
#define UNFOLD_65( T0, T, ... ) o_O( UNFOLD_64( T0, T, ## __VA_ARGS__ )) o_O( T( 64, ## __VA_ARGS__ )) | |
#define UNFOLD_66( T0, T, ... ) o_O( UNFOLD_65( T0, T, ## __VA_ARGS__ )) o_O( T( 65, ## __VA_ARGS__ )) | |
#define UNFOLD_67( T0, T, ... ) o_O( UNFOLD_66( T0, T, ## __VA_ARGS__ )) o_O( T( 66, ## __VA_ARGS__ )) | |
#define UNFOLD_68( T0, T, ... ) o_O( UNFOLD_67( T0, T, ## __VA_ARGS__ )) o_O( T( 67, ## __VA_ARGS__ )) | |
#define UNFOLD_69( T0, T, ... ) o_O( UNFOLD_68( T0, T, ## __VA_ARGS__ )) o_O( T( 68, ## __VA_ARGS__ )) | |
#define UNFOLD_70( T0, T, ... ) o_O( UNFOLD_69( T0, T, ## __VA_ARGS__ )) o_O( T( 69, ## __VA_ARGS__ )) | |
#define UNFOLD_71( T0, T, ... ) o_O( UNFOLD_70( T0, T, ## __VA_ARGS__ )) o_O( T( 70, ## __VA_ARGS__ )) | |
#define UNFOLD_72( T0, T, ... ) o_O( UNFOLD_71( T0, T, ## __VA_ARGS__ )) o_O( T( 71, ## __VA_ARGS__ )) | |
#define UNFOLD_73( T0, T, ... ) o_O( UNFOLD_72( T0, T, ## __VA_ARGS__ )) o_O( T( 72, ## __VA_ARGS__ )) | |
#define UNFOLD_74( T0, T, ... ) o_O( UNFOLD_73( T0, T, ## __VA_ARGS__ )) o_O( T( 73, ## __VA_ARGS__ )) | |
#define UNFOLD_75( T0, T, ... ) o_O( UNFOLD_74( T0, T, ## __VA_ARGS__ )) o_O( T( 74, ## __VA_ARGS__ )) | |
#define UNFOLD_76( T0, T, ... ) o_O( UNFOLD_75( T0, T, ## __VA_ARGS__ )) o_O( T( 75, ## __VA_ARGS__ )) | |
#define UNFOLD_77( T0, T, ... ) o_O( UNFOLD_76( T0, T, ## __VA_ARGS__ )) o_O( T( 76, ## __VA_ARGS__ )) | |
#define UNFOLD_78( T0, T, ... ) o_O( UNFOLD_77( T0, T, ## __VA_ARGS__ )) o_O( T( 77, ## __VA_ARGS__ )) | |
#define UNFOLD_79( T0, T, ... ) o_O( UNFOLD_78( T0, T, ## __VA_ARGS__ )) o_O( T( 78, ## __VA_ARGS__ )) | |
#define UNFOLD_80( T0, T, ... ) o_O( UNFOLD_79( T0, T, ## __VA_ARGS__ )) o_O( T( 79, ## __VA_ARGS__ )) | |
#define UNFOLD_81( T0, T, ... ) o_O( UNFOLD_80( T0, T, ## __VA_ARGS__ )) o_O( T( 80, ## __VA_ARGS__ )) | |
#define UNFOLD_82( T0, T, ... ) o_O( UNFOLD_81( T0, T, ## __VA_ARGS__ )) o_O( T( 81, ## __VA_ARGS__ )) | |
#define UNFOLD_83( T0, T, ... ) o_O( UNFOLD_82( T0, T, ## __VA_ARGS__ )) o_O( T( 82, ## __VA_ARGS__ )) | |
#define UNFOLD_84( T0, T, ... ) o_O( UNFOLD_83( T0, T, ## __VA_ARGS__ )) o_O( T( 83, ## __VA_ARGS__ )) | |
#define UNFOLD_85( T0, T, ... ) o_O( UNFOLD_84( T0, T, ## __VA_ARGS__ )) o_O( T( 84, ## __VA_ARGS__ )) | |
#define UNFOLD_86( T0, T, ... ) o_O( UNFOLD_85( T0, T, ## __VA_ARGS__ )) o_O( T( 85, ## __VA_ARGS__ )) | |
#define UNFOLD_87( T0, T, ... ) o_O( UNFOLD_86( T0, T, ## __VA_ARGS__ )) o_O( T( 86, ## __VA_ARGS__ )) | |
#define UNFOLD_88( T0, T, ... ) o_O( UNFOLD_87( T0, T, ## __VA_ARGS__ )) o_O( T( 87, ## __VA_ARGS__ )) | |
#define UNFOLD_89( T0, T, ... ) o_O( UNFOLD_88( T0, T, ## __VA_ARGS__ )) o_O( T( 88, ## __VA_ARGS__ )) | |
#define UNFOLD_90( T0, T, ... ) o_O( UNFOLD_89( T0, T, ## __VA_ARGS__ )) o_O( T( 89, ## __VA_ARGS__ )) | |
#define UNFOLD_91( T0, T, ... ) o_O( UNFOLD_90( T0, T, ## __VA_ARGS__ )) o_O( T( 90, ## __VA_ARGS__ )) | |
#define UNFOLD_92( T0, T, ... ) o_O( UNFOLD_91( T0, T, ## __VA_ARGS__ )) o_O( T( 91, ## __VA_ARGS__ )) | |
#define UNFOLD_93( T0, T, ... ) o_O( UNFOLD_92( T0, T, ## __VA_ARGS__ )) o_O( T( 92, ## __VA_ARGS__ )) | |
#define UNFOLD_94( T0, T, ... ) o_O( UNFOLD_93( T0, T, ## __VA_ARGS__ )) o_O( T( 93, ## __VA_ARGS__ )) | |
#define UNFOLD_95( T0, T, ... ) o_O( UNFOLD_94( T0, T, ## __VA_ARGS__ )) o_O( T( 94, ## __VA_ARGS__ )) | |
#define UNFOLD_96( T0, T, ... ) o_O( UNFOLD_95( T0, T, ## __VA_ARGS__ )) o_O( T( 95, ## __VA_ARGS__ )) | |
#define UNFOLD_97( T0, T, ... ) o_O( UNFOLD_96( T0, T, ## __VA_ARGS__ )) o_O( T( 96, ## __VA_ARGS__ )) | |
#define UNFOLD_98( T0, T, ... ) o_O( UNFOLD_97( T0, T, ## __VA_ARGS__ )) o_O( T( 97, ## __VA_ARGS__ )) | |
#define UNFOLD_99( T0, T, ... ) o_O( UNFOLD_98( T0, T, ## __VA_ARGS__ )) o_O( T( 98, ## __VA_ARGS__ )) | |
#define UNFOLD_100( T0, T, ... ) o_O( UNFOLD_99( T0, T, ## __VA_ARGS__ )) o_O( T( 99, ## __VA_ARGS__ )) | |
#define UNFOLD_101( T0, T, ... ) o_O( UNFOLD_100( T0, T, ## __VA_ARGS__ )) o_O( T( 100, ## __VA_ARGS__ )) | |
#define UNFOLD_102( T0, T, ... ) o_O( UNFOLD_101( T0, T, ## __VA_ARGS__ )) o_O( T( 101, ## __VA_ARGS__ )) | |
#define UNFOLD_103( T0, T, ... ) o_O( UNFOLD_102( T0, T, ## __VA_ARGS__ )) o_O( T( 102, ## __VA_ARGS__ )) | |
#define UNFOLD_104( T0, T, ... ) o_O( UNFOLD_103( T0, T, ## __VA_ARGS__ )) o_O( T( 103, ## __VA_ARGS__ )) | |
#define UNFOLD_105( T0, T, ... ) o_O( UNFOLD_104( T0, T, ## __VA_ARGS__ )) o_O( T( 104, ## __VA_ARGS__ )) | |
#define UNFOLD_106( T0, T, ... ) o_O( UNFOLD_105( T0, T, ## __VA_ARGS__ )) o_O( T( 105, ## __VA_ARGS__ )) | |
#define UNFOLD_107( T0, T, ... ) o_O( UNFOLD_106( T0, T, ## __VA_ARGS__ )) o_O( T( 106, ## __VA_ARGS__ )) | |
#define UNFOLD_108( T0, T, ... ) o_O( UNFOLD_107( T0, T, ## __VA_ARGS__ )) o_O( T( 107, ## __VA_ARGS__ )) | |
#define UNFOLD_109( T0, T, ... ) o_O( UNFOLD_108( T0, T, ## __VA_ARGS__ )) o_O( T( 108, ## __VA_ARGS__ )) | |
#define UNFOLD_110( T0, T, ... ) o_O( UNFOLD_109( T0, T, ## __VA_ARGS__ )) o_O( T( 109, ## __VA_ARGS__ )) | |
#define UNFOLD_111( T0, T, ... ) o_O( UNFOLD_110( T0, T, ## __VA_ARGS__ )) o_O( T( 110, ## __VA_ARGS__ )) | |
#define UNFOLD_112( T0, T, ... ) o_O( UNFOLD_111( T0, T, ## __VA_ARGS__ )) o_O( T( 111, ## __VA_ARGS__ )) | |
#define UNFOLD_113( T0, T, ... ) o_O( UNFOLD_112( T0, T, ## __VA_ARGS__ )) o_O( T( 112, ## __VA_ARGS__ )) | |
#define UNFOLD_114( T0, T, ... ) o_O( UNFOLD_113( T0, T, ## __VA_ARGS__ )) o_O( T( 113, ## __VA_ARGS__ )) | |
#define UNFOLD_115( T0, T, ... ) o_O( UNFOLD_114( T0, T, ## __VA_ARGS__ )) o_O( T( 114, ## __VA_ARGS__ )) | |
#define UNFOLD_116( T0, T, ... ) o_O( UNFOLD_115( T0, T, ## __VA_ARGS__ )) o_O( T( 115, ## __VA_ARGS__ )) | |
#define UNFOLD_117( T0, T, ... ) o_O( UNFOLD_116( T0, T, ## __VA_ARGS__ )) o_O( T( 116, ## __VA_ARGS__ )) | |
#define UNFOLD_118( T0, T, ... ) o_O( UNFOLD_117( T0, T, ## __VA_ARGS__ )) o_O( T( 117, ## __VA_ARGS__ )) | |
#define UNFOLD_119( T0, T, ... ) o_O( UNFOLD_118( T0, T, ## __VA_ARGS__ )) o_O( T( 118, ## __VA_ARGS__ )) | |
#define UNFOLD_120( T0, T, ... ) o_O( UNFOLD_119( T0, T, ## __VA_ARGS__ )) o_O( T( 119, ## __VA_ARGS__ )) | |
#define UNFOLD_121( T0, T, ... ) o_O( UNFOLD_120( T0, T, ## __VA_ARGS__ )) o_O( T( 120, ## __VA_ARGS__ )) | |
#define UNFOLD_122( T0, T, ... ) o_O( UNFOLD_121( T0, T, ## __VA_ARGS__ )) o_O( T( 121, ## __VA_ARGS__ )) | |
#define UNFOLD_123( T0, T, ... ) o_O( UNFOLD_122( T0, T, ## __VA_ARGS__ )) o_O( T( 122, ## __VA_ARGS__ )) | |
#define UNFOLD_124( T0, T, ... ) o_O( UNFOLD_123( T0, T, ## __VA_ARGS__ )) o_O( T( 123, ## __VA_ARGS__ )) | |
#define UNFOLD_125( T0, T, ... ) o_O( UNFOLD_124( T0, T, ## __VA_ARGS__ )) o_O( T( 124, ## __VA_ARGS__ )) | |
#define UNFOLD_126( T0, T, ... ) o_O( UNFOLD_125( T0, T, ## __VA_ARGS__ )) o_O( T( 125, ## __VA_ARGS__ )) | |
#define UNFOLD_127( T0, T, ... ) o_O( UNFOLD_126( T0, T, ## __VA_ARGS__ )) o_O( T( 126, ## __VA_ARGS__ )) | |
#define UNFOLD_128( T0, T, ... ) o_O( UNFOLD_127( T0, T, ## __VA_ARGS__ )) o_O( T( 127, ## __VA_ARGS__ )) | |
#define UNFOLD_129( T0, T, ... ) o_O( UNFOLD_128( T0, T, ## __VA_ARGS__ )) o_O( T( 128, ## __VA_ARGS__ )) | |
#define UNFOLD_130( T0, T, ... ) o_O( UNFOLD_129( T0, T, ## __VA_ARGS__ )) o_O( T( 129, ## __VA_ARGS__ )) | |
#define UNFOLD_131( T0, T, ... ) o_O( UNFOLD_130( T0, T, ## __VA_ARGS__ )) o_O( T( 130, ## __VA_ARGS__ )) | |
#define UNFOLD_132( T0, T, ... ) o_O( UNFOLD_131( T0, T, ## __VA_ARGS__ )) o_O( T( 131, ## __VA_ARGS__ )) | |
#define UNFOLD_133( T0, T, ... ) o_O( UNFOLD_132( T0, T, ## __VA_ARGS__ )) o_O( T( 132, ## __VA_ARGS__ )) | |
#define UNFOLD_134( T0, T, ... ) o_O( UNFOLD_133( T0, T, ## __VA_ARGS__ )) o_O( T( 133, ## __VA_ARGS__ )) | |
#define UNFOLD_135( T0, T, ... ) o_O( UNFOLD_134( T0, T, ## __VA_ARGS__ )) o_O( T( 134, ## __VA_ARGS__ )) | |
#define UNFOLD_136( T0, T, ... ) o_O( UNFOLD_135( T0, T, ## __VA_ARGS__ )) o_O( T( 135, ## __VA_ARGS__ )) | |
#define UNFOLD_137( T0, T, ... ) o_O( UNFOLD_136( T0, T, ## __VA_ARGS__ )) o_O( T( 136, ## __VA_ARGS__ )) | |
#define UNFOLD_138( T0, T, ... ) o_O( UNFOLD_137( T0, T, ## __VA_ARGS__ )) o_O( T( 137, ## __VA_ARGS__ )) | |
#define UNFOLD_139( T0, T, ... ) o_O( UNFOLD_138( T0, T, ## __VA_ARGS__ )) o_O( T( 138, ## __VA_ARGS__ )) | |
#define UNFOLD_140( T0, T, ... ) o_O( UNFOLD_139( T0, T, ## __VA_ARGS__ )) o_O( T( 139, ## __VA_ARGS__ )) | |
#define UNFOLD_141( T0, T, ... ) o_O( UNFOLD_140( T0, T, ## __VA_ARGS__ )) o_O( T( 140, ## __VA_ARGS__ )) | |
#define UNFOLD_142( T0, T, ... ) o_O( UNFOLD_141( T0, T, ## __VA_ARGS__ )) o_O( T( 141, ## __VA_ARGS__ )) | |
#define UNFOLD_143( T0, T, ... ) o_O( UNFOLD_142( T0, T, ## __VA_ARGS__ )) o_O( T( 142, ## __VA_ARGS__ )) | |
#define UNFOLD_144( T0, T, ... ) o_O( UNFOLD_143( T0, T, ## __VA_ARGS__ )) o_O( T( 143, ## __VA_ARGS__ )) | |
#define UNFOLD_145( T0, T, ... ) o_O( UNFOLD_144( T0, T, ## __VA_ARGS__ )) o_O( T( 144, ## __VA_ARGS__ )) | |
#define UNFOLD_146( T0, T, ... ) o_O( UNFOLD_145( T0, T, ## __VA_ARGS__ )) o_O( T( 145, ## __VA_ARGS__ )) | |
#define UNFOLD_147( T0, T, ... ) o_O( UNFOLD_146( T0, T, ## __VA_ARGS__ )) o_O( T( 146, ## __VA_ARGS__ )) | |
#define UNFOLD_148( T0, T, ... ) o_O( UNFOLD_147( T0, T, ## __VA_ARGS__ )) o_O( T( 147, ## __VA_ARGS__ )) | |
#define UNFOLD_149( T0, T, ... ) o_O( UNFOLD_148( T0, T, ## __VA_ARGS__ )) o_O( T( 148, ## __VA_ARGS__ )) | |
#define UNFOLD_150( T0, T, ... ) o_O( UNFOLD_149( T0, T, ## __VA_ARGS__ )) o_O( T( 149, ## __VA_ARGS__ )) | |
#define UNFOLD_151( T0, T, ... ) o_O( UNFOLD_150( T0, T, ## __VA_ARGS__ )) o_O( T( 150, ## __VA_ARGS__ )) | |
#define UNFOLD_152( T0, T, ... ) o_O( UNFOLD_151( T0, T, ## __VA_ARGS__ )) o_O( T( 151, ## __VA_ARGS__ )) | |
#define UNFOLD_153( T0, T, ... ) o_O( UNFOLD_152( T0, T, ## __VA_ARGS__ )) o_O( T( 152, ## __VA_ARGS__ )) | |
#define UNFOLD_154( T0, T, ... ) o_O( UNFOLD_153( T0, T, ## __VA_ARGS__ )) o_O( T( 153, ## __VA_ARGS__ )) | |
#define UNFOLD_155( T0, T, ... ) o_O( UNFOLD_154( T0, T, ## __VA_ARGS__ )) o_O( T( 154, ## __VA_ARGS__ )) | |
#define UNFOLD_156( T0, T, ... ) o_O( UNFOLD_155( T0, T, ## __VA_ARGS__ )) o_O( T( 155, ## __VA_ARGS__ )) | |
#define UNFOLD_157( T0, T, ... ) o_O( UNFOLD_156( T0, T, ## __VA_ARGS__ )) o_O( T( 156, ## __VA_ARGS__ )) | |
#define UNFOLD_158( T0, T, ... ) o_O( UNFOLD_157( T0, T, ## __VA_ARGS__ )) o_O( T( 157, ## __VA_ARGS__ )) | |
#define UNFOLD_159( T0, T, ... ) o_O( UNFOLD_158( T0, T, ## __VA_ARGS__ )) o_O( T( 158, ## __VA_ARGS__ )) | |
#define UNFOLD_160( T0, T, ... ) o_O( UNFOLD_159( T0, T, ## __VA_ARGS__ )) o_O( T( 159, ## __VA_ARGS__ )) | |
#define UNFOLD_161( T0, T, ... ) o_O( UNFOLD_160( T0, T, ## __VA_ARGS__ )) o_O( T( 160, ## __VA_ARGS__ )) | |
#define UNFOLD_162( T0, T, ... ) o_O( UNFOLD_161( T0, T, ## __VA_ARGS__ )) o_O( T( 161, ## __VA_ARGS__ )) | |
#define UNFOLD_163( T0, T, ... ) o_O( UNFOLD_162( T0, T, ## __VA_ARGS__ )) o_O( T( 162, ## __VA_ARGS__ )) | |
#define UNFOLD_164( T0, T, ... ) o_O( UNFOLD_163( T0, T, ## __VA_ARGS__ )) o_O( T( 163, ## __VA_ARGS__ )) | |
#define UNFOLD_165( T0, T, ... ) o_O( UNFOLD_164( T0, T, ## __VA_ARGS__ )) o_O( T( 164, ## __VA_ARGS__ )) | |
#define UNFOLD_166( T0, T, ... ) o_O( UNFOLD_165( T0, T, ## __VA_ARGS__ )) o_O( T( 165, ## __VA_ARGS__ )) | |
#define UNFOLD_167( T0, T, ... ) o_O( UNFOLD_166( T0, T, ## __VA_ARGS__ )) o_O( T( 166, ## __VA_ARGS__ )) | |
#define UNFOLD_168( T0, T, ... ) o_O( UNFOLD_167( T0, T, ## __VA_ARGS__ )) o_O( T( 167, ## __VA_ARGS__ )) | |
#define UNFOLD_169( T0, T, ... ) o_O( UNFOLD_168( T0, T, ## __VA_ARGS__ )) o_O( T( 168, ## __VA_ARGS__ )) | |
#define UNFOLD_170( T0, T, ... ) o_O( UNFOLD_169( T0, T, ## __VA_ARGS__ )) o_O( T( 169, ## __VA_ARGS__ )) | |
#define UNFOLD_171( T0, T, ... ) o_O( UNFOLD_170( T0, T, ## __VA_ARGS__ )) o_O( T( 170, ## __VA_ARGS__ )) | |
#define UNFOLD_172( T0, T, ... ) o_O( UNFOLD_171( T0, T, ## __VA_ARGS__ )) o_O( T( 171, ## __VA_ARGS__ )) | |
#define UNFOLD_173( T0, T, ... ) o_O( UNFOLD_172( T0, T, ## __VA_ARGS__ )) o_O( T( 172, ## __VA_ARGS__ )) | |
#define UNFOLD_174( T0, T, ... ) o_O( UNFOLD_173( T0, T, ## __VA_ARGS__ )) o_O( T( 173, ## __VA_ARGS__ )) | |
#define UNFOLD_175( T0, T, ... ) o_O( UNFOLD_174( T0, T, ## __VA_ARGS__ )) o_O( T( 174, ## __VA_ARGS__ )) | |
#define UNFOLD_176( T0, T, ... ) o_O( UNFOLD_175( T0, T, ## __VA_ARGS__ )) o_O( T( 175, ## __VA_ARGS__ )) | |
#define UNFOLD_177( T0, T, ... ) o_O( UNFOLD_176( T0, T, ## __VA_ARGS__ )) o_O( T( 176, ## __VA_ARGS__ )) | |
#define UNFOLD_178( T0, T, ... ) o_O( UNFOLD_177( T0, T, ## __VA_ARGS__ )) o_O( T( 177, ## __VA_ARGS__ )) | |
#define UNFOLD_179( T0, T, ... ) o_O( UNFOLD_178( T0, T, ## __VA_ARGS__ )) o_O( T( 178, ## __VA_ARGS__ )) | |
#define UNFOLD_180( T0, T, ... ) o_O( UNFOLD_179( T0, T, ## __VA_ARGS__ )) o_O( T( 179, ## __VA_ARGS__ )) | |
#define UNFOLD_181( T0, T, ... ) o_O( UNFOLD_180( T0, T, ## __VA_ARGS__ )) o_O( T( 180, ## __VA_ARGS__ )) | |
#define UNFOLD_182( T0, T, ... ) o_O( UNFOLD_181( T0, T, ## __VA_ARGS__ )) o_O( T( 181, ## __VA_ARGS__ )) | |
#define UNFOLD_183( T0, T, ... ) o_O( UNFOLD_182( T0, T, ## __VA_ARGS__ )) o_O( T( 182, ## __VA_ARGS__ )) | |
#define UNFOLD_184( T0, T, ... ) o_O( UNFOLD_183( T0, T, ## __VA_ARGS__ )) o_O( T( 183, ## __VA_ARGS__ )) | |
#define UNFOLD_185( T0, T, ... ) o_O( UNFOLD_184( T0, T, ## __VA_ARGS__ )) o_O( T( 184, ## __VA_ARGS__ )) | |
#define UNFOLD_186( T0, T, ... ) o_O( UNFOLD_185( T0, T, ## __VA_ARGS__ )) o_O( T( 185, ## __VA_ARGS__ )) | |
#define UNFOLD_187( T0, T, ... ) o_O( UNFOLD_186( T0, T, ## __VA_ARGS__ )) o_O( T( 186, ## __VA_ARGS__ )) | |
#define UNFOLD_188( T0, T, ... ) o_O( UNFOLD_187( T0, T, ## __VA_ARGS__ )) o_O( T( 187, ## __VA_ARGS__ )) | |
#define UNFOLD_189( T0, T, ... ) o_O( UNFOLD_188( T0, T, ## __VA_ARGS__ )) o_O( T( 188, ## __VA_ARGS__ )) | |
#define UNFOLD_190( T0, T, ... ) o_O( UNFOLD_189( T0, T, ## __VA_ARGS__ )) o_O( T( 189, ## __VA_ARGS__ )) | |
#define UNFOLD_191( T0, T, ... ) o_O( UNFOLD_190( T0, T, ## __VA_ARGS__ )) o_O( T( 190, ## __VA_ARGS__ )) | |
#define UNFOLD_192( T0, T, ... ) o_O( UNFOLD_191( T0, T, ## __VA_ARGS__ )) o_O( T( 191, ## __VA_ARGS__ )) | |
#define UNFOLD_193( T0, T, ... ) o_O( UNFOLD_192( T0, T, ## __VA_ARGS__ )) o_O( T( 192, ## __VA_ARGS__ )) | |
#define UNFOLD_194( T0, T, ... ) o_O( UNFOLD_193( T0, T, ## __VA_ARGS__ )) o_O( T( 193, ## __VA_ARGS__ )) | |
#define UNFOLD_195( T0, T, ... ) o_O( UNFOLD_194( T0, T, ## __VA_ARGS__ )) o_O( T( 194, ## __VA_ARGS__ )) | |
#define UNFOLD_196( T0, T, ... ) o_O( UNFOLD_195( T0, T, ## __VA_ARGS__ )) o_O( T( 195, ## __VA_ARGS__ )) | |
#define UNFOLD_197( T0, T, ... ) o_O( UNFOLD_196( T0, T, ## __VA_ARGS__ )) o_O( T( 196, ## __VA_ARGS__ )) | |
#define UNFOLD_198( T0, T, ... ) o_O( UNFOLD_197( T0, T, ## __VA_ARGS__ )) o_O( T( 197, ## __VA_ARGS__ )) | |
#define UNFOLD_199( T0, T, ... ) o_O( UNFOLD_198( T0, T, ## __VA_ARGS__ )) o_O( T( 198, ## __VA_ARGS__ )) | |
#define UNFOLD_200( T0, T, ... ) o_O( UNFOLD_199( T0, T, ## __VA_ARGS__ )) o_O( T( 199, ## __VA_ARGS__ )) | |
#define UNFOLD_201( T0, T, ... ) o_O( UNFOLD_200( T0, T, ## __VA_ARGS__ )) o_O( T( 200, ## __VA_ARGS__ )) | |
#define UNFOLD_202( T0, T, ... ) o_O( UNFOLD_201( T0, T, ## __VA_ARGS__ )) o_O( T( 201, ## __VA_ARGS__ )) | |
#define UNFOLD_203( T0, T, ... ) o_O( UNFOLD_202( T0, T, ## __VA_ARGS__ )) o_O( T( 202, ## __VA_ARGS__ )) | |
#define UNFOLD_204( T0, T, ... ) o_O( UNFOLD_203( T0, T, ## __VA_ARGS__ )) o_O( T( 203, ## __VA_ARGS__ )) | |
#define UNFOLD_205( T0, T, ... ) o_O( UNFOLD_204( T0, T, ## __VA_ARGS__ )) o_O( T( 204, ## __VA_ARGS__ )) | |
#define UNFOLD_206( T0, T, ... ) o_O( UNFOLD_205( T0, T, ## __VA_ARGS__ )) o_O( T( 205, ## __VA_ARGS__ )) | |
#define UNFOLD_207( T0, T, ... ) o_O( UNFOLD_206( T0, T, ## __VA_ARGS__ )) o_O( T( 206, ## __VA_ARGS__ )) | |
#define UNFOLD_208( T0, T, ... ) o_O( UNFOLD_207( T0, T, ## __VA_ARGS__ )) o_O( T( 207, ## __VA_ARGS__ )) | |
#define UNFOLD_209( T0, T, ... ) o_O( UNFOLD_208( T0, T, ## __VA_ARGS__ )) o_O( T( 208, ## __VA_ARGS__ )) | |
#define UNFOLD_210( T0, T, ... ) o_O( UNFOLD_209( T0, T, ## __VA_ARGS__ )) o_O( T( 209, ## __VA_ARGS__ )) | |
#define UNFOLD_211( T0, T, ... ) o_O( UNFOLD_210( T0, T, ## __VA_ARGS__ )) o_O( T( 210, ## __VA_ARGS__ )) | |
#define UNFOLD_212( T0, T, ... ) o_O( UNFOLD_211( T0, T, ## __VA_ARGS__ )) o_O( T( 211, ## __VA_ARGS__ )) | |
#define UNFOLD_213( T0, T, ... ) o_O( UNFOLD_212( T0, T, ## __VA_ARGS__ )) o_O( T( 212, ## __VA_ARGS__ )) | |
#define UNFOLD_214( T0, T, ... ) o_O( UNFOLD_213( T0, T, ## __VA_ARGS__ )) o_O( T( 213, ## __VA_ARGS__ )) | |
#define UNFOLD_215( T0, T, ... ) o_O( UNFOLD_214( T0, T, ## __VA_ARGS__ )) o_O( T( 214, ## __VA_ARGS__ )) | |
#define UNFOLD_216( T0, T, ... ) o_O( UNFOLD_215( T0, T, ## __VA_ARGS__ )) o_O( T( 215, ## __VA_ARGS__ )) | |
#define UNFOLD_217( T0, T, ... ) o_O( UNFOLD_216( T0, T, ## __VA_ARGS__ )) o_O( T( 216, ## __VA_ARGS__ )) | |
#define UNFOLD_218( T0, T, ... ) o_O( UNFOLD_217( T0, T, ## __VA_ARGS__ )) o_O( T( 217, ## __VA_ARGS__ )) | |
#define UNFOLD_219( T0, T, ... ) o_O( UNFOLD_218( T0, T, ## __VA_ARGS__ )) o_O( T( 218, ## __VA_ARGS__ )) | |
#define UNFOLD_220( T0, T, ... ) o_O( UNFOLD_219( T0, T, ## __VA_ARGS__ )) o_O( T( 219, ## __VA_ARGS__ )) | |
#define UNFOLD_221( T0, T, ... ) o_O( UNFOLD_220( T0, T, ## __VA_ARGS__ )) o_O( T( 220, ## __VA_ARGS__ )) | |
#define UNFOLD_222( T0, T, ... ) o_O( UNFOLD_221( T0, T, ## __VA_ARGS__ )) o_O( T( 221, ## __VA_ARGS__ )) | |
#define UNFOLD_223( T0, T, ... ) o_O( UNFOLD_222( T0, T, ## __VA_ARGS__ )) o_O( T( 222, ## __VA_ARGS__ )) | |
#define UNFOLD_224( T0, T, ... ) o_O( UNFOLD_223( T0, T, ## __VA_ARGS__ )) o_O( T( 223, ## __VA_ARGS__ )) | |
#define UNFOLD_225( T0, T, ... ) o_O( UNFOLD_224( T0, T, ## __VA_ARGS__ )) o_O( T( 224, ## __VA_ARGS__ )) | |
#define UNFOLD_226( T0, T, ... ) o_O( UNFOLD_225( T0, T, ## __VA_ARGS__ )) o_O( T( 225, ## __VA_ARGS__ )) | |
#define UNFOLD_227( T0, T, ... ) o_O( UNFOLD_226( T0, T, ## __VA_ARGS__ )) o_O( T( 226, ## __VA_ARGS__ )) | |
#define UNFOLD_228( T0, T, ... ) o_O( UNFOLD_227( T0, T, ## __VA_ARGS__ )) o_O( T( 227, ## __VA_ARGS__ )) | |
#define UNFOLD_229( T0, T, ... ) o_O( UNFOLD_228( T0, T, ## __VA_ARGS__ )) o_O( T( 228, ## __VA_ARGS__ )) | |
#define UNFOLD_230( T0, T, ... ) o_O( UNFOLD_229( T0, T, ## __VA_ARGS__ )) o_O( T( 229, ## __VA_ARGS__ )) | |
#define UNFOLD_231( T0, T, ... ) o_O( UNFOLD_230( T0, T, ## __VA_ARGS__ )) o_O( T( 230, ## __VA_ARGS__ )) | |
#define UNFOLD_232( T0, T, ... ) o_O( UNFOLD_231( T0, T, ## __VA_ARGS__ )) o_O( T( 231, ## __VA_ARGS__ )) | |
#define UNFOLD_233( T0, T, ... ) o_O( UNFOLD_232( T0, T, ## __VA_ARGS__ )) o_O( T( 232, ## __VA_ARGS__ )) | |
#define UNFOLD_234( T0, T, ... ) o_O( UNFOLD_233( T0, T, ## __VA_ARGS__ )) o_O( T( 233, ## __VA_ARGS__ )) | |
#define UNFOLD_235( T0, T, ... ) o_O( UNFOLD_234( T0, T, ## __VA_ARGS__ )) o_O( T( 234, ## __VA_ARGS__ )) | |
#define UNFOLD_236( T0, T, ... ) o_O( UNFOLD_235( T0, T, ## __VA_ARGS__ )) o_O( T( 235, ## __VA_ARGS__ )) | |
#define UNFOLD_237( T0, T, ... ) o_O( UNFOLD_236( T0, T, ## __VA_ARGS__ )) o_O( T( 236, ## __VA_ARGS__ )) | |
#define UNFOLD_238( T0, T, ... ) o_O( UNFOLD_237( T0, T, ## __VA_ARGS__ )) o_O( T( 237, ## __VA_ARGS__ )) | |
#define UNFOLD_239( T0, T, ... ) o_O( UNFOLD_238( T0, T, ## __VA_ARGS__ )) o_O( T( 238, ## __VA_ARGS__ )) | |
#define UNFOLD_240( T0, T, ... ) o_O( UNFOLD_239( T0, T, ## __VA_ARGS__ )) o_O( T( 239, ## __VA_ARGS__ )) | |
#define UNFOLD_241( T0, T, ... ) o_O( UNFOLD_240( T0, T, ## __VA_ARGS__ )) o_O( T( 240, ## __VA_ARGS__ )) | |
#define UNFOLD_242( T0, T, ... ) o_O( UNFOLD_241( T0, T, ## __VA_ARGS__ )) o_O( T( 241, ## __VA_ARGS__ )) | |
#define UNFOLD_243( T0, T, ... ) o_O( UNFOLD_242( T0, T, ## __VA_ARGS__ )) o_O( T( 242, ## __VA_ARGS__ )) | |
#define UNFOLD_244( T0, T, ... ) o_O( UNFOLD_243( T0, T, ## __VA_ARGS__ )) o_O( T( 243, ## __VA_ARGS__ )) | |
#define UNFOLD_245( T0, T, ... ) o_O( UNFOLD_244( T0, T, ## __VA_ARGS__ )) o_O( T( 244, ## __VA_ARGS__ )) | |
#define UNFOLD_246( T0, T, ... ) o_O( UNFOLD_245( T0, T, ## __VA_ARGS__ )) o_O( T( 245, ## __VA_ARGS__ )) | |
#define UNFOLD_247( T0, T, ... ) o_O( UNFOLD_246( T0, T, ## __VA_ARGS__ )) o_O( T( 246, ## __VA_ARGS__ )) | |
#define UNFOLD_248( T0, T, ... ) o_O( UNFOLD_247( T0, T, ## __VA_ARGS__ )) o_O( T( 247, ## __VA_ARGS__ )) | |
#define UNFOLD_249( T0, T, ... ) o_O( UNFOLD_248( T0, T, ## __VA_ARGS__ )) o_O( T( 248, ## __VA_ARGS__ )) | |
#define UNFOLD_250( T0, T, ... ) o_O( UNFOLD_249( T0, T, ## __VA_ARGS__ )) o_O( T( 249, ## __VA_ARGS__ )) | |
#define UNFOLD_251( T0, T, ... ) o_O( UNFOLD_250( T0, T, ## __VA_ARGS__ )) o_O( T( 250, ## __VA_ARGS__ )) | |
#define UNFOLD_252( T0, T, ... ) o_O( UNFOLD_251( T0, T, ## __VA_ARGS__ )) o_O( T( 251, ## __VA_ARGS__ )) | |
#define UNFOLD_253( T0, T, ... ) o_O( UNFOLD_252( T0, T, ## __VA_ARGS__ )) o_O( T( 252, ## __VA_ARGS__ )) | |
#define UNFOLD_254( T0, T, ... ) o_O( UNFOLD_253( T0, T, ## __VA_ARGS__ )) o_O( T( 253, ## __VA_ARGS__ )) | |
#define UNFOLD_255( T0, T, ... ) o_O( UNFOLD_254( T0, T, ## __VA_ARGS__ )) o_O( T( 254, ## __VA_ARGS__ )) | |
/** \endcond */ | |
#define _INC( N ) INC_##N | |
/** \cond */ | |
#define INC_0 1 | |
#define INC_1 2 | |
#define INC_2 3 | |
#define INC_3 4 | |
#define INC_4 5 | |
#define INC_5 6 | |
#define INC_6 7 | |
#define INC_7 8 | |
#define INC_8 9 | |
#define INC_9 10 | |
#define INC_10 11 | |
#define INC_11 12 | |
#define INC_12 13 | |
#define INC_13 14 | |
#define INC_14 15 | |
#define INC_15 16 | |
#define INC_16 17 | |
#define INC_17 18 | |
#define INC_18 19 | |
#define INC_19 20 | |
#define INC_20 21 | |
#define INC_21 22 | |
#define INC_22 23 | |
#define INC_23 24 | |
#define INC_24 25 | |
#define INC_25 26 | |
#define INC_26 27 | |
#define INC_27 28 | |
#define INC_28 29 | |
#define INC_29 30 | |
#define INC_30 31 | |
#define INC_31 32 | |
#define INC_32 33 | |
#define INC_33 34 | |
#define INC_34 35 | |
#define INC_35 36 | |
#define INC_36 37 | |
#define INC_37 38 | |
#define INC_38 39 | |
#define INC_39 40 | |
#define INC_40 41 | |
#define INC_41 42 | |
#define INC_42 43 | |
#define INC_43 44 | |
#define INC_44 45 | |
#define INC_45 46 | |
#define INC_46 47 | |
#define INC_47 48 | |
#define INC_48 49 | |
#define INC_49 50 | |
#define INC_50 51 | |
#define INC_51 52 | |
#define INC_52 53 | |
#define INC_53 54 | |
#define INC_54 55 | |
#define INC_55 56 | |
#define INC_56 57 | |
#define INC_57 58 | |
#define INC_58 59 | |
#define INC_59 60 | |
#define INC_60 61 | |
#define INC_61 62 | |
#define INC_62 63 | |
#define INC_63 64 | |
#define INC_64 65 | |
#define INC_65 66 | |
#define INC_66 67 | |
#define INC_67 68 | |
#define INC_68 69 | |
#define INC_69 70 | |
#define INC_70 71 | |
#define INC_71 72 | |
#define INC_72 73 | |
#define INC_73 74 | |
#define INC_74 75 | |
#define INC_75 76 | |
#define INC_76 77 | |
#define INC_77 78 | |
#define INC_78 79 | |
#define INC_79 80 | |
#define INC_80 81 | |
#define INC_81 82 | |
#define INC_82 83 | |
#define INC_83 84 | |
#define INC_84 85 | |
#define INC_85 86 | |
#define INC_86 87 | |
#define INC_87 88 | |
#define INC_88 89 | |
#define INC_89 90 | |
#define INC_90 91 | |
#define INC_91 92 | |
#define INC_92 93 | |
#define INC_93 94 | |
#define INC_94 95 | |
#define INC_95 96 | |
#define INC_96 97 | |
#define INC_97 98 | |
#define INC_98 99 | |
#define INC_99 100 | |
#define INC_100 101 | |
#define INC_101 102 | |
#define INC_102 103 | |
#define INC_103 104 | |
#define INC_104 105 | |
#define INC_105 106 | |
#define INC_106 107 | |
#define INC_107 108 | |
#define INC_108 109 | |
#define INC_109 110 | |
#define INC_110 111 | |
#define INC_111 112 | |
#define INC_112 113 | |
#define INC_113 114 | |
#define INC_114 115 | |
#define INC_115 116 | |
#define INC_116 117 | |
#define INC_117 118 | |
#define INC_118 119 | |
#define INC_119 120 | |
#define INC_120 121 | |
#define INC_121 122 | |
#define INC_122 123 | |
#define INC_123 124 | |
#define INC_124 125 | |
#define INC_125 126 | |
#define INC_126 127 | |
#define INC_127 128 | |
#define INC_128 129 | |
#define INC_129 130 | |
#define INC_130 131 | |
#define INC_131 132 | |
#define INC_132 133 | |
#define INC_133 134 | |
#define INC_134 135 | |
#define INC_135 136 | |
#define INC_136 137 | |
#define INC_137 138 | |
#define INC_138 139 | |
#define INC_139 140 | |
#define INC_140 141 | |
#define INC_141 142 | |
#define INC_142 143 | |
#define INC_143 144 | |
#define INC_144 145 | |
#define INC_145 146 | |
#define INC_146 147 | |
#define INC_147 148 | |
#define INC_148 149 | |
#define INC_149 150 | |
#define INC_150 151 | |
#define INC_151 152 | |
#define INC_152 153 | |
#define INC_153 154 | |
#define INC_154 155 | |
#define INC_155 156 | |
#define INC_156 157 | |
#define INC_157 158 | |
#define INC_158 159 | |
#define INC_159 160 | |
#define INC_160 161 | |
#define INC_161 162 | |
#define INC_162 163 | |
#define INC_163 164 | |
#define INC_164 165 | |
#define INC_165 166 | |
#define INC_166 167 | |
#define INC_167 168 | |
#define INC_168 169 | |
#define INC_169 170 | |
#define INC_170 171 | |
#define INC_171 172 | |
#define INC_172 173 | |
#define INC_173 174 | |
#define INC_174 175 | |
#define INC_175 176 | |
#define INC_176 177 | |
#define INC_177 178 | |
#define INC_178 179 | |
#define INC_179 180 | |
#define INC_180 181 | |
#define INC_181 182 | |
#define INC_182 183 | |
#define INC_183 184 | |
#define INC_184 185 | |
#define INC_185 186 | |
#define INC_186 187 | |
#define INC_187 188 | |
#define INC_188 189 | |
#define INC_189 190 | |
#define INC_190 191 | |
#define INC_191 192 | |
#define INC_192 193 | |
#define INC_193 194 | |
#define INC_194 195 | |
#define INC_195 196 | |
#define INC_196 197 | |
#define INC_197 198 | |
#define INC_198 199 | |
#define INC_199 200 | |
#define INC_200 201 | |
#define INC_201 202 | |
#define INC_202 203 | |
#define INC_203 204 | |
#define INC_204 205 | |
#define INC_205 206 | |
#define INC_206 207 | |
#define INC_207 208 | |
#define INC_208 209 | |
#define INC_209 210 | |
#define INC_210 211 | |
#define INC_211 212 | |
#define INC_212 213 | |
#define INC_213 214 | |
#define INC_214 215 | |
#define INC_215 216 | |
#define INC_216 217 | |
#define INC_217 218 | |
#define INC_218 219 | |
#define INC_219 220 | |
#define INC_220 221 | |
#define INC_221 222 | |
#define INC_222 223 | |
#define INC_223 224 | |
#define INC_224 225 | |
#define INC_225 226 | |
#define INC_226 227 | |
#define INC_227 228 | |
#define INC_228 229 | |
#define INC_229 230 | |
#define INC_230 231 | |
#define INC_231 232 | |
#define INC_232 233 | |
#define INC_233 234 | |
#define INC_234 235 | |
#define INC_235 236 | |
#define INC_236 237 | |
#define INC_237 238 | |
#define INC_238 239 | |
#define INC_239 240 | |
#define INC_240 241 | |
#define INC_241 242 | |
#define INC_242 243 | |
#define INC_243 244 | |
#define INC_244 245 | |
#define INC_245 246 | |
#define INC_246 247 | |
#define INC_247 248 | |
#define INC_248 249 | |
#define INC_249 250 | |
#define INC_250 251 | |
#define INC_251 252 | |
#define INC_252 253 | |
#define INC_253 254 | |
#define INC_254 255 | |
#define INC_255 256 | |
#define INC_256 257 | |
#define INC_257 258 | |
#define INC_258 259 | |
#define INC_259 260 | |
#define INC_260 261 | |
#define INC_261 262 | |
#define INC_262 263 | |
#define INC_263 264 | |
#define INC_264 265 | |
#define INC_265 266 | |
#define INC_266 267 | |
#define INC_267 268 | |
#define INC_268 269 | |
#define INC_269 270 | |
#define INC_270 271 | |
#define INC_271 272 | |
#define INC_272 273 | |
#define INC_273 274 | |
#define INC_274 275 | |
#define INC_275 276 | |
#define INC_276 277 | |
#define INC_277 278 | |
#define INC_278 279 | |
#define INC_279 280 | |
#define INC_280 281 | |
#define INC_281 282 | |
#define INC_282 283 | |
#define INC_283 284 | |
#define INC_284 285 | |
#define INC_285 286 | |
#define INC_286 287 | |
#define INC_287 288 | |
#define INC_288 289 | |
#define INC_289 290 | |
#define INC_290 291 | |
#define INC_291 292 | |
#define INC_292 293 | |
#define INC_293 294 | |
#define INC_294 295 | |
#define INC_295 296 | |
#define INC_296 297 | |
#define INC_297 298 | |
#define INC_298 299 | |
#define INC_299 300 | |
#define INC_300 301 | |
#define INC_301 302 | |
#define INC_302 303 | |
#define INC_303 304 | |
#define INC_304 305 | |
#define INC_305 306 | |
#define INC_306 307 | |
#define INC_307 308 | |
#define INC_308 309 | |
#define INC_309 310 | |
#define INC_310 311 | |
#define INC_311 312 | |
#define INC_312 313 | |
#define INC_313 314 | |
#define INC_314 315 | |
#define INC_315 316 | |
#define INC_316 317 | |
#define INC_317 318 | |
#define INC_318 319 | |
#define INC_319 320 | |
#define INC_320 321 | |
#define INC_321 322 | |
#define INC_322 323 | |
#define INC_323 324 | |
#define INC_324 325 | |
#define INC_325 326 | |
#define INC_326 327 | |
#define INC_327 328 | |
#define INC_328 329 | |
#define INC_329 330 | |
#define INC_330 331 | |
#define INC_331 332 | |
#define INC_332 333 | |
#define INC_333 334 | |
#define INC_334 335 | |
#define INC_335 336 | |
#define INC_336 337 | |
#define INC_337 338 | |
#define INC_338 339 | |
#define INC_339 340 | |
#define INC_340 341 | |
#define INC_341 342 | |
#define INC_342 343 | |
#define INC_343 344 | |
#define INC_344 345 | |
#define INC_345 346 | |
#define INC_346 347 | |
#define INC_347 348 | |
#define INC_348 349 | |
#define INC_349 350 | |
#define INC_350 351 | |
#define INC_351 352 | |
#define INC_352 353 | |
#define INC_353 354 | |
#define INC_354 355 | |
#define INC_355 356 | |
#define INC_356 357 | |
#define INC_357 358 | |
#define INC_358 359 | |
#define INC_359 360 | |
#define INC_360 361 | |
#define INC_361 362 | |
#define INC_362 363 | |
#define INC_363 364 | |
#define INC_364 365 | |
#define INC_365 366 | |
#define INC_366 367 | |
#define INC_367 368 | |
#define INC_368 369 | |
#define INC_369 370 | |
#define INC_370 371 | |
#define INC_371 372 | |
#define INC_372 373 | |
#define INC_373 374 | |
#define INC_374 375 | |
#define INC_375 376 | |
#define INC_376 377 | |
#define INC_377 378 | |
#define INC_378 379 | |
#define INC_379 380 | |
#define INC_380 381 | |
#define INC_381 382 | |
#define INC_382 383 | |
#define INC_383 384 | |
#define INC_384 385 | |
#define INC_385 386 | |
#define INC_386 387 | |
#define INC_387 388 | |
#define INC_388 389 | |
#define INC_389 390 | |
#define INC_390 391 | |
#define INC_391 392 | |
#define INC_392 393 | |
#define INC_393 394 | |
#define INC_394 395 | |
#define INC_395 396 | |
#define INC_396 397 | |
#define INC_397 398 | |
#define INC_398 399 | |
#define INC_399 400 | |
#define INC_400 401 | |
#define INC_401 402 | |
#define INC_402 403 | |
#define INC_403 404 | |
#define INC_404 405 | |
#define INC_405 406 | |
#define INC_406 407 | |
#define INC_407 408 | |
#define INC_408 409 | |
#define INC_409 410 | |
#define INC_410 411 | |
#define INC_411 412 | |
#define INC_412 413 | |
#define INC_413 414 | |
#define INC_414 415 | |
#define INC_415 416 | |
#define INC_416 417 | |
#define INC_417 418 | |
#define INC_418 419 | |
#define INC_419 420 | |
#define INC_420 421 | |
#define INC_421 422 | |
#define INC_422 423 | |
#define INC_423 424 | |
#define INC_424 425 | |
#define INC_425 426 | |
#define INC_426 427 | |
#define INC_427 428 | |
#define INC_428 429 | |
#define INC_429 430 | |
#define INC_430 431 | |
#define INC_431 432 | |
#define INC_432 433 | |
#define INC_433 434 | |
#define INC_434 435 | |
#define INC_435 436 | |
#define INC_436 437 | |
#define INC_437 438 | |
#define INC_438 439 | |
#define INC_439 440 | |
#define INC_440 441 | |
#define INC_441 442 | |
#define INC_442 443 | |
#define INC_443 444 | |
#define INC_444 445 | |
#define INC_445 446 | |
#define INC_446 447 | |
#define INC_447 448 | |
#define INC_448 449 | |
#define INC_449 450 | |
#define INC_450 451 | |
#define INC_451 452 | |
#define INC_452 453 | |
#define INC_453 454 | |
#define INC_454 455 | |
#define INC_455 456 | |
#define INC_456 457 | |
#define INC_457 458 | |
#define INC_458 459 | |
#define INC_459 460 | |
#define INC_460 461 | |
#define INC_461 462 | |
#define INC_462 463 | |
#define INC_463 464 | |
#define INC_464 465 | |
#define INC_465 466 | |
#define INC_466 467 | |
#define INC_467 468 | |
#define INC_468 469 | |
#define INC_469 470 | |
#define INC_470 471 | |
#define INC_471 472 | |
#define INC_472 473 | |
#define INC_473 474 | |
#define INC_474 475 | |
#define INC_475 476 | |
#define INC_476 477 | |
#define INC_477 478 | |
#define INC_478 479 | |
#define INC_479 480 | |
#define INC_480 481 | |
#define INC_481 482 | |
#define INC_482 483 | |
#define INC_483 484 | |
#define INC_484 485 | |
#define INC_485 486 | |
#define INC_486 487 | |
#define INC_487 488 | |
#define INC_488 489 | |
#define INC_489 490 | |
#define INC_490 491 | |
#define INC_491 492 | |
#define INC_492 493 | |
#define INC_493 494 | |
#define INC_494 495 | |
#define INC_495 496 | |
#define INC_496 497 | |
#define INC_497 498 | |
#define INC_498 499 | |
#define INC_499 500 | |
#define INC_500 501 | |
#define INC_501 502 | |
#define INC_502 503 | |
#define INC_503 504 | |
#define INC_504 505 | |
#define INC_505 506 | |
#define INC_506 507 | |
#define INC_507 508 | |
#define INC_508 509 | |
#define INC_509 510 | |
#define INC_510 511 | |
#define INC_511 512 | |
/** \endcond */ | |
#define ADD_1( N ) _INC( N ) | |
/** \cond */ | |
#define ADD_2( N ) ADD_1( _INC( N )) | |
#define ADD_3( N ) ADD_2( _INC( N )) | |
#define ADD_4( N ) ADD_3( _INC( N )) | |
#define ADD_5( N ) ADD_4( _INC( N )) | |
#define ADD_6( N ) ADD_5( _INC( N )) | |
#define ADD_7( N ) ADD_6( _INC( N )) | |
#define ADD_8( N ) ADD_7( _INC( N )) | |
#define ADD_9( N ) ADD_8( _INC( N )) | |
#define ADD_10( N ) ADD_9( _INC( N )) | |
#define ADD_11( N ) ADD_10( _INC( N )) | |
#define ADD_12( N ) ADD_11( _INC( N )) | |
#define ADD_13( N ) ADD_12( _INC( N )) | |
#define ADD_14( N ) ADD_13( _INC( N )) | |
#define ADD_15( N ) ADD_14( _INC( N )) | |
#define ADD_16( N ) ADD_15( _INC( N )) | |
#define ADD_17( N ) ADD_16( _INC( N )) | |
#define ADD_18( N ) ADD_17( _INC( N )) | |
#define ADD_19( N ) ADD_18( _INC( N )) | |
#define ADD_20( N ) ADD_19( _INC( N )) | |
#define ADD_21( N ) ADD_20( _INC( N )) | |
#define ADD_22( N ) ADD_21( _INC( N )) | |
#define ADD_23( N ) ADD_22( _INC( N )) | |
#define ADD_24( N ) ADD_23( _INC( N )) | |
#define ADD_25( N ) ADD_24( _INC( N )) | |
#define ADD_26( N ) ADD_25( _INC( N )) | |
#define ADD_27( N ) ADD_26( _INC( N )) | |
#define ADD_28( N ) ADD_27( _INC( N )) | |
#define ADD_29( N ) ADD_28( _INC( N )) | |
#define ADD_30( N ) ADD_29( _INC( N )) | |
#define ADD_31( N ) ADD_30( _INC( N )) | |
#define ADD_32( N ) ADD_31( _INC( N )) | |
#define ADD_33( N ) ADD_32( _INC( N )) | |
#define ADD_34( N ) ADD_33( _INC( N )) | |
#define ADD_35( N ) ADD_34( _INC( N )) | |
#define ADD_36( N ) ADD_35( _INC( N )) | |
#define ADD_37( N ) ADD_36( _INC( N )) | |
#define ADD_38( N ) ADD_37( _INC( N )) | |
#define ADD_39( N ) ADD_38( _INC( N )) | |
#define ADD_40( N ) ADD_39( _INC( N )) | |
#define ADD_41( N ) ADD_40( _INC( N )) | |
#define ADD_42( N ) ADD_41( _INC( N )) | |
#define ADD_43( N ) ADD_42( _INC( N )) | |
#define ADD_44( N ) ADD_43( _INC( N )) | |
#define ADD_45( N ) ADD_44( _INC( N )) | |
#define ADD_46( N ) ADD_45( _INC( N )) | |
#define ADD_47( N ) ADD_46( _INC( N )) | |
#define ADD_48( N ) ADD_47( _INC( N )) | |
#define ADD_49( N ) ADD_48( _INC( N )) | |
#define ADD_50( N ) ADD_49( _INC( N )) | |
#define ADD_51( N ) ADD_50( _INC( N )) | |
#define ADD_52( N ) ADD_51( _INC( N )) | |
#define ADD_53( N ) ADD_52( _INC( N )) | |
#define ADD_54( N ) ADD_53( _INC( N )) | |
#define ADD_55( N ) ADD_54( _INC( N )) | |
#define ADD_56( N ) ADD_55( _INC( N )) | |
#define ADD_57( N ) ADD_56( _INC( N )) | |
#define ADD_58( N ) ADD_57( _INC( N )) | |
#define ADD_59( N ) ADD_58( _INC( N )) | |
#define ADD_60( N ) ADD_59( _INC( N )) | |
#define ADD_61( N ) ADD_60( _INC( N )) | |
#define ADD_62( N ) ADD_61( _INC( N )) | |
#define ADD_63( N ) ADD_62( _INC( N )) | |
#define ADD_64( N ) ADD_63( _INC( N )) | |
#define ADD_65( N ) ADD_64( _INC( N )) | |
#define ADD_66( N ) ADD_65( _INC( N )) | |
#define ADD_67( N ) ADD_66( _INC( N )) | |
#define ADD_68( N ) ADD_67( _INC( N )) | |
#define ADD_69( N ) ADD_68( _INC( N )) | |
#define ADD_70( N ) ADD_69( _INC( N )) | |
#define ADD_71( N ) ADD_70( _INC( N )) | |
#define ADD_72( N ) ADD_71( _INC( N )) | |
#define ADD_73( N ) ADD_72( _INC( N )) | |
#define ADD_74( N ) ADD_73( _INC( N )) | |
#define ADD_75( N ) ADD_74( _INC( N )) | |
#define ADD_76( N ) ADD_75( _INC( N )) | |
#define ADD_77( N ) ADD_76( _INC( N )) | |
#define ADD_78( N ) ADD_77( _INC( N )) | |
#define ADD_79( N ) ADD_78( _INC( N )) | |
#define ADD_80( N ) ADD_79( _INC( N )) | |
#define ADD_81( N ) ADD_80( _INC( N )) | |
#define ADD_82( N ) ADD_81( _INC( N )) | |
#define ADD_83( N ) ADD_82( _INC( N )) | |
#define ADD_84( N ) ADD_83( _INC( N )) | |
#define ADD_85( N ) ADD_84( _INC( N )) | |
#define ADD_86( N ) ADD_85( _INC( N )) | |
#define ADD_87( N ) ADD_86( _INC( N )) | |
#define ADD_88( N ) ADD_87( _INC( N )) | |
#define ADD_89( N ) ADD_88( _INC( N )) | |
#define ADD_90( N ) ADD_89( _INC( N )) | |
#define ADD_91( N ) ADD_90( _INC( N )) | |
#define ADD_92( N ) ADD_91( _INC( N )) | |
#define ADD_93( N ) ADD_92( _INC( N )) | |
#define ADD_94( N ) ADD_93( _INC( N )) | |
#define ADD_95( N ) ADD_94( _INC( N )) | |
#define ADD_96( N ) ADD_95( _INC( N )) | |
#define ADD_97( N ) ADD_96( _INC( N )) | |
#define ADD_98( N ) ADD_97( _INC( N )) | |
#define ADD_99( N ) ADD_98( _INC( N )) | |
#define ADD_100( N ) ADD_99( _INC( N )) | |
#define ADD_101( N ) ADD_100( _INC( N )) | |
#define ADD_102( N ) ADD_101( _INC( N )) | |
#define ADD_103( N ) ADD_102( _INC( N )) | |
#define ADD_104( N ) ADD_103( _INC( N )) | |
#define ADD_105( N ) ADD_104( _INC( N )) | |
#define ADD_106( N ) ADD_105( _INC( N )) | |
#define ADD_107( N ) ADD_106( _INC( N )) | |
#define ADD_108( N ) ADD_107( _INC( N )) | |
#define ADD_109( N ) ADD_108( _INC( N )) | |
#define ADD_110( N ) ADD_109( _INC( N )) | |
#define ADD_111( N ) ADD_110( _INC( N )) | |
#define ADD_112( N ) ADD_111( _INC( N )) | |
#define ADD_113( N ) ADD_112( _INC( N )) | |
#define ADD_114( N ) ADD_113( _INC( N )) | |
#define ADD_115( N ) ADD_114( _INC( N )) | |
#define ADD_116( N ) ADD_115( _INC( N )) | |
#define ADD_117( N ) ADD_116( _INC( N )) | |
#define ADD_118( N ) ADD_117( _INC( N )) | |
#define ADD_119( N ) ADD_118( _INC( N )) | |
#define ADD_120( N ) ADD_119( _INC( N )) | |
#define ADD_121( N ) ADD_120( _INC( N )) | |
#define ADD_122( N ) ADD_121( _INC( N )) | |
#define ADD_123( N ) ADD_122( _INC( N )) | |
#define ADD_124( N ) ADD_123( _INC( N )) | |
#define ADD_125( N ) ADD_124( _INC( N )) | |
#define ADD_126( N ) ADD_125( _INC( N )) | |
#define ADD_127( N ) ADD_126( _INC( N )) | |
#define ADD_128( N ) ADD_127( _INC( N )) | |
#define ADD_129( N ) ADD_128( _INC( N )) | |
#define ADD_130( N ) ADD_129( _INC( N )) | |
#define ADD_131( N ) ADD_130( _INC( N )) | |
#define ADD_132( N ) ADD_131( _INC( N )) | |
#define ADD_133( N ) ADD_132( _INC( N )) | |
#define ADD_134( N ) ADD_133( _INC( N )) | |
#define ADD_135( N ) ADD_134( _INC( N )) | |
#define ADD_136( N ) ADD_135( _INC( N )) | |
#define ADD_137( N ) ADD_136( _INC( N )) | |
#define ADD_138( N ) ADD_137( _INC( N )) | |
#define ADD_139( N ) ADD_138( _INC( N )) | |
#define ADD_140( N ) ADD_139( _INC( N )) | |
#define ADD_141( N ) ADD_140( _INC( N )) | |
#define ADD_142( N ) ADD_141( _INC( N )) | |
#define ADD_143( N ) ADD_142( _INC( N )) | |
#define ADD_144( N ) ADD_143( _INC( N )) | |
#define ADD_145( N ) ADD_144( _INC( N )) | |
#define ADD_146( N ) ADD_145( _INC( N )) | |
#define ADD_147( N ) ADD_146( _INC( N )) | |
#define ADD_148( N ) ADD_147( _INC( N )) | |
#define ADD_149( N ) ADD_148( _INC( N )) | |
#define ADD_150( N ) ADD_149( _INC( N )) | |
#define ADD_151( N ) ADD_150( _INC( N )) | |
#define ADD_152( N ) ADD_151( _INC( N )) | |
#define ADD_153( N ) ADD_152( _INC( N )) | |
#define ADD_154( N ) ADD_153( _INC( N )) | |
#define ADD_155( N ) ADD_154( _INC( N )) | |
#define ADD_156( N ) ADD_155( _INC( N )) | |
#define ADD_157( N ) ADD_156( _INC( N )) | |
#define ADD_158( N ) ADD_157( _INC( N )) | |
#define ADD_159( N ) ADD_158( _INC( N )) | |
#define ADD_160( N ) ADD_159( _INC( N )) | |
#define ADD_161( N ) ADD_160( _INC( N )) | |
#define ADD_162( N ) ADD_161( _INC( N )) | |
#define ADD_163( N ) ADD_162( _INC( N )) | |
#define ADD_164( N ) ADD_163( _INC( N )) | |
#define ADD_165( N ) ADD_164( _INC( N )) | |
#define ADD_166( N ) ADD_165( _INC( N )) | |
#define ADD_167( N ) ADD_166( _INC( N )) | |
#define ADD_168( N ) ADD_167( _INC( N )) | |
#define ADD_169( N ) ADD_168( _INC( N )) | |
#define ADD_170( N ) ADD_169( _INC( N )) | |
#define ADD_171( N ) ADD_170( _INC( N )) | |
#define ADD_172( N ) ADD_171( _INC( N )) | |
#define ADD_173( N ) ADD_172( _INC( N )) | |
#define ADD_174( N ) ADD_173( _INC( N )) | |
#define ADD_175( N ) ADD_174( _INC( N )) | |
#define ADD_176( N ) ADD_175( _INC( N )) | |
#define ADD_177( N ) ADD_176( _INC( N )) | |
#define ADD_178( N ) ADD_177( _INC( N )) | |
#define ADD_179( N ) ADD_178( _INC( N )) | |
#define ADD_180( N ) ADD_179( _INC( N )) | |
#define ADD_181( N ) ADD_180( _INC( N )) | |
#define ADD_182( N ) ADD_181( _INC( N )) | |
#define ADD_183( N ) ADD_182( _INC( N )) | |
#define ADD_184( N ) ADD_183( _INC( N )) | |
#define ADD_185( N ) ADD_184( _INC( N )) | |
#define ADD_186( N ) ADD_185( _INC( N )) | |
#define ADD_187( N ) ADD_186( _INC( N )) | |
#define ADD_188( N ) ADD_187( _INC( N )) | |
#define ADD_189( N ) ADD_188( _INC( N )) | |
#define ADD_190( N ) ADD_189( _INC( N )) | |
#define ADD_191( N ) ADD_190( _INC( N )) | |
#define ADD_192( N ) ADD_191( _INC( N )) | |
#define ADD_193( N ) ADD_192( _INC( N )) | |
#define ADD_194( N ) ADD_193( _INC( N )) | |
#define ADD_195( N ) ADD_194( _INC( N )) | |
#define ADD_196( N ) ADD_195( _INC( N )) | |
#define ADD_197( N ) ADD_196( _INC( N )) | |
#define ADD_198( N ) ADD_197( _INC( N )) | |
#define ADD_199( N ) ADD_198( _INC( N )) | |
#define ADD_200( N ) ADD_199( _INC( N )) | |
#define ADD_201( N ) ADD_200( _INC( N )) | |
#define ADD_202( N ) ADD_201( _INC( N )) | |
#define ADD_203( N ) ADD_202( _INC( N )) | |
#define ADD_204( N ) ADD_203( _INC( N )) | |
#define ADD_205( N ) ADD_204( _INC( N )) | |
#define ADD_206( N ) ADD_205( _INC( N )) | |
#define ADD_207( N ) ADD_206( _INC( N )) | |
#define ADD_208( N ) ADD_207( _INC( N )) | |
#define ADD_209( N ) ADD_208( _INC( N )) | |
#define ADD_210( N ) ADD_209( _INC( N )) | |
#define ADD_211( N ) ADD_210( _INC( N )) | |
#define ADD_212( N ) ADD_211( _INC( N )) | |
#define ADD_213( N ) ADD_212( _INC( N )) | |
#define ADD_214( N ) ADD_213( _INC( N )) | |
#define ADD_215( N ) ADD_214( _INC( N )) | |
#define ADD_216( N ) ADD_215( _INC( N )) | |
#define ADD_217( N ) ADD_216( _INC( N )) | |
#define ADD_218( N ) ADD_217( _INC( N )) | |
#define ADD_219( N ) ADD_218( _INC( N )) | |
#define ADD_220( N ) ADD_219( _INC( N )) | |
#define ADD_221( N ) ADD_220( _INC( N )) | |
#define ADD_222( N ) ADD_221( _INC( N )) | |
#define ADD_223( N ) ADD_222( _INC( N )) | |
#define ADD_224( N ) ADD_223( _INC( N )) | |
#define ADD_225( N ) ADD_224( _INC( N )) | |
#define ADD_226( N ) ADD_225( _INC( N )) | |
#define ADD_227( N ) ADD_226( _INC( N )) | |
#define ADD_228( N ) ADD_227( _INC( N )) | |
#define ADD_229( N ) ADD_228( _INC( N )) | |
#define ADD_230( N ) ADD_229( _INC( N )) | |
#define ADD_231( N ) ADD_230( _INC( N )) | |
#define ADD_232( N ) ADD_231( _INC( N )) | |
#define ADD_233( N ) ADD_232( _INC( N )) | |
#define ADD_234( N ) ADD_233( _INC( N )) | |
#define ADD_235( N ) ADD_234( _INC( N )) | |
#define ADD_236( N ) ADD_235( _INC( N )) | |
#define ADD_237( N ) ADD_236( _INC( N )) | |
#define ADD_238( N ) ADD_237( _INC( N )) | |
#define ADD_239( N ) ADD_238( _INC( N )) | |
#define ADD_240( N ) ADD_239( _INC( N )) | |
#define ADD_241( N ) ADD_240( _INC( N )) | |
#define ADD_242( N ) ADD_241( _INC( N )) | |
#define ADD_243( N ) ADD_242( _INC( N )) | |
#define ADD_244( N ) ADD_243( _INC( N )) | |
#define ADD_245( N ) ADD_244( _INC( N )) | |
#define ADD_246( N ) ADD_245( _INC( N )) | |
#define ADD_247( N ) ADD_246( _INC( N )) | |
#define ADD_248( N ) ADD_247( _INC( N )) | |
#define ADD_249( N ) ADD_248( _INC( N )) | |
#define ADD_250( N ) ADD_249( _INC( N )) | |
#define ADD_251( N ) ADD_250( _INC( N )) | |
#define ADD_252( N ) ADD_251( _INC( N )) | |
#define ADD_253( N ) ADD_252( _INC( N )) | |
#define ADD_254( N ) ADD_253( _INC( N )) | |
/** \endcond */ | |
#define UNFOLD_FROM( F, L, T0, T, ... ) o_O( _UNFOLD_F( F, L, T0, T, ## __VA_ARGS__ )) | |
#define _UNFOLD_F( F, L, T0, T, ... ) o_O( UNFOLD_F_##L( F, T0, T, ## __VA_ARGS__ )) | |
#define UNFOLD_F_0( F, T0, T, ... ) | |
#define UNFOLD_F_1( F, T0, T, ... ) o_O( T0( F, ## __VA_ARGS__ )) | |
/** \cond */ | |
#define UNFOLD_F_2( F, T0, T, ... ) o_O( UNFOLD_F_1( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_1( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_3( F, T0, T, ... ) o_O( UNFOLD_F_2( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_2( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_4( F, T0, T, ... ) o_O( UNFOLD_F_3( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_3( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_5( F, T0, T, ... ) o_O( UNFOLD_F_4( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_4( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_6( F, T0, T, ... ) o_O( UNFOLD_F_5( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_5( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_7( F, T0, T, ... ) o_O( UNFOLD_F_6( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_6( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_8( F, T0, T, ... ) o_O( UNFOLD_F_7( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_7( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_9( F, T0, T, ... ) o_O( UNFOLD_F_8( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_8( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_10( F, T0, T, ... ) o_O( UNFOLD_F_9( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_9( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_11( F, T0, T, ... ) o_O( UNFOLD_F_10( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_10( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_12( F, T0, T, ... ) o_O( UNFOLD_F_11( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_11( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_13( F, T0, T, ... ) o_O( UNFOLD_F_12( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_12( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_14( F, T0, T, ... ) o_O( UNFOLD_F_13( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_13( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_15( F, T0, T, ... ) o_O( UNFOLD_F_14( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_14( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_16( F, T0, T, ... ) o_O( UNFOLD_F_15( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_15( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_17( F, T0, T, ... ) o_O( UNFOLD_F_16( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_16( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_18( F, T0, T, ... ) o_O( UNFOLD_F_17( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_17( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_19( F, T0, T, ... ) o_O( UNFOLD_F_18( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_18( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_20( F, T0, T, ... ) o_O( UNFOLD_F_19( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_19( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_21( F, T0, T, ... ) o_O( UNFOLD_F_20( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_20( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_22( F, T0, T, ... ) o_O( UNFOLD_F_21( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_21( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_23( F, T0, T, ... ) o_O( UNFOLD_F_22( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_22( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_24( F, T0, T, ... ) o_O( UNFOLD_F_23( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_23( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_25( F, T0, T, ... ) o_O( UNFOLD_F_24( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_24( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_26( F, T0, T, ... ) o_O( UNFOLD_F_25( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_25( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_27( F, T0, T, ... ) o_O( UNFOLD_F_26( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_26( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_28( F, T0, T, ... ) o_O( UNFOLD_F_27( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_27( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_29( F, T0, T, ... ) o_O( UNFOLD_F_28( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_28( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_30( F, T0, T, ... ) o_O( UNFOLD_F_29( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_29( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_31( F, T0, T, ... ) o_O( UNFOLD_F_30( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_30( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_32( F, T0, T, ... ) o_O( UNFOLD_F_31( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_31( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_33( F, T0, T, ... ) o_O( UNFOLD_F_32( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_32( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_34( F, T0, T, ... ) o_O( UNFOLD_F_33( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_33( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_35( F, T0, T, ... ) o_O( UNFOLD_F_34( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_34( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_36( F, T0, T, ... ) o_O( UNFOLD_F_35( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_35( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_37( F, T0, T, ... ) o_O( UNFOLD_F_36( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_36( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_38( F, T0, T, ... ) o_O( UNFOLD_F_37( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_37( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_39( F, T0, T, ... ) o_O( UNFOLD_F_38( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_38( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_40( F, T0, T, ... ) o_O( UNFOLD_F_39( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_39( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_41( F, T0, T, ... ) o_O( UNFOLD_F_40( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_40( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_42( F, T0, T, ... ) o_O( UNFOLD_F_41( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_41( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_43( F, T0, T, ... ) o_O( UNFOLD_F_42( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_42( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_44( F, T0, T, ... ) o_O( UNFOLD_F_43( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_43( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_45( F, T0, T, ... ) o_O( UNFOLD_F_44( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_44( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_46( F, T0, T, ... ) o_O( UNFOLD_F_45( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_45( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_47( F, T0, T, ... ) o_O( UNFOLD_F_46( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_46( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_48( F, T0, T, ... ) o_O( UNFOLD_F_47( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_47( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_49( F, T0, T, ... ) o_O( UNFOLD_F_48( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_48( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_50( F, T0, T, ... ) o_O( UNFOLD_F_49( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_49( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_51( F, T0, T, ... ) o_O( UNFOLD_F_50( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_50( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_52( F, T0, T, ... ) o_O( UNFOLD_F_51( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_51( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_53( F, T0, T, ... ) o_O( UNFOLD_F_52( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_52( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_54( F, T0, T, ... ) o_O( UNFOLD_F_53( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_53( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_55( F, T0, T, ... ) o_O( UNFOLD_F_54( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_54( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_56( F, T0, T, ... ) o_O( UNFOLD_F_55( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_55( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_57( F, T0, T, ... ) o_O( UNFOLD_F_56( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_56( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_58( F, T0, T, ... ) o_O( UNFOLD_F_57( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_57( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_59( F, T0, T, ... ) o_O( UNFOLD_F_58( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_58( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_60( F, T0, T, ... ) o_O( UNFOLD_F_59( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_59( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_61( F, T0, T, ... ) o_O( UNFOLD_F_60( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_60( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_62( F, T0, T, ... ) o_O( UNFOLD_F_61( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_61( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_63( F, T0, T, ... ) o_O( UNFOLD_F_62( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_62( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_64( F, T0, T, ... ) o_O( UNFOLD_F_63( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_63( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_65( F, T0, T, ... ) o_O( UNFOLD_F_64( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_64( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_66( F, T0, T, ... ) o_O( UNFOLD_F_65( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_65( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_67( F, T0, T, ... ) o_O( UNFOLD_F_66( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_66( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_68( F, T0, T, ... ) o_O( UNFOLD_F_67( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_67( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_69( F, T0, T, ... ) o_O( UNFOLD_F_68( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_68( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_70( F, T0, T, ... ) o_O( UNFOLD_F_69( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_69( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_71( F, T0, T, ... ) o_O( UNFOLD_F_70( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_70( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_72( F, T0, T, ... ) o_O( UNFOLD_F_71( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_71( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_73( F, T0, T, ... ) o_O( UNFOLD_F_72( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_72( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_74( F, T0, T, ... ) o_O( UNFOLD_F_73( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_73( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_75( F, T0, T, ... ) o_O( UNFOLD_F_74( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_74( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_76( F, T0, T, ... ) o_O( UNFOLD_F_75( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_75( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_77( F, T0, T, ... ) o_O( UNFOLD_F_76( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_76( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_78( F, T0, T, ... ) o_O( UNFOLD_F_77( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_77( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_79( F, T0, T, ... ) o_O( UNFOLD_F_78( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_78( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_80( F, T0, T, ... ) o_O( UNFOLD_F_79( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_79( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_81( F, T0, T, ... ) o_O( UNFOLD_F_80( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_80( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_82( F, T0, T, ... ) o_O( UNFOLD_F_81( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_81( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_83( F, T0, T, ... ) o_O( UNFOLD_F_82( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_82( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_84( F, T0, T, ... ) o_O( UNFOLD_F_83( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_83( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_85( F, T0, T, ... ) o_O( UNFOLD_F_84( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_84( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_86( F, T0, T, ... ) o_O( UNFOLD_F_85( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_85( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_87( F, T0, T, ... ) o_O( UNFOLD_F_86( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_86( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_88( F, T0, T, ... ) o_O( UNFOLD_F_87( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_87( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_89( F, T0, T, ... ) o_O( UNFOLD_F_88( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_88( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_90( F, T0, T, ... ) o_O( UNFOLD_F_89( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_89( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_91( F, T0, T, ... ) o_O( UNFOLD_F_90( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_90( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_92( F, T0, T, ... ) o_O( UNFOLD_F_91( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_91( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_93( F, T0, T, ... ) o_O( UNFOLD_F_92( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_92( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_94( F, T0, T, ... ) o_O( UNFOLD_F_93( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_93( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_95( F, T0, T, ... ) o_O( UNFOLD_F_94( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_94( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_96( F, T0, T, ... ) o_O( UNFOLD_F_95( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_95( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_97( F, T0, T, ... ) o_O( UNFOLD_F_96( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_96( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_98( F, T0, T, ... ) o_O( UNFOLD_F_97( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_97( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_99( F, T0, T, ... ) o_O( UNFOLD_F_98( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_98( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_100( F, T0, T, ... ) o_O( UNFOLD_F_99( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_99( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_101( F, T0, T, ... ) o_O( UNFOLD_F_100( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_100( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_102( F, T0, T, ... ) o_O( UNFOLD_F_101( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_101( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_103( F, T0, T, ... ) o_O( UNFOLD_F_102( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_102( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_104( F, T0, T, ... ) o_O( UNFOLD_F_103( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_103( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_105( F, T0, T, ... ) o_O( UNFOLD_F_104( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_104( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_106( F, T0, T, ... ) o_O( UNFOLD_F_105( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_105( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_107( F, T0, T, ... ) o_O( UNFOLD_F_106( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_106( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_108( F, T0, T, ... ) o_O( UNFOLD_F_107( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_107( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_109( F, T0, T, ... ) o_O( UNFOLD_F_108( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_108( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_110( F, T0, T, ... ) o_O( UNFOLD_F_109( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_109( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_111( F, T0, T, ... ) o_O( UNFOLD_F_110( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_110( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_112( F, T0, T, ... ) o_O( UNFOLD_F_111( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_111( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_113( F, T0, T, ... ) o_O( UNFOLD_F_112( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_112( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_114( F, T0, T, ... ) o_O( UNFOLD_F_113( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_113( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_115( F, T0, T, ... ) o_O( UNFOLD_F_114( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_114( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_116( F, T0, T, ... ) o_O( UNFOLD_F_115( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_115( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_117( F, T0, T, ... ) o_O( UNFOLD_F_116( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_116( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_118( F, T0, T, ... ) o_O( UNFOLD_F_117( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_117( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_119( F, T0, T, ... ) o_O( UNFOLD_F_118( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_118( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_120( F, T0, T, ... ) o_O( UNFOLD_F_119( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_119( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_121( F, T0, T, ... ) o_O( UNFOLD_F_120( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_120( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_122( F, T0, T, ... ) o_O( UNFOLD_F_121( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_121( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_123( F, T0, T, ... ) o_O( UNFOLD_F_122( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_122( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_124( F, T0, T, ... ) o_O( UNFOLD_F_123( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_123( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_125( F, T0, T, ... ) o_O( UNFOLD_F_124( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_124( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_126( F, T0, T, ... ) o_O( UNFOLD_F_125( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_125( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_127( F, T0, T, ... ) o_O( UNFOLD_F_126( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_126( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_128( F, T0, T, ... ) o_O( UNFOLD_F_127( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_127( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_129( F, T0, T, ... ) o_O( UNFOLD_F_128( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_128( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_130( F, T0, T, ... ) o_O( UNFOLD_F_129( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_129( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_131( F, T0, T, ... ) o_O( UNFOLD_F_130( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_130( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_132( F, T0, T, ... ) o_O( UNFOLD_F_131( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_131( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_133( F, T0, T, ... ) o_O( UNFOLD_F_132( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_132( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_134( F, T0, T, ... ) o_O( UNFOLD_F_133( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_133( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_135( F, T0, T, ... ) o_O( UNFOLD_F_134( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_134( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_136( F, T0, T, ... ) o_O( UNFOLD_F_135( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_135( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_137( F, T0, T, ... ) o_O( UNFOLD_F_136( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_136( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_138( F, T0, T, ... ) o_O( UNFOLD_F_137( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_137( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_139( F, T0, T, ... ) o_O( UNFOLD_F_138( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_138( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_140( F, T0, T, ... ) o_O( UNFOLD_F_139( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_139( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_141( F, T0, T, ... ) o_O( UNFOLD_F_140( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_140( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_142( F, T0, T, ... ) o_O( UNFOLD_F_141( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_141( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_143( F, T0, T, ... ) o_O( UNFOLD_F_142( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_142( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_144( F, T0, T, ... ) o_O( UNFOLD_F_143( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_143( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_145( F, T0, T, ... ) o_O( UNFOLD_F_144( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_144( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_146( F, T0, T, ... ) o_O( UNFOLD_F_145( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_145( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_147( F, T0, T, ... ) o_O( UNFOLD_F_146( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_146( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_148( F, T0, T, ... ) o_O( UNFOLD_F_147( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_147( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_149( F, T0, T, ... ) o_O( UNFOLD_F_148( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_148( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_150( F, T0, T, ... ) o_O( UNFOLD_F_149( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_149( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_151( F, T0, T, ... ) o_O( UNFOLD_F_150( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_150( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_152( F, T0, T, ... ) o_O( UNFOLD_F_151( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_151( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_153( F, T0, T, ... ) o_O( UNFOLD_F_152( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_152( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_154( F, T0, T, ... ) o_O( UNFOLD_F_153( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_153( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_155( F, T0, T, ... ) o_O( UNFOLD_F_154( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_154( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_156( F, T0, T, ... ) o_O( UNFOLD_F_155( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_155( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_157( F, T0, T, ... ) o_O( UNFOLD_F_156( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_156( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_158( F, T0, T, ... ) o_O( UNFOLD_F_157( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_157( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_159( F, T0, T, ... ) o_O( UNFOLD_F_158( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_158( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_160( F, T0, T, ... ) o_O( UNFOLD_F_159( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_159( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_161( F, T0, T, ... ) o_O( UNFOLD_F_160( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_160( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_162( F, T0, T, ... ) o_O( UNFOLD_F_161( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_161( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_163( F, T0, T, ... ) o_O( UNFOLD_F_162( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_162( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_164( F, T0, T, ... ) o_O( UNFOLD_F_163( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_163( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_165( F, T0, T, ... ) o_O( UNFOLD_F_164( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_164( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_166( F, T0, T, ... ) o_O( UNFOLD_F_165( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_165( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_167( F, T0, T, ... ) o_O( UNFOLD_F_166( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_166( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_168( F, T0, T, ... ) o_O( UNFOLD_F_167( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_167( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_169( F, T0, T, ... ) o_O( UNFOLD_F_168( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_168( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_170( F, T0, T, ... ) o_O( UNFOLD_F_169( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_169( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_171( F, T0, T, ... ) o_O( UNFOLD_F_170( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_170( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_172( F, T0, T, ... ) o_O( UNFOLD_F_171( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_171( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_173( F, T0, T, ... ) o_O( UNFOLD_F_172( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_172( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_174( F, T0, T, ... ) o_O( UNFOLD_F_173( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_173( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_175( F, T0, T, ... ) o_O( UNFOLD_F_174( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_174( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_176( F, T0, T, ... ) o_O( UNFOLD_F_175( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_175( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_177( F, T0, T, ... ) o_O( UNFOLD_F_176( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_176( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_178( F, T0, T, ... ) o_O( UNFOLD_F_177( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_177( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_179( F, T0, T, ... ) o_O( UNFOLD_F_178( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_178( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_180( F, T0, T, ... ) o_O( UNFOLD_F_179( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_179( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_181( F, T0, T, ... ) o_O( UNFOLD_F_180( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_180( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_182( F, T0, T, ... ) o_O( UNFOLD_F_181( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_181( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_183( F, T0, T, ... ) o_O( UNFOLD_F_182( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_182( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_184( F, T0, T, ... ) o_O( UNFOLD_F_183( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_183( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_185( F, T0, T, ... ) o_O( UNFOLD_F_184( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_184( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_186( F, T0, T, ... ) o_O( UNFOLD_F_185( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_185( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_187( F, T0, T, ... ) o_O( UNFOLD_F_186( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_186( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_188( F, T0, T, ... ) o_O( UNFOLD_F_187( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_187( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_189( F, T0, T, ... ) o_O( UNFOLD_F_188( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_188( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_190( F, T0, T, ... ) o_O( UNFOLD_F_189( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_189( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_191( F, T0, T, ... ) o_O( UNFOLD_F_190( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_190( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_192( F, T0, T, ... ) o_O( UNFOLD_F_191( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_191( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_193( F, T0, T, ... ) o_O( UNFOLD_F_192( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_192( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_194( F, T0, T, ... ) o_O( UNFOLD_F_193( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_193( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_195( F, T0, T, ... ) o_O( UNFOLD_F_194( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_194( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_196( F, T0, T, ... ) o_O( UNFOLD_F_195( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_195( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_197( F, T0, T, ... ) o_O( UNFOLD_F_196( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_196( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_198( F, T0, T, ... ) o_O( UNFOLD_F_197( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_197( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_199( F, T0, T, ... ) o_O( UNFOLD_F_198( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_198( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_200( F, T0, T, ... ) o_O( UNFOLD_F_199( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_199( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_201( F, T0, T, ... ) o_O( UNFOLD_F_200( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_200( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_202( F, T0, T, ... ) o_O( UNFOLD_F_201( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_201( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_203( F, T0, T, ... ) o_O( UNFOLD_F_202( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_202( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_204( F, T0, T, ... ) o_O( UNFOLD_F_203( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_203( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_205( F, T0, T, ... ) o_O( UNFOLD_F_204( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_204( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_206( F, T0, T, ... ) o_O( UNFOLD_F_205( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_205( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_207( F, T0, T, ... ) o_O( UNFOLD_F_206( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_206( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_208( F, T0, T, ... ) o_O( UNFOLD_F_207( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_207( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_209( F, T0, T, ... ) o_O( UNFOLD_F_208( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_208( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_210( F, T0, T, ... ) o_O( UNFOLD_F_209( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_209( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_211( F, T0, T, ... ) o_O( UNFOLD_F_210( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_210( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_212( F, T0, T, ... ) o_O( UNFOLD_F_211( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_211( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_213( F, T0, T, ... ) o_O( UNFOLD_F_212( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_212( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_214( F, T0, T, ... ) o_O( UNFOLD_F_213( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_213( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_215( F, T0, T, ... ) o_O( UNFOLD_F_214( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_214( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_216( F, T0, T, ... ) o_O( UNFOLD_F_215( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_215( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_217( F, T0, T, ... ) o_O( UNFOLD_F_216( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_216( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_218( F, T0, T, ... ) o_O( UNFOLD_F_217( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_217( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_219( F, T0, T, ... ) o_O( UNFOLD_F_218( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_218( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_220( F, T0, T, ... ) o_O( UNFOLD_F_219( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_219( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_221( F, T0, T, ... ) o_O( UNFOLD_F_220( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_220( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_222( F, T0, T, ... ) o_O( UNFOLD_F_221( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_221( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_223( F, T0, T, ... ) o_O( UNFOLD_F_222( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_222( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_224( F, T0, T, ... ) o_O( UNFOLD_F_223( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_223( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_225( F, T0, T, ... ) o_O( UNFOLD_F_224( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_224( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_226( F, T0, T, ... ) o_O( UNFOLD_F_225( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_225( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_227( F, T0, T, ... ) o_O( UNFOLD_F_226( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_226( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_228( F, T0, T, ... ) o_O( UNFOLD_F_227( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_227( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_229( F, T0, T, ... ) o_O( UNFOLD_F_228( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_228( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_230( F, T0, T, ... ) o_O( UNFOLD_F_229( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_229( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_231( F, T0, T, ... ) o_O( UNFOLD_F_230( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_230( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_232( F, T0, T, ... ) o_O( UNFOLD_F_231( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_231( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_233( F, T0, T, ... ) o_O( UNFOLD_F_232( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_232( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_234( F, T0, T, ... ) o_O( UNFOLD_F_233( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_233( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_235( F, T0, T, ... ) o_O( UNFOLD_F_234( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_234( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_236( F, T0, T, ... ) o_O( UNFOLD_F_235( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_235( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_237( F, T0, T, ... ) o_O( UNFOLD_F_236( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_236( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_238( F, T0, T, ... ) o_O( UNFOLD_F_237( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_237( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_239( F, T0, T, ... ) o_O( UNFOLD_F_238( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_238( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_240( F, T0, T, ... ) o_O( UNFOLD_F_239( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_239( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_241( F, T0, T, ... ) o_O( UNFOLD_F_240( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_240( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_242( F, T0, T, ... ) o_O( UNFOLD_F_241( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_241( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_243( F, T0, T, ... ) o_O( UNFOLD_F_242( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_242( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_244( F, T0, T, ... ) o_O( UNFOLD_F_243( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_243( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_245( F, T0, T, ... ) o_O( UNFOLD_F_244( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_244( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_246( F, T0, T, ... ) o_O( UNFOLD_F_245( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_245( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_247( F, T0, T, ... ) o_O( UNFOLD_F_246( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_246( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_248( F, T0, T, ... ) o_O( UNFOLD_F_247( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_247( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_249( F, T0, T, ... ) o_O( UNFOLD_F_248( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_248( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_250( F, T0, T, ... ) o_O( UNFOLD_F_249( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_249( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_251( F, T0, T, ... ) o_O( UNFOLD_F_250( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_250( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_252( F, T0, T, ... ) o_O( UNFOLD_F_251( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_251( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_253( F, T0, T, ... ) o_O( UNFOLD_F_252( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_252( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_254( F, T0, T, ... ) o_O( UNFOLD_F_253( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_253( F ), ## __VA_ARGS__ )) | |
#define UNFOLD_F_255( F, T0, T, ... ) o_O( UNFOLD_F_254( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_254( F ), ## __VA_ARGS__ )) | |
/** \endcond */ | |
#endif /* UNFOLD_H */ |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
""" | |
Generate unfold.h | |
""" | |
MAX = 255 | |
T = r"""/** | |
* \file unfold.h (generated by unfold_h.py) | |
* \brief Unfolding of C macros (up to %(max)d). | |
* \code | |
* UNFOLD( 3, T0, T, arg1, arg2 ) --> T0( 0, arg1, arg2 ) T( 1, arg1, arg2 ) T( 2, arg1, arg2 ) | |
* UNFOLD_FROM( 10, 3, T0, T, arg1, arg2 ) --> T0( 10, arg1, arg2 ) T( 11, arg1, arg2 ) T( 12, arg1, arg2 ) | |
* \endcode | |
* In case of `UNFOLD_FROM`, you must use `__concat_X` in macros (`T`) to concatenate index (`N`), for example: | |
* \code | |
* #define T0( N ) BIT_##N | |
* #define T( N ) | __concat_2( BIT_, N ) | |
* pool = UNFOLD_FROM( 2, 4, T0, T ); | |
* pool = BIT_2 | BIT_3 | BIT_4 | BIT_5; | |
* \endcode | |
*/ | |
#ifndef UNFOLD_H | |
#define UNFOLD_H | |
#ifndef __concat | |
#define __concat_2( h, t ) h##t | |
#define __concat( h, t ) __concat_2( h, t ) | |
#define __concat_3( h, b, t ) h##b##t | |
#endif | |
#define o_O( x ) x /* MSVC __VA_ARGS__ bug workaround */ | |
#define UNFOLD( L, T0, T, ... ) o_O( _UNFOLD( L, T0, T, ## __VA_ARGS__ )) | |
#define _UNFOLD( L, T0, T, ... ) o_O( UNFOLD_##L( T0, T, ## __VA_ARGS__ )) | |
#define UNFOLD_0( T0, T, ... ) | |
#define UNFOLD_1( T0, T, ... ) o_O( T0( 0, ## __VA_ARGS__ )) | |
/** \cond */ | |
%(_unfold)s | |
/** \endcond */ | |
#define _INC( N ) INC_##N | |
/** \cond */ | |
%(_inc)s | |
/** \endcond */ | |
#define ADD_1( N ) _INC( N ) | |
/** \cond */ | |
%(_add)s | |
/** \endcond */ | |
#define UNFOLD_FROM( F, L, T0, T, ... ) o_O( _UNFOLD_F( F, L, T0, T, ## __VA_ARGS__ )) | |
#define _UNFOLD_F( F, L, T0, T, ... ) o_O( UNFOLD_F_##L( F, T0, T, ## __VA_ARGS__ )) | |
#define UNFOLD_F_0( F, T0, T, ... ) | |
#define UNFOLD_F_1( F, T0, T, ... ) o_O( T0( F, ## __VA_ARGS__ )) | |
/** \cond */ | |
%(_from)s | |
/** \endcond */ | |
#endif /* UNFOLD_H */ | |
""" | |
_UNFOLD = "#define UNFOLD_%d( T0, T, ... )\to_O( UNFOLD_%d( T0, T, ## __VA_ARGS__ )) o_O( T( %d, ## __VA_ARGS__ ))" | |
_INC = "#define INC_%d\t%d" | |
_ADD = "#define ADD_%d( N )\tADD_%d( _INC( N ))" | |
_FROM = "#define UNFOLD_F_%d( F, T0, T, ... )\to_O( UNFOLD_F_%d( F, T0, T, ## __VA_ARGS__ )) o_O( T( ADD_%d( F ), ## __VA_ARGS__ ))" | |
if __name__ == '__main__': | |
with open( './unfold.h', 'w' ) as f: | |
f.write( T % { | |
'max': MAX, | |
'_unfold': '\n'.join([ _UNFOLD % ( i + 1, i, i ) for i in range( 1, MAX )]), | |
'_inc' : '\n'.join([ _INC % ( i, i + 1 ) for i in range( 0, ( MAX + 1 ) * 2 )]), | |
'_add' : '\n'.join([ _ADD % ( i + 1, i ) for i in range( 1, ( MAX - 1 ))]), | |
'_from' : '\n'.join([ _FROM % ( i + 1, i, i ) for i in range( 1, MAX )]), | |
}) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment