40 #ifndef GTEST_INCLUDE_GTEST_INTERNAL_GTEST_FILEPATH_H_
41 #define GTEST_INCLUDE_GTEST_INTERNAL_GTEST_FILEPATH_H_
43 #include "gtest/internal/gtest-string.h"
64 explicit FilePath(
const std::string& pathname) : pathname_(pathname) {
74 pathname_ = rhs.pathname_;
77 const std::string& string()
const {
return pathname_; }
78 const char* c_str()
const {
return pathname_.c_str(); }
90 const char* extension);
108 const char* extension);
111 bool IsEmpty()
const {
return pathname_.empty(); }
116 FilePath RemoveTrailingPathSeparator()
const;
124 FilePath RemoveDirectoryName()
const;
138 FilePath RemoveExtension(
const char* extension)
const;
144 bool CreateDirectoriesRecursively()
const;
150 bool CreateFolder()
const;
154 bool FileOrDirectoryExists()
const;
158 bool DirectoryExists()
const;
163 bool IsDirectory()
const;
167 bool IsRootDirectory()
const;
170 bool IsAbsolutePath()
const;
198 const char* FindLastPathSeparator()
const;
200 std::string pathname_;
206 #endif // GTEST_INCLUDE_GTEST_INTERNAL_GTEST_FILEPATH_H_