|
template<typename ... Args> |
auto | operator() (Args &&... args) noexcept(noexcept(decltype(invoke(std::declval< Fn1 &>(), invoke(std::declval< Fn2 &>(), static_cast< Args &&>(args))...))(invoke(std::declval< Fn1 &>(), invoke(std::declval< Fn2 &>(), static_cast< Args &&>(args))...)))) -> decltype(invoke(std::declval< Fn1 &>(), invoke(std::declval< Fn2 &>(), static_cast< Args &&>(args))...)) |
|
template<typename ... Args> |
auto | operator() (Args &&... args) const noexcept(noexcept(decltype(invoke(std::declval< Fn1 const &>(), invoke(std::declval< Fn2 const &>(), static_cast< Args &&>(args))...))(invoke(std::declval< Fn1 const &>(), invoke(std::declval< Fn2 const &>(), static_cast< Args &&>(args))...)))) -> decltype(invoke(std::declval< Fn1 const &>(), invoke(std::declval< Fn2 const &>(), static_cast< Args &&>(args))...)) |
|
constexpr | transformed (Fn1 fn1, Fn2 fn2) |
|