llvm-project/lldb/source
Abhishek Aggarwal f605c198c9 Improve code of loading plugins that provide cmnds
Summary:
 - Modified code that enables writing new user-defined commands
   and use them through LLDB CLI. Modifications are:

  -- Define the 'syntax' for each user-defined command
    --- Added an argument in SBCommandInterpreter::AddCommand()
        and SBCommand::AddCommand() API
    --- Allow passing syntax for each user-defined command
    --- Earlier, only 'help' could be defined and passed for commands

  -- Passed 'number of arguments' entered on CLI for user-defined commands
    --- Added an argument (number of options) in SBCommandPluginInterface::DoExecute()
        API to know the number of arguments passed for commands

  -- In CommandPluginInterfaceImplementation class:
    --- Make the data member m_backend a shared_ptr
    --- Avoids memory leaks of dynamically allocated SBCommandPluginInterface instances
        created in lldb::PluginInitialize() API

Signed-off-by: Abhishek Aggarwal <abhishek.a.aggarwal@intel.com>

Reviewers: jingham, granata.enrico, clayborg

Subscribers: labath, lldb-commits

Differential Revision: https://reviews.llvm.org/D22863

llvm-svn: 277125
2016-07-29 07:46:32 +00:00
..
API Improve code of loading plugins that provide cmnds 2016-07-29 07:46:32 +00:00
Breakpoint Centralize the way symbol and functions are looked up by making a Module::LookupInfo class that does all of the heavy lifting. 2016-07-13 17:12:24 +00:00
Commands Typo corrections identified by codespell 2016-07-19 15:28:02 +00:00
Core Cleanup some format string warnings 2016-07-28 18:19:33 +00:00
DataFormatters remove use of Mutex in favour of std::{,recursive_}mutex 2016-05-18 01:59:10 +00:00
Expression Add an "experimental" setting to disable injecting local variables into expressions. 2016-07-07 18:25:48 +00:00
Host Remove a duplicated block in cmake. 2016-07-28 22:11:54 +00:00
Initialization Remove platform plugins from lldb-server 2016-06-29 13:58:27 +00:00
Interpreter If x/i is followed by x/g, the format should be reset to 'x'. 2016-07-20 15:41:12 +00:00
Plugins PlatformDarwinKernel maintains a list of kexts and kernels 2016-07-29 06:24:03 +00:00
Symbol Typo corrections identified by codespell 2016-07-19 15:28:02 +00:00
Target Clean up vestigial remnants of locking primitives 2016-07-28 17:32:20 +00:00
Utility Typo corrections identified by codespell 2016-07-19 15:28:02 +00:00
CMakeLists.txt Add initial CMake glue for the NetBSD platform 2015-10-24 00:27:04 +00:00
lldb.cpp Add more NetBSD platform glue for lldb 2015-11-07 15:31:54 +00:00