diff options
author | Reid Spencer <rspencer@reidspencer.com> | 2004-11-16 06:15:19 +0000 |
---|---|---|
committer | Reid Spencer <rspencer@reidspencer.com> | 2004-11-16 06:15:19 +0000 |
commit | b608a81a18dee7fbae18147f10af3fd1db31a5f4 (patch) | |
tree | 2ea2a497ffc3e894f8b0007da5740eb441cf63ab /include | |
parent | 9bbba091396922093687d11a181e5886c42c5dfd (diff) | |
download | external_llvm-b608a81a18dee7fbae18147f10af3fd1db31a5f4.zip external_llvm-b608a81a18dee7fbae18147f10af3fd1db31a5f4.tar.gz external_llvm-b608a81a18dee7fbae18147f10af3fd1db31a5f4.tar.bz2 |
Per code review:
* Clean up the StatusInfo constructor to construct all members and give
them reasonable values.
* Get rid of the Vector typedef and make the interface to
getDirectoryContent use a std::set instead of a std::vector so the dir
content is sorted.
* Make the getStatusInfo method const and not return a useless boolean.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17872 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r-- | include/llvm/System/Path.h | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/include/llvm/System/Path.h b/include/llvm/System/Path.h index f5770e9..f9ee040 100644 --- a/include/llvm/System/Path.h +++ b/include/llvm/System/Path.h @@ -14,9 +14,10 @@ #ifndef LLVM_SYSTEM_PATH_H #define LLVM_SYSTEM_PATH_H +#include "llvm/System/TimeValue.h" +#include <set> #include <string> #include <vector> -#include "llvm/System/TimeValue.h" namespace llvm { namespace sys { @@ -46,8 +47,6 @@ namespace sys { /// @name Types /// @{ public: - typedef std::vector<Path> Vector; - /// This structure provides basic file system information about a file. It /// is patterned after the stat(2) Unix operating system call but made /// platform independent and eliminates many of the unix-specific fields. @@ -58,7 +57,8 @@ namespace sys { /// filled in by the getStatusInfo method. /// @brief File status structure struct StatusInfo { - StatusInfo() : modTime(0,0) { fileSize=0; mode=0; user=0; group=0; } + StatusInfo() : fileSize(0), modTime(0,0), mode(0777), user(999), + group(999), isDir(false) { } size_t fileSize; ///< Size of the file in bytes TimeValue modTime; ///< Time of file's modification uint32_t mode; ///< Mode of the file, if applicable @@ -345,7 +345,7 @@ namespace sys { /// @returns false if \p this is not a directory, true otherwise /// @throws std::string if the directory cannot be searched /// @brief Build a list of directory's contents. - bool getDirectoryContents(Vector& paths) const; + bool getDirectoryContents(std::set<Path>& paths) const; /// Obtain a 'C' string for the path name. /// @returns a 'C' string containing the path name. @@ -367,11 +367,9 @@ namespace sys { /// of the file system. If the file does not exist, false is returned. /// For other (hard I/O) errors, a std::string is throwing indicating the /// problem. - /// @returns true if the status info was obtained, false if the file does - /// not exist. /// @throws std::string if an error occurs. /// @brief Get file status. - bool getStatusInfo(StatusInfo& stat); + void getStatusInfo(StatusInfo& info) const; /// This method attempts to set the Path object to \p unverified_path /// and interpret the name as a directory name. The \p unverified_path @@ -527,7 +525,7 @@ namespace sys { /// @name Data /// @{ private: - std::string path; ///< Platform agnostic storage for the path name. + mutable std::string path; ///< Storage for the path name. /// @} }; |