Boost logo

Boost :

From: Braden Ganetsky (braden.ganetsky_at_[hidden])
Date: 2024-08-14 00:29:53


Hi all,

I want some opinions on the display printout for the GDB pretty-printers
I'm working on, for the Unordered library. I have a sample printout in this
GitHub gist here.
(https://gist.github.com/k3DW/ead86d748aa4c4bba3f9f67f09521ba5)

Everything at this link is already implemented and functional in my branch.
I want opinions on how it looks.

I have a few specific questions for everyone, but I'll take any other
comments that don't belong with these questions below.

1. For the container display format, I matched what the standard library
containers do. Should the beginning be shortened to `boost::unordered_map`
instead of the current display of `boost::unordered::unordered_map`? The
same question applies to all of the other containers. Does the middle
namespace `unordered` cause too much visual noise?

2. For the iterators, is `iterator = {...}` a good enough format? Or should
this iterator also specify the container type it came from instead of just
`iterator`? I prefer it as I wrote it, but I am only one member of the
community.

3. Any suggestions for end iterators other than simply `{ end iterator }`?
Again, I like it this way, but I want to know if other people feel
similarly.

4. To print the stats, I implemented a custom GDB command called
"print_stats" that behaves exactly like "print", except it prints an
open-addressing container's stats instead of its elements. Is the name
"print_stats" alright to use in this scenario? Or should it be something
like "boost_unordered_print_stats" to mitigate against name collisions?

Thanks,
Braden


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk