Displaying (and editing) Project Yacks metadata
My efforts to modify the Microsoft Roslyn compiler have shown that it's not as easy as I first thought, mostly due to me misunderstanding things and assuming that things were less complicated than they are.
It became obvious that what I needed to better understand what I was doing was a way to display the metadata that my modifications create and store in a LiteDB database, in a logical and understandable (for me, at least) way. So I ended up writing a fairly large (approx. 3,000 lines of code, incl. comments and blank lines) program which I call the Yacks Metadata Editor. As the name implies, it makes it possible to modify the metadata, although I doubt I'll be using that feature much - what I primarily will use this program for is to simply display the metadata, so I can see what my code is doing.
I'll include the source code for this program the next time I get around to copying my Roslyn modifications to my company's FTP server. In the mean time, here are some screen shots to show how it looks. (It uses the Developer Express WinForms product, and I've selected my favorite Halloween-themed skin.)
One neat thing about this program is that it allows the opening of an unlimited number of windows to display the various collections of metadata. So now, if I feel the need or desire, I can cover my entire workspace with Project Yacks metadata.