]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/boost/callable_traits/detail/traits.hpp
update sources to v12.2.3
[ceph.git] / ceph / src / boost / boost / callable_traits / detail / traits.hpp
1 /*
2
3 @Copyright Barrett Adair 2015-2017
4 Distributed under the Boost Software License, Version 1.0.
5 (See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)
6
7 */
8
9 #ifndef BOOST_CLBL_TRTS_DETAIL_TRAITS_HPP
10 #define BOOST_CLBL_TRTS_DETAIL_TRAITS_HPP
11
12 #include <boost/callable_traits/detail/forward_declarations.hpp>
13 #include <boost/callable_traits/detail/utility.hpp>
14
15 namespace boost { namespace callable_traits { namespace detail {
16
17 // Here is where the magic happens
18 template<typename T>
19 using traits = typename BOOST_CLBL_TRTS_DISJUNCTION(
20 function_object<unwrap_reference<T>>,
21 function<T>,
22 pmf<T>,
23 pmd<T>,
24 default_callable_traits<T>
25 )::traits;
26
27 }}} // namespace boost::callable_traits::detail
28
29 #endif // #ifndef BOOST_CLBL_TRTS_DETAIL_TRAITS_HPP