views:

90

answers:

1

Hey guys, I am programming in objc and am documenting my stuff with doxygen. Unfortunately it is not documenting my c functions only my classes and their methods. I have them defined in a .h like so:

/// Returns whether the current machine is little endian based.
BOOL littleEndian(void);

and then I have them implemented in a .m. Does Doxygen not detect straight C functions in Objc or is there an option I have to turn on? Or am I doing something wrong?

+1  A: 

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.

Andy Dent
Nope its definitley getting processed. The files are listed in it. And I tried your @file thing no help. When running under Objective C does it stick to just methods and avoid c functions?
Justin Meiners
Ok that worked better it is now listing all of them which is great, but it is still not documenting them with the comments.
Justin Meiners
NVM I fixed it thank you so much! (I will you give you the bounty as soon as I can)
Justin Meiners