Cross-references in generated ddoc

Jacob Carlborg doob at me.com
Wed Apr 4 05:05:40 PDT 2012


On 2012-04-04 13:38, Ary Manzana wrote:

> Ah, no. That's because I ran it against object.di, which doesn't have
> ddoc comments at all. I don't generate cross-references to undocumented
> symbols.
>
> I uploaded a new version which I ran against an object.di which has
> empty ddocs for everything. Now you can see there are some
> cross-references. (if you find some is missing, please tell me).

Cool, but what I actually was referring to was template types, i.e. the 
first declaration in http://pancake.io/1e79d0/array.html:

ForeachType!(Range)[] array(Range)(Range r);

"ForeachType" is not a link.

>> Why are you not using the mangled name when creating anchors?
>
> I don't think there's need for the mangled name. It's also more natural
> to give a link like foo.html?Some.Class than a mangled name.

Sure but then it won't be possible to reference different overloaded 
functions? If you're not creating your own human readable form of 
mangling, i.e.

foo.html#Foo.bar(int)
foo.html#Foo.bar(char)

I think it's more important that the doc generator behaves correctly 
than outputting pretty URL's.

I found a case where the fully qualified name is not used:

http://pancake.io/1e79d0/complex.html#toString

The name is just "toString" instead of "Complex.toString".

BTW, why are adding an empty "a" tag for the anchor? Just add an "id" on 
the actual tag you want to refer to.

The cross-referencing worked better in Descent, why are you doing it 
differently?

-- 
/Jacob Carlborg


More information about the Digitalmars-d mailing list