Duel reloaded: Duel.py (and a PrettyPrinter decorator)

Sergei Golubchik <[email protected]>
Newsgroups gmane.comp.gdb.devel
Message-ID <[email protected]>
Hi,

If you've never heard about Duel - it's an insanely cool data
exploration language for gdb. Specifically designed to print out complex
data structures in one command. Created as a public domain patch for gdb
in 1993, but never got accepted for licensing reasons.

Still, Duel is super-convenient, for example, to print the whole linked
list one writes just

  (gdb) dl head-->next->val

and to print field 'name' of every element in an array of structures,
one writes

  (gdb) dl arr[..100].name

I've recently rewritten it in Python, so it doesn't need to be compiled
with gdb anymore, one can load it run-time (e.g. from .gdbinit).

Here it is: https://github.com/vuvova/gdb-tools

This repository also includes a helper to simplify writing pretty
printers. It removes all the boilerplate code that gdb requires, you
only need to write the value-to-string function itself.

Enjoy!

Regards,
Sergei
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.