10#include <range/v3/range/conversion.hpp>
11#include <range/v3/view/istream.hpp>
26std::vector<std::string>
splitString(std::string
const& str);
34std::list<std::string>
splitString(
const std::string& str,
char delim);
45 std::string stringToReplace);
56 std::stringstream strs(str, std::stringstream::in | std::stringstream::out);
66void trim(std::string& str,
char ch =
' ');
78std::string
getUniqueName(std::vector<std::string>
const& existing_names,
79 std::string
const& input_name);
87 std::size_t* bad_token_idx)
89 std::istringstream iss{raw};
92 auto values = ranges::istream_view<T>(iss);
93 std::vector<T> out = ranges::to<std::vector>(values);
100 *bad_token_idx = out.size() + 1;
109std::expected<int, std::string>
parseInteger(std::string_view str);
void simplify(std::string &str)
std::expected< int, std::string > parseInteger(std::string_view str)
std::optional< std::vector< T > > tryParseVector(std::string const &raw, std::size_t *bad_token_idx)
std::string randomString(std::size_t const length)
Returns a random string of the given length containing just a-z,A-Z,0-9.
std::string getUniqueName(std::vector< std::string > const &existing_names, std::string const &input_name)
Append '-' and a number such that the name is unique.
std::string replaceString(const std::string &searchString, const std::string &replaceString, std::string stringToReplace)
void trim(std::string &str, char ch)
std::vector< std::string > splitString(std::string const &str)
T str2number(const std::string &str)