LLDB mainline
lldb_private::IOHandlerDelegateMultiline Class Reference

#include <IOHandler.h>

Inheritance diagram for lldb_private::IOHandlerDelegateMultiline:
[legend]

Public Member Functions

 IOHandlerDelegateMultiline (llvm::StringRef end_line, Completion completion=Completion::None)
 ~IOHandlerDelegateMultiline () override=default
llvm::StringRef 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.
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 std::optional< std::string > IOHandlerSuggestion (IOHandler &io_handler, llvm::StringRef line)
virtual void IOHandlerComplete (IOHandler &io_handler, CompletionRequest &request)
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.
virtual void IOHandlerInputComplete (IOHandler &io_handler, std::string &data)=0
 Called when a line or lines have been retrieved.
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 class  Completion { None , LLDBCommand , Expression }

Detailed Description

Definition at line 287 of file IOHandler.h.

Constructor & Destructor Documentation

◆ IOHandlerDelegateMultiline()

◆ ~IOHandlerDelegateMultiline()

lldb_private::IOHandlerDelegateMultiline::~IOHandlerDelegateMultiline ( )
overridedefault

Member Function Documentation

◆ IOHandlerGetControlSequence()

llvm::StringRef lldb_private::IOHandlerDelegateMultiline::IOHandlerGetControlSequence ( char ch)
inlineoverridevirtual

Reimplemented from lldb_private::IOHandlerDelegate.

Definition at line 295 of file IOHandler.h.

References m_end_line.

◆ 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 301 of file IOHandler.h.

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

Member Data Documentation

◆ m_end_line

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

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