0

I have a definition on Objective-C that looks like this:

@property(nonatomic, retain) BOOL myProperty NS_AVAILABLE_IOS(3_2);

When parsing this header file with Doxygen, it gets the type as "BOOL myprop", the name as "NS_AVAILABLE_IOS" and the arguments as "(3_2)".

Is there any way of making Doxygen recognize this properly without adding comments (I can't modify the files)? Maybe making it ignore the NS_AVAILABLE_IOS macro?

Edu Garcia
  • 453
  • 7
  • 21

2 Answers2

2

You should let doxygen's preprocessor remove the macro invocation. To do this use the following configuration settings:

ENABLE_PREPROCESSING   = YES
MACRO_EXPANSION        = YES
EXPAND_ONLY_PREDEF     = YES
PREDEFINED             = NS_AVAILABLE_IOS(x)=

See http://www.doxygen.org/manual/preprocessing.html for details.

doxygen
  • 14,341
  • 2
  • 43
  • 37
  • Thank you! I forgot to post this, but I discovered that yesterday and was playing with it, very useful indeed :) – Edu Garcia Jul 11 '13 at 12:05
0

Use

@property (nonatomic, assign) BOOL myProperty;

or

@property (nonatomic, assign, getter=isWorking) BOOL myProperty;
Prashant Kumar
  • 20,069
  • 14
  • 47
  • 63
Dipak Narigara
  • 1,796
  • 16
  • 18
  • I specified that I cannot modify the original files. I know that removing those macros will make Doxygen behave, but I need to do it without touching them. – Edu Garcia Jul 09 '13 at 06:57