From: Reid Spencer Date: Wed, 22 Dec 2004 10:24:43 +0000 (+0000) Subject: For PR351: X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=772192cf36edeaed9366382914f820e1d81c605a;p=oota-llvm.git For PR351: Move non-portable FDHandle class to its only user: lib/Debugger git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19106 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/llvm/Support/FileUtilities.h b/include/llvm/Support/FileUtilities.h index 6459cc9ad76..deeb758b020 100644 --- a/include/llvm/Support/FileUtilities.h +++ b/include/llvm/Support/FileUtilities.h @@ -34,44 +34,6 @@ bool DiffFiles(const std::string &FileA, const std::string &FileB, /// void MoveFileOverIfUpdated(const std::string &New, const std::string &Old); -/// FDHandle - Simple handle class to make sure a file descriptor gets closed -/// when the object is destroyed. This handle acts similarly to an -/// std::auto_ptr, in that the copy constructor and assignment operators -/// transfer ownership of the handle. This means that FDHandle's do not have -/// value semantics. -/// -class FDHandle { - int FD; -public: - FDHandle() : FD(-1) {} - FDHandle(int fd) : FD(fd) {} - FDHandle(FDHandle &RHS) : FD(RHS.FD) { - RHS.FD = -1; // Transfer ownership - } - - ~FDHandle() throw(); - - /// get - Get the current file descriptor, without releasing ownership of it. - int get() const { return FD; } - operator int() const { return FD; } - - FDHandle &operator=(int fd) throw(); - - FDHandle &operator=(FDHandle &RHS) { - int fd = RHS.FD; - RHS.FD = -1; // Transfer ownership - return operator=(fd); - } - - /// release - Take ownership of the file descriptor away from the FDHandle - /// object, so that the file is not closed when the FDHandle is destroyed. - int release() { - int Ret = FD; - FD = -1; - return Ret; - } -}; - /// FileRemover - This class is a simple object meant to be stack allocated. /// If an exception is thrown from a region, the object removes the filename /// specified (if deleteIt is true). diff --git a/lib/Support/FileUtilities.cpp b/lib/Support/FileUtilities.cpp index 8f4917bae9a..5255df64e5f 100644 --- a/lib/Support/FileUtilities.cpp +++ b/lib/Support/FileUtilities.cpp @@ -63,17 +63,3 @@ void llvm::MoveFileOverIfUpdated(const std::string &New, std::remove(New.c_str()); } } - -//===----------------------------------------------------------------------===// -// FDHandle class implementation -// - -FDHandle::~FDHandle() throw() { - if (FD != -1) close(FD); -} - -FDHandle &FDHandle::operator=(int fd) throw() { - if (FD != -1) close(FD); - FD = fd; - return *this; -}