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_FUNCTION_REFERENCE_HPP_INCLUDED
10 #define BOOST_FT_FUNCTION_REFERENCE_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/function_type.hpp>
19 namespace function_types
21 template<typename Types
, typename Tag
= null_tag
> struct function_reference
23 typedef typename
function_types::function_type
<Types
,Tag
>::type
& type
;
25 BOOST_MPL_AUX_LAMBDA_SUPPORT(2,function_reference
,(Types
,Tag
))
28 BOOST_TT_AUX_TEMPLATE_ARITY_SPEC(2,function_types::function_reference
)