summaryrefslogtreecommitdiff
path: root/source/Target/FileAction.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'source/Target/FileAction.cpp')
-rw-r--r--source/Target/FileAction.cpp91
1 files changed, 0 insertions, 91 deletions
diff --git a/source/Target/FileAction.cpp b/source/Target/FileAction.cpp
deleted file mode 100644
index c9cc325b5a53..000000000000
--- a/source/Target/FileAction.cpp
+++ /dev/null
@@ -1,91 +0,0 @@
-//===-- FileAction.cpp ------------------------------------------*- C++ -*-===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-#include <fcntl.h>
-
-#include "lldb/Host/PosixApi.h"
-#include "lldb/Target/FileAction.h"
-#include "lldb/Utility/Stream.h"
-
-using namespace lldb_private;
-
-//----------------------------------------------------------------------------
-// FileAction member functions
-//----------------------------------------------------------------------------
-
-FileAction::FileAction()
- : m_action(eFileActionNone), m_fd(-1), m_arg(-1), m_file_spec() {}
-
-void FileAction::Clear() {
- m_action = eFileActionNone;
- m_fd = -1;
- m_arg = -1;
- m_file_spec.Clear();
-}
-
-llvm::StringRef FileAction::GetPath() const { return m_file_spec.GetCString(); }
-
-const FileSpec &FileAction::GetFileSpec() const { return m_file_spec; }
-
-bool FileAction::Open(int fd, const FileSpec &file_spec, bool read,
- bool write) {
- if ((read || write) && fd >= 0 && file_spec) {
- m_action = eFileActionOpen;
- m_fd = fd;
- if (read && write)
- m_arg = O_NOCTTY | O_CREAT | O_RDWR;
- else if (read)
- m_arg = O_NOCTTY | O_RDONLY;
- else
- m_arg = O_NOCTTY | O_CREAT | O_WRONLY;
- m_file_spec = file_spec;
- return true;
- } else {
- Clear();
- }
- return false;
-}
-
-bool FileAction::Close(int fd) {
- Clear();
- if (fd >= 0) {
- m_action = eFileActionClose;
- m_fd = fd;
- }
- return m_fd >= 0;
-}
-
-bool FileAction::Duplicate(int fd, int dup_fd) {
- Clear();
- if (fd >= 0 && dup_fd >= 0) {
- m_action = eFileActionDuplicate;
- m_fd = fd;
- m_arg = dup_fd;
- }
- return m_fd >= 0;
-}
-
-void FileAction::Dump(Stream &stream) const {
- stream.PutCString("file action: ");
- switch (m_action) {
- case eFileActionClose:
- stream.Printf("close fd %d", m_fd);
- break;
- case eFileActionDuplicate:
- stream.Printf("duplicate fd %d to %d", m_fd, m_arg);
- break;
- case eFileActionNone:
- stream.PutCString("no action");
- break;
- case eFileActionOpen:
- stream.Printf("open fd %d with '%s', OFLAGS = 0x%x", m_fd,
- m_file_spec.GetCString(), m_arg);
- break;
- }
-}