|
template<typename... Args> |
auto | operator() (Args &&...args) noexcept(noexcept(decltype(invoke(first_, static_cast< Args &&>(args)...))(invoke(first_, static_cast< Args &&>(args)...)))) -> decltype(invoke(first_, static_cast< Args &&>(args)...)) |
|
template<typename... Args> |
auto | operator() (Args &&...args) return invoke((First const &) first_ |
|
template<typename... Args> |
auto | operator() (Args &&...args) noexcept(noexcept(decltype(second_(static_cast< Args &&>(args)...))(second_(static_cast< Args &&>(args)...)))) -> decltype(second_(static_cast< Args &&>(args)...)) |
|
template<typename... Args> |
auto | operator() (Args &&...args) return((overloaded< Rest... > const &) second_)(static_cast< Args &&>(args)...) noexcept(noexcept(decltype(CPP_AUTO_FUN_RETURNS_const)(CPP_AUTO_FUN_RETURNS_const))) -> decltype(CPP_AUTO_FUN_RETURNS_const) |
|
constexpr | overloaded (First first, Rest... rest) |
|
auto | static_cast (args)...) noexcept(noexcept(decltype(CPP_AUTO_FUN_RETURNS_const)(CPP_AUTO_FUN_RETURNS_const))) -> decltype(CPP_AUTO_FUN_RETURNS_const) |
|