Helios Engine 0.1.0
A modular ECS based data-oriented C++23 game engine
 
Loading...
Searching...
No Matches
helios::utils::Defer< F > Class Template Reference

#include <defer.hpp>

Public Member Functions

 Defer ()=delete
 
constexpr Defer (F func) noexcept(std::is_nothrow_move_constructible_v< F >)
 Constructs a Defer object that will execute the provided callable upon destruction.
 
 Defer (Defer &&)=delete
 
 Defer (const Defer &)=delete
 
constexpr ~Defer () noexcept(std::is_nothrow_invocable_v< F >)
 
Deferoperator= (const Defer &)=delete
 
Deferoperator= (Defer &&)=delete
 

Detailed Description

template<std::invocable F>
class helios::utils::Defer< F >

Definition at line 30 of file defer.hpp.

Constructor & Destructor Documentation

◆ Defer() [1/4]

◆ Defer() [2/4]

template<std::invocable F>
constexpr helios::utils::Defer< F >::Defer ( func)
inlineexplicitconstexprnoexcept

Constructs a Defer object that will execute the provided callable upon destruction.

Parameters
funcThe callable to be executed.

Definition at line 38 of file defer.hpp.

38: func_(std::move(func)) {}

◆ Defer() [3/4]

template<std::invocable F>
helios::utils::Defer< F >::Defer ( Defer< F > &&  )
delete

◆ Defer() [4/4]

template<std::invocable F>
helios::utils::Defer< F >::Defer ( const Defer< F > &  )
delete

◆ ~Defer()

template<std::invocable F>
constexpr helios::utils::Defer< F >::~Defer ( )
inlineconstexprnoexcept

Member Function Documentation

◆ operator=() [1/2]

template<std::invocable F>
Defer & helios::utils::Defer< F >::operator= ( const Defer< F > &  )
delete

◆ operator=() [2/2]

template<std::invocable F>
Defer & helios::utils::Defer< F >::operator= ( Defer< F > &&  )
delete