1*99451b44SJordan Rupprechtimport lldb
2*99451b44SJordan Rupprecht
3*99451b44SJordan Rupprechtcounter = 0
4*99451b44SJordan Rupprecht
5*99451b44SJordan Rupprecht
6*99451b44SJordan Rupprechtclass ftsp:
7*99451b44SJordan Rupprecht
8*99451b44SJordan Rupprecht    def __init__(self, valobj, dict):
9*99451b44SJordan Rupprecht        self.valobj = valobj
10*99451b44SJordan Rupprecht
11*99451b44SJordan Rupprecht    def num_children(self):
12*99451b44SJordan Rupprecht        if self.char.IsValid():
13*99451b44SJordan Rupprecht            return 5
14*99451b44SJordan Rupprecht        return 0
15*99451b44SJordan Rupprecht
16*99451b44SJordan Rupprecht    def get_child_index(self, name):
17*99451b44SJordan Rupprecht        return 0
18*99451b44SJordan Rupprecht
19*99451b44SJordan Rupprecht    def get_child_at_index(self, index):
20*99451b44SJordan Rupprecht        if index == 0:
21*99451b44SJordan Rupprecht            return self.x.Cast(self.char)
22*99451b44SJordan Rupprecht        if index == 4:
23*99451b44SJordan Rupprecht            return self.valobj.CreateValueFromExpression(
24*99451b44SJordan Rupprecht                str(index), '(char)(' + str(self.count) + ')')
25*99451b44SJordan Rupprecht        return self.x.CreateChildAtOffset(str(index),
26*99451b44SJordan Rupprecht                                          index,
27*99451b44SJordan Rupprecht                                          self.char)
28*99451b44SJordan Rupprecht
29*99451b44SJordan Rupprecht    def update(self):
30*99451b44SJordan Rupprecht        self.x = self.valobj.GetChildMemberWithName('x')
31*99451b44SJordan Rupprecht        self.char = self.valobj.GetType().GetBasicType(lldb.eBasicTypeChar)
32*99451b44SJordan Rupprecht        global counter
33*99451b44SJordan Rupprecht        self.count = counter
34*99451b44SJordan Rupprecht        counter = counter + 1
35*99451b44SJordan Rupprecht        return True  # important: if we return False here, or fail to return, the test will fail
36*99451b44SJordan Rupprecht
37*99451b44SJordan Rupprecht
38*99451b44SJordan Rupprechtdef __lldb_init_module(debugger, dict):
39*99451b44SJordan Rupprecht    global counter
40*99451b44SJordan Rupprecht    counter = 0
41