/usr/include/boost/callable_traits/detail
NameSizeModeActions
polyfills/-0755rm
unguarded/-0755rm
config.hpp35490644editdlrm
core.hpp6260644editdlrm
default_callable_traits.hpp76660644editdlrm
forward_declarations.hpp14800644editdlrm
function.hpp68650644editdlrm
function_object.hpp34910644editdlrm
is_invocable_impl.hpp51110644editdlrm
parameter_index_helper.hpp18830644editdlrm
pmd.hpp15590644editdlrm
pmf.hpp36600644editdlrm
qualifier_flags.hpp47420644editdlrm
set_function_qualifiers.hpp63170644editdlrm
sfinae_errors.hpp34710644editdlrm
traits.hpp8230644editdlrm
utility.hpp33970644editdlrm
Edit: /usr/include/boost/callable_traits/detail/pmd.hpp (1559B)
/* @Copyright Barrett Adair 2015-2017 Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt) */ #ifndef BOOST_CLBL_TRTS_DETAIL_PMD_HPP #define BOOST_CLBL_TRTS_DETAIL_PMD_HPP #include #include #include #include #include namespace boost { namespace callable_traits { namespace detail { template struct pmd : default_callable_traits {}; template struct pmd : default_callable_traits<> { static constexpr bool value = true; using traits = pmd; using class_type = T; using invoke_type = T const &; using type = D T::*; using function_type = typename std::add_lvalue_reference::type(invoke_type); using qualified_function_type = D(invoke_type); using arg_types = std::tuple; using non_invoke_arg_types = std::tuple<>; using return_type = typename std::add_lvalue_reference::type; template using apply_member_pointer = D C::*; template using apply_return = R T::*; template class Container> using expand_args = Container; using is_member_pointer = std::true_type; }; }}} // namespace boost::callable_traits::detail #endif