diff options
Diffstat (limited to 'tiger-compiler/src/task/multiple-string-task.hh')
| -rw-r--r-- | tiger-compiler/src/task/multiple-string-task.hh | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/tiger-compiler/src/task/multiple-string-task.hh b/tiger-compiler/src/task/multiple-string-task.hh new file mode 100644 index 0000000..a770b3b --- /dev/null +++ b/tiger-compiler/src/task/multiple-string-task.hh @@ -0,0 +1,34 @@ +/** + ** \file task/multiple-string-task.hh + ** \brief Declaration of task::MultipleStringTask. + ** + */ + +#pragma once + +#include <string> + +#include <task/argument-task.hh> + +namespace task +{ + /// A simple task that invokes callback function with string argument. + class MultipleStringTask : public ArgumentTask + { + public: + using callback_type = auto(const std::string&) -> void; + + MultipleStringTask(callback_type& cb, + const char* module_name, + const char* desc, + const char* name, + std::string deps); + + public: + void execute() const override; + + public: + callback_type& execute_; + }; + +} // namespace task |
