LLDB mainline
Public Member Functions | Protected Attributes | List of all members
IOHandlerProcessSTDIO Class Reference
Inheritance diagram for IOHandlerProcessSTDIO:
Inheritance graph

Public Member Functions

 IOHandlerProcessSTDIO (Process *process, int write_fd)
 ~IOHandlerProcessSTDIO () override=default
void SetIsRunning (bool running)
void Run () override
void Cancel () override
bool Interrupt () override
void GotEOF () override
- Public Member Functions inherited from lldb_private::IOHandler
 IOHandler (Debugger &debugger, IOHandler::Type type)
 IOHandler (Debugger &debugger, IOHandler::Type type, const lldb::FileSP &input_sp, const lldb::StreamFileSP &output_sp, const lldb::StreamFileSP &error_sp, uint32_t flags)
virtual ~IOHandler ()
virtual void Run ()=0
virtual void Cancel ()=0
virtual bool Interrupt ()=0
virtual void GotEOF ()=0
bool IsActive ()
void SetIsDone (bool b)
bool GetIsDone ()
Type GetType () const
virtual void Activate ()
virtual void Deactivate ()
virtual void TerminalSizeChanged ()
virtual const char * GetPrompt ()
virtual bool SetPrompt (llvm::StringRef prompt)
bool SetPrompt (const char *)=delete
virtual llvm::StringRef GetControlSequence (char ch)
virtual const char * GetCommandPrefix ()
virtual const char * GetHelpPrologue ()
int GetInputFD ()
int GetOutputFD ()
int GetErrorFD ()
FILE * GetInputFILE ()
FILE * GetOutputFILE ()
FILE * GetErrorFILE ()
lldb::FileSP GetInputFileSP ()
lldb::StreamFileSP GetOutputStreamFileSP ()
lldb::StreamFileSP GetErrorStreamFileSP ()
DebuggerGetDebugger ()
void * GetUserData ()
void SetUserData (void *user_data)
FlagsGetFlags ()
const FlagsGetFlags () const
bool GetIsInteractive ()
 Check if the input is being supplied interactively by a user.
bool GetIsRealTerminal ()
 Check if the input is coming from a real terminal.
void SetPopped (bool b)
void WaitForPop ()
virtual void PrintAsync (const char *s, size_t len, bool is_stdout)
std::recursive_mutex & GetOutputMutex ()

Protected Attributes

NativeFile m_read_file
NativeFile m_write_file
Pipe m_pipe
std::mutex m_mutex
bool m_is_running = false
- Protected Attributes inherited from lldb_private::IOHandler
lldb::FileSP m_input_sp
lldb::StreamFileSP m_output_sp
lldb::StreamFileSP m_error_sp
std::recursive_mutex m_output_mutex
Predicate< bool > m_popped
Flags m_flags
Type m_type
void * m_user_data
bool m_done
bool m_active

Additional Inherited Members

- Public Types inherited from lldb_private::IOHandler
enum class  Type {
  CommandInterpreter , CommandList , Confirm , Curses ,
  Expression , REPL , ProcessIO , PythonInterpreter ,
  LuaInterpreter , PythonCode , Other

Detailed Description

Definition at line 4394 of file Process.cpp.

Constructor & Destructor Documentation

◆ IOHandlerProcessSTDIO()

IOHandlerProcessSTDIO::IOHandlerProcessSTDIO ( Process process,
int  write_fd 

Definition at line 4396 of file Process.cpp.

◆ ~IOHandlerProcessSTDIO()

IOHandlerProcessSTDIO::~IOHandlerProcessSTDIO ( )

Member Function Documentation

◆ Cancel()

void IOHandlerProcessSTDIO::Cancel ( )

Implements lldb_private::IOHandler.

Definition at line 4476 of file Process.cpp.

◆ GotEOF()

void IOHandlerProcessSTDIO::GotEOF ( )

Implements lldb_private::IOHandler.

Definition at line 4526 of file Process.cpp.

◆ Interrupt()

bool IOHandlerProcessSTDIO::Interrupt ( )

◆ Run()

void IOHandlerProcessSTDIO::Run ( )

◆ SetIsRunning()

void IOHandlerProcessSTDIO::SetIsRunning ( bool  running)

Definition at line 4407 of file Process.cpp.

Member Data Documentation

◆ m_is_running

bool IOHandlerProcessSTDIO::m_is_running = false

Definition at line 4535 of file Process.cpp.

◆ m_mutex

std::mutex IOHandlerProcessSTDIO::m_mutex

Definition at line 4534 of file Process.cpp.

◆ m_pipe

Pipe IOHandlerProcessSTDIO::m_pipe

Definition at line 4533 of file Process.cpp.

◆ m_process

Process* IOHandlerProcessSTDIO::m_process

Definition at line 4529 of file Process.cpp.

◆ m_read_file

NativeFile IOHandlerProcessSTDIO::m_read_file

Definition at line 4530 of file Process.cpp.

◆ m_write_file

NativeFile IOHandlerProcessSTDIO::m_write_file

Definition at line 4531 of file Process.cpp.

The documentation for this class was generated from the following file: