From 24eca6aa60f0848ad671b1fe11351d6e911b14e0 Mon Sep 17 00:00:00 2001
From: "Nicolas \"Pixel\" Noble" <pixel@nobis-crew.org>
Date: Wed, 25 Dec 2013 01:14:38 -0800
Subject: Adding ScopedLambdas.
---
includes/Exceptions.h | 9 +++++++++
1 file changed, 9 insertions(+)
(limited to 'includes')
diff --git a/includes/Exceptions.h b/includes/Exceptions.h
index 47bd1f5..799bfb6 100644
--- a/includes/Exceptions.h
+++ b/includes/Exceptions.h
@@ -2,6 +2,7 @@
#include <stdarg.h>
#include <typeinfo>
+#include <functional>
#ifndef _MSC_VER
#include <cxxabi.h>
@@ -174,3 +175,11 @@ ClassName::ClassName(T * ptr) {
msg.set("UnitTest Assert " #c " failed at %s:%i", __FILE__, __LINE__); \
Balau::TestHelper(msg); \
}
+
+class ScopedLambda {
+ public:
+ ScopedLambda(std::function<void()> l) : m_l(l) { }
+ ~ScopedLambda() { m_l(); }
+ private:
+ std::function<void()> m_l;
+};
--
cgit v1.2.3