Parcourir la source

Scope_exit changes adapted (#106).

main
offa il y a 7 ans
Parent
révision
189a23d2ba
1 fichiers modifiés avec 12 ajouts et 1 suppressions
  1. +12
    -1
      include/scope_exit.h

+ 12
- 1
include/scope_exit.h Voir le fichier

@@ -42,9 +42,20 @@ namespace sr
template<class EF>
class scope_exit : public detail::scope_guard_base<EF, detail::scope_exit_strategy>
{
using Base = detail::scope_guard_base<EF, detail::scope_exit_strategy>;


public:

using detail::scope_guard_base<EF, detail::scope_exit_strategy>::scope_guard_base;
template<class EFP,
std::enable_if_t<std::is_constructible_v<EF, EFP>, int> = 0,
std::enable_if_t<!std::is_same_v<detail::remove_cvref_t<EFP>, scope_exit<EF>>, int> = 0
>
explicit scope_exit(EFP&& exitFunction) noexcept(std::is_nothrow_constructible_v<EF, EFP>)
: Base(std::forward<EFP>(exitFunction))
{
}



private:

Chargement…
Annuler
Enregistrer