5 static const std::string scope_delimiter{
"::"};
11 std::vector<std::string> result;
16 while ((next = s.find(scope_delimiter, current)) != std::string::npos)
18 result.emplace_back(s.substr(current, next - current));
19 current = next + scope_delimiter.size();
22 result.emplace_back(s.substr(current, s.size() - current));
32 const std::vector<std::string> &n,
43 const std::vector<std::string> &n,
83 const std::vector<std::string> &n
87 out <<
"#ifndef " << id;
88 out <<
"#define " << id;
void namespace_open(std::ostream &out, const std::vector< std::string > &n)
void namespace_close(std::ostream &out, const std::vector< std::string > &n)
void namespace_write(std::ostream &out, const std::vector< std::string > &n, const char *delimiter)
void namespace_include_guard(std::ostream &out, const char *name, const std::vector< std::string > &n)
std::string namespace_string(const std::vector< std::string > &n, const char *delimiter)
std::vector< std::string > split_namespace(const std::string &s)