Doxygen - 使用带参数的Alias命令生成动态组

时间:2013-03-18 13:53:34

标签: dynamic grouping doxygen

我希望通过某种Alias命令自动创建一个组层次结构。例如。我想要小组

  • 扩展方法
    • 字符串扩展程序
    • Stream Extensions
    • ...

使用doxygen评论创建,例如

/** Documentation for the method
 *  \extension{string} 
 */
public void ExtensionMethod(this string str){
   ... 
}

\extension{string}将映射到

之类的地方
\addtogroup stringExtensions string Extensions
\ingroup ExtnMethods

不幸的是,这意味着为该方法编写的所有文档都会与该组相关联。

我最接近的是,如果你有像

这样的东西
/** \addtogroup stringExtensions string Extensions
 *  \ingroup ExtnMethods
 *  \@{
 *  \@}
 */

/** \ingroup stringExtensions
 *  Documentation for the method
 */ 
public void ExtensionMethod(this string str){
   ... 
}

它可以工作,但这需要2个单独的注释块,我找不到使用别名的任何方法。

我知道使用inputfilter可能会实现某些功能 - 但我希望能够实现更简单的功能。

1 个答案:

答案 0 :(得分:0)

我找到了一个使用比我原先想象的更整洁的输入过滤器的答案 - 解析整个文件寻找\extension{...},用适当的\ingroup命令替换它,然后附加所需的{{ 1}}命令位于文件的底部。

然后可以将其作为inputfilter

运行

以下是执行此操作的python脚本。请注意,它不会检查它正在替换的内容实际上是在doxygen注释中,但它对我的目的来说已经足够了。

\addgroup