is_member_function_pointer.hpp 865 B

12345678910111213141516171819202122232425262728293031
  1. // (C) Copyright Tobias Schwinger
  2. //
  3. // Use modification and distribution are subject to the boost Software License,
  4. // Version 1.0. (See http://www.boost.org/LICENSE_1_0.txt).
  5. //------------------------------------------------------------------------------
  6. #ifndef BOOST_FT_IS_MEMBER_FUNCTION_POINTER_HPP_INCLUDED
  7. #define BOOST_FT_IS_MEMBER_FUNCTION_POINTER_HPP_INCLUDED
  8. #include <boost/mpl/aux_/lambda_support.hpp>
  9. #include <boost/function_types/components.hpp>
  10. namespace boost
  11. {
  12. namespace function_types
  13. {
  14. template< typename T, typename Tag = null_tag >
  15. struct is_member_function_pointer
  16. : function_types::represents
  17. < function_types::components<T>
  18. , function_types::tag<Tag ,detail::member_function_pointer_tag> >
  19. {
  20. BOOST_MPL_AUX_LAMBDA_SUPPORT(2,is_member_function_pointer,(T,Tag))
  21. };
  22. }
  23. }
  24. #endif