Taskolib  1.4.4
deserialize_sequence.h
Go to the documentation of this file.
1 
23 // SPDX-License-Identifier: LGPL-2.1-or-later
24 
25 #ifndef TASKOLIB_DESERIALIZE_SEQUENCE_H_
26 #define TASKOLIB_DESERIALIZE_SEQUENCE_H_
27 
28 #include <filesystem>
29 #include <iostream>
30 #include <string_view>
31 #include <vector>
32 
33 #include "taskolib/Sequence.h"
34 #include "taskolib/Step.h"
35 #include "taskolib/Tag.h"
36 
37 namespace task {
38 
48 std::istream& operator>>(std::istream& stream, Step& step);
49 
106 Step load_step(const std::filesystem::path& lua_file);
107 
115 void load_sequence_parameters(const std::filesystem::path& folder, Sequence& sequence);
116 
122 std::vector<Tag> parse_tags(std::string_view str);
123 
127 bool parse_bool(std::string_view str);
128 
137 Timeout parse_timeout(std::string_view str);
138 
139 } // namespace task
140 
141 #endif
A sequence of Steps.
Declaration of the Step class.
Declaration of the Tag class.
Namespace task contains all Taskolib functions and classes.
Definition: CommChannel.h:33
Timeout parse_timeout(std::string_view str)
Parse a string into a Timeout value.
Definition: deserialize_sequence.cc:316
std::vector< Tag > parse_tags(std::string_view str)
Parse a whitespace-separated string into a list of tags.
Definition: deserialize_sequence.cc:296
bool parse_bool(std::string_view str)
Parse a bool expression from a string.
Definition: deserialize_sequence.cc:306
void load_sequence_parameters(const std::filesystem::path &folder, Sequence &sequence)
Load sequence parameters like the step setup script and the sequence timeout.
Definition: deserialize_sequence.cc:260
std::istream & operator>>(std::istream &stream, Step &step)
Deserialize parameters of Step from the input stream.
Definition: deserialize_sequence.cc:145
Step load_step(const std::filesystem::path &lua_file)
Read a Step from a file and return it.
Definition: deserialize_sequence.cc:247