| }; | }; | ||||
| template <class EF> | |||||
| scope_exit(EF &&ef) -> scope_exit<std::decay_t<EF>>; | |||||
| template<class EF> | template<class EF> | ||||
| scope_exit<std::decay_t<EF>> make_scope_exit(EF&& exitFunction) | scope_exit<std::decay_t<EF>> make_scope_exit(EF&& exitFunction) | ||||
| { | { |
| TEST_CASE("exit function called on destruction", "[ScopeExit]") | TEST_CASE("exit function called on destruction", "[ScopeExit]") | ||||
| { | { | ||||
| REQUIRE_CALL(m, deleter()); | REQUIRE_CALL(m, deleter()); | ||||
| auto guard = sr::make_scope_exit(deleter); | |||||
| auto guard = sr::scope_exit(deleter); | |||||
| static_cast<void>(guard); | static_cast<void>(guard); | ||||
| } | } | ||||