[Lldb-commits] [lldb] r135631 - /lldb/trunk/scripts/Python/interface/SBCommandInterpreter.i
Johnny Chen
johnny.chen at apple.com
Wed Jul 20 15:50:58 PDT 2011
Author: johnny
Date: Wed Jul 20 17:50:58 2011
New Revision: 135631
URL: http://llvm.org/viewvc/llvm-project?rev=135631&view=rev
Log:
Add docstring for SBCommandInterpreter class.
Modified:
lldb/trunk/scripts/Python/interface/SBCommandInterpreter.i
Modified: lldb/trunk/scripts/Python/interface/SBCommandInterpreter.i
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/scripts/Python/interface/SBCommandInterpreter.i?rev=135631&r1=135630&r2=135631&view=diff
==============================================================================
--- lldb/trunk/scripts/Python/interface/SBCommandInterpreter.i (original)
+++ lldb/trunk/scripts/Python/interface/SBCommandInterpreter.i Wed Jul 20 17:50:58 2011
@@ -9,6 +9,50 @@
namespace lldb {
+%feature("docstring",
+"SBCommandInterpreter handles/interprets commands for lldb. You get the
+command interpreter from the SBDebugger instance. For example (from test/
+python_api/interpreter/TestCommandInterpreterAPI.py),
+
+ def command_interpreter_api(self):
+ '''Test the SBCommandInterpreter APIs.'''
+ exe = os.path.join(os.getcwd(), 'a.out')
+
+ # Create a target by the debugger.
+ target = self.dbg.CreateTarget(exe)
+ self.assertTrue(target, VALID_TARGET)
+
+ # Retrieve the associated command interpreter from our debugger.
+ ci = self.dbg.GetCommandInterpreter()
+ self.assertTrue(ci, VALID_COMMAND_INTERPRETER)
+
+ # Exercise some APIs....
+
+ self.assertTrue(ci.HasCommands())
+ self.assertTrue(ci.HasAliases())
+ self.assertTrue(ci.HasAliasOptions())
+ self.assertTrue(ci.CommandExists('breakpoint'))
+ self.assertTrue(ci.CommandExists('target'))
+ self.assertTrue(ci.CommandExists('platform'))
+ self.assertTrue(ci.AliasExists('file'))
+ self.assertTrue(ci.AliasExists('run'))
+ self.assertTrue(ci.AliasExists('bt'))
+
+ res = lldb.SBCommandReturnObject()
+ ci.HandleCommand('breakpoint set -f main.c -l %d' % self.line, res)
+ self.assertTrue(res.Succeeded())
+ ci.HandleCommand('process launch', res)
+ self.assertTrue(res.Succeeded())
+
+ process = ci.GetProcess()
+ self.assertTrue(process)
+
+ ...
+
+The HandleCommand() instance method takes two args: the command string and
+an SBCommandReturnObject instance which encapsulates the result of command
+execution.
+") SBCommandInterpreter;
class SBCommandInterpreter
{
public:
More information about the lldb-commits
mailing list