Go to the documentation of this file.
30 #include "gtest/internal/gtest-filepath.h"
33 #include "gtest/internal/gtest-port.h"
34 #include "gtest/gtest-message.h"
36 #if GTEST_OS_WINDOWS_MOBILE
38 #elif GTEST_OS_WINDOWS
44 #endif // GTEST_OS_WINDOWS_MOBILE
46 #include "gtest/internal/gtest-string.h"
49 # define GTEST_PATH_MAX_ _MAX_PATH
50 #elif defined(PATH_MAX)
51 # define GTEST_PATH_MAX_ PATH_MAX
52 #elif defined(_XOPEN_PATH_MAX)
53 # define GTEST_PATH_MAX_ _XOPEN_PATH_MAX
55 # define GTEST_PATH_MAX_ _POSIX_PATH_MAX
56 #endif // GTEST_OS_WINDOWS
67 const char kAlternatePathSeparator =
'/';
68 const char kAlternatePathSeparatorString[] =
"/";
69 # if GTEST_OS_WINDOWS_MOBILE
75 const DWORD kInvalidFileAttributes = 0xffffffff;
78 # endif // GTEST_OS_WINDOWS_MOBILE
82 #endif // GTEST_OS_WINDOWS
86 #if GTEST_HAS_ALT_PATH_SEP_
95 #if GTEST_OS_WINDOWS_MOBILE || GTEST_OS_WINDOWS_PHONE || \
96 GTEST_OS_WINDOWS_RT || ARDUINO
100 #elif GTEST_OS_WINDOWS
111 # endif // GTEST_OS_NACL
113 #endif // GTEST_OS_WINDOWS_MOBILE
124 0,
pathname_.length() - dot_extension.length()));
134 #if GTEST_HAS_ALT_PATH_SEP_
135 const char*
const last_alt_sep = strrchr(
c_str(), kAlternatePathSeparator);
137 if (last_alt_sep !=
nullptr &&
138 (last_sep ==
nullptr || last_alt_sep > last_sep)) {
153 return last_sep ?
FilePath(last_sep + 1) : *
this;
198 return relative_path;
206 #if GTEST_OS_WINDOWS_MOBILE
208 const DWORD attributes = GetFileAttributes(
unicode);
210 return attributes != kInvalidFileAttributes;
214 #endif // GTEST_OS_WINDOWS_MOBILE
230 #if GTEST_OS_WINDOWS_MOBILE
231 LPCWSTR
unicode = String::AnsiToUtf16(
path.c_str());
232 const DWORD attributes = GetFileAttributes(
unicode);
234 if ((attributes != kInvalidFileAttributes) &&
235 (attributes & FILE_ATTRIBUTE_DIRECTORY)) {
242 #endif // GTEST_OS_WINDOWS_MOBILE
262 ((
name[0] >=
'a' &&
name[0] <=
'z') ||
263 (
name[0] >=
'A' &&
name[0] <=
'Z')) &&
287 return full_pathname;
306 if (
pathname_.length() == 0 || this->DirectoryExists()) {
319 #if GTEST_OS_WINDOWS_MOBILE
321 LPCWSTR
unicode = String::AnsiToUtf16(removed_sep.
c_str());
324 #elif GTEST_OS_WINDOWS
328 #endif // GTEST_OS_WINDOWS_MOBILE
355 char* dest_ptr =
dest;
358 while (*src !=
'\0') {
363 #if GTEST_HAS_ALT_PATH_SEP_
364 if (*dest_ptr == kAlternatePathSeparator) {
const std::string & string() const
bool IsRootDirectory() const
bool IsAbsolutePath() const
return memset(p, 0, total)
const Descriptor::ReservedRange const EnumValueDescriptor const MethodDescriptor extension
const grpc_generator::File * file
const char kPathSeparator
static FilePath GetCurrentDir()
FilePath RemoveFileName() const
static FilePath ConcatPaths(const FilePath &directory, const FilePath &relative_path)
bool CreateFolder() const
std::string StreamableToString(const T &streamable)
const char kCurrentDirectoryString[]
bool IsDir(const StatStruct &st)
FilePath RemoveDirectoryName() const
bool FileOrDirectoryExists() const
int Stat(const char *path, StatStruct *buf)
FilePath RemoveTrailingPathSeparator() const
static FilePath GenerateUniqueFileName(const FilePath &directory, const FilePath &base_name, const char *extension)
static FilePath MakeFileName(const FilePath &directory, const FilePath &base_name, int number, const char *extension)
bool CreateDirectoriesRecursively() const
const char * c_str() const
bool DirectoryExists() const
static bool EndsWithCaseInsensitive(const std::string &str, const std::string &suffix)
void Set(const FilePath &rhs)
const char * FindLastPathSeparator() const
static bool IsPathSeparator(char c)
FilePath RemoveExtension(const char *extension) const
grpc
Author(s):
autogenerated on Fri May 16 2025 02:58:45