Range-v3
Range algorithms, views, and actions for the Standard Library
ranges::v3::overloaded< First, Rest... > Struct Template Reference
+ Inheritance diagram for ranges::v3::overloaded< First, Rest... >:

Public Member Functions

template<typename... Args>
auto operator() (Args &&...args) noexcept(noexcept(decltype(invoke(std::declval< First &>(), static_cast< Args &&>(args)...))(invoke(std::declval< First &>(), static_cast< Args &&>(args)...)))) -> decltype(invoke(std::declval< First &>(), static_cast< Args &&>(args)...))
 
template<typename... Args>
auto operator() (Args &&...args) const noexcept(noexcept(decltype(invoke(std::declval< First const &>(), static_cast< Args &&>(args)...))(invoke(std::declval< First const &>(), static_cast< Args &&>(args)...)))) -> decltype(invoke(std::declval< First const &>(), static_cast< Args &&>(args)...))
 
template<typename... Args>
auto operator() (Args &&...args) noexcept(noexcept(decltype(std::declval< overloaded< Rest... > &>()(static_cast< Args &&>(args)...))(std::declval< overloaded< Rest... > &>()(static_cast< Args &&>(args)...)))) -> decltype(std::declval< overloaded< Rest... > &>()(static_cast< Args &&>(args)...))
 
template<typename... Args>
auto operator() (Args &&...args) const noexcept(noexcept(decltype(std::declval< overloaded< Rest... > const &>()(static_cast< Args &&>(args)...))(std::declval< overloaded< Rest... > const &>()(static_cast< Args &&>(args)...)))) -> decltype(std::declval< overloaded< Rest... > const &>()(static_cast< Args &&>(args)...))
 
constexpr overloaded (First first, Rest... rest)