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

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 bool IOHandlerIsInputComplete (IOHandler &io_handler, StringList &lines)
 Called to determine whether typing enter after the last line in lines should end input.
virtual llvm::StringRef IOHandlerGetControlSequence (char ch)
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 293 of file IOHandler.h.

Constructor & Destructor Documentation

◆ IOHandlerDelegateMultiline()

lldb_private::IOHandlerDelegateMultiline::IOHandlerDelegateMultiline ( llvm::StringRef  end_line,
Completion  completion = Completion::None 

Definition at line 295 of file IOHandler.h.

◆ ~IOHandlerDelegateMultiline()

lldb_private::IOHandlerDelegateMultiline::~IOHandlerDelegateMultiline ( )

Member Function Documentation

◆ IOHandlerGetControlSequence()

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

Reimplemented from lldb_private::IOHandlerDelegate.

Definition at line 301 of file IOHandler.h.

References m_end_line.

◆ IOHandlerIsInputComplete()

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

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.

[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.
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(), m_end_line, and lldb_private::StringList::PopBack().

Member Data Documentation

◆ m_end_line

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

Definition at line 323 of file IOHandler.h.

Referenced by IOHandlerGetControlSequence(), and IOHandlerIsInputComplete().

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