Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Loading…

Output from anonymous category (private interface) in .m file #243

Open
drjackyl opened this Issue · 11 comments

6 participants

drjackyl tomaz George Cook bhirt Thomas Valera danvales82
drjackyl

I searched a while but couldn't find any issue describing this behaviour.

First of all: I am working with the current master of appledoc (1690b35, 14.8.2012 18:00) and Xcode 4.3.3

I'd like to document private methods and properties defined in an anonymous category (private interface) within the implementation file. So what I have here is:

/**
 * Private interface
 */
@interface TMDocsTest()

/// @name Documented private properties

/// Some private property!
@property (nonatomic, strong) BOOL someBool;


/// @name Documented private methods

/**
 * Starts the transformation
 */
- (void)transform;

@end

What I get is this:

Tasks

Public properties

      someString property

Initializers

    – initWithString:

Public methods

    – transformString

Other Methods

    – transform

Extension Methods

      someBool property

I expected "Other Methods" to actually be "Documented private methods" and "Extension methods" to be "Documented private properties"

When I put the appledoc-comment for the methods in the implementation-scope, I actually get "Documented private methods" as section and the method - transform

That doesn't work for the property.

I would like to be able to use sections in anymous categories / private interface.

Great tool, works really well,
keep up the good work,
regards,
Felix

tomaz
Owner

Does --keep-merged-sections change something - as described here?

drjackyl

Hm, I actually didn't read about --keep-merged-sections, my fault, but it didn't help either 8o)

It works for properties but not for methods. Example:

/**
 * Private interface
 */
@interface TMDocsTest()

/// @name Documented private properties

/// Some private property!
@property (nonatomic, strong) BOOL someBool;


/// @name Documented private methods

/**
 * Starts the transformation
 */
- (void)transform;

@end

leads to

Tasks

Public properties

      someString property

Initializers

    – initWithString:

Public methods

    – transformString

Other Methods

    – transform

Documented private properties

      someBool property
tomaz
Owner

Marking it as bug, will make sure it works when implementing this in 3.0.

I'm focusing on 3.0 whenever I get some time, so am only dealing with pull requests and minor issues for 2.0...

drjackyl

Thank you, I appreciate that.

George Cook

I desperately need this functionality.. is it long till 3.0?

If so, could you point me at what I need to hack to get it working?

tomaz
Owner

3.0 is still far away :) Not behind my cimputer right now, but merging functionality is implemented in processing classes (GBProcessor). If you get stuck let me know.

bhirt

I'm not sure if this is still on the radar, but I would love to see this too.

tomaz
Owner

It's still on radar :) As said, I'll make sure it works on 3.0, so you'll have to bear with it for a while...

Thomas Valera

This fix would be great!
Did anybody fix it himself?

danvales82

It's possible to work around the issue leaving undocumented the private properties/methods and set:
--keep-undocumented-objects = NO
--keep-undocumented-members = NO
I solved in this way.

Daniele

George Cook

Nice find. thanks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.