This project is intended to be a collection of tools around the topic of XML-style documentation in Managed C++ as proposed by Microsoft (but only supported for C# at this time) and used by Ndoc.
At the moment, this toolset consists of only one commandline utility, but more functionality might be desired later on. If you have any ideas, please let me know.
MCX is a commandline tool that accomplishes the task of finding and extracting the XML documentation tags from C++ header files.
This tool will only work on Managed C++, not the new C++/CLI that will be available with the Whidbey release of the Microsoft developer studio.
Any documentation is put in header files. Header files have '.h' ending.
Properties are documented at the 'get' accessor method (MC++ does not have a language construct for a property, only a magic __property keyword on the accessor functions.)
Implicit static constructors cause problems. Make them explicit as a workaround.
Array parameters not yet supported.
Enumerations not yet supported.
Not all syntactial cornercases have been tested. Please contact me if you find any problems.
mcx /AssemblyName name /AssemblyFile asm /OutPath path
/...further options
options:
/AssemblyFile file -> compiled .NET assembly file used as
reference for reflection assistance.
/ExcludeDir dir -> specify a subdirectory to exclude from
docu extraction. Can be used repeatedly to exclude multiple
subdirectories
/Verbose -> generates a lot of internal diagnosis
messages. Only useful for debugging mcx.
/DefaultSummary -> For mcx troubleshooting purposes
generate a default summary for each tag.
For those who want to publish an API documentation it might be desirable to also document their API for COM developers. I have a working hack into Ndoc and a small set of commandline tools to provide additional COM-style syntax for interface function documentation. If you're interested, please feel free to contact me.