YACLib
C++ library for concurrent tasks execution
Loading...
Searching...
No Matches
yaclib::detail::SafeCall< Func > Class Template Reference

#include <safe_call.hpp>

Inheritance diagram for yaclib::detail::SafeCall< Func >:
[legend]

Public Types

using Store = std::decay_t< Func >
 
using Invoke = std::conditional_t< std::is_function_v< std::remove_reference_t< Func > >, Store, Func >
 

Public Member Functions

 SafeCall (Store &&f) noexcept(std::is_nothrow_move_constructible_v< Store >)
 
 SafeCall (const Store &f) noexcept(std::is_nothrow_copy_constructible_v< Store >)
 

Protected Member Functions

void Call () noexcept
 

Detailed Description

template<typename Func>
class yaclib::detail::SafeCall< Func >

Definition at line 11 of file safe_call.hpp.

Member Typedef Documentation

◆ Invoke

template<typename Func >
using yaclib::detail::SafeCall< Func >::Invoke = std::conditional_t<std::is_function_v<std::remove_reference_t<Func> >, Store, Func>

Definition at line 14 of file safe_call.hpp.

◆ Store

template<typename Func >
using yaclib::detail::SafeCall< Func >::Store = std::decay_t<Func>

Definition at line 13 of file safe_call.hpp.

Constructor & Destructor Documentation

◆ SafeCall() [1/2]

template<typename Func >
yaclib::detail::SafeCall< Func >::SafeCall ( Store &&  f)
inlineexplicitnoexcept

Definition at line 16 of file safe_call.hpp.

◆ SafeCall() [2/2]

template<typename Func >
yaclib::detail::SafeCall< Func >::SafeCall ( const Store f)
inlineexplicitnoexcept

Definition at line 19 of file safe_call.hpp.

Member Function Documentation

◆ Call()

template<typename Func >
void yaclib::detail::SafeCall< Func >::Call ( )
inlineprotectednoexcept

Definition at line 23 of file safe_call.hpp.


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