199451b44SJordan Rupprechtimport lldb 299451b44SJordan Rupprecht 399451b44SJordan Rupprechtcounter = 0 499451b44SJordan Rupprecht 599451b44SJordan Rupprecht 699451b44SJordan Rupprechtclass ftsp: 799451b44SJordan Rupprecht def __init__(self, valobj, dict): 899451b44SJordan Rupprecht self.valobj = valobj 999451b44SJordan Rupprecht 1099451b44SJordan Rupprecht def num_children(self): 1199451b44SJordan Rupprecht if self.char.IsValid(): 1299451b44SJordan Rupprecht return 5 1399451b44SJordan Rupprecht return 0 1499451b44SJordan Rupprecht 1599451b44SJordan Rupprecht def get_child_index(self, name): 1699451b44SJordan Rupprecht return 0 1799451b44SJordan Rupprecht 1899451b44SJordan Rupprecht def get_child_at_index(self, index): 1999451b44SJordan Rupprecht if index == 0: 2099451b44SJordan Rupprecht return self.x.Cast(self.char) 2199451b44SJordan Rupprecht if index == 4: 2299451b44SJordan Rupprecht return self.valobj.CreateValueFromExpression( 23*2238dcc3SJonas Devlieghere str(index), "(char)(" + str(self.count) + ")" 24*2238dcc3SJonas Devlieghere ) 25*2238dcc3SJonas Devlieghere return self.x.CreateChildAtOffset(str(index), index, self.char) 2699451b44SJordan Rupprecht 2799451b44SJordan Rupprecht def update(self): 28*2238dcc3SJonas Devlieghere self.x = self.valobj.GetChildMemberWithName("x") 2999451b44SJordan Rupprecht self.char = self.valobj.GetType().GetBasicType(lldb.eBasicTypeChar) 3099451b44SJordan Rupprecht global counter 3199451b44SJordan Rupprecht self.count = counter 3299451b44SJordan Rupprecht counter = counter + 1 3399451b44SJordan Rupprecht return True # important: if we return False here, or fail to return, the test will fail 3499451b44SJordan Rupprecht 3599451b44SJordan Rupprecht 3699451b44SJordan Rupprechtdef __lldb_init_module(debugger, dict): 3799451b44SJordan Rupprecht global counter 3899451b44SJordan Rupprecht counter = 0 39