Support/PathV2: Clarify and correct documentation.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121091 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Michael J. Spencer 2010-12-07 01:23:08 +00:00
parent 1522fce477
commit ad8a14f24e
2 changed files with 9 additions and 3 deletions

View File

@ -123,17 +123,18 @@ inline reverse_iterator rend(const StringRef &path) {
/// empty \a path will result in the current directory. /// empty \a path will result in the current directory.
/// ///
/// /absolute/path => /absolute/path /// /absolute/path => /absolute/path
/// relative/../path => <current-directory>/path /// relative/../path => <current-directory>/relative/../path
/// ///
/// @param path A path that is modified to be an absolute path. /// @param path A path that is modified to be an absolute path.
/// @returns errc::success if \a path has been made absolute, otherwise a /// @returns errc::success if \a path has been made absolute, otherwise a
/// platform specific error_code. /// platform specific error_code.
error_code make_absolute(SmallVectorImpl<char> &path); error_code make_absolute(SmallVectorImpl<char> &path);
/// @brief Remove the last component from \a path if it exists. /// @brief Remove the last component from \a path unless it is the root dir.
/// ///
/// directory/filename.cpp => directory/ /// directory/filename.cpp => directory/
/// directory/ => directory /// directory/ => directory
/// / => /
/// ///
/// @param path A path that is modified to not have a file component. /// @param path A path that is modified to not have a file component.
/// @returns errc::success if \a path's file name has been removed (or there was /// @returns errc::success if \a path's file name has been removed (or there was
@ -144,7 +145,7 @@ error_code remove_filename(SmallVectorImpl<char> &path);
/// ///
/// ./filename.cpp => ./filename.extension /// ./filename.cpp => ./filename.extension
/// ./filename => ./filename.extension /// ./filename => ./filename.extension
/// ./ => ? TODO: decide what semantics this has. /// ./ => ./.extension
/// ///
/// @param path A path that has its extension replaced with \a extension. /// @param path A path that has its extension replaced with \a extension.
/// @param extension The extension to be added. It may be empty. It may also /// @param extension The extension to be added. It may be empty. It may also

View File

@ -30,6 +30,11 @@
using namespace llvm; using namespace llvm;
namespace { namespace {
/// This class automatically closes the given file descriptor when it goes out
/// of scope. You can take back explicit ownership of the file descriptor by
/// calling take(). The destructor does not verify that close was successful.
/// Therefore, never allow this class to call close on a file descriptor that
/// has been read from or written to.
struct AutoFD { struct AutoFD {
int FileDescriptor; int FileDescriptor;