pmf_4.hpp
Go to the documentation of this file.
#define BOOST_CLBL_TRTS_TRANSACTION_SAFE_SPECIFIER
Definition: config.hpp:37
#define BOOST_CLBL_TRTS_NOEXCEPT_SPECIFIER
Definition: config.hpp:106
#define BOOST_CLBL_TRTS_INCLUDE_QUALIFIERS
Definition: function.hpp:72
constexpr qualifier_flags volatile_
Definition: qualifier_flags.hpp:50
constexpr qualifier_flags rref_
Definition: qualifier_flags.hpp:66
constexpr qualifier_flags const_
Definition: qualifier_flags.hpp:46
std::integral_constant< qualifier_flags, Flags &~const_ > remove_const_flag
Definition: qualifier_flags.hpp:74
constexpr qualifier_flags lref_
Definition: qualifier_flags.hpp:61
std::uint32_t qualifier_flags
Definition: qualifier_flags.hpp:18
std::integral_constant< qualifier_flags, !AlreadyHasRef ?(Existing|Other) :(AlreadyHasLRef ?(Existing|(Other &~rref_)) :(IsAddingLRef ?((Existing &~rref_)|Other) :(Existing|Other)))> collapse_flags
Definition: qualifier_flags.hpp:106
std::integral_constant< qualifier_flags, Flags &~volatile_ > remove_volatile_flag
Definition: qualifier_flags.hpp:82
typename set_member_function_qualifiers_t< Flags, IsTransactionSafe, IsNoexcept, Ts... >::type set_member_function_qualifiers
Definition: pmf.hpp:34
pmf traits
Definition: pmf_4.hpp:41
Return(BOOST_CLBL_TRTS_CC T::*)(Args...) BOOST_CLBL_TRTS_INCLUDE_QUALIFIERS BOOST_CLBL_TRTS_INCLUDE_TRANSACTION_SAFE BOOST_CLBL_TRTS_NOEXCEPT_SPEC type
Definition: pmf_4.hpp:48
Return(BOOST_CLBL_TRTS_CC T::*)(Args...) BOOST_CLBL_TRTS_INCLUDE_QUALIFIERS BOOST_CLBL_TRTS_INCLUDE_TRANSACTION_SAFE BOOST_CLBL_TRTS_NOEXCEPT_SPECIFIER add_noexcept
Definition: pmf_4.hpp:85
set_qualifiers< qualifiers::ref_flags > remove_member_cv
Definition: pmf_4.hpp:127
Return(invoke_type, Args...) function_type
Definition: pmf_4.hpp:61
T class_type
Definition: pmf_4.hpp:98
Return(BOOST_CLBL_TRTS_CC T::*)(Args...) BOOST_CLBL_TRTS_INCLUDE_QUALIFIERS BOOST_CLBL_TRTS_TRANSACTION_SAFE_SPECIFIER BOOST_CLBL_TRTS_NOEXCEPT_SPEC add_transaction_safe
Definition: pmf_4.hpp:96
std::true_type is_member_pointer
Definition: pmf_4.hpp:146
std::tuple< Args... > non_invoke_arg_types
Definition: pmf_4.hpp:57
type remove_varargs
Definition: pmf_4.hpp:68
Return(BOOST_CLBL_TRTS_CC T::*)(Args...) BOOST_CLBL_TRTS_INCLUDE_QUALIFIERS BOOST_CLBL_TRTS_NOEXCEPT_SPEC remove_transaction_safe
Definition: pmf_4.hpp:91
set_qualifiers< qualifiers::q_flags|volatile_ > add_member_volatile
Definition: pmf_4.hpp:117
Return(Args...) BOOST_CLBL_TRTS_INCLUDE_ABOMINABLE_QUALIFIERS BOOST_CLBL_TRTS_INCLUDE_TRANSACTION_SAFE BOOST_CLBL_TRTS_NOEXCEPT_SPEC qualified_function_type
Definition: pmf_4.hpp:66
Return return_type
Definition: pmf_4.hpp:43
set_member_function_qualifiers< Flags, is_transaction_safe::value, is_noexcept::value, BOOST_CLBL_TRTS_CC_TAG, T, Return, Args... > set_qualifiers
Definition: pmf_4.hpp:105
BOOST_CLBL_TRTS_IS_NOEXCEPT is_noexcept
Definition: pmf_4.hpp:76
Return(BOOST_CLBL_TRTS_CC U::*)(Args...) BOOST_CLBL_TRTS_INCLUDE_QUALIFIERS BOOST_CLBL_TRTS_INCLUDE_TRANSACTION_SAFE BOOST_CLBL_TRTS_NOEXCEPT_SPEC apply_member_pointer
Definition: pmf_4.hpp:134
Return(Args...) function_object_signature
Definition: pmf_4.hpp:59
set_qualifiers< qualifiers::q_flags|const_ > add_member_const
Definition: pmf_4.hpp:115
Return(BOOST_CLBL_TRTS_CC T::*)(Args...) BOOST_CLBL_TRTS_INCLUDE_QUALIFIERS BOOST_CLBL_TRTS_INCLUDE_TRANSACTION_SAFE remove_noexcept
Definition: pmf_4.hpp:80
default_callable_traits< dummy BOOST_CLBL_TRTS_INCLUDE_QUALIFIERS > qualifiers
Definition: pmf_4.hpp:100
set_qualifiers< collapse_flags< qualifiers::q_flags, rref_ >::value > add_member_rvalue_reference
Definition: pmf_4.hpp:113
set_qualifiers< qualifiers::cv_flags > remove_member_reference
Definition: pmf_4.hpp:107
typename std::conditional< std::is_rvalue_reference< T BOOST_CLBL_TRTS_INCLUDE_QUALIFIERS >::value, T BOOST_CLBL_TRTS_INCLUDE_QUALIFIERS, typename std::add_lvalue_reference< T BOOST_CLBL_TRTS_INCLUDE_QUALIFIERS >::type >::type invoke_type
Definition: pmf_4.hpp:54
BOOST_CLBL_TRTS_IS_TRANSACTION_SAFE is_transaction_safe
Definition: pmf_4.hpp:87
Return(BOOST_CLBL_TRTS_VARARGS_CC T::*)(Args...,...) BOOST_CLBL_TRTS_INCLUDE_QUALIFIERS BOOST_CLBL_TRTS_INCLUDE_TRANSACTION_SAFE BOOST_CLBL_TRTS_NOEXCEPT_SPEC add_varargs
Definition: pmf_4.hpp:74
NewReturn(BOOST_CLBL_TRTS_CC T::*)(Args...) BOOST_CLBL_TRTS_INCLUDE_QUALIFIERS BOOST_CLBL_TRTS_INCLUDE_TRANSACTION_SAFE BOOST_CLBL_TRTS_NOEXCEPT_SPEC apply_return
Definition: pmf_4.hpp:141
set_qualifiers< collapse_flags< qualifiers::q_flags, lref_ >::value > add_member_lvalue_reference
Definition: pmf_4.hpp:110
set_qualifiers< qualifiers::q_flags|cv_ > add_member_cv
Definition: pmf_4.hpp:119
Container< invoke_type, Args... > expand_args
Definition: pmf_4.hpp:144
std::tuple< invoke_type, Args... > arg_types
Definition: pmf_4.hpp:56
set_qualifiers< qualifiers::ref_flags|remove_volatile_flag< qualifiers::cv_flags >::value > remove_member_volatile
Definition: pmf_4.hpp:125
set_qualifiers< qualifiers::ref_flags|remove_const_flag< qualifiers::cv_flags >::value > remove_member_const
Definition: pmf_4.hpp:122
#define BOOST_CLBL_TRTS_INCLUDE_TRANSACTION_SAFE
Definition: function.hpp:11
#define BOOST_CLBL_TRTS_IS_TRANSACTION_SAFE
Definition: function.hpp:12
#define BOOST_CLBL_TRTS_INCLUDE_ABOMINABLE_QUALIFIERS
Definition: pmf.hpp:89