T O P I C R E V I E W |
diarrhio |
Posted - Feb 14 2007 : 1:24:56 PM A couple of requests on the Doxygen style documentation...
1) A lot of the code we have is part of a DLL we package up and export. As a result, we have __declspec(dllexport) wrapped in a #define (e.g. DLL_EXPORT), and many of our function signatures look like this:
DLL_EXPORT bool someMethod( int someParam );
Unfortunately, $SymbolType$ will include the DLL_EXPORT, which we don't want in our documentation. Can we get an option to ignore Macros or ignore specific text, or some way for us to control this?
2) Can we get a "Refactor Document Class" option, which will work similarly to Refactor Document Method, but for classes. I'm guessing we'll just need $SymbolName$ to expand to work with class names. Better yet, why limit it to just classes. VAX seems smart enough to know what type of identifier is selected. Can we have $SymbolName$ just determine the type of identifier and generate the appropriate type of documentation? (i.e. for classes, it would insert @class before the symbol name).
Thanks,
D |
5 L A T E S T R E P L I E S (Newest First) |
diarrhio |
Posted - Feb 20 2007 : 5:55:11 PM Thanks. I'll give that a shot. |
mmb |
Posted - Feb 20 2007 : 04:16:06 AM To diarrhio:
It is possible to do this in 2 steps:
in your doxyfile, set the following:
ENABLE_PREPROCESSING = YES EXPAND_ONLY_PREDEF = YES PREDEFINED = DLL_EXPORT=
This will remove all DLL_EXPORT's from the documented source. However, as it works like the C preprocessor, it will NOT process comments. So, if you have a @return DLL_EXPORT type tag DLL_EXPORT is still here.
To remove this you need to filter your input files. Add the following to your doxyfile: INPUT_FILTER = "filter.sh" FILTER_SOURCE_FILES = YES
And create a script filter.sh, for instance: #/bin/sh sed -e "s/@return DLL_EXPORT/@return/g" $1
This should do the trick ... |
feline |
Posted - Feb 14 2007 : 6:16:58 PM To be honest I know of Doxygen but I have never really used it, not seriously, so I have no idea about making it ignore words. |
diarrhio |
Posted - Feb 14 2007 : 4:48:21 PM Thanks for your prompt reply. Great about #2. About #1, do you know of a way to get Doxygen to ignore words found it encounters. I realize this isn't the proper forum to ask that question, but since i;m here and discussing it... |
feline |
Posted - Feb 14 2007 : 1:48:19 PM Point 2, this was recently discussed here: http://forum.wholetomato.com/forum/topic.asp?TOPIC_ID=5900 and I put in a feature request for this:
case=4932
Point 1, I see what you are asking for, I am just wondering what this will break, or what problems it might cause. It is cases like returning a function pointer, or a qualified type that I am thinking about, I am wary of breaking something by accident.
What it really boils down to is the question, is a macro ever part of the return type, so it should be included in the comment?
*ah* what about the macro:
#define BOOL bool
which then gives rise to the function:
BOOL returnSomething() { return TRUE; }
Have you considered a regular expression search and replace to remove all unwanted DLL_EXPORT lines from doxygen format comments? |
|
|