24#ifndef COMMON_SEARCHPATH_H
25#define COMMON_SEARCHPATH_H
33#include <boost/algorithm/string.hpp>
41 using SubMatch = std::smatch::value_type
const&;
44 using LERR_(ITER_EXHAUST);
84 ,
LERR_(ITER_EXHAUST));
86 string pathElm = util::RegexSearchIter::operator*()[2];
87 pathElm = boost::algorithm::trim_right_copy(pathElm);
102 string resolveModulePath (fs::path moduleName,
string searchPath =
"");
Helper: Access a path Specification as a sequence of filesystem Paths.
SearchPathSplitter(string &searchPath)
ENABLE_USE_IN_STD_RANGE_FOR_LOOPS(SearchPathSplitter)
SearchPathSplitter()=default
LIFT_PARENT_INCREMENT_OPERATOR(std::sregex_iterator)
static const regex ACCEPT_PATHELEMENT
Lumiera error handling (C++ interface).
Includes the C++ Filesystem library and provides some convenience helpers.
Implementation namespace for support and library code.
std::smatch::value_type const & SubMatch
fs::path findExePath()
retrieve the location of the executable
string replaceMagicLinkerTokens(string const &src)
replace $ORIGIN tokens in the given string
LumieraError< LERR_(LOGIC)> Logic
Mix-Ins to allow or prohibit various degrees of copying and cloning.
Convenience wrappers and helpers for dealing with regular expressions.
wrapped regex iterator to allow usage in foreach loops
RegexSearchIter()=default