2016-04-29 13:57:08 +02:00
|
|
|
#pragma once
|
|
|
|
|
2016-11-07 14:35:47 +01:00
|
|
|
#include <functional>
|
|
|
|
|
2016-04-29 13:57:08 +02:00
|
|
|
/* A trivial class to run a function at the end of a scope. */
|
|
|
|
class Finally
|
|
|
|
{
|
|
|
|
private:
|
|
|
|
std::function<void()> fun;
|
|
|
|
|
|
|
|
public:
|
|
|
|
Finally(std::function<void()> fun) : fun(fun) { }
|
|
|
|
~Finally() { fun(); }
|
|
|
|
};
|