Skip to content
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

XML Doc Comment Parser #290

Open
Entomy opened this issue Jul 23, 2021 · 1 comment
Open

XML Doc Comment Parser #290

Entomy opened this issue Jul 23, 2021 · 1 comment
Labels
💢 Difficult This issue is expected to be difficult to resolve 🛠 Enhancement New feature or request 🆘 Help Wanted Extra attention is needed
Milestone

Comments

@Entomy
Copy link
Owner

Entomy commented Jul 23, 2021

Cameron Young brought up here that it would be nice for a separate parser for .NET's Documentation Comments. This is something I've increasingly felt necessary as well, as DocFX has some issues I'm not sure they'll ever deal with. The major one I'm running into, is the inability to build docs for the three core languages at once, even though Microsoft likely has an internal extension to the system that allows them to do exactly this (or they write them all manually, which is insane). What I would like to be able to do, is build common docs from x-lang projects, primarily in C# and F#, and have the documentation site work for any of the three core languages, with a similar language selector system for changing the signatures or examples that docs.microsoft uses.

This requires two components similar to how compilers work, an analyzer, or more specifically, extractor, which only parses and analyzes enough of the sources to get the object signature, and the doc comments, and then a synthesizer which in this case doesn't synthesize executable code, but instead, a static website.

The analyzer itself is what's relevant here, and is two parts itself. First is the standard XML Documentation Comment language, which should be built into a unique assembly. This would then get embedded into special C#, VB, and F# "extractors" which understand only the necessary parts of those languages, enough for signature and documentation extraction. This would then form a parse tree with only the relevant parts. A separate static website synthesizer could then walk the parse tree to generate the sites, and actually address my x-lang concerns.

@Entomy Entomy added 🛠 Enhancement New feature or request 🆘 Help Wanted Extra attention is needed 💢 Difficult This issue is expected to be difficult to resolve labels Jul 23, 2021
@Entomy Entomy added this to the v5.3 milestone Aug 2, 2021
@Entomy
Copy link
Owner Author

Entomy commented Aug 2, 2021

I'm putting this with the v5.3 milestone because in order to do this without an entire C#, VB, and F# parser, it requires search capabilities in the patterns engine.

I'm not implementing entire parsers for the major .NET languages. 🤣

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
💢 Difficult This issue is expected to be difficult to resolve 🛠 Enhancement New feature or request 🆘 Help Wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

1 participant