[Lldb-commits] [lldb] r134437 - in /lldb/trunk/include/lldb/API: SBProcess.h SBSymbolContext.h

Johnny Chen johnny.chen at apple.com
Tue Jul 5 12:18:42 PDT 2011


Author: johnny
Date: Tue Jul  5 14:18:41 2011
New Revision: 134437

URL: http://llvm.org/viewvc/llvm-project?rev=134437&view=rev
Log:
Add a more verbose docstring to the SBSymbolContext API class.
Add doxygen/docstring to SBProcess.RemoteAttachToProcessWithID() API method.

Modified:
    lldb/trunk/include/lldb/API/SBProcess.h
    lldb/trunk/include/lldb/API/SBSymbolContext.h

Modified: lldb/trunk/include/lldb/API/SBProcess.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/API/SBProcess.h?rev=134437&r1=134436&r2=134437&view=diff
==============================================================================
--- lldb/trunk/include/lldb/API/SBProcess.h (original)
+++ lldb/trunk/include/lldb/API/SBProcess.h Tue Jul  5 14:18:41 2011
@@ -80,11 +80,17 @@
     void
     AppendEventStateReport (const lldb::SBEvent &event, lldb::SBCommandReturnObject &result);
 
+#ifdef SWIG
+    %feature("docstring", "
+#endif
     //------------------------------------------------------------------
-    // Remote connection related functions. These will fail if the
-    // process is not in eStateConnected. They are intended for use
-    // when connecting to an externally managed debugserver instance.
+    /// Remote connection related functions. These will fail if the
+    /// process is not in eStateConnected. They are intended for use
+    /// when connecting to an externally managed debugserver instance.
     //------------------------------------------------------------------
+#ifdef SWIG
+    ") RemoteAttachToProcessWithID;
+#endif
     bool
     RemoteAttachToProcessWithID (lldb::pid_t pid,
                                  lldb::SBError& error);

Modified: lldb/trunk/include/lldb/API/SBSymbolContext.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/API/SBSymbolContext.h?rev=134437&r1=134436&r2=134437&view=diff
==============================================================================
--- lldb/trunk/include/lldb/API/SBSymbolContext.h (original)
+++ lldb/trunk/include/lldb/API/SBSymbolContext.h Tue Jul  5 14:18:41 2011
@@ -22,7 +22,41 @@
 
 #ifdef SWIG
 %feature("docstring",
-         "A container that stores various debugger related info."
+"A context object that provides access to core debugger entities.
+
+Manay debugger functions require a context when doing lookups. This class
+provides a common structure that can be used as the result of a query that
+can contain a single result.
+
+For example,
+
+        exe = os.path.join(os.getcwd(), 'a.out')
+
+        # Create a target for the debugger.
+        target = self.dbg.CreateTarget(exe)
+
+        # Now create a breakpoint on main.c by name 'c'.
+        breakpoint = target.BreakpointCreateByName('c', 'a.out')
+
+        # Now launch the process, and do not stop at entry point.
+        process = target.LaunchSimple(None, None, os.getcwd())
+
+        # The inferior should stop on 'c'.
+        from lldbutil import get_stopped_thread
+        thread = get_stopped_thread(process, lldb.eStopReasonBreakpoint)
+        frame0 = thread.GetFrameAtIndex(0)
+
+        # Now get the SBSymbolContext from this frame.  We want everything. :-)
+        context = frame0.GetSymbolContext(lldb.eSymbolContextEverything)
+
+        # Get the module.
+        module = context.GetModule()
+        ...
+
+        # And the compile unit associated with the frame.
+        compileUnit = context.GetCompileUnit()
+        ...
+"
          ) SBSymbolContext;
 #endif
 class SBSymbolContext





More information about the lldb-commits mailing list