6 return cfg.base_path / cfg.name_container / cfg.source_path / path.
value();
11 return cfg.base_path / cfg.name_container / cfg.header_path / path.
value();
16 fs::path p = cfg.base_path / cfg.name_container / cfg.info_path / path.
value();
17 p.replace_extension(JSON_EXTENSION);
23 return cfg.base_path / cfg.name_container / cfg.similarity_path;
27 const fs::path type_path,
const fs::path& relative_path,
const std::string& function_name
30 fs::path base = cfg.base_path / cfg.name_container / type_path;
33 if (type_path == cfg.info_path) {
36 ext = relative_path.extension().string();
37 if (!ext.empty() && ext[0] ==
'.')
41 return base / relative_path / (function_name +
"." + ext);
static Config & config()
Gets the singleton configuration instance.
fs::path build_header_path(const Path &path) const
Builds header file path.
fs::path build_source_path(const Path &path) const
Builds source file path.
fs::path build_output_path(const fs::path type_path, const fs::path &relative_path, const std::string &function_name) const
Builds file path for a function.
fs::path build_similarity_path() const
Builds similarity file path.
fs::path build_info_path(const Path &path) const
Builds metadata file path.
Represents a logical path to a function in the codebase.
const fs::path & value() const
Gets the underlying filesystem path.
Configuration management interface.
Provides access to function storage locations.