1 #ifndef __XRDPFC_PATHPARSETOOLS_HH__
2 #define __XRDPFC_PATHPARSETOOLS_HH__
33 return std::string(t ? t :
"");
50 return r && r[0] != 0;
56 int dcnt = 0; {
char *p =
f_str;
while (*p) {
if (*(p++) ==
f_delim[0]) ++dcnt; } }
57 argv.reserve(dcnt + 1);
77 PathTokenizer(
const std::string &path,
int max_depth,
bool parse_as_lfn) :
89 m_dirs.reserve(std::min(8, max_depth));
92 for (
int i = 0; i < max_depth; ++i)
124 for (std::vector<const char*>::iterator i =
m_dirs.begin(); i !=
m_dirs.end(); ++i)
139 printf(
"PathTokenizer::print_debug size=%d\n",
m_n_dirs);
142 printf(
" %2d: %s\n", i,
m_dirs[i]);
PathTokenizer(const std::string &path, int max_depth, bool parse_as_lfn)
std::vector< const char * > m_dirs
const char * get_dir(int pos)
SplitParser(const std::string &s, const char *d)
std::string get_token_as_string()
int fill_argv(std::vector< char * > &argv)
char * get_reminder_with_delim()