[llvm] r183780 - Remove Path::getDirname.
Rafael Espindola
rafael.espindola at gmail.com
Tue Jun 11 12:32:57 PDT 2013
Author: rafael
Date: Tue Jun 11 14:32:57 2013
New Revision: 183780
URL: http://llvm.org/viewvc/llvm-project?rev=183780&view=rev
Log:
Remove Path::getDirname.
Modified:
llvm/trunk/include/llvm/Support/PathV1.h
llvm/trunk/lib/Support/Path.cpp
llvm/trunk/lib/Support/Unix/Path.inc
llvm/trunk/lib/Support/Windows/Path.inc
Modified: llvm/trunk/include/llvm/Support/PathV1.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Support/PathV1.h?rev=183780&r1=183779&r2=183780&view=diff
==============================================================================
--- llvm/trunk/include/llvm/Support/PathV1.h (original)
+++ llvm/trunk/include/llvm/Support/PathV1.h Tue Jun 11 14:32:57 2013
@@ -200,11 +200,6 @@ namespace sys {
/// @brief Determines if the path name is empty (invalid).
bool isEmpty() const { return path.empty(); }
- /// This function strips off the suffix of the path beginning with the
- /// path separator ('/' on Unix, '\' on Windows) and returns the result.
- LLVM_ATTRIBUTE_DEPRECATED(StringRef getDirname() const,
- LLVM_PATH_DEPRECATED_MSG(path::parent_path));
-
/// This function strips off the path and basename(up to and
/// including the last dot) of the file or directory name and
/// returns just the suffix. For example /a/foo.bar would cause
Modified: llvm/trunk/lib/Support/Path.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Support/Path.cpp?rev=183780&r1=183779&r2=183780&view=diff
==============================================================================
--- llvm/trunk/lib/Support/Path.cpp (original)
+++ llvm/trunk/lib/Support/Path.cpp Tue Jun 11 14:32:57 2013
@@ -91,46 +91,6 @@ bool Path::hasMagicNumber(StringRef Magi
return false;
}
-static StringRef getDirnameCharSep(StringRef path, const char *Sep) {
- assert(Sep[0] != '\0' && Sep[1] == '\0' &&
- "Sep must be a 1-character string literal.");
- if (path.empty())
- return ".";
-
- // If the path is all slashes, return a single slash.
- // Otherwise, remove all trailing slashes.
-
- signed pos = static_cast<signed>(path.size()) - 1;
-
- while (pos >= 0 && path[pos] == Sep[0])
- --pos;
-
- if (pos < 0)
- return path[0] == Sep[0] ? Sep : ".";
-
- // Any slashes left?
- signed i = 0;
-
- while (i < pos && path[i] != Sep[0])
- ++i;
-
- if (i == pos) // No slashes? Return "."
- return ".";
-
- // There is at least one slash left. Remove all trailing non-slashes.
- while (pos >= 0 && path[pos] != Sep[0])
- --pos;
-
- // Remove any trailing slashes.
- while (pos >= 0 && path[pos] == Sep[0])
- --pos;
-
- if (pos < 0)
- return path[0] == Sep[0] ? Sep : ".";
-
- return path.substr(0, pos+1);
-}
-
// Include the truly platform-specific parts of this class.
#if defined(LLVM_ON_UNIX)
#include "Unix/Path.inc"
Modified: llvm/trunk/lib/Support/Unix/Path.inc
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Support/Unix/Path.inc?rev=183780&r1=183779&r2=183780&view=diff
==============================================================================
--- llvm/trunk/lib/Support/Unix/Path.inc (original)
+++ llvm/trunk/lib/Support/Unix/Path.inc Tue Jun 11 14:32:57 2013
@@ -319,10 +319,6 @@ Path Path::GetMainExecutable(const char
}
-StringRef Path::getDirname() const {
- return getDirnameCharSep(path, "/");
-}
-
StringRef
Path::getSuffix() const {
// Find the last slash
Modified: llvm/trunk/lib/Support/Windows/Path.inc
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Support/Windows/Path.inc?rev=183780&r1=183779&r2=183780&view=diff
==============================================================================
--- llvm/trunk/lib/Support/Windows/Path.inc (original)
+++ llvm/trunk/lib/Support/Windows/Path.inc Tue Jun 11 14:32:57 2013
@@ -251,11 +251,6 @@ Path Path::GetMainExecutable(const char
// FIXME: the above set of functions don't map to Windows very well.
-
-StringRef Path::getDirname() const {
- return getDirnameCharSep(path, "/");
-}
-
StringRef
Path::getSuffix() const {
// Find the last slash
More information about the llvm-commits
mailing list