openMSX
Public Member Functions | List of all members
function_ref< R(Args...)> Class Template Reference

#include <function_ref.hh>

Public Member Functions

constexpr function_ref () noexcept=delete
 
template<typename F , std::enable_if_t<!std::is_same_v< std::decay_t< F >, function_ref > &&std::is_invocable_r_v< R, F &&, Args... > > * = nullptr>
constexpr function_ref (F &&f) noexcept
 
template<typename F , std::enable_if_t< std::is_invocable_r_v< R, F &&, Args... > > * = nullptr>
constexpr function_refoperator= (F &&f) noexcept
 
constexpr R operator() (Args... args) const
 

Detailed Description

template<typename R, typename... Args>
class function_ref< R(Args...)>

Definition at line 27 of file function_ref.hh.

Constructor & Destructor Documentation

◆ function_ref() [1/2]

template<typename R , typename... Args>
constexpr function_ref< R(Args...)>::function_ref ( )
constexprdeletenoexcept

◆ function_ref() [2/2]

template<typename R , typename... Args>
template<typename F , std::enable_if_t<!std::is_same_v< std::decay_t< F >, function_ref > &&std::is_invocable_r_v< R, F &&, Args... > > * = nullptr>
constexpr function_ref< R(Args...)>::function_ref ( F &&  f)
inlineconstexprnoexcept

Definition at line 35 of file function_ref.hh.

Member Function Documentation

◆ operator()()

template<typename R , typename... Args>
constexpr R function_ref< R(Args...)>::operator() ( Args...  args) const
inlineconstexpr

Definition at line 56 of file function_ref.hh.

◆ operator=()

template<typename R , typename... Args>
template<typename F , std::enable_if_t< std::is_invocable_r_v< R, F &&, Args... > > * = nullptr>
constexpr function_ref & function_ref< R(Args...)>::operator= ( F &&  f)
inlineconstexprnoexcept

Definition at line 46 of file function_ref.hh.


The documentation for this class was generated from the following file: