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

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

Processm_process
 
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
Debuggerm_debugger
 
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 
)
inline

Definition at line 4396 of file Process.cpp.

◆ ~IOHandlerProcessSTDIO()

IOHandlerProcessSTDIO::~IOHandlerProcessSTDIO ( )
overridedefault

Member Function Documentation

◆ Cancel()

void IOHandlerProcessSTDIO::Cancel ( )
inlineoverridevirtual

Implements lldb_private::IOHandler.

Definition at line 4476 of file Process.cpp.

◆ GotEOF()

void IOHandlerProcessSTDIO::GotEOF ( )
inlineoverridevirtual

Implements lldb_private::IOHandler.

Definition at line 4526 of file Process.cpp.

◆ Interrupt()

bool IOHandlerProcessSTDIO::Interrupt ( )
inlineoverridevirtual

◆ Run()

void IOHandlerProcessSTDIO::Run ( )
inlineoverridevirtual

◆ SetIsRunning()

void IOHandlerProcessSTDIO::SetIsRunning ( bool  running)
inline

Definition at line 4407 of file Process.cpp.

Member Data Documentation

◆ m_is_running

bool IOHandlerProcessSTDIO::m_is_running = false
protected

Definition at line 4535 of file Process.cpp.

◆ m_mutex

std::mutex IOHandlerProcessSTDIO::m_mutex
protected

Definition at line 4534 of file Process.cpp.

◆ m_pipe

Pipe IOHandlerProcessSTDIO::m_pipe
protected

Definition at line 4533 of file Process.cpp.

◆ m_process

Process* IOHandlerProcessSTDIO::m_process
protected

Definition at line 4529 of file Process.cpp.

◆ m_read_file

NativeFile IOHandlerProcessSTDIO::m_read_file
protected

Definition at line 4530 of file Process.cpp.

◆ m_write_file

NativeFile IOHandlerProcessSTDIO::m_write_file
protected

Definition at line 4531 of file Process.cpp.


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