1 
2 // (C) Copyright Tobias Schwinger
3 //
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).
6 
7 //------------------------------------------------------------------------------
8 
9 #ifndef BOOST_FT_IS_CALLABLE_BUILTIN_HPP_INCLUDED
10 #define BOOST_FT_IS_CALLABLE_BUILTIN_HPP_INCLUDED
11 
12 #include <boost/mpl/aux_/lambda_support.hpp>
13 
14 #include <boost/function_types/components.hpp>
15 
16 namespace boost
17 {
18   namespace function_types
19   {
20     template< typename T, typename Tag = null_tag >
21     struct is_callable_builtin
22       : function_types::represents
23         < function_types::components<T>
24         , function_types::tag<Tag, detail::callable_builtin_tag>
25         >
26     {
27       BOOST_MPL_AUX_LAMBDA_SUPPORT(2,is_callable_builtin,(T,Tag))
28     };
29   }
30 }
31 
32 #endif
33 
34