Classes | |
class | eagine::basic_callable_ref< FuncSig, NoExcept > |
Declaration of class template storing a reference to a callable object. More... | |
class | eagine::basic_callable_ref< RV(P...) noexcept(NE), NE > |
Implementation of class template storing a reference to a callable object. More... | |
class | eagine::count_t< Int > |
Class counting invocation of its call operator. More... | |
class | eagine::interleaved_call< Func, SepFunc > |
Callable class that interleaves calls to a function with a separator function. More... | |
struct | eagine::member_function_constant< T, Ptr > |
Declaration of compile-time member function pointer wrappers. More... | |
struct | eagine::member_function_constant< RV(C::*)(P...), Ptr > |
Implementation of compile-time member function pointer wrappers. More... | |
class | eagine::on_scope_exit< OnException > |
Class executing a specified action on scope exit. More... | |
class | eagine::func_on_scope_exit< Func, OnException > |
Class storing a callable object and an instance of on_scope_exit. More... | |
class | eagine::value_change_tracker< T, Transform > |
Class tracking the changes in a potentially transformed value. More... | |
struct | eagine::value_change_divider< T, D > |
Transform class for value_change_tracker, dividing by the specified amount. More... | |
Macros | |
#define | EAGINE_MEM_FUNC_T(CLASS, FUNC) |
Macro for instantiating the member_function_constant template. More... | |
#define | EAGINE_MEM_FUNC_C(CLASS, FUNC) |
Macro for creating object of member_function_constant. More... | |
#define | EAGINE_THIS_T() |
Macro that in member function returns the type of the containing class. | |
#define | EAGINE_THIS_MEM_FUNC_T(FUNC) |
Macro for instantiating member_function_constant in member functions. More... | |
#define | EAGINE_THIS_MEM_FUNC_C(FUNC) |
Macro for creating object of member_function_constant in member functions. More... | |
Typedefs | |
template<typename Sig > | |
using | eagine::callable_ref = basic_callable_ref< Sig, is_noexcept_function_v< Sig > > |
Alias for callable object references. | |
template<typename T , T D> | |
using | eagine::value_change_div_tracker = value_change_tracker< T, value_change_divider< T, D > > |
Alias for value tracker tracking changes by amount specified by D . | |
Functions | |
template<typename Func > | |
static auto | eagine::finally (Func func) -> func_on_scope_exit< Func > |
Function constructing on-scope-exit actions. More... | |
#define EAGINE_MEM_FUNC_C | ( | CLASS, | |
FUNC | |||
) |
Macro for creating object of member_function_constant.
#define EAGINE_MEM_FUNC_T | ( | CLASS, | |
FUNC | |||
) |
Macro for instantiating the member_function_constant template.
#define EAGINE_THIS_MEM_FUNC_C | ( | FUNC | ) |
Macro for creating object of member_function_constant in member functions.
#define EAGINE_THIS_MEM_FUNC_T | ( | FUNC | ) |
Macro for instantiating member_function_constant in member functions.
|
inlinestatic |
Function constructing on-scope-exit actions.
This function takes the specified callable argument and creates an object which when destroyed, typically when leaving scope block, invokes the callable.