diff options
Diffstat (limited to 'tests/debuginfo/auxiliary/dependency-with-embedded-visualizers.py')
-rw-r--r-- | tests/debuginfo/auxiliary/dependency-with-embedded-visualizers.py | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/tests/debuginfo/auxiliary/dependency-with-embedded-visualizers.py b/tests/debuginfo/auxiliary/dependency-with-embedded-visualizers.py new file mode 100644 index 000000000..2635ed487 --- /dev/null +++ b/tests/debuginfo/auxiliary/dependency-with-embedded-visualizers.py @@ -0,0 +1,23 @@ +import gdb + +class PersonPrinter: + "Print a Person" + + def __init__(self, val): + self.val = val + self.name = val["name"] + self.age = int(val["age"]) + + def to_string(self): + return "{} is {} years old.".format(self.name, self.age) + +def lookup(val): + lookup_tag = val.type.tag + if lookup_tag is None: + return None + if "dependency_with_embedded_visualizers::Person" == lookup_tag: + return PersonPrinter(val) + + return None + +gdb.current_objfile().pretty_printers.append(lookup) |