def __next__(self): if self.cur == self.end: raise StopIteration decl_props = self.cls['m_declProperties'] name = idx.indexed_string_map_at(decl_props, self.cur)['m_name'] val = idx.object_data_at(self.obj, name) self.cur = self.cur + 1 if val is None: val = '<unknown>' return (str(deref(name)), val)
def __next__(self): if self.cur == self.end: raise StopIteration decl_props = self.cls['m_declProperties'] try: name = idx.indexed_string_map_at(decl_props, self.cur)['name'] except gdb.MemoryError: name = '<invalid>' try: val = idx.object_data_at(self.obj, self.cur) except gdb.MemoryError: val = '<unknown>' self.cur = self.cur + 1 return (str(deref(name)), val)
def __next__(self): if self.cur == self.end: raise StopIteration decl_props = self.cls['m_declProperties'] try: name = idx.indexed_string_map_at(decl_props, self.cur)['m_name'] try: val = idx.object_data_at(self.obj, name) except gdb.MemoryError: val = None except gdb.MemoryError: name = '<invalid>' self.cur = self.cur + 1 if val is None: val = '<unknown>' return (str(deref(name)), val)