【发布时间】:2012-07-12 14:12:45
【问题描述】:
我在 Objective-C iOS 项目中使用 doxygen,它没有将所有 @todo cmets 添加到待办事项列表页面。
所有的 cmets 都是这样的:
/** @todo Thing that needs to be done described here */
在项目中的大约 20 个中,只有 5 个显示在待办事项列表页面中。除了确实出现的所有模式都在“成员”部分中之外,我找不到任何明显的模式(一些没有出现的模式也在成员函数中,但我不能不知道为什么他们没有出现)。我希望所有@todo cmets 都会出现在待办事项列表中,无论它们在代码中的哪个位置。
更新: 我一直在尝试一个最小的类...
TodoTestClass.h:
#import <UIKit/UIKit.h>
@interface TodoTestClass : UIViewController
- (void)someMethod;
- (void)otherMethod;
/** @todo add a method to do foo */
@end
TodoTestClass.m:
#import "TodoTestClass.h"
@implementation TodoTestClass
- (void)viewDidLoad
{
[super viewDidLoad];
/** @todo do stuff here */
}
- (void)someMethod
{
/** @todo document and implement someMethod */
}
/**
This does some other stuff
*/
- (void)otherMethod
{
/** @todo implement otherMethod */
}
@end
标题中的@todo 注释和viewDidLoad 中的注释不会出现在待办事项列表中,但其他两个会出现。如果我从标题中删除 someMethod 和 otherMethod 的声明,它们都不会出现。因此,未记录方法中的@todo cmets(包括从未记录框架覆盖的方法)、私有方法以及与特定记录实体无关的一般 @todo cmets 不会被添加到待办事项列表中 - 就像 user ' cmets 中提到了 doxygen(谢谢)。
但是,现在我明白了为什么一些@todo cmets 没有出现,我对完整待办事项列表的渴望和我的问题仍然存在......
有什么方法可以配置 doxygen 以便将所有 @todo cmets 添加到待办事项列表中,无论它们在哪里?
【问题讨论】:
-
您能否提供一个没有出现@todo 项目的最小示例?请注意,待办事项必须是某些东西(即成员、接口、文件、全局变量等)文档的一部分。如果您认为自己发现了错误,最好在 doxygen 的错误跟踪器中提交错误报告。
-
这很棘手,因为我看不到明显的模式,但我会试一试。我不认为这是一个错误 - 可能是我不明白如何正确使用它。当您说它需要成为某些文档的一部分时,这是否意味着我不能将 todos 放在其他未记录的函数中,例如
/** @todo Replace foo with bar in the line below once bar is working */? -
@doxygen 我想做的事情目前似乎不可能,如何添加功能请求(而不是错误)?
标签: objective-c ios doxygen