libmoost
/home/mhx/git/github/libmoost/include/moost/utils/scope_exit.hpp File Reference
#include <boost/noncopyable.hpp>
#include <boost/function.hpp>
#include <boost/ref.hpp>
Include dependency graph for scope_exit.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  moost::utils::scope_exit::policy::policy_base< scopedT >
 The base for all policies. Models common concept interface. More...
struct  moost::utils::scope_exit::policy::policy_base_with_get< scopedT >
 The base for all policies that implement a getter. More...
struct  moost::utils::scope_exit::policy::set_default_value< scopedT >
 This policy just sets scoped to the default constructed value. More...
struct  moost::utils::scope_exit::policy::set_specific_value< scopedT >
 This policy just sets scoped to a specific value. More...
struct  moost::utils::scope_exit::policy::restore_original_value< scopedT >
 This policy just resets scoped back to the original value. More...
struct  moost::utils::scope_exit::policy::call_member_function< scopedT >
struct  moost::utils::scope_exit::policy::call_member_function< scopedT * >
 specialisation of call_member_function for "this" pointers More...
struct  moost::utils::scope_exit::policy::call_free_function_with_val< scopedT >
 Calls a free function or functor, passing it scoped by *value*. More...
struct  moost::utils::scope_exit::policy::call_free_function_with_ref< scopedT >
 Calls a free function or functor, passing it scoped by *reference*. More...
struct  moost::utils::scope_exit::policy::free_malloc< scopedT >
 Calls free on pointer to release a malloc/realloc allocation. More...
struct  moost::utils::scope_exit::policy::call_functor
 Calls a boost::function0<void> functor. More...
struct  moost::utils::scope_exit::basic_scope_exit< policyT >
 This is the basic scope exit class, used when supplying custom policies. More...
struct  moost::utils::scope_exit::type< scopedT >
 This is the general scope exit class, with the various policies ready for use. More...

Namespaces

namespace  moost
 

Creates a unique temporary directory; removed on scope exit.


namespace  moost::utils
namespace  moost::utils::scope_exit
namespace  moost::utils::scope_exit::policy

Typedefs

typedef basic_scope_exit
< policy::call_functor > 
moost::utils::scope_exit::call_functor
 when scoped exits call this boost::function0<void> functor