xref: /llvm-project/lldb/test/API/python_api/sbvalue_synthetic/formatter.py (revision 3068d277fd5ad0590a11dcb23af170ab31d7bda0)
1import lldb
2
3
4class FooSyntheticProvider:
5    def __init__(self, valobj, dict):
6        target = valobj.GetTarget()
7        data = lldb.SBData.CreateDataFromCString(lldb.eByteOrderLittle, 8, "S")
8        self._child = valobj.CreateValueFromData(
9            "synth_child", data, target.GetBasicType(lldb.eBasicTypeChar)
10        )
11
12    def num_children(self):
13        return 1
14
15    def get_child_at_index(self, index):
16        if index != 0:
17            return None
18        return self._child
19
20    def get_child_index(self, name):
21        if name == "synth_child":
22            return 0
23        return None
24