summaryrefslogtreecommitdiff
path: root/tiger-compiler/src/testsuite/testsuite-generator.hh
diff options
context:
space:
mode:
Diffstat (limited to 'tiger-compiler/src/testsuite/testsuite-generator.hh')
-rw-r--r--tiger-compiler/src/testsuite/testsuite-generator.hh23
1 files changed, 23 insertions, 0 deletions
diff --git a/tiger-compiler/src/testsuite/testsuite-generator.hh b/tiger-compiler/src/testsuite/testsuite-generator.hh
new file mode 100644
index 0000000..c7d9424
--- /dev/null
+++ b/tiger-compiler/src/testsuite/testsuite-generator.hh
@@ -0,0 +1,23 @@
+/**
+ ** \file testsuite/testsuite-generator.hh
+ ** \brief Declaration of testsuite::TestsuiteGenerator.
+ */
+
+#pragma once
+
+#include <ast/chunk-interface.hh>
+
+namespace testsuite
+ {
+
+ /**
+ * Generate a new AST providing a _main function. This main function
+ * calls each provided function within the context of a testsuite runtime.
+ *
+ * @param tests a vector referencing every test to run within the testsuite
+ * @return a new AST which can be appened to the main program
+ */
+ ast::ChunkInterface*
+ generate_testsuite_runtime(const std::vector<const ast::FunctionDec*>& tests);
+
+ } // namespace testsuite