-
-
Notifications
You must be signed in to change notification settings - Fork 3.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CustomDebugInformationTableTreeNode: split Kind, fix Offset, add EncStateMachineStateMap, #2799
CustomDebugInformationTableTreeNode: split Kind, fix Offset, add EncStateMachineStateMap, #2799
Conversation
Thanks for adding the missing custom debug info kind. Would you mind explaining why you think the other changes are needed? Thanks! |
Because previously this was just all combined together, unlabelled in a single column.
Because the column was blank before.
Because otherwise
I think this was to be consistent with other view. Hope this helps |
That was a deliberate design decision. I only wanted to show columns that actually exist in the physical metadata format (except for RID, Token and Offset, which are kind of necessary to make the table usable). Additional info / text representation is usually added in tooltips. The reason I added the text representation in that column (instead of just showing the raw GUID offset), is because I wanted to be able to filter the debug info kinds by name. I think adding two new columns to that table for one piece of information puts too much emphasis on that piece of information. Especially
Yeah, I fixed that in my latest commit. It now shows
I am not against changing that in general, however, I think we could use the format:
I think, I deliberately left it like that to distinguish heap offsets from tokens. I hope you don't mind discussing this with me further, so we can come to a conclusion... |
As someone not that familiar with the format I couldn't identify the various parts without the column headings and I just didn't want to remove some functionality in case some one was relying on them for some reason. It absolutely makes sense they don't need to be in as much focus.
Ahh embedded implies compressed - that I wasn't aware of. I guess it's completely hidden from the object model. How about a tool tip explaining that because the stream is compressed the offset might not be as meaningful?
Sure. Would that be with the expanded version on the second line? (eg. method names get reaaaalllly long)
Makes sense. Could we use additionally use different column heading to make it clearer?
Of course - thanks for the project and engaging with me so readily! |
I would only add that for items that previously had no specialized tooltip and were just showing
So you would still want to display the offset instead of "n/a", or just add an explanatory tooltip, as to why it shows "n/a"?
Yes, any suggestions? :) |
* add Parent kind to tooltip * Format value blob heap offset to 8 digits
…token kind and "Name" if available
93bf1a2
to
a0d3dc8
Compare
I have made some adjustments to your code following our previous discussion. Thank you for contributing and discussing things with me. If there is anything else you would like to see changed, please feel free to open an issue. |
Improvements for CustomDebugInformationTableTreeNode:
Before:
Parent Tooltip:
After:
Parent Tooltip: