diff options
Diffstat (limited to 'core/src/Model/Template/TableTemplateIterator.hpp')
-rw-r--r-- | core/src/Model/Template/TableTemplateIterator.hpp | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/core/src/Model/Template/TableTemplateIterator.hpp b/core/src/Model/Template/TableTemplateIterator.hpp new file mode 100644 index 0000000..bf7f517 --- /dev/null +++ b/core/src/Model/Template/TableTemplateIterator.hpp @@ -0,0 +1,35 @@ +#pragma once + +#include "Model/Template/TableTemplate.hpp" +#include "Model/Template/Template.hpp" + +#include <string_view> + +class TableSingleParamsIter +{ +private: + TableTemplate* mTemplate; + tsl::array_map<char, int>::iterator mIter; + +public: + TableSingleParamsIter(TableTemplate& tmpl); + + bool HasNext() const; + TableCell& Next(); +}; + +class TableArrayGroupsIter +{ +private: + TableTemplate* mTemplate; + tsl::array_map<char, int>::iterator mIter; + +public: + TableArrayGroupsIter(TableTemplate& tmpl); + + bool HasNext() const; + TableArrayGroup& Peek() const; + std::string_view PeekName() const; + const char* PeekNameCStr() const; + void Next(); +}; |