aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/src/libparser/node/forloopnode.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/libparser/node/forloopnode.h')
-rw-r--r--src/libparser/node/forloopnode.h36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/libparser/node/forloopnode.h b/src/libparser/node/forloopnode.h
new file mode 100644
index 0000000..a9acf20
--- /dev/null
+++ b/src/libparser/node/forloopnode.h
@@ -0,0 +1,36 @@
+#ifndef FORLOOPNODE_H
+#define FORLOOPNODE_H
+
+#include "executionnode.h"
+#include "result/diceresult.h"
+#include <memory>
+
+class MockNode : public ExecutionNode
+{
+public:
+ MockNode();
+ void run(ExecutionNode* node);
+ void setResult(Result* result);
+ QString toString(bool withLabel) const;
+ qint64 getPriority() const;
+ ExecutionNode* getCopy() const;
+};
+
+class ForLoopNode : public ExecutionNode
+{
+public:
+ ForLoopNode();
+ void run(ExecutionNode* previous);
+
+ void setInternal(ExecutionNode* internal);
+
+ QString toString(bool withLabel) const;
+ qint64 getPriority() const;
+ ExecutionNode* getCopy() const;
+
+private:
+ std::unique_ptr<ExecutionNode> m_internal;
+ DiceResult* m_diceResult;
+};
+
+#endif // FORLOOPNODE_H