Andrei's Google Talk

BCS none at anon.com
Sun Aug 15 18:08:09 PDT 2010


Hello Walter,

> Johannes Pfau wrote:
> 
>> On 15.08.2010 23:27, Walter Bright wrote:
>> 
>>> retard wrote:
>>> 
>>>> - the markup/macro syntax is NIH new.
>>>> 
>>> Not really. The macro syntax is copied from make. And it's utterly
>>> trivial.
>>> 
>>> I'd like to know how the macro system is inadequate for generating
>>> Latex, man, etc. format.
>>> 
>> I think it's not a problem with the macro system, but with the few
>> macros emitted by dmd: There are enough macros for the doc comments
>> (DDOC_SUMMARY, DDOC_DESCRIPTION, ...) but not for the types.
>> DDOC_DECL, DDOC_DECL_DD and DDOC_*_MEMBERS are just not enough to
>> extract detailed information.
>> 
> Ok.
> 
>> This also puts quite some restrictions on the layout of the
>> resulting documentation. In this case ddoc is very tied to html:
>> These
>> macros seem modeled directly after the DD DT DL html elements.
> They are.
> 
>> I tried to enhance the ddoc output over the last few weeks and it's
>> not ready to be released yet, but for example this is the macro
>> structure I've chosen for function definitions:
>> 
>> DDOC_FUNCTION
>> DDOC_FUNCTION_HEADER_CONTAINER
>> DDOC_FUNCTION_TEMPLATE_HEADER
>> DDOC_FUNCTION_HEADER
>> DDOC_TYPE_FUNCTION
>> DDOC_FUNCTION_PREFIX
>> DDOC_TYPE_MODIFIER
>> DDOC_EXTRA_MODIFIER
>> DDOC_TRUST
>> DDOC_FUNCTION_RETURN_TYPE
>> DDOC_FUNCTION_NAME
>> DDOC_FUNCTION_PARAMETERS
>> DDOC_FUNCTION_LPAREN
>> DDOC_FUNCTION_PARAMETER
>> DDOC_FUNCTION_PARAMETER_STC (storage class)
>> DDOC_FUNCTION_PARAMETER_TYPE
>> DDOC_FUNCTION_PARAMETER_NAME
>> [DDOC_FUNCTION_PARAMETER_DEFAULT]
>> [DDOC_FUNCTION_COMMA]
>> [DDOC_FUNCTION_VARARGS]
>> DDOC_FUNCTION_RPAREN
>> DDOC_DECLARATION_SEMICOLON
>> DDOC_DITTO
>> DDOC_FUNCTION_HEADER...
>> DDOC_FUNCTION_TEMPLATE_HEADER...
>> DDOC_TEMPLATE_HEADER
>> DDOC_FUNCTION_DOC
>> One major aspect in my changes is that there should be no hardcoded
>> output: everything can be redefined through macros, though sane
>> defaults
>> should be provided. Example:
>> DDOC_DECLARATION_SEMICOLON=;
>> DDOC_FUNCTION_VARARGS=...;
>> DDOC_FUNCTION_COMMA=,;
> This seems excessive.
> 

Unless you are setting up a new output format, you will never see them. In 
that light, it doesn't seem excessive to me.

-- 
... <IXOYE><





More information about the Digitalmars-d mailing list