]>
git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/function_types/test/synthesis/member_function_pointer.cpp
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 #include <boost/mpl/assert.hpp>
10 #include <boost/mpl/vector.hpp>
11 #include <boost/type_traits/is_same.hpp>
12 #include <boost/function_types/member_function_pointer.hpp>
14 namespace ft
= boost::function_types
;
15 namespace mpl
= boost::mpl
;
20 typedef int (C::* expected1
)(int);
21 typedef int (C::* expected2
)(int) const;
22 typedef int (C::* expected3
)(int) volatile;
23 typedef int (C::* expected4
)(int) const volatile;
27 is_same
< ft::member_function_pointer
< mpl::vector
<int,C
,int> >::type
32 is_same
< ft::member_function_pointer
< mpl::vector
<int,C
,int>,
33 ft::tag
<ft::non_const
, ft::non_volatile
> >::type
38 is_same
< ft::member_function_pointer
< mpl::vector
<int,C
,int>
39 , ft::const_qualified
>::type
44 is_same
< ft::member_function_pointer
< mpl::vector
<int,C
,int>,
45 ft::tag
<ft::const_qualified
, ft::non_volatile
> >::type
50 is_same
< ft::member_function_pointer
< mpl::vector
<int,C
,int>
51 , ft::volatile_qualified
>::type
56 is_same
< ft::member_function_pointer
< mpl::vector
<int,C
,int>,
57 ft::tag
<ft::non_const
, ft::volatile_qualified
> >::type
62 is_same
< ft::member_function_pointer
< mpl::vector
<int,C
,int>,
63 ft::tag
<ft::const_qualified
, ft::volatile_qualified
> >::type