summaryrefslogtreecommitdiffstats
path: root/tests/debuginfo/embedded-visualizer.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/debuginfo/embedded-visualizer.py')
-rw-r--r--tests/debuginfo/embedded-visualizer.py23
1 files changed, 23 insertions, 0 deletions
diff --git a/tests/debuginfo/embedded-visualizer.py b/tests/debuginfo/embedded-visualizer.py
new file mode 100644
index 000000000..8e4fab616
--- /dev/null
+++ b/tests/debuginfo/embedded-visualizer.py
@@ -0,0 +1,23 @@
+import gdb
+
+class LinePrinter:
+ "Print a Line"
+
+ def __init__(self, val):
+ self.val = val
+ self.a = val["a"]
+ self.b = val["b"]
+
+ def to_string(self):
+ return "({}, {})".format(self.a, self.b)
+
+def lookup(val):
+ lookup_tag = val.type.tag
+ if lookup_tag is None:
+ return None
+ if "embedded_visualizer::Line" == lookup_tag:
+ return LinePrinter(val)
+
+ return None
+
+gdb.current_objfile().pretty_printers.append(lookup)