26#ifndef MYSQLSHDK_LIBS_UTILS_UTILS_PATH_H_
27#define MYSQLSHDK_LIBS_UTILS_UTILS_PATH_H_
38std::string
expand_user(
const std::string &
path,
const std::string &sep);
40 const std::string &sep);
46inline std::string
join_path(
const std::string &a,
const std::string &b) {
50template <
typename... Args>
51std::string
join_path(
const std::string &a,
const std::string &b,
56std::pair<std::string, std::string>
splitdrive(
const std::string &
path);
102std::string
home(
const std::string &loginname);
164 const std::string &pathlist,
static const char separator
Definition: item_func.cc:4454
static char * path
Definition: mysqldump.cc:150
Definition: components.cc:43
Definition: fts0fts.cc:238
size_t span_dirname(const std::string &path)
Definition: utils_path.cc:86
std::string expand_user(const std::string &path, const std::string &sep)
Definition: utils_path.cc:40
std::tuple< std::string, std::string > split_extension(const std::string &path, const std::string &sep)
Definition: utils_path.cc:64
std::string home()
Get home directory path of the user executing the shell.
Definition: utils_path_unix.cc:95
std::string normalize(const std::string &path)
Unix: Normalize a path collapsing redundant separators and relative references.
Definition: utils_path_unix.cc:130
std::string search_path_list(const std::string &name, const std::string &pathlist, const char separator)
Returns path to the given executable name searched in the given path list string, separated by the gi...
Definition: utils_path.cc:129
bool is_path_separator(char c)
Checks if character is a path separator.
Definition: utils_path.cc:152
std::tuple< std::string, std::string > split_extension(const std::string &path)
Split path to (root, extension) tuple such that [root + extenstion == path].
Definition: utils_path_unix.cc:124
std::string getcwd()
Provides path to the current working directory.
Definition: utils_path_unix.cc:227
std::pair< std::string, std::string > splitdrive(const std::string &path)
Definition: utils_path_unix.cc:91
std::string basename(const std::string &path)
Definition: utils_path_unix.cc:179
const char pathlist_separator_s[]
Definition: utils_path.h:68
bool exists(const std::string &path)
Returns true if the path exists.
Definition: utils_path_unix.cc:192
std::string expand_user(const std::string &path)
expand_user expand paths beginning with ~ or ~user (also known as "tilde expansion").
Definition: utils_path_unix.cc:119
const char * k_valid_path_separators
Definition: utils_path_unix.cc:44
const char pathlist_separator
Definition: utils_path.h:66
const char path_separator
Definition: utils_path.h:65
std::string search_stdpath(const std::string &name)
Returns path to the given executable name searched in PATH.
Definition: utils_path.cc:121
std::string dirname(const std::string &path)
Definition: utils_path_unix.cc:173
bool is_absolute(const std::string &path)
Checks if path is absolute.
Definition: utils_path_unix.cc:204
std::string join_path(const std::vector< std::string > &components)
Definition: utils_path_unix.cc:57
Definition: file_system_exceptions.h:34