|
LLVM 22.0.0git
|
#include "llvm/LineEditor/LineEditor.h"
Classes | |
| struct | Completion |
| A possible completion at a given cursor position. More... | |
| struct | CompletionAction |
| The action to perform upon a completion request. More... | |
| struct | InternalData |
Public Member Functions | |
| LLVM_ABI | LineEditor (StringRef ProgName, StringRef HistoryPath="", FILE *In=stdin, FILE *Out=stdout, FILE *Err=stderr) |
| Create a LineEditor object. | |
| LLVM_ABI | ~LineEditor () |
| LLVM_ABI std::optional< std::string > | readLine () const |
| Reads a line. | |
| LLVM_ABI void | saveHistory () |
| LLVM_ABI void | loadHistory () |
| LLVM_ABI void | setHistorySize (int size) |
| template<typename T> | |
| void | setCompleter (T Comp) |
| Set the completer for this LineEditor. | |
| template<typename T> | |
| void | setListCompleter (T Comp) |
| Set the completer for this LineEditor to the given list completer. | |
| LLVM_ABI CompletionAction | getCompletionAction (StringRef Buffer, size_t Pos) const |
| Use the current completer to produce a CompletionAction for the given completion request. | |
| const std::string & | getPrompt () const |
| void | setPrompt (const std::string &P) |
Static Public Member Functions | |
| static LLVM_ABI std::string | getDefaultHistoryPath (StringRef ProgName) |
Definition at line 23 of file LineEditor.h.
| LineEditor::LineEditor | ( | StringRef | ProgName, |
| StringRef | HistoryPath = "", | ||
| FILE * | In = stdin, | ||
| FILE * | Out = stdout, | ||
| FILE * | Err = stderr ) |
Create a LineEditor object.
| ProgName | The name of the current program. Used to form a default prompt. |
| HistoryPath | Path to the file in which to store history data, if possible. |
| In | The input stream used by the editor. |
| Out | The output stream used by the editor. |
| Err | The error stream used by the editor. |
Definition at line 287 of file LineEditor.cpp.
| LineEditor::~LineEditor | ( | ) |
Definition at line 294 of file LineEditor.cpp.
| LineEditor::CompletionAction LineEditor::getCompletionAction | ( | StringRef | Buffer, |
| size_t | Pos ) const |
Use the current completer to produce a CompletionAction for the given completion request.
If the current completer is a list completer, this will return an AK_Insert CompletionAction if each completion has a common prefix, or an AK_ShowCompletions CompletionAction otherwise.
| Buffer | The string to complete |
| Pos | The zero-based cursor position in the StringRef |
Definition at line 82 of file LineEditor.cpp.
References llvm::LineEditor::CompletionAction::AK_ShowCompletions, and llvm::LineEditor::CompletionAction::Kind.
|
static |
Definition at line 25 of file LineEditor.cpp.
References llvm::sys::path::append(), and llvm::sys::path::home_directory().
|
inline |
Definition at line 108 of file LineEditor.h.
| void LineEditor::loadHistory | ( | ) |
Definition at line 299 of file LineEditor.cpp.
| std::optional< std::string > LineEditor::readLine | ( | ) | const |
Reads a line.
Definition at line 302 of file LineEditor.cpp.
| void LineEditor::saveHistory | ( | ) |
Definition at line 298 of file LineEditor.cpp.
Set the completer for this LineEditor.
A completer is a function object which takes arguments of type StringRef (the string to complete) and size_t (the zero-based cursor position in the StringRef) and returns a CompletionAction.
Definition at line 86 of file LineEditor.h.
References T.
| void LineEditor::setHistorySize | ( | int | size | ) |
Definition at line 300 of file LineEditor.cpp.
References llvm::size().
Set the completer for this LineEditor to the given list completer.
A list completer is a function object which takes arguments of type StringRef (the string to complete) and size_t (the zero-based cursor position in the StringRef) and returns a std::vector<Completion>.
Definition at line 94 of file LineEditor.h.
References T.
|
inline |
Definition at line 109 of file LineEditor.h.
References P.