On 9/16/2016 11:53 PM, Sönke Ludwig wrote:
There is indeed a separate macro engine [1] contained in the ddox repo. Neither DDMD, nor libddoc existed at the time and DMD's implementation was written in, from a D POV, very alien C style, with no suitable structure to extract high level information, so instead of porting it, I instead tried to implement a processor from the spec [1]. However, it turned out that the spec is not sufficient at all, so a lot of changes were necessary over time to work out those small differences. I'd like to improve the docs, but I'm still not confident that my implementation's behavior is always equivalent (as this issue shows).
I've factored out the Ddoc macro code into a separate component: https://digitalmars.com/sargon/textmac.html