summaryrefslogtreecommitdiff
path: root/src/libs/cplusplus/pp-engine.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/libs/cplusplus/pp-engine.h')
-rw-r--r--src/libs/cplusplus/pp-engine.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/libs/cplusplus/pp-engine.h b/src/libs/cplusplus/pp-engine.h
index b265de6d46..19935b2c7d 100644
--- a/src/libs/cplusplus/pp-engine.h
+++ b/src/libs/cplusplus/pp-engine.h
@@ -56,6 +56,8 @@
#include <QByteArray>
#include <QPair>
+#include <functional>
+
namespace CPlusPlus {
class Environment;
@@ -81,6 +83,9 @@ public:
QByteArray run(const QString &filename, const QByteArray &source,
bool noLines = false, bool markGeneratedTokens = true);
+ using CancelChecker = std::function<bool()>;
+ void setCancelChecker(const CancelChecker &cancelChecker);
+
bool expandFunctionlikeMacros() const;
void setExpandFunctionlikeMacros(bool expandFunctionlikeMacros);
@@ -253,6 +258,7 @@ private:
Client *m_client;
Environment *m_env;
QByteArray m_scratchBuffer;
+ CancelChecker m_cancelChecker;
bool m_expandFunctionlikeMacros;
bool m_keepComments;