aboutsummaryrefslogtreecommitdiffstats
path: root/src/libs/cplusplus/pp-engine.cpp
diff options
context:
space:
mode:
authorErik Verbruggen <[email protected]>2014-03-13 14:37:22 +0100
committerErik Verbruggen <[email protected]>2014-06-04 10:25:29 +0200
commit6a514c8be60793d08a6caa3cdae53f7a91b9ac54 (patch)
tree7d253aa9edf8ea391cd4f4fe3c4b699a8346c2f2 /src/libs/cplusplus/pp-engine.cpp
parenteee94667e632a5435a32da2734dd681b3a5ecac9 (diff)
Move ScopedSwap template out of pp-engine.cpp and into the utils lib.
Change-Id: I9370da5f3159f6d8ad9ee9f8fe949f66eb235592 Reviewed-by: Nikolai Kosjar <[email protected]> Reviewed-by: Orgad Shaneh <[email protected]>
Diffstat (limited to 'src/libs/cplusplus/pp-engine.cpp')
-rw-r--r--src/libs/cplusplus/pp-engine.cpp26
1 files changed, 4 insertions, 22 deletions
diff --git a/src/libs/cplusplus/pp-engine.cpp b/src/libs/cplusplus/pp-engine.cpp
index 4681ef65a9f..94fbd8496be 100644
--- a/src/libs/cplusplus/pp-engine.cpp
+++ b/src/libs/cplusplus/pp-engine.cpp
@@ -54,6 +54,8 @@
#include <cplusplus/Token.h>
#include <cplusplus/Literals.h>
+#include <utils/scopedswap.h>
+
#include <QDebug>
#include <QList>
#include <QDate>
@@ -72,6 +74,8 @@
#include <deque>
+using namespace Utils;
+
namespace {
enum {
MAX_TOKEN_EXPANSION_COUNT = 5000,
@@ -80,28 +84,6 @@ enum {
}
namespace {
-/// RAII object to save a value, and restore it when the scope is left.
-template<typename _T>
-class ScopedSwap
-{
- _T oldValue;
- _T &ref;
-
-public:
- ScopedSwap(_T &var, _T newValue)
- : oldValue(newValue)
- , ref(var)
- {
- std::swap(ref, oldValue);
- }
-
- ~ScopedSwap()
- {
- std::swap(ref, oldValue);
- }
-};
-typedef ScopedSwap<bool> ScopedBoolSwap;
-
static bool same(const char *a, const char *b, int size)
{
return strncmp(a, b, size) == 0;