summaryrefslogtreecommitdiffstats
path: root/python/gdbpp/gdbpp/__init__.py
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 00:47:55 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 00:47:55 +0000
commit26a029d407be480d791972afb5975cf62c9360a6 (patch)
treef435a8308119effd964b339f76abb83a57c29483 /python/gdbpp/gdbpp/__init__.py
parentInitial commit. (diff)
downloadfirefox-26a029d407be480d791972afb5975cf62c9360a6.tar.xz
firefox-26a029d407be480d791972afb5975cf62c9360a6.zip
Adding upstream version 124.0.1.upstream/124.0.1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'python/gdbpp/gdbpp/__init__.py')
-rw-r--r--python/gdbpp/gdbpp/__init__.py32
1 files changed, 32 insertions, 0 deletions
diff --git a/python/gdbpp/gdbpp/__init__.py b/python/gdbpp/gdbpp/__init__.py
new file mode 100644
index 0000000000..9edc626eb6
--- /dev/null
+++ b/python/gdbpp/gdbpp/__init__.py
@@ -0,0 +1,32 @@
+# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
+# vim: set filetype=python:
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+import gdb
+import gdb.printing
+
+
+class GeckoPrettyPrinter(object):
+ pp = gdb.printing.RegexpCollectionPrettyPrinter("GeckoPrettyPrinters")
+
+ def __init__(self, name, regexp):
+ self.name = name
+ self.regexp = regexp
+
+ def __call__(self, wrapped):
+ GeckoPrettyPrinter.pp.add_printer(self.name, self.regexp, wrapped)
+ return wrapped
+
+
+import gdbpp.enumset # noqa: F401
+import gdbpp.linkedlist # noqa: F401
+import gdbpp.owningthread # noqa: F401
+import gdbpp.smartptr # noqa: F401
+import gdbpp.string # noqa: F401
+import gdbpp.syncedcontext # noqa: F401
+import gdbpp.tarray # noqa: F401
+import gdbpp.thashtable # noqa: F401
+
+gdb.printing.register_pretty_printer(None, GeckoPrettyPrinter.pp)