4
votes

I am programming a project in Objective-C and I have started to use Doxygen to automatically generate documentation. A significant portion of the project contains basic C functions. Unfortunately Doxygen is not documenting C functions, only Objective-C classes and their methods. I have the functions defined in several header files like so:

BOOL myFunc(void);

Which I then have implemented in a .m.

Does Doxygen not detect straight C functions in Objective-C or is there an option I have to turn on? Is my function defined incorrectly for Doxygen?

1

1 Answers

2
votes

Doxygen certainly documents straight C functions.

After more testing

Use the Doxywizard and check the values in expert mode - it provides some nice help when you mouse over things. In particular, you should have changed the default so EXTRACT_ALL is checked

I think needing this to be set, opposite to the default, is possibly a bug.

If desperate, post the settings up in the question. I just created a sample from scratch and verified that your function showed up using Doxygen when I use EXTRACT_ALL but there is no File Members section if I turn that off.

You should see the functions underneath Files - File Members, as seen here in the VTK docs.

Sorry I didn't pick it up earlier but I always have EXTRACT_ALL on as I'm working on legacy code bases where most functions lack special comments.

earlier idea Try adding an @file comment at the top of the file to see if that is being processed.

   /// @file fred.h This file defines functions used in fred.m

My bet is that your file extension or your directory is not included in the doxygen setup file you're running.