51 Path(
const std::string & path ) ;
54 Path(
const char * path ) ;
57 Path(
const Path & path ,
const std::string & tail ) ;
60 Path(
const Path & path ,
const std::string & tail_1 ,
const std::string & tail_2 ) ;
74 std::string
str()
const ;
140 void set(
const std::string & path ) ;
143 static std::string slashString() ;
144 static std::string doubleSlashString() ;
145 std::string driveString()
const ;
147 bool hasNoSlash()
const ;
148 std::string withoutTail()
const ;
149 bool hasNetworkDrive()
const ;
150 std::string dirnameImp()
const ;
154 std::string m_extension ;
164 return stream << path.
str() ;
std::string str() const
Returns the path string.
Path & operator=(const Path &other)
Assignment operator.
Path()
Default constructor.
std::string basename() const
Returns the path, excluding drive/directory parts.
Strings split(bool no_dot=true) const
Spits the path into a list of component parts.
std::list< std::string > Strings
A std::list of std::strings.
bool operator!=(const Path &path) const
Comparison operator.
std::string::size_type size_type
A std::size_t type.
bool hasDriveLetter() const
Returns true if the path has a leading drive letter (and the operating system uses drive letters)...
std::string extension() const
Returns the path's filename extension.
bool simple() const
Returns true if the path is just a file/directory name without any separators.
bool isRelative() const
Returns true if the path is a relative path.
Path operator+(const Path &p, const std::string &str)
bool isAbsolute() const
Returns !isRelative().
bool operator==(const Path &path) const
Comparison operator.
Path dirname() const
Returns the drive/directory parts of the path.
void pathAppend(const std::string &tail)
Appends a filename to the path.
std::ostream & operator<<(std::ostream &stream, const G::Identity &identity)
Path & operator+=(Path &p, const std::string &str)
A Path object represents a file system path.
void removeExtension()
Modifies the path by removing any extension.
static G::Path join(const G::Path &p1, const G::Path &p2)
Joins two paths together.