6 #include <boost/filesystem.hpp>
9 namespace fs = boost::filesystem;
14 const std::string & env_var_name,
15 std::vector<std::string> & list_of_paths,
16 const std::string & delimiter)
18 const char * env_var_value = std::getenv(env_var_name.c_str());
20 if (env_var_value != NULL)
22 std::string policyStr(env_var_value);
24 policyStr += delimiter;
25 size_t lastOffset = 0;
28 size_t offset = policyStr.find_first_of(delimiter, lastOffset);
29 if (offset < policyStr.size())
31 list_of_paths.push_back(policyStr.substr(lastOffset, offset - lastOffset));
34 list_of_paths.push_back(policyStr.substr(lastOffset, offset - lastOffset) +
"/..");
36 if (offset == std::string::npos)
39 lastOffset = offset + 1;
44 std::vector<std::string>
47 std::vector<std::string> list_of_paths;
54 for (
size_t i = 0;
i < list_of_paths.size(); ++
i)
56 list_of_paths[
i] += suffix;
62 std::vector<std::string> raw_list_of_paths;
63 std::vector<std::string> raw_list_of_prefixes;
68 raw_list_of_paths.insert(
69 raw_list_of_paths.end(), raw_list_of_prefixes.begin(), raw_list_of_prefixes.end());
74 std::vector<std::string> list_of_paths;
75 for (std::vector<std::string>::iterator
it = raw_list_of_paths.begin();
76 it != raw_list_of_paths.end(); ++
it)
78 list_of_paths.push_back(*
it);
80 if (fs::exists(
path /
"package.xml"))