LLVM: llvm::callable_detail::Callable< T, bool > Class Template Reference (original) (raw)

Templated storage wrapper for a callable. More...

#include "[llvm/ADT/STLExtras.h](STLExtras%5F8h%5Fsource.html)"

Public Member Functions
Callable ()=default
Callable (T const &O)
Callable (Callable const &Other)=default
Callable (Callable &&Other)=default
Callable & operator= (Callable const &Other)
Callable & operator= (Callable &&Other)
template<typename... Pn, std::enable_if_t< std::is_invocable_v< T, Pn... >, int > = 0>
decltype(auto) operator() (Pn &&...Params)
template<typename... Pn, std::enable_if_t< std::is_invocable_v< T const, Pn... >, int > = 0>
decltype(auto) operator() (Pn &&...Params) const
bool valid () const
bool reset ()
operator reference ()
operator const_reference () const

template<typename T, bool = std::is_function_v<std::remove_pointer_t<remove_cvref_t>>>
class llvm::callable_detail::Callable< T, bool >

Templated storage wrapper for a callable.

This class is consistently default constructible, copy / move constructible / assignable.

Supported callable types:

Definition at line 188 of file STLExtras.h.

Callable() [1/4]

template<typename T, bool = std::is_function_v<std::remove_pointer_t<remove_cvref_t>>>

Callable() [2/4]

template<typename T, bool = std::is_function_v<std::remove_pointer_t<remove_cvref_t>>>

Callable() [3/4]

template<typename T, bool = std::is_function_v<std::remove_pointer_t<remove_cvref_t>>>

Callable() [4/4]

template<typename T, bool = std::is_function_v<std::remove_pointer_t<remove_cvref_t>>>

operator const_reference()

template<typename T, bool = std::is_function_v<std::remove_pointer_t<remove_cvref_t>>>

operator reference()

template<typename T, bool = std::is_function_v<std::remove_pointer_t<remove_cvref_t>>>

operator()() [1/2]

template<typename T, bool = std::is_function_v<std::remove_pointer_t<remove_cvref_t>>>

template<typename... Pn, std::enable_if_t< std::is_invocable_v< T, Pn... >, int > = 0>

operator()() [2/2]

template<typename T, bool = std::is_function_v<std::remove_pointer_t<remove_cvref_t>>>

template<typename... Pn, std::enable_if_t< std::is_invocable_v< T const, Pn... >, int > = 0>

operator=() [1/2]

template<typename T, bool = std::is_function_v<std::remove_pointer_t<remove_cvref_t>>>

operator=() [2/2]

template<typename T, bool = std::is_function_v<std::remove_pointer_t<remove_cvref_t>>>

reset()

template<typename T, bool = std::is_function_v<std::remove_pointer_t<remove_cvref_t>>>

valid()

template<typename T, bool = std::is_function_v<std::remove_pointer_t<remove_cvref_t>>>


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