Doxygen注释/属性被忽略



我使用doxygen生成xml,然后将其转换为自定义文档。

doxygen是否有可能包含字段/类/函数的注释。

java和c#中都忽略了注释。例如:

class User
{ 
    [Required]
    string UserName {get;set;}              
}

doxygen中未解析/显示"Required"注释。

我希望在doxygen的xml/html输出中有一个属性/field/类的所有带注释的Annotations(例如"[Required]")。

EXTRACT_ALL=YES在这种情况下是无用的。看看这个答案,我认为这是个好主意:Doxygen并将属性值添加到输出文档

因此,您必须创建过滤器(例如在phyton中),Doxygen将使用该过滤器将注释转换为注释。别忘了通知Doxygen您的过滤器:INPUT_FILTER = doxygenFilter.py我也有同样的问题,所以我用这种方式修改了这个例子:

#!/usr/bin/env python
import sys
import re
if (len(sys.argv) < 2):
    print "No input file"
else:
    f = open(sys.argv[1])
    line = f.readline()
    while line:
        re1 = re.compile("s*[(.*)]s*")
        re1.search(line)
        sys.stdout.write(re1.sub(r"/// <para>Annotation: [1]</para>n", line))
        #sys.stdout.write(line)
        line = f.readline()
    f.close()

所以像这样的代码

[AnyAnnotation()]

将转换为:

/// <param> Annotation [AnyAnnotation()] </param>`

所以我得到了非常好的结果。标签<param>是为了避免Doxygen把这个注释描述放到主描述中。相反,它将把它放在备注部分。

我不确定你在问什么,但我会说一些可能对你有帮助的事情。

必须对Doxygen进行配置,以便为没有Doxygen注释的代码元素生成文档。换句话说,您可以告诉Doxygen为所有函数、变量、宏等生成文档,即使代码中没有文档。在配置文件中设置EXTRACT_ALL=YES

如果运行DoxyWizard,您将更好地了解所有可用选项以及每个选项的效果。DoxyWizard是Doxygen的GUI前端。

顺便说一句,为记录您的代码而喝彩!

最新更新