1 2 // Copyright Aleksey Gurtovoy 2001-2004 3 // 4 // Distributed under the Boost Software License, Version 1.0. 5 // (See accompanying file LICENSE_1_0.txt or copy at 6 // http://www.boost.org/LICENSE_1_0.txt) 7 // 8 9 // Preprocessed version of "boost/mpl/aux_/template_arity.hpp" header 10 // -- DO NOT modify by hand! 11 12 namespace boost { namespace mpl { namespace aux { 13 14 template< bool > 15 struct template_arity_impl 16 { 17 template< typename F > struct result_ 18 : mpl::int_< -1 > 19 { 20 }; 21 }; 22 23 template<> 24 struct template_arity_impl<true> 25 { 26 template< typename F > struct result_ 27 : F::arity 28 { 29 }; 30 }; 31 32 template< typename F > 33 struct template_arity 34 : template_arity_impl< ::boost::mpl::aux::has_rebind<F>::value > 35 ::template result_<F> 36 { 37 }; 38 39 template<> 40 struct template_arity<int> 41 : mpl::int_< -1 > 42 { 43 }; 44 45 }}} 46 47