[Lldb-commits] [lldb] Add AddressRange to SB API (PR #92014)

Alex Langford via lldb-commits lldb-commits at lists.llvm.org
Tue May 21 11:26:53 PDT 2024


================
@@ -0,0 +1,28 @@
+%extend lldb::SBAddressRangeList {
+#ifdef SWIGPYTHON
+    %pythoncode%{
+    def __len__(self):
+      '''Return the number of address ranges in a lldb.SBAddressRangeList object.'''
+      return self.GetSize()
+
+    def __iter__(self):
+      '''Iterate over all the address ranges in a lldb.SBAddressRangeList object.'''
+      return lldb_iter(self, 'GetSize', 'GetAddressRangeAtIndex')
+
+    def __getitem__(self, idx):
+      '''Get the address range at a given index in an lldb.SBAddressRangeList object.'''
+      if type(idx) == int:
+        if idx >= self.GetSize():
+          raise IndexError("list index out of range")
+        return self.GetAddressRangeAtIndex(idx)
+      else:
+        print("error: unsupported idx type: %s" % type(key))
+        return None
----------------
bulbazord wrote:

If the type of index is not an int, why not raise an exception? We raise an exception if the index is an int and is out of range.

https://github.com/llvm/llvm-project/pull/92014


More information about the lldb-commits mailing list