41 lines
1.1 KiB
Python
41 lines
1.1 KiB
Python
import lldb
|
|
|
|
counter = 0
|
|
|
|
|
|
class ftsp:
|
|
|
|
def __init__(self, valobj, dict):
|
|
self.valobj = valobj
|
|
|
|
def num_children(self):
|
|
if self.char.IsValid():
|
|
return 5
|
|
return 0
|
|
|
|
def get_child_index(self, name):
|
|
return 0
|
|
|
|
def get_child_at_index(self, index):
|
|
if index == 0:
|
|
return self.x.Cast(self.char)
|
|
if index == 4:
|
|
return self.valobj.CreateValueFromExpression(
|
|
str(index), '(char)(' + str(self.count) + ')')
|
|
return self.x.CreateChildAtOffset(str(index),
|
|
index,
|
|
self.char)
|
|
|
|
def update(self):
|
|
self.x = self.valobj.GetChildMemberWithName('x')
|
|
self.char = self.valobj.GetType().GetBasicType(lldb.eBasicTypeChar)
|
|
global counter
|
|
self.count = counter
|
|
counter = counter + 1
|
|
return True # important: if we return False here, or fail to return, the test will fail
|
|
|
|
|
|
def __lldb_init_module(debugger, dict):
|
|
global counter
|
|
counter = 0
|