使用Doxygen生成DXL文档:if显示为函数

时间:2016-12-07 15:02:32

标签: doxygen ibm-doors

我正在尝试使用Doxygen生成一些DXL文档,但结果通常不正确,DXL用作脚本语言,并且具有类似C / C ++的语法,并且有一些更改,例如我可以忽略使用分号,我该怎么做才能纠正这个问题? 这在生成文档时会产生一些问题,这是我的dxl代码数据库的一个例子:

string replace (string sSource, string sSearch, string sReplace) {
int iLen = length sSource
if (iLen == 0) return ""

int iLenSearch = length(sSearch)

if (iLenSearch == 0) { 

    return "" 
}
char firstChar = sSearch[0]

Buffer s = create() 
int pos = 0, d1,d2;    
int i

while (pos < iLen) { 
    char ch = sSource[pos]; 
    bool found = true

    if (ch != firstChar) {pos ++; s+= ch; continue}
    for (i = 1; i < iLenSearch; i++) {
       if (sSource[pos+i] != sSearch[i]) { found = false; break }
    }
    if (!found) {pos++; s+= ch; continue}
    s += sReplace
    pos += iLenSearch
}

string result = stringOf s
delete s
return result   }

正如我所说的与C的主要区别并且可能导致doxygen错误地解释此代码是在DXL中,我们不必使用&#34 ;;&#34;

提前致谢

2 个答案:

答案 0 :(得分:0)

您必须做三件事才能在DXL脚本上成功应用Doxygen:

1。)在Doxygen-GUI中,“向导”选项卡,“模式”部分选择“优化C或PHP”

2。)DXL代码必须是C-confom,即每个语句都以分号结尾';'

3.在“专家”选项卡中,在“EXTENSION_MAPPING”下的“项目”部分设置DXL和INC文件的语言映射:
      dxl = C
      INC = C

这一切都告诉Doxygen将DXL脚本视为C代码。

答案 1 :(得分:0)

此外,为了让DOORS将为DoxyGen记录的DXL文件识别为有效并将其绑定到菜单项,它必须符合某些标题结构,包括单行和多行注释,例如

// <dxl-file>
/**
 * @file <dxl-file>
 * @copyright (c) ...
 * @author Th. Grosser
 * @date 01 Dec 2017
 * @brief ...
 */