DDoc Improvments

pragma eric.t.anderton at gmail.com
Thu May 1 20:16:28 PDT 2008


Jason House wrote:
> Pragma wrote:
> 
>> Tower  Ty Wrote:
>>
>>> You are probably all over this but have you noticed Candydoc html files
>>> when opened have the page you are looking at and behind the package tab
>>> you are linked to every other candydoc produced html file produced at the
>>> same time .
>>>
>>> i didn't notice this at first but it is a boon for my IDE, KDevelop ,so
>>> please retain it.
>> FWIW, I started hacking up a copy of DMDFE last night (Thanks Walter and
>> Gergor), and am now sinking my teeth into the ddoc internals.  It's
>> actually not that bad, and is turning out to be just the kind of
>> lightweight project I need while I'm working on other stuff.  My hope is
>> to have something that can be handed to Walter as a patch, or rolled into
>> a stand-alone tool like rebuild.
> 
> Cool.  Good luck!

Thanks.  I'll need it.  So far I have dmdfe doing verbose output for 
declarations, but I'm having a hell of a time trying to pin down the 
basic return type for methods.  Also, when done, DDOC_DECL will take a 
whopping 9 or 10 arguments - so I'm considering hacking in named 
arguments (as opposed to numeric/positional) as way to possibly make 
less verbose ddoc code more manageable.

I think this output chunk speaks for itself:

---- output (snippet) ----

<decl kind="function" protection="public" prefix="final synchronized" 
name="function2" namespace="foo.bar.baz" type="void(int x)" pretty="void 
function2(int x)" mangled="_D3foo3bar3baz9function2FiZv">

---- xml.ddoc (snippet) ----
DDOC_DECL      = <decl kind="$1" protection="$2" prefix="$3" name="$4" 
namespace="$5" type="$6" pretty="$7" mangled="$8">
DDOC_DECL_DD   = $0</decl>


----- test2.d (snippet) ----
module foo.bar.baz;
synchronized final void function2(int x){ /*...*/ }



More information about the Digitalmars-d mailing list