Some feedback on the website.
Marc Schütz via Digitalmars-d
digitalmars-d at puremagic.com
Thu Dec 17 05:49:16 PST 2015
On Wednesday, 16 December 2015 at 22:32:25 UTC, H. S. Teoh wrote:
> On Wed, Dec 16, 2015 at 10:00:50PM +0000, Meta via
> Digitalmars-d wrote:
>> There's also weird stuff like this, with an outer template and
>> a documented inner template function.
>>
>> http://dlang.org/phobos/std_parallelism.html#.TaskPool.amap.amap
>
> This is a limitation of ddoc that needs to be fixed.
> Historically, template functions used to be written like this:
>
> template amap(Args...)
> {
> auto amap(Args args) {
> implementation();
> }
> }
>
> Then a shorthand was introduced (the so-called "eponymous
> template" syntax), such that the above incantation could be
> abbreviated to:
>
> auto amap(Args...)(Args args) {
> implementation();
> }
>
> It would appear that ddoc came after eponymous templates became
> the norm, so currently, ddoc only understands ddoc comments
> attached to the latter syntax, while it fails to recognize that
> the former syntax is actually equivalent. Several other
> functions in Phobos suffer from the resulting formatting
> disparity, IIRC map(), and maybe reduce(), and one or two
> others. It's rare enough that we don't encounter it very often,
> but the functions affected happen to be ones that are likely to
> be frequently used, so we really ought to fix this limitation
> in ddoc.
I think in this particular case it can only be done with a nested
template, because there are two variadic parameters.
More information about the Digitalmars-d
mailing list