32 size_t size()
const {
return m_paths.size(); }
34 iterator
begin() {
return m_paths.begin(); }
35 iterator
end() {
return m_paths.end(); }
37 const_iterator
begin()
const {
return m_paths.begin(); }
38 const_iterator
end()
const {
return m_paths.end(); }
40 void erase(iterator it) { m_paths.erase(it); }
48 for (const_iterator it = m_paths.begin(); it != m_paths.end(); ++it) {
49 path combined = *it / value;
56 friend std::ostream &
operator<<(std::ostream &os,
const resolver &r) {
57 os <<
"resolver[" << std::endl;
58 for (
size_t i = 0; i < r.
m_paths.size(); ++i) {
59 os <<
" \"" << r.
m_paths[i] <<
"\"";
void append(const path &path)
#define NAMESPACE_END(name)
#define NAMESPACE_BEGIN(name)
const_iterator begin() const
Simple class for resolving paths on Linux/Windows/Mac OS.
std::vector< path >::iterator iterator
path resolve(const path &value) const
const path & operator[](size_t index) const
std::vector< path > m_paths
std::vector< path >::const_iterator const_iterator
friend std::ostream & operator<<(std::ostream &os, const resolver &r)
path & operator[](size_t index)
const_iterator end() const
Simple class for manipulating paths on Linux/Windows/Mac OS.
void prepend(const path &path)