rust-gamedev / wg

Coordination repository of the Game Development Working Group
514 stars 10 forks source link

Map/Set in .natvis files #20

Open AlexEne opened 5 years ago

AlexEne commented 5 years ago

I am going to open this issue here as this wg probably has most members using windows so I think this can be tracked by us for now until someone starts actual work on it.

.natvis files don't support map and set data structures and it would be a great addition if they did have a nice debug visualizer for them.

If someone from this wg wants to pick it up then that would be great, if not I am considering setting up a bounty for it.

MaulingMonkey commented 5 years ago

Some existing upstream issues for cross referencing:

MaulingMonkey commented 5 years ago

Existing stdlib natvis files - any new files dropped in here should be automatically picked up by rustc (EDIT: this is no longer true, see the linked PR for where to manually list natvis files so they get bundled!) and added to the pdbs of rust programs built using MSVC toolchains:

To avoid regressions, I recommend adding unit tests to verify your .natvis files work after you've gotten them working. Example here for Vec and String:

To run those unit tests, aside from all the usual setup for contributing to rustc, you'll also want the debugging tools from the Windows SDK ( https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk ) or similar.