Improving ddoc

Rikki Cattermole via Digitalmars-d digitalmars-d at puremagic.com
Wed Dec 31 16:44:23 PST 2014


On 1/01/2015 1:35 p.m., ketmar via Digitalmars-d wrote:
> On Thu, 01 Jan 2015 13:21:16 +1300
> Rikki Cattermole via Digitalmars-d <digitalmars-d at puremagic.com> wrote:
>
>> Although this is a little extreme compared to my original post...
>
> a little. ;-)
>
> yes, processing ASTs with CTFE will be great, but this is huge task.
> replacing Ddoc with CTFE which receives an array (tuple? ;-) of
> functions with documentation text (preprocessed a little, see below) is
> a lighter task. then we can use compile-time introspection to get
> function args and so, and format the output as we like.
>
> "small preprocessing" converts the following:
>
>    /** text0
>      * text1
>      * text2
>      */
>
> to:
>
>    text0
>    text1
>    text2
>
> i.e. just removing that indentation with corresponding '*'. it's easy
> and must be done for any formatting, so it can be done before invoking
> CTFE. just make sure that the following will not be processed:
>
>    /** text0
>      * text1
>        heh
>      * text2
>      */
>
> there is no vertical line of '*', so no need to remove leading '*' here.

I was thinking one simpler.
$(D myfunction, $0)

This will be enough of a big task, but enough of a pay off to make it 
worth while.
The AST stuff would guaranteed be a DIP (second to last CTFE 
implementation type, well as I define it anyway).


More information about the Digitalmars-d mailing list