Replaced function pointers with boost::function.
This commit is contained in:
		
							
								
								
									
										63
									
								
								library/PolyVoxCore/include/boost/utility/addressof.hpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										63
									
								
								library/PolyVoxCore/include/boost/utility/addressof.hpp
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,63 @@ | ||||
| // Copyright (C) 2002 Brad King (brad.king@kitware.com)  | ||||
| //                    Douglas Gregor (gregod@cs.rpi.edu) | ||||
| // | ||||
| // Copyright (C) 2002, 2008 Peter Dimov | ||||
| // | ||||
| // Distributed under the Boost Software License, Version 1.0. (See | ||||
| // accompanying file LICENSE_1_0.txt or copy at | ||||
| // http://www.boost.org/LICENSE_1_0.txt) | ||||
|  | ||||
| // For more information, see http://www.boost.org | ||||
|  | ||||
| #ifndef BOOST_UTILITY_ADDRESSOF_HPP | ||||
| # define BOOST_UTILITY_ADDRESSOF_HPP | ||||
|  | ||||
| # include <boost/config.hpp> | ||||
| # include <boost/detail/workaround.hpp> | ||||
|  | ||||
| namespace boost | ||||
| { | ||||
|  | ||||
| namespace detail | ||||
| { | ||||
|  | ||||
| template<class T> struct addressof_impl | ||||
| { | ||||
|     static inline T * f( T & v, long ) | ||||
|     { | ||||
|         return reinterpret_cast<T*>( | ||||
|             &const_cast<char&>(reinterpret_cast<const volatile char &>(v))); | ||||
|     } | ||||
|  | ||||
|     static inline T * f( T * v, int ) | ||||
|     { | ||||
|         return v; | ||||
|     } | ||||
| }; | ||||
|  | ||||
| } // namespace detail | ||||
|  | ||||
| template<class T> T * addressof( T & v ) | ||||
| { | ||||
|     return boost::detail::addressof_impl<T>::f( v, 0 ); | ||||
| } | ||||
|  | ||||
| // Borland doesn't like casting an array reference to a char reference | ||||
| // but these overloads work around the problem. | ||||
| # if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564)) | ||||
| template<typename T,std::size_t N> | ||||
| T (*addressof(T (&t)[N]))[N] | ||||
| { | ||||
|    return reinterpret_cast<T(*)[N]>(&t); | ||||
| } | ||||
|  | ||||
| template<typename T,std::size_t N> | ||||
| const T (*addressof(const T (&t)[N]))[N] | ||||
| { | ||||
|    return reinterpret_cast<const T(*)[N]>(&t); | ||||
| } | ||||
| # endif | ||||
|  | ||||
| } // namespace boost | ||||
|  | ||||
| #endif // BOOST_UTILITY_ADDRESSOF_HPP | ||||
| @@ -0,0 +1,87 @@ | ||||
| //  boost utility/base_from_member.hpp header file  --------------------------// | ||||
|  | ||||
| //  Copyright 2001, 2003, 2004 Daryle Walker.  Use, modification, and | ||||
| //  distribution are subject to the Boost Software License, Version 1.0.  (See | ||||
| //  accompanying file LICENSE_1_0.txt or a copy at | ||||
| //  <http://www.boost.org/LICENSE_1_0.txt>.) | ||||
|  | ||||
| //  See <http://www.boost.org/libs/utility/> for the library's home page. | ||||
|  | ||||
| #ifndef BOOST_UTILITY_BASE_FROM_MEMBER_HPP | ||||
| #define BOOST_UTILITY_BASE_FROM_MEMBER_HPP | ||||
|  | ||||
| #include <boost/preprocessor/arithmetic/inc.hpp> | ||||
| #include <boost/preprocessor/repetition/enum_binary_params.hpp> | ||||
| #include <boost/preprocessor/repetition/enum_params.hpp> | ||||
| #include <boost/preprocessor/repetition/repeat_from_to.hpp> | ||||
|  | ||||
|  | ||||
| //  Base-from-member arity configuration macro  ------------------------------// | ||||
|  | ||||
| // The following macro determines how many arguments will be in the largest | ||||
| // constructor template of base_from_member.  Constructor templates will be | ||||
| // generated from one argument to this maximum.  Code from other files can read | ||||
| // this number if they need to always match the exact maximum base_from_member | ||||
| // uses.  The maximum constructor length can be changed by overriding the | ||||
| // #defined constant.  Make sure to apply the override, if any, for all source | ||||
| // files during project compiling for consistency. | ||||
|  | ||||
| // Contributed by Jonathan Turkanis | ||||
|  | ||||
| #ifndef BOOST_BASE_FROM_MEMBER_MAX_ARITY | ||||
| #define BOOST_BASE_FROM_MEMBER_MAX_ARITY  10 | ||||
| #endif | ||||
|  | ||||
|  | ||||
| //  An iteration of a constructor template for base_from_member  -------------// | ||||
|  | ||||
| // A macro that should expand to: | ||||
| //     template < typename T1, ..., typename Tn > | ||||
| //     base_from_member( T1 x1, ..., Tn xn ) | ||||
| //         : member( x1, ..., xn ) | ||||
| //         {} | ||||
| // This macro should only persist within this file. | ||||
|  | ||||
| #define BOOST_PRIVATE_CTR_DEF( z, n, data )                            \ | ||||
|     template < BOOST_PP_ENUM_PARAMS(n, typename T) >                   \ | ||||
|     explicit base_from_member( BOOST_PP_ENUM_BINARY_PARAMS(n, T, x) )  \ | ||||
|         : member( BOOST_PP_ENUM_PARAMS(n, x) )                         \ | ||||
|         {}                                                             \ | ||||
|     /**/ | ||||
|  | ||||
|  | ||||
| namespace boost | ||||
| { | ||||
|  | ||||
| //  Base-from-member class template  -----------------------------------------// | ||||
|  | ||||
| // Helper to initialize a base object so a derived class can use this | ||||
| // object in the initialization of another base class.  Used by | ||||
| // Dietmar Kuehl from ideas by Ron Klatcho to solve the problem of a | ||||
| // base class needing to be initialized by a member. | ||||
|  | ||||
| // Contributed by Daryle Walker | ||||
|  | ||||
| template < typename MemberType, int UniqueID = 0 > | ||||
| class base_from_member | ||||
| { | ||||
| protected: | ||||
|     MemberType  member; | ||||
|  | ||||
|     base_from_member() | ||||
|         : member() | ||||
|         {} | ||||
|  | ||||
|     BOOST_PP_REPEAT_FROM_TO( 1, BOOST_PP_INC(BOOST_BASE_FROM_MEMBER_MAX_ARITY), | ||||
|      BOOST_PRIVATE_CTR_DEF, _ ) | ||||
|  | ||||
| };  // boost::base_from_member | ||||
|  | ||||
| }  // namespace boost | ||||
|  | ||||
|  | ||||
| // Undo any private macros | ||||
| #undef BOOST_PRIVATE_CTR_DEF | ||||
|  | ||||
|  | ||||
| #endif  // BOOST_UTILITY_BASE_FROM_MEMBER_HPP | ||||
							
								
								
									
										708
									
								
								library/PolyVoxCore/include/boost/utility/binary.hpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										708
									
								
								library/PolyVoxCore/include/boost/utility/binary.hpp
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,708 @@ | ||||
| /*============================================================================= | ||||
|     Copyright (c) 2005 Matthew Calabrese | ||||
|  | ||||
|     Use, modification and distribution is subject to the Boost Software | ||||
|     License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at | ||||
|     http://www.boost.org/LICENSE_1_0.txt) | ||||
| ==============================================================================*/ | ||||
|  | ||||
| #ifndef BOOST_UTILITY_BINARY_HPP | ||||
| #define BOOST_UTILITY_BINARY_HPP | ||||
|  | ||||
| /*============================================================================= | ||||
|  | ||||
|     Binary Literal Utility | ||||
|     ______________________ | ||||
|  | ||||
|  | ||||
|     The following code works by converting the input bit pattern into a | ||||
|     Boost.Preprocessor sequence, then converting groupings of 3 bits each into | ||||
|     the corresponding octal digit, and finally concatenating all of the digits | ||||
|     together along with a leading zero. This yields a standard octal literal | ||||
|     with the desired value as specified in bits. | ||||
|  | ||||
| ==============================================================================*/ | ||||
|  | ||||
| #include <boost/preprocessor/control/deduce_d.hpp> | ||||
| #include <boost/preprocessor/facilities/identity.hpp> | ||||
| #include <boost/preprocessor/cat.hpp> | ||||
| #include <boost/preprocessor/seq/cat.hpp> | ||||
| #include <boost/preprocessor/seq/transform.hpp> | ||||
| #include <boost/preprocessor/arithmetic/mod.hpp> | ||||
| #include <boost/preprocessor/seq/size.hpp> | ||||
| #include <boost/preprocessor/facilities/empty.hpp> | ||||
| #include <boost/preprocessor/control/while.hpp> | ||||
|  | ||||
| #define BOOST_BINARY( bit_groupings )                                          \ | ||||
|   BOOST_BINARY_LITERAL_D( BOOST_PP_DEDUCE_D(), bit_groupings )  | ||||
|  | ||||
| #define BOOST_BINARY_U( bit_groupings )                                        \ | ||||
|   BOOST_SUFFIXED_BINARY_LITERAL( bit_groupings, U )  | ||||
|  | ||||
| #define BOOST_BINARY_L( bit_groupings )                                        \ | ||||
|   BOOST_SUFFIXED_BINARY_LITERAL( bit_groupings, L )  | ||||
|  | ||||
| #define BOOST_BINARY_UL( bit_groupings )                                       \ | ||||
|   BOOST_SUFFIXED_BINARY_LITERAL( bit_groupings, UL )  | ||||
|  | ||||
| #define BOOST_BINARY_LU( bit_groupings )                                       \ | ||||
|   BOOST_SUFFIXED_BINARY_LITERAL( bit_groupings, LU )  | ||||
|  | ||||
| #define BOOST_BINARY_LL( bit_groupings )                                       \ | ||||
|   BOOST_SUFFIXED_BINARY_LITERAL( bit_groupings, LL )  | ||||
|  | ||||
| #define BOOST_BINARY_ULL( bit_groupings )                                      \ | ||||
|   BOOST_SUFFIXED_BINARY_LITERAL( bit_groupings, ULL )  | ||||
|  | ||||
| #define BOOST_BINARY_LLU( bit_groupings )                                      \ | ||||
|   BOOST_SUFFIXED_BINARY_LITERAL( bit_groupings, LLU )  | ||||
|  | ||||
| #define BOOST_SUFFIXED_BINARY_LITERAL( bit_groupings, suffix )                 \ | ||||
|   BOOST_SUFFIXED_BINARY_LITERAL_D( BOOST_PP_DEDUCE_D(), bit_groupings, suffix )  | ||||
|  | ||||
| #define BOOST_SUFFIXED_BINARY_LITERAL_D( d, bit_groupings, suffix )            \ | ||||
|   BOOST_PP_CAT( BOOST_BINARY_LITERAL_D( d, bit_groupings ), suffix )  | ||||
|  | ||||
| #define BOOST_BINARY_LITERAL_D( d, bit_groupings )                             \ | ||||
|   BOOST_PP_SEQ_CAT                                                             \ | ||||
|   ( (0) BOOST_DETAIL_CREATE_BINARY_LITERAL_OCTAL_SEQUENCE( d, bit_groupings )  \ | ||||
|   )  | ||||
|  | ||||
| #define BOOST_DETAIL_CREATE_BINARY_LITERAL_OCTAL_SEQUENCE( d, bit_groupings )  \ | ||||
|   BOOST_PP_SEQ_TRANSFORM                                                       \ | ||||
|   ( BOOST_DETAIL_TRIPLE_TO_OCTAL_OPERATION                                     \ | ||||
|   , BOOST_PP_NIL                                                               \ | ||||
|   , BOOST_PP_IDENTITY( BOOST_DETAIL_CONVERT_BIT_SEQUENCE_TO_TRIPLE_SEQUENCE )()\ | ||||
|     ( BOOST_DETAIL_COMPLETE_TRIPLE_SEQUENCE                                    \ | ||||
|       (                                                                        \ | ||||
|         d                                                                      \ | ||||
|       , BOOST_DETAIL_CREATE_BINARY_LITERAL_BIT_SEQUENCE( d, bit_groupings )    \ | ||||
|       )                                                                        \ | ||||
|     )                                                                          \ | ||||
|   )  | ||||
|  | ||||
| #define BOOST_DETAIL_CONVERT_BIT_SEQUENCE_TO_TRIPLE_SEQUENCE( bit_sequence )   \ | ||||
|   BOOST_PP_CAT                                                                 \ | ||||
|   ( BOOST_DETAIL_CONVERT_BIT_SEQUENCE_TO_PARENTHETIC_TUPLE_1 bit_sequence      \ | ||||
|   , END_BIT                                                                    \ | ||||
|   )  | ||||
|  | ||||
| #define BOOST_DETAIL_BITS_PER_OCTIT 3 | ||||
|  | ||||
| #define BOOST_DETAIL_COMPLETE_TRIPLE_SEQUENCE( d, incomplete_nibble_sequence ) \ | ||||
|   BOOST_PP_CAT                                                                 \ | ||||
|   ( BOOST_DETAIL_CREATE_TRIPLE_COMPLETION_SEQUENCE_                            \ | ||||
|   , BOOST_PP_MOD_D( d                                                          \ | ||||
|                   , BOOST_PP_SEQ_SIZE( incomplete_nibble_sequence )            \ | ||||
|                   , BOOST_DETAIL_BITS_PER_OCTIT                                \ | ||||
|                   )                                                            \ | ||||
|   )                                                                            \ | ||||
|   incomplete_nibble_sequence  | ||||
|  | ||||
| #define BOOST_DETAIL_FIXED_COMPL( bit )                                        \ | ||||
|   BOOST_PP_CAT( BOOST_DETAIL_FIXED_COMPL_, bit ) | ||||
|  | ||||
| #define BOOST_DETAIL_FIXED_COMPL_0 1  | ||||
|  | ||||
| #define BOOST_DETAIL_FIXED_COMPL_1 0  | ||||
|  | ||||
| #define BOOST_DETAIL_CREATE_BINARY_LITERAL_BIT_SEQUENCE( d, bit_groupings )    \ | ||||
|   BOOST_PP_EMPTY                                                               \ | ||||
|   BOOST_PP_CAT( BOOST_PP_WHILE_, d )                                           \ | ||||
|   ( BOOST_DETAIL_BINARY_LITERAL_PREDICATE                                      \ | ||||
|   , BOOST_DETAIL_BINARY_LITERAL_OPERATION                                      \ | ||||
|   , bit_groupings ()                                                           \ | ||||
|   )  | ||||
|  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_PREDICATE( d, state )                      \ | ||||
|   BOOST_DETAIL_FIXED_COMPL( BOOST_DETAIL_IS_NULLARY_ARGS( state ) )  | ||||
|  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_OPERATION( d, state )                      \ | ||||
|   BOOST_DETAIL_SPLIT_AND_SWAP                                                  \ | ||||
|   ( BOOST_PP_CAT( BOOST_DETAIL_BINARY_LITERAL_ELEMENT_, state ) )  | ||||
|  | ||||
| #define BOOST_DETAIL_TRIPLE_TO_OCTAL_OPERATION( s, dummy_param, tuple )        \ | ||||
|   BOOST_DETAIL_TERNARY_TRIPLE_TO_OCTAL tuple  | ||||
|  | ||||
| #define BOOST_DETAIL_TERNARY_TRIPLE_TO_OCTAL( bit2, bit1, bit0 )               \ | ||||
|   BOOST_DETAIL_TRIPLE_TO_OCTAL_ ## bit2 ## bit1 ## bit0  | ||||
|  | ||||
| #define BOOST_DETAIL_CREATE_TRIPLE_COMPLETION_SEQUENCE_1 (0)(0) | ||||
| #define BOOST_DETAIL_CREATE_TRIPLE_COMPLETION_SEQUENCE_2 (0) | ||||
| #define BOOST_DETAIL_CREATE_TRIPLE_COMPLETION_SEQUENCE_0   | ||||
|  | ||||
| #define BOOST_DETAIL_CONVERT_BIT_SEQUENCE_TO_PARENTHETIC_TUPLE_1END_BIT   | ||||
|  | ||||
| #define BOOST_DETAIL_CONVERT_BIT_SEQUENCE_TO_PARENTHETIC_TUPLE_1( bit )        \ | ||||
|   ( ( bit, BOOST_DETAIL_CONVERT_BIT_SEQUENCE_TO_PARENTHETIC_TUPLE_2  | ||||
|  | ||||
| #define BOOST_DETAIL_CONVERT_BIT_SEQUENCE_TO_PARENTHETIC_TUPLE_2( bit )        \ | ||||
|   bit, BOOST_DETAIL_CONVERT_BIT_SEQUENCE_TO_PARENTHETIC_TUPLE_3  | ||||
|  | ||||
| #define BOOST_DETAIL_CONVERT_BIT_SEQUENCE_TO_PARENTHETIC_TUPLE_3( bit )        \ | ||||
|   bit ) ) BOOST_DETAIL_CONVERT_BIT_SEQUENCE_TO_PARENTHETIC_TUPLE_1  | ||||
|  | ||||
| #define BOOST_DETAIL_SPLIT_AND_SWAP( params )                                  \ | ||||
|   BOOST_PP_IDENTITY( BOOST_DETAIL_SPLIT_AND_SWAP_PARAMS )()( params ) | ||||
|  | ||||
| #define BOOST_DETAIL_SPLIT_AND_SWAP_PARAMS( first_param, second_param )        \ | ||||
|   second_param first_param  | ||||
|  | ||||
| #define BOOST_DETAIL_LEFT_OF_COMMA( params )                                   \ | ||||
|   BOOST_PP_IDENTITY( BOOST_DETAIL_FIRST_MACRO_PARAM )()( params )  | ||||
|  | ||||
| #define BOOST_DETAIL_FIRST_MACRO_PARAM( first_param, second_param )            \ | ||||
|   first_param  | ||||
|  | ||||
| /* Begin derived concepts from Chaos by Paul Mensonides */ | ||||
|  | ||||
| #define BOOST_DETAIL_IS_NULLARY_ARGS( param )                                  \ | ||||
|   BOOST_DETAIL_LEFT_OF_COMMA                                                   \ | ||||
|   ( BOOST_PP_CAT( BOOST_DETAIL_IS_NULLARY_ARGS_R_                              \ | ||||
|                 , BOOST_DETAIL_IS_NULLARY_ARGS_C param                         \ | ||||
|                 )                                                              \ | ||||
|   )  | ||||
|  | ||||
| #define BOOST_DETAIL_IS_NULLARY_ARGS_C()                                       \ | ||||
|   1  | ||||
|  | ||||
| #define BOOST_DETAIL_IS_NULLARY_ARGS_R_1                                       \ | ||||
|   1, BOOST_PP_NIL  | ||||
|  | ||||
| #define BOOST_DETAIL_IS_NULLARY_ARGS_R_BOOST_DETAIL_IS_NULLARY_ARGS_C          \ | ||||
|   0, BOOST_PP_NIL  | ||||
|  | ||||
| /* End derived concepts from Chaos by Paul Mensonides */ | ||||
|  | ||||
| #define BOOST_DETAIL_TRIPLE_TO_OCTAL_000 0  | ||||
| #define BOOST_DETAIL_TRIPLE_TO_OCTAL_001 1  | ||||
| #define BOOST_DETAIL_TRIPLE_TO_OCTAL_010 2  | ||||
| #define BOOST_DETAIL_TRIPLE_TO_OCTAL_011 3  | ||||
| #define BOOST_DETAIL_TRIPLE_TO_OCTAL_100 4  | ||||
| #define BOOST_DETAIL_TRIPLE_TO_OCTAL_101 5  | ||||
| #define BOOST_DETAIL_TRIPLE_TO_OCTAL_110 6  | ||||
| #define BOOST_DETAIL_TRIPLE_TO_OCTAL_111 7  | ||||
|  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0 (0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1 (1),  | ||||
|  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00 (0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01 (0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10 (1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11 (1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00 (0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01 (0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10 (1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11 (1)(1),  | ||||
|  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_000 (0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_001 (0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_010 (0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_011 (0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_100 (1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_101 (1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_110 (1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_111 (1)(1)(1),  | ||||
|  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0000 (0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0001 (0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0010 (0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0011 (0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0100 (0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0101 (0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0110 (0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0111 (0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1000 (1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1001 (1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1010 (1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1011 (1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1100 (1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1101 (1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1110 (1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1111 (1)(1)(1)(1),  | ||||
|  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00000 (0)(0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00001 (0)(0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00010 (0)(0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00011 (0)(0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00100 (0)(0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00101 (0)(0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00110 (0)(0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00111 (0)(0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01000 (0)(1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01001 (0)(1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01010 (0)(1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01011 (0)(1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01100 (0)(1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01101 (0)(1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01110 (0)(1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01111 (0)(1)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10000 (1)(0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10001 (1)(0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10010 (1)(0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10011 (1)(0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10100 (1)(0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10101 (1)(0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10110 (1)(0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10111 (1)(0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11000 (1)(1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11001 (1)(1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11010 (1)(1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11011 (1)(1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11100 (1)(1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11101 (1)(1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11110 (1)(1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11111 (1)(1)(1)(1)(1),  | ||||
|  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_000000 (0)(0)(0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_000001 (0)(0)(0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_000010 (0)(0)(0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_000011 (0)(0)(0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_000100 (0)(0)(0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_000101 (0)(0)(0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_000110 (0)(0)(0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_000111 (0)(0)(0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_001000 (0)(0)(1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_001001 (0)(0)(1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_001010 (0)(0)(1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_001011 (0)(0)(1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_001100 (0)(0)(1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_001101 (0)(0)(1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_001110 (0)(0)(1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_001111 (0)(0)(1)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_010000 (0)(1)(0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_010001 (0)(1)(0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_010010 (0)(1)(0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_010011 (0)(1)(0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_010100 (0)(1)(0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_010101 (0)(1)(0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_010110 (0)(1)(0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_010111 (0)(1)(0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_011000 (0)(1)(1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_011001 (0)(1)(1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_011010 (0)(1)(1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_011011 (0)(1)(1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_011100 (0)(1)(1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_011101 (0)(1)(1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_011110 (0)(1)(1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_011111 (0)(1)(1)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_100000 (1)(0)(0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_100001 (1)(0)(0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_100010 (1)(0)(0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_100011 (1)(0)(0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_100100 (1)(0)(0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_100101 (1)(0)(0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_100110 (1)(0)(0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_100111 (1)(0)(0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_101000 (1)(0)(1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_101001 (1)(0)(1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_101010 (1)(0)(1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_101011 (1)(0)(1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_101100 (1)(0)(1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_101101 (1)(0)(1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_101110 (1)(0)(1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_101111 (1)(0)(1)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_110000 (1)(1)(0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_110001 (1)(1)(0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_110010 (1)(1)(0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_110011 (1)(1)(0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_110100 (1)(1)(0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_110101 (1)(1)(0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_110110 (1)(1)(0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_110111 (1)(1)(0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_111000 (1)(1)(1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_111001 (1)(1)(1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_111010 (1)(1)(1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_111011 (1)(1)(1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_111100 (1)(1)(1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_111101 (1)(1)(1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_111110 (1)(1)(1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_111111 (1)(1)(1)(1)(1)(1),  | ||||
|  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0000000 (0)(0)(0)(0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0000001 (0)(0)(0)(0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0000010 (0)(0)(0)(0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0000011 (0)(0)(0)(0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0000100 (0)(0)(0)(0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0000101 (0)(0)(0)(0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0000110 (0)(0)(0)(0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0000111 (0)(0)(0)(0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0001000 (0)(0)(0)(1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0001001 (0)(0)(0)(1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0001010 (0)(0)(0)(1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0001011 (0)(0)(0)(1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0001100 (0)(0)(0)(1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0001101 (0)(0)(0)(1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0001110 (0)(0)(0)(1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0001111 (0)(0)(0)(1)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0010000 (0)(0)(1)(0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0010001 (0)(0)(1)(0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0010010 (0)(0)(1)(0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0010011 (0)(0)(1)(0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0010100 (0)(0)(1)(0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0010101 (0)(0)(1)(0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0010110 (0)(0)(1)(0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0010111 (0)(0)(1)(0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0011000 (0)(0)(1)(1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0011001 (0)(0)(1)(1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0011010 (0)(0)(1)(1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0011011 (0)(0)(1)(1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0011100 (0)(0)(1)(1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0011101 (0)(0)(1)(1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0011110 (0)(0)(1)(1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0011111 (0)(0)(1)(1)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0100000 (0)(1)(0)(0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0100001 (0)(1)(0)(0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0100010 (0)(1)(0)(0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0100011 (0)(1)(0)(0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0100100 (0)(1)(0)(0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0100101 (0)(1)(0)(0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0100110 (0)(1)(0)(0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0100111 (0)(1)(0)(0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0101000 (0)(1)(0)(1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0101001 (0)(1)(0)(1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0101010 (0)(1)(0)(1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0101011 (0)(1)(0)(1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0101100 (0)(1)(0)(1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0101101 (0)(1)(0)(1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0101110 (0)(1)(0)(1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0101111 (0)(1)(0)(1)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0110000 (0)(1)(1)(0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0110001 (0)(1)(1)(0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0110010 (0)(1)(1)(0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0110011 (0)(1)(1)(0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0110100 (0)(1)(1)(0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0110101 (0)(1)(1)(0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0110110 (0)(1)(1)(0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0110111 (0)(1)(1)(0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0111000 (0)(1)(1)(1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0111001 (0)(1)(1)(1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0111010 (0)(1)(1)(1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0111011 (0)(1)(1)(1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0111100 (0)(1)(1)(1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0111101 (0)(1)(1)(1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0111110 (0)(1)(1)(1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_0111111 (0)(1)(1)(1)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1000000 (1)(0)(0)(0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1000001 (1)(0)(0)(0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1000010 (1)(0)(0)(0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1000011 (1)(0)(0)(0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1000100 (1)(0)(0)(0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1000101 (1)(0)(0)(0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1000110 (1)(0)(0)(0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1000111 (1)(0)(0)(0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1001000 (1)(0)(0)(1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1001001 (1)(0)(0)(1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1001010 (1)(0)(0)(1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1001011 (1)(0)(0)(1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1001100 (1)(0)(0)(1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1001101 (1)(0)(0)(1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1001110 (1)(0)(0)(1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1001111 (1)(0)(0)(1)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1010000 (1)(0)(1)(0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1010001 (1)(0)(1)(0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1010010 (1)(0)(1)(0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1010011 (1)(0)(1)(0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1010100 (1)(0)(1)(0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1010101 (1)(0)(1)(0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1010110 (1)(0)(1)(0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1010111 (1)(0)(1)(0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1011000 (1)(0)(1)(1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1011001 (1)(0)(1)(1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1011010 (1)(0)(1)(1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1011011 (1)(0)(1)(1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1011100 (1)(0)(1)(1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1011101 (1)(0)(1)(1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1011110 (1)(0)(1)(1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1011111 (1)(0)(1)(1)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1100000 (1)(1)(0)(0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1100001 (1)(1)(0)(0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1100010 (1)(1)(0)(0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1100011 (1)(1)(0)(0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1100100 (1)(1)(0)(0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1100101 (1)(1)(0)(0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1100110 (1)(1)(0)(0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1100111 (1)(1)(0)(0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1101000 (1)(1)(0)(1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1101001 (1)(1)(0)(1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1101010 (1)(1)(0)(1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1101011 (1)(1)(0)(1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1101100 (1)(1)(0)(1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1101101 (1)(1)(0)(1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1101110 (1)(1)(0)(1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1101111 (1)(1)(0)(1)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1110000 (1)(1)(1)(0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1110001 (1)(1)(1)(0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1110010 (1)(1)(1)(0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1110011 (1)(1)(1)(0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1110100 (1)(1)(1)(0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1110101 (1)(1)(1)(0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1110110 (1)(1)(1)(0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1110111 (1)(1)(1)(0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1111000 (1)(1)(1)(1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1111001 (1)(1)(1)(1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1111010 (1)(1)(1)(1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1111011 (1)(1)(1)(1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1111100 (1)(1)(1)(1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1111101 (1)(1)(1)(1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1111110 (1)(1)(1)(1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_1111111 (1)(1)(1)(1)(1)(1)(1),  | ||||
|  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00000000 (0)(0)(0)(0)(0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00000001 (0)(0)(0)(0)(0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00000010 (0)(0)(0)(0)(0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00000011 (0)(0)(0)(0)(0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00000100 (0)(0)(0)(0)(0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00000101 (0)(0)(0)(0)(0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00000110 (0)(0)(0)(0)(0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00000111 (0)(0)(0)(0)(0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00001000 (0)(0)(0)(0)(1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00001001 (0)(0)(0)(0)(1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00001010 (0)(0)(0)(0)(1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00001011 (0)(0)(0)(0)(1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00001100 (0)(0)(0)(0)(1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00001101 (0)(0)(0)(0)(1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00001110 (0)(0)(0)(0)(1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00001111 (0)(0)(0)(0)(1)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00010000 (0)(0)(0)(1)(0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00010001 (0)(0)(0)(1)(0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00010010 (0)(0)(0)(1)(0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00010011 (0)(0)(0)(1)(0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00010100 (0)(0)(0)(1)(0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00010101 (0)(0)(0)(1)(0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00010110 (0)(0)(0)(1)(0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00010111 (0)(0)(0)(1)(0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00011000 (0)(0)(0)(1)(1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00011001 (0)(0)(0)(1)(1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00011010 (0)(0)(0)(1)(1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00011011 (0)(0)(0)(1)(1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00011100 (0)(0)(0)(1)(1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00011101 (0)(0)(0)(1)(1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00011110 (0)(0)(0)(1)(1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00011111 (0)(0)(0)(1)(1)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00100000 (0)(0)(1)(0)(0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00100001 (0)(0)(1)(0)(0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00100010 (0)(0)(1)(0)(0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00100011 (0)(0)(1)(0)(0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00100100 (0)(0)(1)(0)(0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00100101 (0)(0)(1)(0)(0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00100110 (0)(0)(1)(0)(0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00100111 (0)(0)(1)(0)(0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00101000 (0)(0)(1)(0)(1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00101001 (0)(0)(1)(0)(1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00101010 (0)(0)(1)(0)(1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00101011 (0)(0)(1)(0)(1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00101100 (0)(0)(1)(0)(1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00101101 (0)(0)(1)(0)(1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00101110 (0)(0)(1)(0)(1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00101111 (0)(0)(1)(0)(1)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00110000 (0)(0)(1)(1)(0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00110001 (0)(0)(1)(1)(0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00110010 (0)(0)(1)(1)(0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00110011 (0)(0)(1)(1)(0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00110100 (0)(0)(1)(1)(0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00110101 (0)(0)(1)(1)(0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00110110 (0)(0)(1)(1)(0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00110111 (0)(0)(1)(1)(0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00111000 (0)(0)(1)(1)(1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00111001 (0)(0)(1)(1)(1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00111010 (0)(0)(1)(1)(1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00111011 (0)(0)(1)(1)(1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00111100 (0)(0)(1)(1)(1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00111101 (0)(0)(1)(1)(1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00111110 (0)(0)(1)(1)(1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_00111111 (0)(0)(1)(1)(1)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01000000 (0)(1)(0)(0)(0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01000001 (0)(1)(0)(0)(0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01000010 (0)(1)(0)(0)(0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01000011 (0)(1)(0)(0)(0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01000100 (0)(1)(0)(0)(0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01000101 (0)(1)(0)(0)(0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01000110 (0)(1)(0)(0)(0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01000111 (0)(1)(0)(0)(0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01001000 (0)(1)(0)(0)(1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01001001 (0)(1)(0)(0)(1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01001010 (0)(1)(0)(0)(1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01001011 (0)(1)(0)(0)(1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01001100 (0)(1)(0)(0)(1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01001101 (0)(1)(0)(0)(1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01001110 (0)(1)(0)(0)(1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01001111 (0)(1)(0)(0)(1)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01010000 (0)(1)(0)(1)(0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01010001 (0)(1)(0)(1)(0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01010010 (0)(1)(0)(1)(0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01010011 (0)(1)(0)(1)(0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01010100 (0)(1)(0)(1)(0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01010101 (0)(1)(0)(1)(0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01010110 (0)(1)(0)(1)(0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01010111 (0)(1)(0)(1)(0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01011000 (0)(1)(0)(1)(1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01011001 (0)(1)(0)(1)(1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01011010 (0)(1)(0)(1)(1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01011011 (0)(1)(0)(1)(1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01011100 (0)(1)(0)(1)(1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01011101 (0)(1)(0)(1)(1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01011110 (0)(1)(0)(1)(1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01011111 (0)(1)(0)(1)(1)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01100000 (0)(1)(1)(0)(0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01100001 (0)(1)(1)(0)(0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01100010 (0)(1)(1)(0)(0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01100011 (0)(1)(1)(0)(0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01100100 (0)(1)(1)(0)(0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01100101 (0)(1)(1)(0)(0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01100110 (0)(1)(1)(0)(0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01100111 (0)(1)(1)(0)(0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01101000 (0)(1)(1)(0)(1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01101001 (0)(1)(1)(0)(1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01101010 (0)(1)(1)(0)(1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01101011 (0)(1)(1)(0)(1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01101100 (0)(1)(1)(0)(1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01101101 (0)(1)(1)(0)(1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01101110 (0)(1)(1)(0)(1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01101111 (0)(1)(1)(0)(1)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01110000 (0)(1)(1)(1)(0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01110001 (0)(1)(1)(1)(0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01110010 (0)(1)(1)(1)(0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01110011 (0)(1)(1)(1)(0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01110100 (0)(1)(1)(1)(0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01110101 (0)(1)(1)(1)(0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01110110 (0)(1)(1)(1)(0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01110111 (0)(1)(1)(1)(0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01111000 (0)(1)(1)(1)(1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01111001 (0)(1)(1)(1)(1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01111010 (0)(1)(1)(1)(1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01111011 (0)(1)(1)(1)(1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01111100 (0)(1)(1)(1)(1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01111101 (0)(1)(1)(1)(1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01111110 (0)(1)(1)(1)(1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_01111111 (0)(1)(1)(1)(1)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10000000 (1)(0)(0)(0)(0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10000001 (1)(0)(0)(0)(0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10000010 (1)(0)(0)(0)(0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10000011 (1)(0)(0)(0)(0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10000100 (1)(0)(0)(0)(0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10000101 (1)(0)(0)(0)(0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10000110 (1)(0)(0)(0)(0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10000111 (1)(0)(0)(0)(0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10001000 (1)(0)(0)(0)(1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10001001 (1)(0)(0)(0)(1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10001010 (1)(0)(0)(0)(1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10001011 (1)(0)(0)(0)(1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10001100 (1)(0)(0)(0)(1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10001101 (1)(0)(0)(0)(1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10001110 (1)(0)(0)(0)(1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10001111 (1)(0)(0)(0)(1)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10010000 (1)(0)(0)(1)(0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10010001 (1)(0)(0)(1)(0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10010010 (1)(0)(0)(1)(0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10010011 (1)(0)(0)(1)(0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10010100 (1)(0)(0)(1)(0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10010101 (1)(0)(0)(1)(0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10010110 (1)(0)(0)(1)(0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10010111 (1)(0)(0)(1)(0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10011000 (1)(0)(0)(1)(1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10011001 (1)(0)(0)(1)(1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10011010 (1)(0)(0)(1)(1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10011011 (1)(0)(0)(1)(1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10011100 (1)(0)(0)(1)(1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10011101 (1)(0)(0)(1)(1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10011110 (1)(0)(0)(1)(1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10011111 (1)(0)(0)(1)(1)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10100000 (1)(0)(1)(0)(0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10100001 (1)(0)(1)(0)(0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10100010 (1)(0)(1)(0)(0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10100011 (1)(0)(1)(0)(0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10100100 (1)(0)(1)(0)(0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10100101 (1)(0)(1)(0)(0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10100110 (1)(0)(1)(0)(0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10100111 (1)(0)(1)(0)(0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10101000 (1)(0)(1)(0)(1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10101001 (1)(0)(1)(0)(1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10101010 (1)(0)(1)(0)(1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10101011 (1)(0)(1)(0)(1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10101100 (1)(0)(1)(0)(1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10101101 (1)(0)(1)(0)(1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10101110 (1)(0)(1)(0)(1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10101111 (1)(0)(1)(0)(1)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10110000 (1)(0)(1)(1)(0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10110001 (1)(0)(1)(1)(0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10110010 (1)(0)(1)(1)(0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10110011 (1)(0)(1)(1)(0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10110100 (1)(0)(1)(1)(0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10110101 (1)(0)(1)(1)(0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10110110 (1)(0)(1)(1)(0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10110111 (1)(0)(1)(1)(0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10111000 (1)(0)(1)(1)(1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10111001 (1)(0)(1)(1)(1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10111010 (1)(0)(1)(1)(1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10111011 (1)(0)(1)(1)(1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10111100 (1)(0)(1)(1)(1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10111101 (1)(0)(1)(1)(1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10111110 (1)(0)(1)(1)(1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_10111111 (1)(0)(1)(1)(1)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11000000 (1)(1)(0)(0)(0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11000001 (1)(1)(0)(0)(0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11000010 (1)(1)(0)(0)(0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11000011 (1)(1)(0)(0)(0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11000100 (1)(1)(0)(0)(0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11000101 (1)(1)(0)(0)(0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11000110 (1)(1)(0)(0)(0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11000111 (1)(1)(0)(0)(0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11001000 (1)(1)(0)(0)(1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11001001 (1)(1)(0)(0)(1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11001010 (1)(1)(0)(0)(1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11001011 (1)(1)(0)(0)(1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11001100 (1)(1)(0)(0)(1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11001101 (1)(1)(0)(0)(1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11001110 (1)(1)(0)(0)(1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11001111 (1)(1)(0)(0)(1)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11010000 (1)(1)(0)(1)(0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11010001 (1)(1)(0)(1)(0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11010010 (1)(1)(0)(1)(0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11010011 (1)(1)(0)(1)(0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11010100 (1)(1)(0)(1)(0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11010101 (1)(1)(0)(1)(0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11010110 (1)(1)(0)(1)(0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11010111 (1)(1)(0)(1)(0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11011000 (1)(1)(0)(1)(1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11011001 (1)(1)(0)(1)(1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11011010 (1)(1)(0)(1)(1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11011011 (1)(1)(0)(1)(1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11011100 (1)(1)(0)(1)(1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11011101 (1)(1)(0)(1)(1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11011110 (1)(1)(0)(1)(1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11011111 (1)(1)(0)(1)(1)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11100000 (1)(1)(1)(0)(0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11100001 (1)(1)(1)(0)(0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11100010 (1)(1)(1)(0)(0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11100011 (1)(1)(1)(0)(0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11100100 (1)(1)(1)(0)(0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11100101 (1)(1)(1)(0)(0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11100110 (1)(1)(1)(0)(0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11100111 (1)(1)(1)(0)(0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11101000 (1)(1)(1)(0)(1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11101001 (1)(1)(1)(0)(1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11101010 (1)(1)(1)(0)(1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11101011 (1)(1)(1)(0)(1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11101100 (1)(1)(1)(0)(1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11101101 (1)(1)(1)(0)(1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11101110 (1)(1)(1)(0)(1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11101111 (1)(1)(1)(0)(1)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11110000 (1)(1)(1)(1)(0)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11110001 (1)(1)(1)(1)(0)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11110010 (1)(1)(1)(1)(0)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11110011 (1)(1)(1)(1)(0)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11110100 (1)(1)(1)(1)(0)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11110101 (1)(1)(1)(1)(0)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11110110 (1)(1)(1)(1)(0)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11110111 (1)(1)(1)(1)(0)(1)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11111000 (1)(1)(1)(1)(1)(0)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11111001 (1)(1)(1)(1)(1)(0)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11111010 (1)(1)(1)(1)(1)(0)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11111011 (1)(1)(1)(1)(1)(0)(1)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11111100 (1)(1)(1)(1)(1)(1)(0)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11111101 (1)(1)(1)(1)(1)(1)(0)(1),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11111110 (1)(1)(1)(1)(1)(1)(1)(0),  | ||||
| #define BOOST_DETAIL_BINARY_LITERAL_ELEMENT_11111111 (1)(1)(1)(1)(1)(1)(1)(1),  | ||||
|  | ||||
| #endif | ||||
| @@ -0,0 +1,68 @@ | ||||
| // Copyright (C) 2003, Fernando Luis Cacciola Carballal. | ||||
| // | ||||
| // Use, modification, and distribution is subject to the Boost Software | ||||
| // License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at | ||||
| // http://www.boost.org/LICENSE_1_0.txt) | ||||
| // | ||||
| // See http://www.boost.org/lib/optional for documentation. | ||||
| // | ||||
| // You are welcome to contact the author at: | ||||
| //  fernando_cacciola@hotmail.com | ||||
| // | ||||
| #ifndef BOOST_UTILITY_COMPARE_POINTEES_25AGO2003_HPP | ||||
| #define BOOST_UTILITY_COMPARE_POINTEES_25AGO2003_HPP | ||||
|  | ||||
| #include<functional> | ||||
|  | ||||
| namespace boost { | ||||
|  | ||||
| // template<class OP> bool equal_pointees(OP const& x, OP const& y); | ||||
| // template<class OP> struct equal_pointees_t; | ||||
| // | ||||
| // Being OP a model of OptionalPointee (either a pointer or an optional): | ||||
| // | ||||
| // If both x and y have valid pointees, returns the result of (*x == *y) | ||||
| // If only one has a valid pointee, returns false. | ||||
| // If none have valid pointees, returns true. | ||||
| // No-throw | ||||
| template<class OptionalPointee> | ||||
| inline | ||||
| bool equal_pointees ( OptionalPointee const& x, OptionalPointee const& y ) | ||||
| { | ||||
|   return (!x) != (!y) ? false : ( !x ? true : (*x) == (*y) ) ; | ||||
| } | ||||
|  | ||||
| template<class OptionalPointee> | ||||
| struct equal_pointees_t : std::binary_function<OptionalPointee,OptionalPointee,bool> | ||||
| { | ||||
|   bool operator() ( OptionalPointee const& x, OptionalPointee const& y ) const | ||||
|     { return equal_pointees(x,y) ; } | ||||
| } ; | ||||
|  | ||||
| // template<class OP> bool less_pointees(OP const& x, OP const& y); | ||||
| // template<class OP> struct less_pointees_t; | ||||
| // | ||||
| // Being OP a model of OptionalPointee (either a pointer or an optional): | ||||
| // | ||||
| // If y has not a valid pointee, returns false. | ||||
| // ElseIf x has not a valid pointee, returns true. | ||||
| // ElseIf both x and y have valid pointees, returns the result of (*x < *y) | ||||
| // No-throw | ||||
| template<class OptionalPointee> | ||||
| inline | ||||
| bool less_pointees ( OptionalPointee const& x, OptionalPointee const& y ) | ||||
| { | ||||
|   return !y ? false : ( !x ? true : (*x) < (*y) ) ; | ||||
| } | ||||
|  | ||||
| template<class OptionalPointee> | ||||
| struct less_pointees_t : std::binary_function<OptionalPointee,OptionalPointee,bool> | ||||
| { | ||||
|   bool operator() ( OptionalPointee const& x, OptionalPointee const& y ) const | ||||
|     { return less_pointees(x,y) ; } | ||||
| } ; | ||||
|  | ||||
| } // namespace boost | ||||
|  | ||||
| #endif | ||||
|  | ||||
| @@ -0,0 +1,36 @@ | ||||
| // Copyright (C) 2003, Fernando Luis Cacciola Carballal. | ||||
| // Copyright (C) 2007, Tobias Schwinger. | ||||
| // | ||||
| // Use, modification, and distribution is subject to the Boost Software | ||||
| // License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at | ||||
| // http://www.boost.org/LICENSE_1_0.txt) | ||||
| // | ||||
| // See http://www.boost.org/lib/optional for documentation. | ||||
| // | ||||
| // You are welcome to contact the author at: | ||||
| //  fernando_cacciola@hotmail.com | ||||
| // | ||||
| #ifndef BOOST_UTILITY_DETAIL_INPLACE_FACTORY_PREFIX_04APR2007_HPP | ||||
| #define BOOST_UTILITY_DETAIL_INPLACE_FACTORY_PREFIX_04APR2007_HPP | ||||
|  | ||||
| #include <new> | ||||
| #include <cstddef> | ||||
| #include <boost/config.hpp> | ||||
| #include <boost/preprocessor/cat.hpp> | ||||
| #include <boost/preprocessor/punctuation/paren.hpp> | ||||
| #include <boost/preprocessor/iteration/iterate.hpp> | ||||
| #include <boost/preprocessor/repetition/repeat.hpp> | ||||
| #include <boost/preprocessor/repetition/enum.hpp> | ||||
| #include <boost/preprocessor/repetition/enum_params.hpp> | ||||
| #include <boost/preprocessor/repetition/enum_binary_params.hpp> | ||||
| #include <boost/preprocessor/repetition/enum_trailing_params.hpp> | ||||
|  | ||||
| #define BOOST_DEFINE_INPLACE_FACTORY_CLASS_MEMBER_INIT(z,n,_) BOOST_PP_CAT(m_a,n) BOOST_PP_LPAREN() BOOST_PP_CAT(a,n) BOOST_PP_RPAREN() | ||||
| #define BOOST_DEFINE_INPLACE_FACTORY_CLASS_MEMBER_DECL(z,n,_) BOOST_PP_CAT(A,n) const& BOOST_PP_CAT(m_a,n); | ||||
|  | ||||
| #define BOOST_MAX_INPLACE_FACTORY_ARITY 10 | ||||
|  | ||||
| #undef BOOST_UTILITY_DETAIL_INPLACE_FACTORY_SUFFIX_04APR2007_HPP | ||||
|  | ||||
| #endif | ||||
|  | ||||
| @@ -0,0 +1,23 @@ | ||||
| // Copyright (C) 2003, Fernando Luis Cacciola Carballal. | ||||
| // Copyright (C) 2007, Tobias Schwinger. | ||||
| // | ||||
| // Use, modification, and distribution is subject to the Boost Software | ||||
| // License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at | ||||
| // http://www.boost.org/LICENSE_1_0.txt) | ||||
| // | ||||
| // See http://www.boost.org/lib/optional for documentation. | ||||
| // | ||||
| // You are welcome to contact the author at: | ||||
| //  fernando_cacciola@hotmail.com | ||||
| // | ||||
| #ifndef BOOST_UTILITY_DETAIL_INPLACE_FACTORY_SUFFIX_04APR2007_HPP | ||||
| #define BOOST_UTILITY_DETAIL_INPLACE_FACTORY_SUFFIX_04APR2007_HPP | ||||
|  | ||||
| #undef BOOST_DEFINE_INPLACE_FACTORY_CLASS_MEMBER_INIT | ||||
| #undef BOOST_DEFINE_INPLACE_FACTORY_CLASS_MEMBER_DECL | ||||
| #undef BOOST_MAX_INPLACE_FACTORY_ARITY | ||||
|  | ||||
| #undef BOOST_UTILITY_DETAIL_INPLACE_FACTORY_PREFIX_04APR2007_HPP | ||||
|  | ||||
| #endif | ||||
|  | ||||
| @@ -0,0 +1,89 @@ | ||||
| // Boost result_of library | ||||
|  | ||||
| //  Copyright Douglas Gregor 2004. Use, modification and | ||||
| //  distribution is subject to the Boost Software License, Version | ||||
| //  1.0. (See accompanying file LICENSE_1_0.txt or copy at | ||||
| //  http://www.boost.org/LICENSE_1_0.txt) | ||||
|  | ||||
| // For more information, see http://www.boost.org/libs/utility | ||||
| #if !defined(BOOST_PP_IS_ITERATING) | ||||
| # error Boost result_of - do not include this file! | ||||
| #endif | ||||
|  | ||||
| // CWPro8 requires an argument in a function type specialization | ||||
| #if BOOST_WORKAROUND(__MWERKS__, BOOST_TESTED_AT(0x3002)) && BOOST_PP_ITERATION() == 0 | ||||
| # define BOOST_RESULT_OF_ARGS void | ||||
| #else | ||||
| # define BOOST_RESULT_OF_ARGS BOOST_PP_ENUM_PARAMS(BOOST_PP_ITERATION(),T) | ||||
| #endif | ||||
|  | ||||
| #if !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x551)) | ||||
| template<typename F BOOST_PP_COMMA_IF(BOOST_PP_ITERATION()) | ||||
|          BOOST_PP_ENUM_PARAMS(BOOST_PP_ITERATION(),typename T)> | ||||
| struct result_of<F(BOOST_RESULT_OF_ARGS)> | ||||
|     : boost::detail::result_of_impl<F, F(BOOST_RESULT_OF_ARGS), (boost::detail::has_result_type<F>::value)> {}; | ||||
| #endif | ||||
|  | ||||
| #undef BOOST_RESULT_OF_ARGS | ||||
|  | ||||
| #if BOOST_PP_ITERATION() >= 1  | ||||
|  | ||||
| namespace detail { | ||||
|  | ||||
| template<typename R,  typename FArgs BOOST_PP_COMMA_IF(BOOST_PP_ITERATION()) | ||||
|          BOOST_PP_ENUM_PARAMS(BOOST_PP_ITERATION(),typename T)> | ||||
| struct result_of_impl<R (*)(BOOST_PP_ENUM_PARAMS(BOOST_PP_ITERATION(),T)), FArgs, false> | ||||
| { | ||||
|   typedef R type; | ||||
| }; | ||||
|  | ||||
| template<typename R,  typename FArgs BOOST_PP_COMMA_IF(BOOST_PP_ITERATION()) | ||||
|          BOOST_PP_ENUM_PARAMS(BOOST_PP_ITERATION(),typename T)> | ||||
| struct result_of_impl<R (&)(BOOST_PP_ENUM_PARAMS(BOOST_PP_ITERATION(),T)), FArgs, false> | ||||
| { | ||||
|   typedef R type; | ||||
| }; | ||||
|  | ||||
| #if !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x551)) | ||||
| template<typename R, typename FArgs BOOST_PP_COMMA_IF(BOOST_PP_ITERATION()) | ||||
|          BOOST_PP_ENUM_PARAMS(BOOST_PP_ITERATION(),typename T)> | ||||
| struct result_of_impl<R (T0::*) | ||||
|                      (BOOST_PP_ENUM_SHIFTED_PARAMS(BOOST_PP_ITERATION(),T)), | ||||
|                  FArgs, false> | ||||
| { | ||||
|   typedef R type; | ||||
| }; | ||||
|  | ||||
| template<typename R, typename FArgs BOOST_PP_COMMA_IF(BOOST_PP_ITERATION()) | ||||
|          BOOST_PP_ENUM_PARAMS(BOOST_PP_ITERATION(),typename T)> | ||||
| struct result_of_impl<R (T0::*) | ||||
|                      (BOOST_PP_ENUM_SHIFTED_PARAMS(BOOST_PP_ITERATION(),T)) | ||||
|                      const, | ||||
|                  FArgs, false> | ||||
| { | ||||
|   typedef R type; | ||||
| }; | ||||
|  | ||||
| template<typename R, typename FArgs BOOST_PP_COMMA_IF(BOOST_PP_ITERATION()) | ||||
|          BOOST_PP_ENUM_PARAMS(BOOST_PP_ITERATION(),typename T)> | ||||
| struct result_of_impl<R (T0::*) | ||||
|                      (BOOST_PP_ENUM_SHIFTED_PARAMS(BOOST_PP_ITERATION(),T)) | ||||
|                      volatile, | ||||
|                  FArgs, false> | ||||
| { | ||||
|   typedef R type; | ||||
| }; | ||||
|  | ||||
| template<typename R, typename FArgs BOOST_PP_COMMA_IF(BOOST_PP_ITERATION()) | ||||
|          BOOST_PP_ENUM_PARAMS(BOOST_PP_ITERATION(),typename T)> | ||||
| struct result_of_impl<R (T0::*) | ||||
|                      (BOOST_PP_ENUM_SHIFTED_PARAMS(BOOST_PP_ITERATION(),T)) | ||||
|                      const volatile, | ||||
|                  FArgs, false> | ||||
| { | ||||
|   typedef R type; | ||||
| }; | ||||
| #endif | ||||
|  | ||||
| } | ||||
| #endif | ||||
							
								
								
									
										119
									
								
								library/PolyVoxCore/include/boost/utility/enable_if.hpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										119
									
								
								library/PolyVoxCore/include/boost/utility/enable_if.hpp
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,119 @@ | ||||
| // Boost enable_if library | ||||
|  | ||||
| // Copyright 2003 (c) The Trustees of Indiana University. | ||||
|  | ||||
| // Use, modification, and distribution is subject to the Boost Software | ||||
| // License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at | ||||
| // http://www.boost.org/LICENSE_1_0.txt) | ||||
|  | ||||
| //    Authors: Jaakko Jarvi (jajarvi at osl.iu.edu) | ||||
| //             Jeremiah Willcock (jewillco at osl.iu.edu) | ||||
| //             Andrew Lumsdaine (lums at osl.iu.edu) | ||||
|  | ||||
|  | ||||
| #ifndef BOOST_UTILITY_ENABLE_IF_HPP | ||||
| #define BOOST_UTILITY_ENABLE_IF_HPP | ||||
|  | ||||
| #include "boost/config.hpp" | ||||
|  | ||||
| // Even the definition of enable_if causes problems on some compilers, | ||||
| // so it's macroed out for all compilers that do not support SFINAE | ||||
|  | ||||
| #ifndef BOOST_NO_SFINAE | ||||
|  | ||||
| namespace boost | ||||
| { | ||||
|   | ||||
|   template <bool B, class T = void> | ||||
|   struct enable_if_c { | ||||
|     typedef T type; | ||||
|   }; | ||||
|  | ||||
|   template <class T> | ||||
|   struct enable_if_c<false, T> {}; | ||||
|  | ||||
|   template <class Cond, class T = void>  | ||||
|   struct enable_if : public enable_if_c<Cond::value, T> {}; | ||||
|  | ||||
|   template <bool B, class T> | ||||
|   struct lazy_enable_if_c { | ||||
|     typedef typename T::type type; | ||||
|   }; | ||||
|  | ||||
|   template <class T> | ||||
|   struct lazy_enable_if_c<false, T> {}; | ||||
|  | ||||
|   template <class Cond, class T>  | ||||
|   struct lazy_enable_if : public lazy_enable_if_c<Cond::value, T> {}; | ||||
|  | ||||
|  | ||||
|   template <bool B, class T = void> | ||||
|   struct disable_if_c { | ||||
|     typedef T type; | ||||
|   }; | ||||
|  | ||||
|   template <class T> | ||||
|   struct disable_if_c<true, T> {}; | ||||
|  | ||||
|   template <class Cond, class T = void>  | ||||
|   struct disable_if : public disable_if_c<Cond::value, T> {}; | ||||
|  | ||||
|   template <bool B, class T> | ||||
|   struct lazy_disable_if_c { | ||||
|     typedef typename T::type type; | ||||
|   }; | ||||
|  | ||||
|   template <class T> | ||||
|   struct lazy_disable_if_c<true, T> {}; | ||||
|  | ||||
|   template <class Cond, class T>  | ||||
|   struct lazy_disable_if : public lazy_disable_if_c<Cond::value, T> {}; | ||||
|  | ||||
| } // namespace boost | ||||
|  | ||||
| #else | ||||
|  | ||||
| namespace boost { | ||||
|  | ||||
|   namespace detail { typedef void enable_if_default_T; } | ||||
|  | ||||
|   template <typename T> | ||||
|   struct enable_if_does_not_work_on_this_compiler; | ||||
|  | ||||
|   template <bool B, class T = detail::enable_if_default_T> | ||||
|   struct enable_if_c : enable_if_does_not_work_on_this_compiler<T> | ||||
|   { }; | ||||
|  | ||||
|   template <bool B, class T = detail::enable_if_default_T>  | ||||
|   struct disable_if_c : enable_if_does_not_work_on_this_compiler<T> | ||||
|   { }; | ||||
|  | ||||
|   template <bool B, class T = detail::enable_if_default_T>  | ||||
|   struct lazy_enable_if_c : enable_if_does_not_work_on_this_compiler<T> | ||||
|   { }; | ||||
|  | ||||
|   template <bool B, class T = detail::enable_if_default_T>  | ||||
|   struct lazy_disable_if_c : enable_if_does_not_work_on_this_compiler<T> | ||||
|   { }; | ||||
|  | ||||
|   template <class Cond, class T = detail::enable_if_default_T>  | ||||
|   struct enable_if : enable_if_does_not_work_on_this_compiler<T> | ||||
|   { }; | ||||
|  | ||||
|   template <class Cond, class T = detail::enable_if_default_T>  | ||||
|   struct disable_if : enable_if_does_not_work_on_this_compiler<T> | ||||
|   { }; | ||||
|  | ||||
|   template <class Cond, class T = detail::enable_if_default_T>  | ||||
|   struct lazy_enable_if : enable_if_does_not_work_on_this_compiler<T> | ||||
|   { }; | ||||
|  | ||||
|   template <class Cond, class T = detail::enable_if_default_T>  | ||||
|   struct lazy_disable_if : enable_if_does_not_work_on_this_compiler<T> | ||||
|   { }; | ||||
|  | ||||
| } // namespace boost | ||||
|  | ||||
| #endif // BOOST_NO_SFINAE | ||||
|  | ||||
| #endif | ||||
| @@ -0,0 +1,88 @@ | ||||
| // Copyright (C) 2003, Fernando Luis Cacciola Carballal. | ||||
| // Copyright (C) 2007, Tobias Schwinger. | ||||
| // | ||||
| // Use, modification, and distribution is subject to the Boost Software | ||||
| // License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at | ||||
| // http://www.boost.org/LICENSE_1_0.txt) | ||||
| // | ||||
| // See http://www.boost.org/lib/optional for documentation. | ||||
| // | ||||
| // You are welcome to contact the author at: | ||||
| //  fernando_cacciola@hotmail.com | ||||
| // | ||||
| #ifndef BOOST_UTILITY_INPLACE_FACTORY_04APR2007_HPP | ||||
| #ifndef BOOST_PP_IS_ITERATING | ||||
|  | ||||
| #include <boost/utility/detail/in_place_factory_prefix.hpp> | ||||
|  | ||||
| namespace boost { | ||||
|  | ||||
| class in_place_factory_base {} ; | ||||
|  | ||||
| #define  BOOST_PP_ITERATION_LIMITS (0, BOOST_MAX_INPLACE_FACTORY_ARITY) | ||||
| #define  BOOST_PP_FILENAME_1 <boost/utility/in_place_factory.hpp> | ||||
| #include BOOST_PP_ITERATE() | ||||
|  | ||||
| } // namespace boost | ||||
|  | ||||
| #include <boost/utility/detail/in_place_factory_suffix.hpp> | ||||
|  | ||||
| #define BOOST_UTILITY_INPLACE_FACTORY_04APR2007_HPP | ||||
| #else | ||||
| #define N BOOST_PP_ITERATION() | ||||
|  | ||||
| #if N | ||||
| template< BOOST_PP_ENUM_PARAMS(N, class A) > | ||||
| #endif | ||||
| class BOOST_PP_CAT(in_place_factory,N) | ||||
|   :  | ||||
|   public in_place_factory_base | ||||
| { | ||||
| public: | ||||
|  | ||||
|   explicit BOOST_PP_CAT(in_place_factory,N) | ||||
|       ( BOOST_PP_ENUM_BINARY_PARAMS(N,A,const& a) ) | ||||
| #if N > 0 | ||||
|     : BOOST_PP_ENUM(N, BOOST_DEFINE_INPLACE_FACTORY_CLASS_MEMBER_INIT, _) | ||||
| #endif | ||||
|   {} | ||||
|  | ||||
|   template<class T> | ||||
|   void* apply(void* address | ||||
|       BOOST_APPEND_EXPLICIT_TEMPLATE_TYPE(T)) const | ||||
|   { | ||||
|     return new(address) T( BOOST_PP_ENUM_PARAMS(N, m_a) ); | ||||
|   } | ||||
|  | ||||
|   template<class T> | ||||
|   void* apply(void* address, std::size_t n | ||||
|       BOOST_APPEND_EXPLICIT_TEMPLATE_TYPE(T)) const | ||||
|   { | ||||
|     for(char* next = address = this->BOOST_NESTED_TEMPLATE apply<T>(address); | ||||
|         !! --n;) | ||||
|       this->BOOST_NESTED_TEMPLATE apply<T>(next = next+sizeof(T)); | ||||
|     return address;  | ||||
|   } | ||||
|  | ||||
|   BOOST_PP_REPEAT(N, BOOST_DEFINE_INPLACE_FACTORY_CLASS_MEMBER_DECL, _) | ||||
| }; | ||||
|  | ||||
| #if N > 0 | ||||
| template< BOOST_PP_ENUM_PARAMS(N, class A) > | ||||
| inline BOOST_PP_CAT(in_place_factory,N)< BOOST_PP_ENUM_PARAMS(N, A) > | ||||
| in_place( BOOST_PP_ENUM_BINARY_PARAMS(N, A, const& a) ) | ||||
| { | ||||
|   return BOOST_PP_CAT(in_place_factory,N)< BOOST_PP_ENUM_PARAMS(N, A) > | ||||
|       ( BOOST_PP_ENUM_PARAMS(N, a) ); | ||||
| } | ||||
| #else | ||||
| inline in_place_factory0 in_place() | ||||
| { | ||||
|   return in_place_factory0(); | ||||
| } | ||||
| #endif | ||||
|  | ||||
| #undef N | ||||
| #endif | ||||
| #endif | ||||
|  | ||||
							
								
								
									
										88
									
								
								library/PolyVoxCore/include/boost/utility/result_of.hpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										88
									
								
								library/PolyVoxCore/include/boost/utility/result_of.hpp
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,88 @@ | ||||
| // Boost result_of library | ||||
|  | ||||
| //  Copyright Douglas Gregor 2004. Use, modification and | ||||
| //  distribution is subject to the Boost Software License, Version | ||||
| //  1.0. (See accompanying file LICENSE_1_0.txt or copy at | ||||
| //  http://www.boost.org/LICENSE_1_0.txt) | ||||
|  | ||||
| // For more information, see http://www.boost.org/libs/utility | ||||
| #ifndef BOOST_RESULT_OF_HPP | ||||
| #define BOOST_RESULT_OF_HPP | ||||
|  | ||||
| #include <boost/config.hpp> | ||||
| #include <boost/type_traits/ice.hpp> | ||||
| #include <boost/type.hpp> | ||||
| #include <boost/preprocessor.hpp> | ||||
| #include <boost/detail/workaround.hpp> | ||||
| #include <boost/mpl/has_xxx.hpp> | ||||
| #include <boost/mpl/if.hpp> | ||||
| #include <boost/mpl/bool.hpp> | ||||
|  | ||||
| #ifndef BOOST_RESULT_OF_NUM_ARGS | ||||
| #  define BOOST_RESULT_OF_NUM_ARGS 10 | ||||
| #endif | ||||
|  | ||||
| namespace boost { | ||||
|  | ||||
| template<typename F> struct result_of; | ||||
|  | ||||
| #if !defined(BOOST_NO_SFINAE) && !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) | ||||
| namespace detail { | ||||
|  | ||||
| BOOST_MPL_HAS_XXX_TRAIT_DEF(result_type) | ||||
|  | ||||
| template<typename F, typename FArgs, bool HasResultType> struct result_of_impl; | ||||
|  | ||||
| template<typename F> | ||||
| struct result_of_void_impl | ||||
| { | ||||
|   typedef void type; | ||||
| }; | ||||
|  | ||||
| template<typename R> | ||||
| struct result_of_void_impl<R (*)(void)> | ||||
| { | ||||
|   typedef R type; | ||||
| }; | ||||
|  | ||||
| template<typename R> | ||||
| struct result_of_void_impl<R (&)(void)> | ||||
| { | ||||
|   typedef R type; | ||||
| }; | ||||
|  | ||||
| template<typename F, typename FArgs> | ||||
| struct result_of_impl<F, FArgs, true> | ||||
| { | ||||
|   typedef typename F::result_type type; | ||||
| }; | ||||
|  | ||||
| template<typename FArgs> | ||||
| struct is_function_with_no_args : mpl::false_ {}; | ||||
|  | ||||
| template<typename F> | ||||
| struct is_function_with_no_args<F(void)> : mpl::true_ {}; | ||||
|  | ||||
| template<typename F, typename FArgs> | ||||
| struct result_of_nested_result : F::template result<FArgs> | ||||
| {}; | ||||
|  | ||||
| template<typename F, typename FArgs> | ||||
| struct result_of_impl<F, FArgs, false> | ||||
|   : mpl::if_<is_function_with_no_args<FArgs>, | ||||
| 	     result_of_void_impl<F>, | ||||
| 	     result_of_nested_result<F, FArgs> >::type | ||||
| {}; | ||||
|  | ||||
| } // end namespace detail | ||||
|  | ||||
| #define BOOST_PP_ITERATION_PARAMS_1 (3,(0,BOOST_RESULT_OF_NUM_ARGS,<boost/utility/detail/result_of_iterate.hpp>)) | ||||
| #include BOOST_PP_ITERATE() | ||||
|  | ||||
| #else | ||||
| #  define BOOST_NO_RESULT_OF 1 | ||||
| #endif | ||||
|  | ||||
| } | ||||
|  | ||||
| #endif // BOOST_RESULT_OF_HPP | ||||
							
								
								
									
										55
									
								
								library/PolyVoxCore/include/boost/utility/swap.hpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										55
									
								
								library/PolyVoxCore/include/boost/utility/swap.hpp
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,55 @@ | ||||
| // Copyright (C) 2007, 2008 Steven Watanabe, Joseph Gauterin, Niels Dekker | ||||
| // | ||||
| // Distributed under the Boost Software License, Version 1.0. (See | ||||
| // accompanying file LICENSE_1_0.txt or copy at | ||||
| // http://www.boost.org/LICENSE_1_0.txt) | ||||
| // For more information, see http://www.boost.org | ||||
|  | ||||
|  | ||||
| #ifndef BOOST_UTILITY_SWAP_HPP | ||||
| #define BOOST_UTILITY_SWAP_HPP | ||||
|  | ||||
| // Note: the implementation of this utility contains various workarounds: | ||||
| // - swap_impl is put outside the boost namespace, to avoid infinite | ||||
| // recursion (causing stack overflow) when swapping objects of a primitive | ||||
| // type. | ||||
| // - swap_impl has a using-directive, rather than a using-declaration, | ||||
| // because some compilers (including MSVC 7.1, Borland 5.9.3, and | ||||
| // Intel 8.1) don't do argument-dependent lookup when it has a | ||||
| // using-declaration instead. | ||||
| // - boost::swap has two template arguments, instead of one, to | ||||
| // avoid ambiguity when swapping objects of a Boost type that does | ||||
| // not have its own boost::swap overload. | ||||
|  | ||||
| #include <algorithm> //for std::swap | ||||
| #include <cstddef> //for std::size_t | ||||
|  | ||||
| namespace boost_swap_impl | ||||
| { | ||||
|   template<class T> | ||||
|   void swap_impl(T& left, T& right) | ||||
|   { | ||||
|     using namespace std;//use std::swap if argument dependent lookup fails | ||||
|     swap(left,right); | ||||
|   } | ||||
|  | ||||
|   template<class T, std::size_t N> | ||||
|   void swap_impl(T (& left)[N], T (& right)[N]) | ||||
|   { | ||||
|     for (std::size_t i = 0; i < N; ++i) | ||||
|     { | ||||
|       ::boost_swap_impl::swap_impl(left[i], right[i]); | ||||
|     } | ||||
|   } | ||||
| } | ||||
|  | ||||
| namespace boost | ||||
| { | ||||
|   template<class T1, class T2> | ||||
|   void swap(T1& left, T2& right) | ||||
|   { | ||||
|     ::boost_swap_impl::swap_impl(left, right); | ||||
|   } | ||||
| } | ||||
|  | ||||
| #endif | ||||
| @@ -0,0 +1,77 @@ | ||||
| // Copyright (C) 2003, Fernando Luis Cacciola Carballal. | ||||
| // Copyright (C) 2007, Tobias Schwinger. | ||||
| // | ||||
| // Use, modification, and distribution is subject to the Boost Software | ||||
| // License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at | ||||
| // http://www.boost.org/LICENSE_1_0.txt) | ||||
| // | ||||
| // See http://www.boost.org/lib/optional for documentation. | ||||
| // | ||||
| // You are welcome to contact the author at: | ||||
| //  fernando_cacciola@hotmail.com | ||||
| // | ||||
| #ifndef BOOST_UTILITY_TYPED_INPLACE_FACTORY_04APR2007_HPP | ||||
| #ifndef BOOST_PP_IS_ITERATING | ||||
|  | ||||
| #include <boost/utility/detail/in_place_factory_prefix.hpp> | ||||
|  | ||||
| namespace boost { | ||||
|  | ||||
| class typed_in_place_factory_base {} ; | ||||
|  | ||||
| #define  BOOST_PP_ITERATION_LIMITS (0, BOOST_MAX_INPLACE_FACTORY_ARITY) | ||||
| #define  BOOST_PP_FILENAME_1 <boost/utility/typed_in_place_factory.hpp> | ||||
| #include BOOST_PP_ITERATE() | ||||
|  | ||||
| } // namespace boost | ||||
|  | ||||
| #include <boost/utility/detail/in_place_factory_suffix.hpp> | ||||
|  | ||||
| #define BOOST_UTILITY_TYPED_INPLACE_FACTORY_04APR2007_HPP | ||||
| #else  | ||||
| #define N BOOST_PP_ITERATION() | ||||
|  | ||||
| template< class T BOOST_PP_ENUM_TRAILING_PARAMS(N,class A) > | ||||
| class BOOST_PP_CAT(typed_in_place_factory,N)  | ||||
|   :  | ||||
|   public typed_in_place_factory_base | ||||
| { | ||||
| public: | ||||
|  | ||||
|   typedef T value_type; | ||||
|  | ||||
|   explicit BOOST_PP_CAT(typed_in_place_factory,N)  | ||||
|       ( BOOST_PP_ENUM_BINARY_PARAMS(N, A, const& a) ) | ||||
| #if N > 0 | ||||
|     : BOOST_PP_ENUM(N, BOOST_DEFINE_INPLACE_FACTORY_CLASS_MEMBER_INIT, _) | ||||
| #endif | ||||
|   {} | ||||
|  | ||||
|   void* apply (void* address) const | ||||
|   { | ||||
|     return new(address) T( BOOST_PP_ENUM_PARAMS(N, m_a) ); | ||||
|   } | ||||
|  | ||||
|   void* apply (void* address, std::size_t n) const | ||||
|   { | ||||
|     for(void* next = address = this->apply(address); !! --n;) | ||||
|       this->apply(next = static_cast<char *>(next) + sizeof(T)); | ||||
|     return address;  | ||||
|   } | ||||
|  | ||||
|   BOOST_PP_REPEAT(N, BOOST_DEFINE_INPLACE_FACTORY_CLASS_MEMBER_DECL, _) | ||||
| }; | ||||
|  | ||||
| template< class T BOOST_PP_ENUM_TRAILING_PARAMS(N, class A) > | ||||
| inline BOOST_PP_CAT(typed_in_place_factory,N)< | ||||
|     T BOOST_PP_ENUM_TRAILING_PARAMS(N, A) > | ||||
| in_place( BOOST_PP_ENUM_BINARY_PARAMS(N, A, const& a) ) | ||||
| { | ||||
|   return BOOST_PP_CAT(typed_in_place_factory,N)<  | ||||
|       T BOOST_PP_ENUM_TRAILING_PARAMS(N, A) >( BOOST_PP_ENUM_PARAMS(N, a) ); | ||||
| } | ||||
|  | ||||
| #undef N | ||||
| #endif | ||||
| #endif | ||||
|  | ||||
							
								
								
									
										143
									
								
								library/PolyVoxCore/include/boost/utility/value_init.hpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										143
									
								
								library/PolyVoxCore/include/boost/utility/value_init.hpp
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,143 @@ | ||||
| // (C) Copyright 2002-2008, Fernando Luis Cacciola Carballal. | ||||
| // | ||||
| // Distributed under the Boost Software License, Version 1.0. (See | ||||
| // accompanying file LICENSE_1_0.txt or copy at | ||||
| // http://www.boost.org/LICENSE_1_0.txt) | ||||
| // | ||||
| // 21 Ago 2002 (Created) Fernando Cacciola | ||||
| // 24 Dec 2007 (Refactored and worked around various compiler bugs) Fernando Cacciola, Niels Dekker | ||||
| // 23 May 2008 (Fixed operator= const issue, added initialized_value) Niels Dekker, Fernando Cacciola | ||||
| // 21 Ago 2008 (Added swap) Niels Dekker, Fernando Cacciola | ||||
| // | ||||
| #ifndef BOOST_UTILITY_VALUE_INIT_21AGO2002_HPP | ||||
| #define BOOST_UTILITY_VALUE_INIT_21AGO2002_HPP | ||||
|  | ||||
| // Note: The implementation of boost::value_initialized had to deal with the | ||||
| // fact that various compilers haven't fully implemented value-initialization. | ||||
| // The constructor of boost::value_initialized<T> works around these compiler | ||||
| // issues, by clearing the bytes of T, before constructing the T object it | ||||
| // contains. More details on these issues are at libs/utility/value_init.htm | ||||
|  | ||||
| #include <boost/aligned_storage.hpp> | ||||
| #include <boost/detail/workaround.hpp> | ||||
| #include <boost/static_assert.hpp> | ||||
| #include <boost/type_traits/cv_traits.hpp> | ||||
| #include <boost/type_traits/alignment_of.hpp> | ||||
| #include <boost/swap.hpp> | ||||
| #include <cstring> | ||||
| #include <new> | ||||
|  | ||||
| namespace boost { | ||||
|  | ||||
| template<class T> | ||||
| class value_initialized | ||||
| { | ||||
|   private : | ||||
|     struct wrapper | ||||
|     { | ||||
| #if !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x592)) | ||||
|       typename | ||||
| #endif  | ||||
|       remove_const<T>::type data; | ||||
|     }; | ||||
|  | ||||
|     mutable | ||||
| #if !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x592)) | ||||
|       typename | ||||
| #endif  | ||||
|       aligned_storage<sizeof(wrapper), alignment_of<wrapper>::value>::type x; | ||||
|  | ||||
|     wrapper * wrapper_address() const | ||||
|     { | ||||
|       return static_cast<wrapper *>( static_cast<void*>(&x)); | ||||
|     } | ||||
|  | ||||
|   public : | ||||
|  | ||||
|     value_initialized() | ||||
|     { | ||||
|       std::memset(&x, 0, sizeof(x)); | ||||
| #ifdef BOOST_MSVC | ||||
| #pragma warning(push) | ||||
| #if _MSC_VER >= 1310 | ||||
| // When using MSVC 7.1 or higher, the following placement new expression may trigger warning C4345: | ||||
| // "behavior change: an object of POD type constructed with an initializer of the form () | ||||
| // will be default-initialized".  It is safe to ignore this warning when using value_initialized. | ||||
| #pragma warning(disable: 4345) | ||||
| #endif | ||||
| #endif | ||||
|       new (wrapper_address()) wrapper(); | ||||
| #ifdef BOOST_MSVC | ||||
| #pragma warning(pop) | ||||
| #endif | ||||
|     } | ||||
|  | ||||
|     value_initialized(value_initialized const & arg) | ||||
|     { | ||||
|       new (wrapper_address()) wrapper( static_cast<wrapper const &>(*(arg.wrapper_address()))); | ||||
|     } | ||||
|  | ||||
|     value_initialized & operator=(value_initialized const & arg) | ||||
|     { | ||||
|       // Assignment is only allowed when T is non-const. | ||||
|       BOOST_STATIC_ASSERT( ! is_const<T>::value ); | ||||
|       *wrapper_address() = static_cast<wrapper const &>(*(arg.wrapper_address())); | ||||
|       return *this; | ||||
|     } | ||||
|  | ||||
|     ~value_initialized() | ||||
|     { | ||||
|       wrapper_address()->wrapper::~wrapper(); | ||||
|     } | ||||
|  | ||||
|     T& data() const | ||||
|     { | ||||
|       return wrapper_address()->data; | ||||
|     } | ||||
|  | ||||
|     void swap(value_initialized & arg) | ||||
|     { | ||||
|       ::boost::swap( this->data(), arg.data() ); | ||||
|     } | ||||
|  | ||||
|     operator T&() const { return this->data(); } | ||||
|  | ||||
| } ; | ||||
|  | ||||
|  | ||||
|  | ||||
| template<class T> | ||||
| T const& get ( value_initialized<T> const& x ) | ||||
| { | ||||
|   return x.data() ; | ||||
| } | ||||
| template<class T> | ||||
| T& get ( value_initialized<T>& x ) | ||||
| { | ||||
|   return x.data() ; | ||||
| } | ||||
|  | ||||
| template<class T> | ||||
| void swap ( value_initialized<T> & lhs, value_initialized<T> & rhs ) | ||||
| { | ||||
|   lhs.swap(rhs) ; | ||||
| } | ||||
|  | ||||
|  | ||||
| class initialized_value_t | ||||
| { | ||||
|   public : | ||||
|      | ||||
|     template <class T> operator T() const | ||||
|     { | ||||
|       return get( value_initialized<T>() ); | ||||
|     } | ||||
| }; | ||||
|  | ||||
| initialized_value_t const initialized_value = {} ; | ||||
|  | ||||
|  | ||||
| } // namespace boost | ||||
|  | ||||
|  | ||||
| #endif | ||||
		Reference in New Issue
	
	Block a user