aboutsummaryrefslogtreecommitdiffstats
path: root/include/lldb/Interpreter/CommandAlias.h
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2017-01-02 19:26:05 +0000
committerDimitry Andric <dim@FreeBSD.org>2017-01-02 19:26:05 +0000
commit14f1b3e8826ce43b978db93a62d1166055db5394 (patch)
tree0a00ad8d3498783fe0193f3b656bca17c4c8697d /include/lldb/Interpreter/CommandAlias.h
parent4ee8c119c71a06dcad1e0fecc8c675e480e59337 (diff)
downloadsrc-14f1b3e8826ce43b978db93a62d1166055db5394.tar.gz
src-14f1b3e8826ce43b978db93a62d1166055db5394.zip
Vendor import of lldb trunk r290819:vendor/lldb/lldb-trunk-r290819
Notes
Notes: svn path=/vendor/lldb/dist/; revision=311128 svn path=/vendor/lldb/lldb-trunk-r290819/; revision=311129; tag=vendor/lldb/lldb-trunk-r290819
Diffstat (limited to 'include/lldb/Interpreter/CommandAlias.h')
-rw-r--r--include/lldb/Interpreter/CommandAlias.h159
1 files changed, 65 insertions, 94 deletions
diff --git a/include/lldb/Interpreter/CommandAlias.h b/include/lldb/Interpreter/CommandAlias.h
index d48719f821ec..4658a1e444f4 100644
--- a/include/lldb/Interpreter/CommandAlias.h
+++ b/include/lldb/Interpreter/CommandAlias.h
@@ -16,107 +16,78 @@
// Other libraries and framework includes
// Project includes
-#include "lldb/lldb-forward.h"
#include "lldb/Interpreter/Args.h"
#include "lldb/Interpreter/CommandObject.h"
+#include "lldb/lldb-forward.h"
namespace lldb_private {
-class CommandAlias : public CommandObject
-{
+class CommandAlias : public CommandObject {
public:
- typedef std::unique_ptr<CommandAlias> UniquePointer;
-
- CommandAlias (CommandInterpreter &interpreter,
- lldb::CommandObjectSP cmd_sp,
- const char *options_args,
- const char *name,
- const char *help = nullptr,
- const char *syntax = nullptr,
- uint32_t flags = 0);
-
- void
- GetAliasExpansion (StreamString &help_string);
-
- bool
- IsValid ()
- {
- return m_underlying_command_sp && m_option_args_sp;
- }
-
- explicit operator bool ()
- {
- return IsValid();
- }
-
- bool
- WantsRawCommandString() override;
-
- bool
- WantsCompletion() override;
-
- int
- HandleCompletion (Args &input,
- int &cursor_index,
- int &cursor_char_position,
- int match_start_point,
- int max_return_elements,
- bool &word_complete,
- StringList &matches) override;
-
- int
- HandleArgumentCompletion (Args &input,
- int &cursor_index,
- int &cursor_char_position,
- OptionElementVector &opt_element_vector,
- int match_start_point,
- int max_return_elements,
- bool &word_complete,
- StringList &matches) override;
-
- Options*
- GetOptions() override;
-
- bool
- IsAlias () override { return true; }
-
- bool
- IsDashDashCommand () override;
-
- const char*
- GetHelp () override;
-
- const char*
- GetHelpLong () override;
-
- void
- SetHelp (const char * str) override;
-
- void
- SetHelpLong (const char * str) override;
-
- bool
- Execute(const char *args_string, CommandReturnObject &result) override;
-
- lldb::CommandObjectSP GetUnderlyingCommand() { return m_underlying_command_sp; }
- OptionArgVectorSP GetOptionArguments() { return m_option_args_sp; }
- const char* GetOptionString() { return m_option_string.c_str(); }
-
- // this takes an alias - potentially nested (i.e. an alias to an alias)
- // and expands it all the way to a non-alias command
- std::pair<lldb::CommandObjectSP, OptionArgVectorSP>
- Desugar ();
-
+ typedef std::unique_ptr<CommandAlias> UniquePointer;
+
+ CommandAlias(CommandInterpreter &interpreter, lldb::CommandObjectSP cmd_sp,
+ llvm::StringRef options_args, llvm::StringRef name,
+ llvm::StringRef help = llvm::StringRef(),
+ llvm::StringRef syntax = llvm::StringRef(), uint32_t flags = 0);
+
+ void GetAliasExpansion(StreamString &help_string) const;
+
+ bool IsValid() const { return m_underlying_command_sp && m_option_args_sp; }
+
+ explicit operator bool() const { return IsValid(); }
+
+ bool WantsRawCommandString() override;
+
+ bool WantsCompletion() override;
+
+ int HandleCompletion(Args &input, int &cursor_index,
+ int &cursor_char_position, int match_start_point,
+ int max_return_elements, bool &word_complete,
+ StringList &matches) override;
+
+ int HandleArgumentCompletion(Args &input, int &cursor_index,
+ int &cursor_char_position,
+ OptionElementVector &opt_element_vector,
+ int match_start_point, int max_return_elements,
+ bool &word_complete,
+ StringList &matches) override;
+
+ Options *GetOptions() override;
+
+ bool IsAlias() override { return true; }
+
+ bool IsDashDashCommand() override;
+
+ llvm::StringRef GetHelp() override;
+
+ llvm::StringRef GetHelpLong() override;
+
+ void SetHelp(llvm::StringRef str) override;
+
+ void SetHelpLong(llvm::StringRef str) override;
+
+ bool Execute(const char *args_string, CommandReturnObject &result) override;
+
+ lldb::CommandObjectSP GetUnderlyingCommand() {
+ return m_underlying_command_sp;
+ }
+ OptionArgVectorSP GetOptionArguments() const { return m_option_args_sp; }
+ const char *GetOptionString() { return m_option_string.c_str(); }
+
+ // this takes an alias - potentially nested (i.e. an alias to an alias)
+ // and expands it all the way to a non-alias command
+ std::pair<lldb::CommandObjectSP, OptionArgVectorSP> Desugar();
+
protected:
- bool
- IsNestedAlias ();
-
+ bool IsNestedAlias();
+
private:
- lldb::CommandObjectSP m_underlying_command_sp;
- std::string m_option_string;
- OptionArgVectorSP m_option_args_sp ;
- LazyBool m_is_dashdash_alias;
- bool m_did_set_help : 1;
- bool m_did_set_help_long : 1;
+ lldb::CommandObjectSP m_underlying_command_sp;
+ std::string m_option_string;
+ OptionArgVectorSP m_option_args_sp;
+ LazyBool m_is_dashdash_alias;
+ bool m_did_set_help : 1;
+ bool m_did_set_help_long : 1;
};
} // namespace lldb_private