LLVM 22.0.0git
llvm::function_ref< Ret(Params...)> Class Template Reference

#include "llvm/ADT/STLFunctionalExtras.h"

Inheritance diagram for llvm::function_ref< Ret(Params...)>:
[legend]

Public Member Functions

 function_ref ()=default
 function_ref (std::nullptr_t)
template<typename Callable>
 function_ref (Callable &&callable LLVM_LIFETIME_BOUND, std::enable_if_t<!std::is_same< remove_cvref_t< Callable >, function_ref >::value > *=nullptr, std::enable_if_t< std::is_void< Ret >::value||std::is_convertible< decltype(std::declval< Callable >()(std::declval< Params >()...)), Ret >::value > *=nullptr)
Ret operator() (Params ...params) const
 operator bool () const
bool operator== (const function_ref< Ret(Params...)> &Other) const

Detailed Description

template<typename Ret, typename... Params>
class llvm::function_ref< Ret(Params...)>

Definition at line 40 of file STLFunctionalExtras.h.

Constructor & Destructor Documentation

◆ function_ref() [1/3]

template<typename Ret, typename... Params>
llvm::function_ref< Ret(Params...)>::function_ref ( )
default

Referenced by function_ref(), and operator==().

◆ function_ref() [2/3]

template<typename Ret, typename... Params>
llvm::function_ref< Ret(Params...)>::function_ref ( std::nullptr_t )
inline

Definition at line 52 of file STLFunctionalExtras.h.

◆ function_ref() [3/3]

template<typename Ret, typename... Params>
template<typename Callable>
llvm::function_ref< Ret(Params...)>::function_ref ( Callable &&callable LLVM_LIFETIME_BOUND,
std::enable_if_t<!std::is_same< remove_cvref_t< Callable >, function_ref< Ret(Params...)> >::value > * = nullptr,
std::enable_if_t< std::is_void< Ret >::value||std::is_convertible< decltype(std::declval< Callable >()(std::declval< Params >()...)), Ret >::value ,
* = nullptr )
inline

Definition at line 55 of file STLFunctionalExtras.h.

References function_ref(), and LLVM_LIFETIME_BOUND.

Member Function Documentation

◆ operator bool()

template<typename Ret, typename... Params>
llvm::function_ref< Ret(Params...)>::operator bool ( ) const
inlineexplicit

Definition at line 72 of file STLFunctionalExtras.h.

◆ operator()()

template<typename Ret, typename... Params>
Ret llvm::function_ref< Ret(Params...)>::operator() ( Params ... params) const
inline

Definition at line 68 of file STLFunctionalExtras.h.

◆ operator==()

template<typename Ret, typename... Params>
bool llvm::function_ref< Ret(Params...)>::operator== ( const function_ref< Ret(Params...)> & Other) const
inline

Definition at line 74 of file STLFunctionalExtras.h.

References function_ref(), and llvm::Other.


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