diff options
Diffstat (limited to 'tiger-compiler/src/task/disjunctive-task.hh')
| -rw-r--r-- | tiger-compiler/src/task/disjunctive-task.hh | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/tiger-compiler/src/task/disjunctive-task.hh b/tiger-compiler/src/task/disjunctive-task.hh new file mode 100644 index 0000000..6cb52fc --- /dev/null +++ b/tiger-compiler/src/task/disjunctive-task.hh @@ -0,0 +1,27 @@ +/** + ** \file task/disjunctive-task.hh + ** \brief Declare the DisjunctiveTask class. + ** + */ +#pragma once + +#include <task/simple-task.hh> + +namespace task +{ + /// A Task that makes sure that AT LEAST one of its dependencies is + /// scheduled. + class DisjunctiveTask : public SimpleTask + { + public: + DisjunctiveTask(const char* module_name, + const char* desc, + const char* name, + std::string deps); + + void execute() const override; + deps_type + resolve_dependencies(tasks_list_type& active_tasks) const override; + }; + +} //namespace task |
