\private - not working for external doc blocks

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

\private - not working for external doc blocks

Monique Semp
Hello, Doxygen users,
 
In Doxygen 1.8.10, the \private command does not seem to work for functions that are documented external from their source file, via the \fn command. I’ve used the \private command extensively in .c files, but it’s not being honored in external (.dxd) files.
 
This is for C functions, and I have the EXTRACT_PRIVATE setting set to NO. In the .dxd file, I have separate Doxygen blocks for every function in the .h file that I want *omitted* from the Doxygen output, and after the \fn command, I have the \private command.
 
Doxygen doesn’t generate function details for these functions (and if I doxygen-search for these functions, they’re correctly not found), but they do show up in the Files list, which is very undesirable. I tried simply not including the .h file in the input, but Doxygen seems to require it to match up the functions in the .dxd file. (That is, if I omit the .h file, I get no output for the functions in the .dxd file.)
 
Does anyone have any ideas what I’m doing wrong?
 
Thanks,
-Monique

------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140
_______________________________________________
Doxygen-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/doxygen-users
Reply | Threaded
Open this post in threaded view
|

Re: \private - not working for external doc blocks

Monique Semp
More details (which likely I’ll just have to include in a Bugzilla bug report?)...
 
I can get output without those unwanted functions (the ones with the \private command in the external file, where functions are defined with the \fn command) by omitting all \file commands for the .h file, but still including the .h file in the Doxyfile INPUT option. I’d previously had the \file command for the .h file in the external file, but by removing the \file command, the output ends up with only those functions that I want (the ones without the \private command).
 
But... a different, worse problem occurs: the functions that I do want are (incorrectly) no longer included in the Files > Globals lists.
 
So as it stands it seems that I must choose between
 
* Showing unwanted private (not real private C++, but C \fn functions in external files, with the \private command after the \fn command) functions in the applicable file’s list in the File view.
 
-OR-
 
* Not showing the necessary functions in the Globals lists.
 
All suggestions/corrections/work-arounds will be gratefully received,
-Monique
 
 
Sent: Monday, February 22, 2016 5:34 PM
Subject: [Doxygen-users] \private - not working for external doc blocks
 
Hello, Doxygen users,
 
In Doxygen 1.8.10, the \private command does not seem to work for functions that are documented external from their source file, via the \fn command. I’ve used the \private command extensively in .c files, but it’s not being honored in external (.dxd) files.
 
This is for C functions, and I have the EXTRACT_PRIVATE setting set to NO. In the .dxd file, I have separate Doxygen blocks for every function in the .h file that I want *omitted* from the Doxygen output, and after the \fn command, I have the \private command.
 
Doxygen doesn’t generate function details for these functions (and if I doxygen-search for these functions, they’re correctly not found), but they do show up in the Files list, which is very undesirable. I tried simply not including the .h file in the input, but Doxygen seems to require it to match up the functions in the .dxd file. (That is, if I omit the .h file, I get no output for the functions in the .dxd file.)
 
Does anyone have any ideas what I’m doing wrong?
 
Thanks,
-Monique


------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140


_______________________________________________
Doxygen-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/doxygen-users

------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140
_______________________________________________
Doxygen-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/doxygen-users
Reply | Threaded
Open this post in threaded view
|

Re: \private - not working for external doc blocks

Monique Semp
And to complete this thread, in case anyone else stumbles into this issue, here’s my workaround.
 
Although not ideal because the goal was to not have any Doxygen comments in certain sensitive source files (that are distributed to customers, but we don’t want the detailed documentation in the source code), if I simply surround the unwanted functions by \cond and \endcond, Doxygen of course excludes that part of the file from processing, and so those functions don’t appear in the output.
 
I still would like to better understand how to use the \private command, and if it has known limitations or whether it should work as I expected. But this workaround is ok.
 
-Monique
 
 
Sent: Tuesday, February 23, 2016 6:15 AM
Subject: Re: [Doxygen-users] \private - not working for external doc blocks
 
More details (which likely I’ll just have to include in a Bugzilla bug report?)...
 
I can get output without those unwanted functions (the ones with the \private command in the external file, where functions are defined with the \fn command) by omitting all \file commands for the .h file, but still including the .h file in the Doxyfile INPUT option. I’d previously had the \file command for the .h file in the external file, but by removing the \file command, the output ends up with only those functions that I want (the ones without the \private command).
 
But... a different, worse problem occurs: the functions that I do want are (incorrectly) no longer included in the Files > Globals lists.
 
So as it stands it seems that I must choose between
 
* Showing unwanted private (not real private C++, but C \fn functions in external files, with the \private command after the \fn command) functions in the applicable file’s list in the File view.
 
-OR-
 
* Not showing the necessary functions in the Globals lists.
 
All suggestions/corrections/work-arounds will be gratefully received,
-Monique
 
 
Sent: Monday, February 22, 2016 5:34 PM
Subject: [Doxygen-users] \private - not working for external doc blocks
 
Hello, Doxygen users,
 
In Doxygen 1.8.10, the \private command does not seem to work for functions that are documented external from their source file, via the \fn command. I’ve used the \private command extensively in .c files, but it’s not being honored in external (.dxd) files.
 
This is for C functions, and I have the EXTRACT_PRIVATE setting set to NO. In the .dxd file, I have separate Doxygen blocks for every function in the .h file that I want *omitted* from the Doxygen output, and after the \fn command, I have the \private command.
 
Doxygen doesn’t generate function details for these functions (and if I doxygen-search for these functions, they’re correctly not found), but they do show up in the Files list, which is very undesirable. I tried simply not including the .h file in the input, but Doxygen seems to require it to match up the functions in the .dxd file. (That is, if I omit the .h file, I get no output for the functions in the .dxd file.)
 
Does anyone have any ideas what I’m doing wrong?
 
Thanks,
-Monique


------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140


_______________________________________________
Doxygen-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/doxygen-users


------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140


_______________________________________________
Doxygen-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/doxygen-users

------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140
_______________________________________________
Doxygen-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/doxygen-users