2 // (C) Copyright Tobias Schwinger
4 // Use modification and distribution are subject to the boost Software License,
5 // Version 1.0. (See http://www.boost.org/LICENSE_1_0.txt).
7 //------------------------------------------------------------------------------
9 #ifndef BOOST_FT_MEMBER_FUNCTION_POINTER_HPP_INCLUDED
10 #define BOOST_FT_MEMBER_FUNCTION_POINTER_HPP_INCLUDED
12 #include <boost/mpl/aux_/lambda_support.hpp>
13 #include <boost/type_traits/detail/template_arity_spec.hpp>
15 #include <boost/function_types/detail/synthesize.hpp>
16 #include <boost/function_types/detail/to_sequence.hpp>
20 namespace function_types
22 template<typename Types
, typename Tag
= null_tag
>
23 struct member_function_pointer
24 : detail::synthesize_mfp
< typename
detail::to_sequence
<Types
>::type
, Tag
>
26 BOOST_MPL_AUX_LAMBDA_SUPPORT(2,member_function_pointer
,(Types
,Tag
))
29 BOOST_TT_AUX_TEMPLATE_ARITY_SPEC(2,function_types::member_function_pointer
)