xref: /llvm-project/lldb/examples/summaries/objc.py (revision b9c1b51e45b845debb76d8658edabca70ca56079)
1bac45f61SEnrico Granata# Summaries for common ObjC types that require Python scripting
2bac45f61SEnrico Granata# to be generated fit into this file
3bac45f61SEnrico Granata
4*b9c1b51eSKate Stone
5bac45f61SEnrico Granatadef BOOL_SummaryProvider(valobj, dict):
64b7b5aa0SEnrico Granata    if not (valobj.IsValid()):
74b7b5aa0SEnrico Granata        return "<invalid>"
8bac45f61SEnrico Granata    if valobj.GetValueAsUnsigned() == 0:
9bac45f61SEnrico Granata        return "NO"
10bac45f61SEnrico Granata    else:
11bac45f61SEnrico Granata        return "YES"
12bac45f61SEnrico Granata
13*b9c1b51eSKate Stone
144b7b5aa0SEnrico Granatadef BOOLRef_SummaryProvider(valobj, dict):
154b7b5aa0SEnrico Granata    return BOOL_SummaryProvider(valobj.GetChildAtIndex(0), dict)
164b7b5aa0SEnrico Granata
17*b9c1b51eSKate Stone
184b7b5aa0SEnrico Granatadef BOOLPtr_SummaryProvider(valobj, dict):
194b7b5aa0SEnrico Granata    return BOOL_SummaryProvider(valobj.Dereference(), dict)
20