Range-v3
Range algorithms, views, and actions for the Standard Library
ranges::v3::semiregular< T > Struct Template Reference
+ Inheritance diagram for ranges::v3::semiregular< T >:

Public Member Functions

T & get () &noexcept
 
constexpr T const & get () const &noexcept
 
T && get () &&noexcept
 
constexpr T const && get () const &&noexcept
 
constexpr operator T const & () const &noexcept
 
constexpr operator T const && () const &&noexcept
 
 operator T& () &noexcept
 
 operator T&& () &&noexcept
 
template<typename... Args>
auto operator() (Args &&...args) &noexcept(noexcept(decltype(std::declval< T &>()(static_cast< Args &&>(args)...))(std::declval< T &>()(static_cast< Args &&>(args)...)))) -> decltype(std::declval< T &>()(static_cast< Args &&>(args)...))
 
template<typename... Args>
constexpr auto operator() (Args &&...args) const &noexcept(noexcept(decltype(std::declval< T const &>()(static_cast< Args &&>(args)...))(std::declval< T const &>()(static_cast< Args &&>(args)...)))) -> decltype(std::declval< T const &>()(static_cast< Args &&>(args)...))
 
template<typename... Args>
auto operator() (Args &&...args) &&noexcept(noexcept(decltype(std::declval< T &&>()(static_cast< Args &&>(args)...))(std::declval< T &&>()(static_cast< Args &&>(args)...)))) -> decltype(std::declval< T &&>()(static_cast< Args &&>(args)...))
 
template<typename... Args>
constexpr auto operator() (Args &&...args) const &&noexcept(noexcept(decltype(std::declval< T const &&>()(static_cast< Args &&>(args)...))(std::declval< T const &&>()(static_cast< Args &&>(args)...)))) -> decltype(std::declval< T const &&>()(static_cast< Args &&>(args)...))