23 "Parent for per-plugin structured data commands",
24 "plugin structured-data <plugin>") {}
26 ~CommandStructuredData()
override =
default;
48 if (!interpreter.GetCommandObject(
"plugin structured-data")) {
56 auto command_name =
"structured-data";
57 auto command_sp =
CommandObjectSP(
new CommandStructuredData(interpreter));
60 parent_command->LoadSubCommand(command_name, command_sp);
CommandObject * GetCommandObject(llvm::StringRef cmd, StringList *matches=nullptr, StringList *descriptions=nullptr) const
A class to manage flag bits.
CommandInterpreter & GetCommandInterpreter()
A collection class for Module objects.
A plug-in interface definition class for debugging a process.
~StructuredDataPlugin() override
virtual bool GetEnabled(llvm::StringRef type_name) const
Returns whether the plugin's features are enabled.
virtual void ModulesDidLoad(Process &process, ModuleList &module_list)
Allow the plugin to do work related to modules that loaded in the the corresponding process.
lldb::ProcessSP GetProcess() const
StructuredDataPlugin(const lldb::ProcessWP &process_wp)
lldb::ProcessWP m_process_wp
static void InitializeBasePluginForDebugger(Debugger &debugger)
Derived classes must call this before attempting to hook up commands to the 'plugin structured-data' ...
A class that represents a running process on the host machine.
std::shared_ptr< lldb_private::CommandObject > CommandObjectSP
std::shared_ptr< lldb_private::Process > ProcessSP
std::weak_ptr< lldb_private::Process > ProcessWP