types/traits: add remove_member_const

This commit is contained in:
Danny Robson 2017-09-08 14:19:28 +10:00
parent bb07f6573c
commit fb5614ae2b

View File

@ -189,15 +189,17 @@ struct remove_member_const {
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
template <typename ClassT, typename ResultT, typename ...Args> template <typename ClassT, typename ReturnT, typename ...Args>
struct remove_noexcept<ResultT(ClassT::*)(Args...) noexcept> { struct remove_member_const<ReturnT(ClassT::*const)(Args...) const> {
using type = ResultT(ClassT::*)(Args...); using type = ReturnT(ClassT::*const)(Args...);
}; };
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
template <typename T> template <typename ClassT, typename ReturnT, typename ...Args>
using remove_noexcept_t = typename remove_noexcept<T>::type; struct remove_member_const<ReturnT(ClassT::*)(Args...) const> {
using type = ReturnT(ClassT::*)(Args...);
};
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////