LLDB  mainline
Public Member Functions | Protected Attributes | List of all members
lldb_private::IOHandlerDelegateMultiline Class Reference

#include <IOHandler.h>

Inheritance diagram for lldb_private::IOHandlerDelegateMultiline:
Inheritance graph
[legend]
Collaboration diagram for lldb_private::IOHandlerDelegateMultiline:
Collaboration graph
[legend]

Public Member Functions

 IOHandlerDelegateMultiline (const char *end_line, Completion completion=Completion::None)
 
 ~IOHandlerDelegateMultiline () override=default
 
ConstString IOHandlerGetControlSequence (char ch) override
 
bool IOHandlerIsInputComplete (IOHandler &io_handler, StringList &lines) override
 Called to determine whether typing enter after the last line in lines should end input. More...
 
- Public Member Functions inherited from lldb_private::IOHandlerDelegate
 IOHandlerDelegate (Completion completion=Completion::None)
 
virtual ~IOHandlerDelegate ()=default
 
virtual void IOHandlerActivated (IOHandler &io_handler, bool interactive)
 
virtual void IOHandlerDeactivated (IOHandler &io_handler)
 
virtual int IOHandlerComplete (IOHandler &io_handler, const char *current_line, const char *cursor, const char *last_char, int skip_first_n_matches, int max_matches, StringList &matches, StringList &descriptions)
 
virtual const char * IOHandlerGetFixIndentationCharacters ()
 
virtual int IOHandlerFixIndentation (IOHandler &io_handler, const StringList &lines, int cursor_position)
 Called when a new line is created or one of an identified set of indentation characters is typed. More...
 
virtual void IOHandlerInputComplete (IOHandler &io_handler, std::string &data)=0
 Called when a line or lines have been retrieved. More...
 
virtual void IOHandlerInputInterrupted (IOHandler &io_handler, std::string &data)
 
virtual const char * IOHandlerGetCommandPrefix ()
 
virtual const char * IOHandlerGetHelpPrologue ()
 
virtual bool IOHandlerInterrupt (IOHandler &io_handler)
 

Protected Attributes

const std::string m_end_line
 
- Protected Attributes inherited from lldb_private::IOHandlerDelegate
Completion m_completion
 

Additional Inherited Members

- Public Types inherited from lldb_private::IOHandlerDelegate
enum  Completion { Completion::None, Completion::LLDBCommand, Completion::Expression }
 

Detailed Description

Definition at line 292 of file IOHandler.h.

Constructor & Destructor Documentation

◆ IOHandlerDelegateMultiline()

lldb_private::IOHandlerDelegateMultiline::IOHandlerDelegateMultiline ( const char *  end_line,
Completion  completion = Completion::None 
)
inline

Definition at line 294 of file IOHandler.h.

◆ ~IOHandlerDelegateMultiline()

lldb_private::IOHandlerDelegateMultiline::~IOHandlerDelegateMultiline ( )
overridedefault

Member Function Documentation

◆ IOHandlerGetControlSequence()

ConstString lldb_private::IOHandlerDelegateMultiline::IOHandlerGetControlSequence ( char  ch)
inlineoverridevirtual

Reimplemented from lldb_private::IOHandlerDelegate.

Definition at line 301 of file IOHandler.h.

◆ IOHandlerIsInputComplete()

bool lldb_private::IOHandlerDelegateMultiline::IOHandlerIsInputComplete ( IOHandler io_handler,
StringList lines 
)
inlineoverridevirtual

Called to determine whether typing enter after the last line in lines should end input.

This function will not be called on IOHandler objects that are getting single lines.

Parameters
[in]io_handlerThe IOHandler that responsible for updating the lines.
[in]linesThe current multi-line content. May be altered to provide alternative input when complete.
Returns
Return an boolean to indicate whether input is complete, true indicates that no additional input is necessary, while false indicates that more input is required.

Reimplemented from lldb_private::IOHandlerDelegate.

Definition at line 307 of file IOHandler.h.

References lldb_private::StringList::GetSize(), and lldb_private::StringList::PopBack().

Member Data Documentation

◆ m_end_line

const std::string lldb_private::IOHandlerDelegateMultiline::m_end_line
protected

Definition at line 321 of file IOHandler.h.


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