aboutsummaryrefslogtreecommitdiff
path: root/scripts/interface
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/interface')
-rw-r--r--scripts/interface/SBAddress.i6
-rw-r--r--scripts/interface/SBCommandInterpreter.i9
-rw-r--r--scripts/interface/SBDebugger.i2
-rw-r--r--scripts/interface/SBInstruction.i2
-rw-r--r--scripts/interface/SBModule.i17
-rw-r--r--scripts/interface/SBProcess.i13
-rw-r--r--scripts/interface/SBSymbolContext.i2
-rw-r--r--scripts/interface/SBTarget.i151
-rw-r--r--scripts/interface/SBThread.i36
-rw-r--r--scripts/interface/SBValue.i66
10 files changed, 214 insertions, 90 deletions
diff --git a/scripts/interface/SBAddress.i b/scripts/interface/SBAddress.i
index 735b42c1d5b6..d996aa5b7aca 100644
--- a/scripts/interface/SBAddress.i
+++ b/scripts/interface/SBAddress.i
@@ -89,12 +89,8 @@ public:
SBAddress::GetOffset ();
void
- SetAddress (lldb::SBSection section,
+ SetAddress (lldb::SBSection section,
lldb::addr_t offset);
-
-
- lldb::AddressClass
- GetAddressClass ();
%feature("docstring", "
//------------------------------------------------------------------
diff --git a/scripts/interface/SBCommandInterpreter.i b/scripts/interface/SBCommandInterpreter.i
index 255e8ba4496a..09e7c9df736a 100644
--- a/scripts/interface/SBCommandInterpreter.i
+++ b/scripts/interface/SBCommandInterpreter.i
@@ -156,6 +156,15 @@ public:
SetPromptOnQuit(bool b);
void
+ AllowExitCodeOnQuit(bool b);
+
+ bool
+ HasCustomQuitExitCode();
+
+ int
+ GetQuitStatus();
+
+ void
ResolveCommand(const char *command_line, SBCommandReturnObject &result);
bool
diff --git a/scripts/interface/SBDebugger.i b/scripts/interface/SBDebugger.i
index 9f746d36348c..8ac2c51e12fe 100644
--- a/scripts/interface/SBDebugger.i
+++ b/scripts/interface/SBDebugger.i
@@ -320,6 +320,8 @@ public:
static const char *
StateAsCString (lldb::StateType state);
+ static SBStructuredData GetBuildConfiguration();
+
static bool
StateIsRunningState (lldb::StateType state);
diff --git a/scripts/interface/SBInstruction.i b/scripts/interface/SBInstruction.i
index c78799c6fe69..e235002cfaf3 100644
--- a/scripts/interface/SBInstruction.i
+++ b/scripts/interface/SBInstruction.i
@@ -30,8 +30,6 @@ public:
lldb::SBAddress
GetAddress();
- lldb::AddressClass
- GetAddressClass ();
const char *
GetMnemonic (lldb::SBTarget target);
diff --git a/scripts/interface/SBModule.i b/scripts/interface/SBModule.i
index 71a2198609d6..adda954e5bfb 100644
--- a/scripts/interface/SBModule.i
+++ b/scripts/interface/SBModule.i
@@ -179,6 +179,23 @@ public:
lldb::SBCompileUnit
GetCompileUnitAtIndex (uint32_t);
+ %feature("docstring", "
+ //------------------------------------------------------------------
+ /// Find compile units related to *this module and passed source
+ /// file.
+ ///
+ /// @param[in] sb_file_spec
+ /// A lldb::SBFileSpec object that contains source file
+ /// specification.
+ ///
+ /// @return
+ /// A lldb::SBSymbolContextList that gets filled in with all of
+ /// the symbol contexts for all the matches.
+ //------------------------------------------------------------------
+ ") FindCompileUnits;
+ lldb::SBSymbolContextList
+ FindCompileUnits (const lldb::SBFileSpec &sb_file_spec);
+
size_t
GetNumSymbols ();
diff --git a/scripts/interface/SBProcess.i b/scripts/interface/SBProcess.i
index 55d39f826b7d..24b67565437a 100644
--- a/scripts/interface/SBProcess.i
+++ b/scripts/interface/SBProcess.i
@@ -373,6 +373,19 @@ public:
uint32_t
LoadImage (lldb::SBFileSpec &image_spec, lldb::SBError &error);
+ %feature("autodoc", "
+ Load the library whose filename is given by image_spec looking in all the
+ paths supplied in the paths argument. If successful, return a token that
+ can be passed to UnloadImage and fill loaded_path with the path that was
+ successfully loaded. On failure, return
+ lldb.LLDB_INVALID_IMAGE_TOKEN.
+ ") LoadImageUsingPaths;
+ uint32_t
+ LoadImageUsingPaths(const lldb::SBFileSpec &image_spec,
+ SBStringList &paths,
+ lldb::SBFileSpec &loaded_path,
+ SBError &error);
+
lldb::SBError
UnloadImage (uint32_t image_token);
diff --git a/scripts/interface/SBSymbolContext.i b/scripts/interface/SBSymbolContext.i
index fa405842d6e5..5bfee9c8b846 100644
--- a/scripts/interface/SBSymbolContext.i
+++ b/scripts/interface/SBSymbolContext.i
@@ -12,7 +12,7 @@ namespace lldb {
%feature("docstring",
"A context object that provides access to core debugger entities.
-Manay debugger functions require a context when doing lookups. This class
+Many 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.
diff --git a/scripts/interface/SBTarget.i b/scripts/interface/SBTarget.i
index bcec606005f4..08fb268c08bf 100644
--- a/scripts/interface/SBTarget.i
+++ b/scripts/interface/SBTarget.i
@@ -77,7 +77,7 @@ public:
static const char *
GetBroadcasterClassName ();
-
+
bool
IsValid() const;
@@ -145,7 +145,7 @@ public:
/// An optional listener that will receive all process events.
/// If \a listener is valid then \a listener will listen to all
/// process events. If not valid, then this target's debugger
- /// (SBTarget::GetDebugger()) will listen to all process events.
+ /// (SBTarget::GetDebugger()) will listen to all process events.
///
/// @param[in] argv
/// The argument array.
@@ -175,7 +175,7 @@ public:
/// The working directory to have the child process run in
///
/// @param[in] launch_flags
- /// Some launch options specified by logical OR'ing
+ /// Some launch options specified by logical OR'ing
/// lldb::LaunchFlags enumeration values together.
///
/// @param[in] stop_at_entry
@@ -203,7 +203,7 @@ public:
run to completion if no user interaction is required.
") Launch;
lldb::SBProcess
- Launch (SBListener &listener,
+ Launch (SBListener &listener,
char const **argv,
char const **envp,
const char *stdin_path,
@@ -213,7 +213,7 @@ public:
uint32_t launch_flags, // See LaunchFlags
bool stop_at_entry,
lldb::SBError& error);
-
+
%feature("docstring", "
//------------------------------------------------------------------
/// Launch a new process with sensible defaults.
@@ -250,10 +250,10 @@ public:
executable.
") LaunchSimple;
lldb::SBProcess
- LaunchSimple (const char **argv,
+ LaunchSimple (const char **argv,
const char **envp,
const char *working_directory);
-
+
lldb::SBProcess
Launch (lldb::SBLaunchInfo &launch_info, lldb::SBError& error);
@@ -264,6 +264,10 @@ public:
/// @param[in] core_file
/// File path of the core dump.
///
+ /// @param[out] error
+ /// An error explaining what went wrong if the operation fails.
+ /// (Optional)
+ ///
/// @return
/// A process object for the newly created core file.
//------------------------------------------------------------------
@@ -276,10 +280,12 @@ public:
") LoadCore;
lldb::SBProcess
LoadCore(const char *core_file);
-
+
lldb::SBProcess
- Attach (lldb::SBAttachInfo &attach_info, lldb::SBError& error);
-
+ LoadCore(const char *core_file, lldb::SBError &error);
+
+ lldb::SBProcess
+ Attach(lldb::SBAttachInfo &attach_info, lldb::SBError& error);
%feature("docstring", "
//------------------------------------------------------------------
@@ -363,7 +369,7 @@ public:
const char *url,
const char *plugin_name,
SBError& error);
-
+
lldb::SBFileSpec
GetExecutable ();
@@ -399,12 +405,29 @@ public:
lldb::SBModule
FindModule (const lldb::SBFileSpec &file_spec);
+ %feature("docstring", "
+ //------------------------------------------------------------------
+ /// Find compile units related to *this target and passed source
+ /// file.
+ ///
+ /// @param[in] sb_file_spec
+ /// A lldb::SBFileSpec object that contains source file
+ /// specification.
+ ///
+ /// @return
+ /// A lldb::SBSymbolContextList that gets filled in with all of
+ /// the symbol contexts for all the matches.
+ //------------------------------------------------------------------
+ ") FindCompileUnits;
+ lldb::SBSymbolContextList
+ FindCompileUnits (const lldb::SBFileSpec &sb_file_spec);
+
lldb::ByteOrder
GetByteOrder ();
-
+
uint32_t
GetAddressByteSize();
-
+
const char *
GetTriple ();
@@ -457,21 +480,21 @@ public:
/// A logical OR of one or more FunctionNameType enum bits that
/// indicate what kind of names should be used when doing the
/// lookup. Bits include fully qualified names, base names,
- /// C++ methods, or ObjC selectors.
+ /// C++ methods, or ObjC selectors.
/// See FunctionNameType for more details.
///
/// @return
- /// A lldb::SBSymbolContextList that gets filled in with all of
+ /// A lldb::SBSymbolContextList that gets filled in with all of
/// the symbol contexts for all the matches.
//------------------------------------------------------------------
") FindFunctions;
lldb::SBSymbolContextList
- FindFunctions (const char *name,
+ FindFunctions (const char *name,
uint32_t name_type_mask = lldb::eFunctionNameTypeAny);
-
+
lldb::SBType
FindFirstType (const char* type);
-
+
lldb::SBTypeList
FindTypes (const char* type);
@@ -497,7 +520,7 @@ public:
//------------------------------------------------------------------
") FindGlobalVariables;
lldb::SBValueList
- FindGlobalVariables (const char *name,
+ FindGlobalVariables (const char *name,
uint32_t max_matches);
%feature("docstring", "
@@ -515,7 +538,7 @@ public:
lldb::SBValue
FindFirstGlobalVariable (const char* name);
-
+
lldb::SBValueList
FindGlobalVariables(const char *name,
uint32_t max_matches,
@@ -544,26 +567,26 @@ public:
lldb::SBAddress
ResolveLoadAddress (lldb::addr_t vm_addr);
-
+
lldb::SBAddress
ResolvePastLoadAddress (uint32_t stop_id, lldb::addr_t vm_addr);
SBSymbolContext
- ResolveSymbolContextForAddress (const SBAddress& addr,
+ ResolveSymbolContextForAddress (const SBAddress& addr,
uint32_t resolve_scope);
%feature("docstring", "
//------------------------------------------------------------------
- /// Read target memory. If a target process is running then memory
+ /// Read target memory. If a target process is running then memory
/// is read from here. Otherwise the memory is read from the object
/// files. For a target whose bytes are sized as a multiple of host
/// bytes, the data read back will preserve the target's byte order.
///
/// @param[in] addr
- /// A target address to read from.
+ /// A target address to read from.
///
/// @param[out] buf
- /// The buffer to read memory into.
+ /// The buffer to read memory into.
///
/// @param[in] size
/// The maximum number of host bytes to read in the buffer passed
@@ -589,7 +612,7 @@ public:
BreakpointCreateByLocation (const lldb::SBFileSpec &file_spec, uint32_t line, lldb::addr_t offset);
lldb::SBBreakpoint
- BreakpointCreateByLocation (const lldb::SBFileSpec &file_spec, uint32_t line,
+ BreakpointCreateByLocation (const lldb::SBFileSpec &file_spec, uint32_t line,
lldb::addr_t offset, SBFileSpecList &module_list);
lldb::SBBreakpoint
@@ -598,14 +621,14 @@ public:
lldb::SBBreakpoint
BreakpointCreateByName (const char *symbol_name,
uint32_t func_name_type, // Logical OR one or more FunctionNameType enum bits
- const SBFileSpecList &module_list,
+ const SBFileSpecList &module_list,
const SBFileSpecList &comp_unit_list);
lldb::SBBreakpoint
BreakpointCreateByName (const char *symbol_name,
uint32_t func_name_type, // Logical OR one or more FunctionNameType enum bits
lldb::LanguageType symbol_language,
- const SBFileSpecList &module_list,
+ const SBFileSpecList &module_list,
const SBFileSpecList &comp_unit_list);
%typemap(in) (const char **symbol_name, uint32_t num_names) {
@@ -670,7 +693,7 @@ public:
lldb::SBBreakpoint
BreakpointCreateByRegex (const char *symbol_name_regex,
lldb::LanguageType symbol_language,
- const SBFileSpecList &module_list,
+ const SBFileSpecList &module_list,
const SBFileSpecList &comp_unit_list);
lldb::SBBreakpoint
@@ -708,7 +731,7 @@ public:
lldb::SBBreakpoint
FindBreakpointByID (break_id_t break_id);
-
+
bool FindBreakpointsByName(const char *name, SBBreakpointList &bkpt_list);
void DeleteBreakpointName(const char *name);
@@ -726,12 +749,12 @@ public:
%feature("docstring", "
//------------------------------------------------------------------
- /// Read breakpoints from source_file and return the newly created
+ /// Read breakpoints from source_file and return the newly created
/// breakpoints in bkpt_list.
///
/// @param[in] source_file
/// The file from which to read the breakpoints
- ///
+ ///
/// @param[out] bkpt_list
/// A list of the newly created breakpoints.
///
@@ -740,12 +763,12 @@ public:
//------------------------------------------------------------------
") BreakpointsCreateFromFile;
lldb::SBError
- BreakpointsCreateFromFile(SBFileSpec &source_file,
+ BreakpointsCreateFromFile(SBFileSpec &source_file,
SBBreakpointList &bkpt_list);
%feature("docstring", "
//------------------------------------------------------------------
- /// Read breakpoints from source_file and return the newly created
+ /// Read breakpoints from source_file and return the newly created
/// breakpoints in bkpt_list.
///
/// @param[in] source_file
@@ -754,7 +777,7 @@ public:
/// @param[in] matching_names
/// Only read in breakpoints whose names match one of the names in this
/// list.
- ///
+ ///
/// @param[out] bkpt_list
/// A list of the newly created breakpoints.
///
@@ -779,7 +802,7 @@ public:
") BreakpointsCreateFromFile;
lldb::SBError
BreakpointsWriteToFile(SBFileSpec &dest_file);
-
+
%feature("docstring", "
//------------------------------------------------------------------
/// Write breakpoints listed in bkpt_list to dest_file.
@@ -800,42 +823,42 @@ public:
//------------------------------------------------------------------
") BreakpointsCreateFromFile;
lldb::SBError
- BreakpointsWriteToFile(SBFileSpec &dest_file,
+ BreakpointsWriteToFile(SBFileSpec &dest_file,
SBBreakpointList &bkpt_list,
bool append = false);
uint32_t
GetNumWatchpoints () const;
-
+
lldb::SBWatchpoint
GetWatchpointAtIndex (uint32_t idx) const;
-
+
bool
DeleteWatchpoint (lldb::watch_id_t watch_id);
-
+
lldb::SBWatchpoint
FindWatchpointByID (lldb::watch_id_t watch_id);
-
+
bool
EnableAllWatchpoints ();
-
+
bool
DisableAllWatchpoints ();
-
+
bool
DeleteAllWatchpoints ();
lldb::SBWatchpoint
- WatchAddress (lldb::addr_t addr,
- size_t size,
- bool read,
+ WatchAddress (lldb::addr_t addr,
+ size_t size,
+ bool read,
bool write,
SBError &error);
-
+
lldb::SBBroadcaster
GetBroadcaster () const;
-
+
%feature("docstring", "
//------------------------------------------------------------------
/// Create an SBValue with the given name by treating the memory starting at addr as an entity of type.
@@ -859,20 +882,20 @@ public:
lldb::SBValue
CreateValueFromData (const char *name, lldb::SBData data, lldb::SBType type);
-
+
lldb::SBValue
CreateValueFromExpression (const char *name, const char* expr);
-
+
%feature("docstring", "
Disassemble a specified number of instructions starting at an address.
Parameters:
base_addr -- the address to start disassembly from
count -- the number of instructions to disassemble
flavor_string -- may be 'intel' or 'att' on x86 targets to specify that style of disassembly
- Returns an SBInstructionList.")
+ Returns an SBInstructionList.")
ReadInstructions;
lldb::SBInstructionList
- ReadInstructions (lldb::SBAddress base_addr, uint32_t count);
+ ReadInstructions (lldb::SBAddress base_addr, uint32_t count);
lldb::SBInstructionList
ReadInstructions (lldb::SBAddress base_addr, uint32_t count, const char *flavor_string);
@@ -883,7 +906,7 @@ public:
base_addr -- used for symbolicating the offsets in the byte stream when disassembling
buf -- bytes to be disassembled
size -- (C++) size of the buffer
- Returns an SBInstructionList.")
+ Returns an SBInstructionList.")
GetInstructions;
lldb::SBInstructionList
GetInstructions (lldb::SBAddress base_addr, const void *buf, size_t size);
@@ -895,17 +918,17 @@ public:
flavor -- may be 'intel' or 'att' on x86 targets to specify that style of disassembly
buf -- bytes to be disassembled
size -- (C++) size of the buffer
- Returns an SBInstructionList.")
+ Returns an SBInstructionList.")
GetInstructionsWithFlavor;
lldb::SBInstructionList
GetInstructionsWithFlavor (lldb::SBAddress base_addr, const char *flavor_string, const void *buf, size_t size);
-
+
lldb::SBSymbolContextList
FindSymbols (const char *name, lldb::SymbolType type = eSymbolTypeAny);
bool
GetDescription (lldb::SBStream &description, lldb::DescriptionLevel description_level);
-
+
lldb::addr_t
GetStackRedZoneSize();
@@ -915,6 +938,8 @@ public:
void
SetLaunchInfo (const lldb::SBLaunchInfo &launch_info);
+ lldb::SBStructuredData GetStatistics();
+
bool
operator == (const lldb::SBTarget &rhs) const;
@@ -932,12 +957,12 @@ public:
'''A helper object that will lazily hand out lldb.SBModule objects for a target when supplied an index, or by full or partial path.'''
def __init__(self, sbtarget):
self.sbtarget = sbtarget
-
+
def __len__(self):
if self.sbtarget:
return int(self.sbtarget.GetNumModules())
return 0
-
+
def __getitem__(self, key):
num_modules = self.sbtarget.GetNumModules()
if type(key) is int:
@@ -980,11 +1005,11 @@ public:
else:
print("error: unsupported item type: %s" % type(key))
return None
-
+
def get_modules_access_object(self):
'''An accessor function that returns a modules_access() object which allows lazy module access from a lldb.SBTarget object.'''
return self.modules_access (self)
-
+
def get_modules_array(self):
'''An accessor function that returns a list() that contains all modules in a lldb.SBTarget object.'''
modules = []
@@ -1015,13 +1040,13 @@ public:
__swig_getmethods__["broadcaster"] = GetBroadcaster
if _newclass: broadcaster = property(GetBroadcaster, None, doc='''A read only property that an lldb object that represents the broadcaster (lldb.SBBroadcaster) for this target.''')
-
+
__swig_getmethods__["byte_order"] = GetByteOrder
if _newclass: byte_order = property(GetByteOrder, None, doc='''A read only property that returns an lldb enumeration value (lldb.eByteOrderLittle, lldb.eByteOrderBig, lldb.eByteOrderInvalid) that represents the byte order for this target.''')
-
+
__swig_getmethods__["addr_size"] = GetAddressByteSize
if _newclass: addr_size = property(GetAddressByteSize, None, doc='''A read only property that returns the size in bytes of an address for this target.''')
-
+
__swig_getmethods__["triple"] = GetTriple
if _newclass: triple = property(GetTriple, None, doc='''A read only property that returns the target triple (arch-vendor-os) for this target as a string.''')
diff --git a/scripts/interface/SBThread.i b/scripts/interface/SBThread.i
index c36b1b519e66..60d77c783bb9 100644
--- a/scripts/interface/SBThread.i
+++ b/scripts/interface/SBThread.i
@@ -211,6 +211,11 @@ public:
void
StepOver (lldb::RunMode stop_other_threads = lldb::eOnlyDuringStepping);
+ %feature("autodoc",
+ "Do a source level single step over in the currently selected thread.") StepOver;
+ void
+ StepOver (lldb::RunMode stop_other_threads, SBError &error);
+
void
StepInto (lldb::RunMode stop_other_threads = lldb::eOnlyDuringStepping);
@@ -218,7 +223,7 @@ public:
StepInto (const char *target_name, lldb::RunMode stop_other_threads = lldb::eOnlyDuringStepping);
%feature("autodoc", "
- Step the current thread from the current source line to the line given by end_line, stopping if
+ Step the current thread from the current source line to the line given by end_line, stopping if
the thread steps into the function given by target_name. If target_name is None, then stepping will stop
in any of the places we would normally stop.
") StepInto;
@@ -231,12 +236,28 @@ public:
void
StepOut ();
+ %feature("autodoc",
+ "Step out of the currently selected thread.") StepOut;
+ void
+ StepOut (SBError &error);
+
void
- StepOutOfFrame (lldb::SBFrame &frame);
+ StepOutOfFrame (SBFrame &frame);
+
+ %feature("autodoc",
+ "Step out of the specified frame.") StepOutOfFrame;
+ void
+ StepOutOfFrame (SBFrame &frame, SBError &error);
void
StepInstruction(bool step_over);
+ %feature("autodoc",
+ "Do an instruction level single step in the currently selected thread.
+ ") StepInstruction;
+ void
+ StepInstruction(bool step_over, SBError &error);
+
SBError
StepOverUntil (lldb::SBFrame &frame,
lldb::SBFileSpec &file_spec,
@@ -254,6 +275,9 @@ public:
void
RunToAddress (lldb::addr_t addr);
+ void
+ RunToAddress (lldb::addr_t addr, SBError &error);
+
%feature("autodoc", "
Force a return from the frame passed in (and any frames younger than it)
without executing any more code in those frames. If return_value contains
@@ -297,9 +321,15 @@ public:
") Suspend;
bool
Suspend();
+
+ bool
+ Suspend(SBError &error);
bool
Resume ();
+
+ bool
+ Resume (SBError &error);
bool
IsSuspended();
@@ -329,7 +359,7 @@ public:
//--------------------------------------------------------------------------
/// Get the description strings for this thread that match what the
/// lldb driver will present, using the thread-format (stop_format==false)
- /// or thread-stop-format (stop_format = true).
+ /// or thread-stop-format (stop_format = true).
//--------------------------------------------------------------------------
") GetDescription;
bool GetDescription(lldb::SBStream &description, bool stop_format) const;
diff --git a/scripts/interface/SBValue.i b/scripts/interface/SBValue.i
index 2063626fc240..6d06c6ab67c9 100644
--- a/scripts/interface/SBValue.i
+++ b/scripts/interface/SBValue.i
@@ -265,10 +265,10 @@ public:
lldb::SBValue
CreateValueFromAddress(const char* name, lldb::addr_t address, lldb::SBType type);
- lldb::SBValue
- CreateValueFromData (const char* name,
- lldb::SBData data,
- lldb::SBType type);
+ lldb::SBValue
+ CreateValueFromData (const char* name,
+ lldb::SBData data,
+ lldb::SBType type);
lldb::SBType
GetType();
@@ -391,8 +391,8 @@ public:
bool
GetExpressionPath (lldb::SBStream &description);
- %feature("docstring", "
- //------------------------------------------------------------------
+ %feature("docstring", "
+ //------------------------------------------------------------------
/// Get an SBData wrapping what this SBValue points to.
///
/// This method will dereference the current SBValue, if its
@@ -413,13 +413,13 @@ public:
/// An SBData with the contents of the copied items, on success.
/// An empty SBData otherwise.
//------------------------------------------------------------------
- ") GetPointeeData;
- lldb::SBData
- GetPointeeData (uint32_t item_idx = 0,
- uint32_t item_count = 1);
+ ") GetPointeeData;
+ lldb::SBData
+ GetPointeeData (uint32_t item_idx = 0,
+ uint32_t item_count = 1);
%feature("docstring", "
- //------------------------------------------------------------------
+ //------------------------------------------------------------------
/// Get an SBData wrapping the contents of this SBValue.
///
/// This method will read the contents of this object in memory
@@ -429,18 +429,18 @@ public:
/// An SBData with the contents of this SBValue, on success.
/// An empty SBData otherwise.
//------------------------------------------------------------------
- ") GetData;
+ ") GetData;
lldb::SBData
GetData ();
bool
SetData (lldb::SBData &data, lldb::SBError& error);
- lldb::addr_t
- GetLoadAddress();
+ lldb::addr_t
+ GetLoadAddress();
- lldb::SBAddress
- GetAddress();
+ lldb::SBAddress
+ GetAddress();
lldb::SBValue
Persist ();
@@ -455,6 +455,40 @@ public:
'''Helper function for the "SBValue.dynamic" property.'''
return self.GetDynamicValue (eDynamicCanRunTarget)
+ class children_access(object):
+ '''A helper object that will lazily hand out thread for a process when supplied an index.'''
+
+ def __init__(self, sbvalue):
+ self.sbvalue = sbvalue
+
+ def __len__(self):
+ if self.sbvalue:
+ return int(self.sbvalue.GetNumChildren())
+ return 0
+
+ def __getitem__(self, key):
+ if type(key) is int and key < len(self):
+ return self.sbvalue.GetChildAtIndex(key)
+ return None
+
+ def get_child_access_object(self):
+ '''An accessor function that returns a children_access() object which allows lazy member variable access from a lldb.SBValue object.'''
+ return self.children_access (self)
+
+ def get_value_child_list(self):
+ '''An accessor function that returns a list() that contains all children in a lldb.SBValue object.'''
+ children = []
+ accessor = self.get_child_access_object()
+ for idx in range(len(accessor)):
+ children.append(accessor[idx])
+ return children
+
+ __swig_getmethods__["children"] = get_value_child_list
+ if _newclass: children = property(get_value_child_list, None, doc='''A read only property that returns a list() of lldb.SBValue objects for the children of the value.''')
+
+ __swig_getmethods__["child"] = get_child_access_object
+ if _newclass: child = property(get_child_access_object, None, doc='''A read only property that returns an object that can access children of a variable by index (child_value = value.children[12]).''')
+
__swig_getmethods__["name"] = GetName
if _newclass: name = property(GetName, None, doc='''A read only property that returns the name of this value as a string.''')