【问题标题】:Doxygen last enum member not documentedDoxygen 最后一个枚举成员未记录
【发布时间】:2015-05-17 07:33:24
【问题描述】:

我有一个枚举,它使用成员分组在一个组中一次性设置成员值。

代码如下:

/** MP format tags
 *
 * See the DC-007_E Specification.
 * 5.2.2.3  Table 3, page 13
 */
typedef enum
{
    /*MP Index IFD*/


    ///@{
    ///Mandatory
    MPTag_MPFVersion        = 0xB000,
    MPTag_NumberOfImages    = 0xB001,
    MPTag_MPEntry           = 0xB002,
    ///@}


    ///@{
    ///Optional
    //TODO : implement those tags
    MPTag_ImageUIDList      = 0xB003,
    MPTag_TotalFrames       = 0xB004,
    ///@}

    ///@{
    ///Individual image tags (attributes)
    MPTag_IndividualNum     = 0xb101,
    MPTag_PanOrientation    = 0xb201,
    MPTag_PanOverlapH       = 0xb202,
    MPTag_PanOverlapV       = 0xb203,
    MPTag_BaseViewpointNum  = 0xb204,
    MPTag_ConvergenceAngle  = 0xb205,
    MPTag_BaselineLength    = 0xb206,
    MPTag_VerticalDivergence= 0xb207,
    MPTag_AxisDistanceX     = 0xb208,
    MPTag_AxisDistanceY     = 0xb209,
    MPTag_AxisDistanceZ     = 0xb20a,
    MPTag_YawAngle          = 0xb20b,
    MPTag_PitchAngle        = 0xb20c,
    MPTag_RollAngle         = 0xb20d

    ///@}
}MPExt_MPTags;

但枚举的最后一个成员 (MPTag_RollAngle) 没有记录。

我将DISTRIBUTE_GROUP_DOC 设置为true

可以看到html输出here

更新:

错误已修复:

【问题讨论】:

  • 只是在黑暗中拍摄,但您尝试过MPTag_RollAngle = 0xb20d, 吗?注意后缀逗号,是的,它是合法的语法。
  • 添加逗号确实有效,但我认为这不是最终解决方案。这是否意味着它是一个 Doxygen 错误?
  • @Lectem:我会这么说,是的。
  • 在我看来是 bug_645165 (bugzilla.gnome.org/show_bug.cgi?id=645165) 的副本,并在此错误报告中查看给出的评论。

标签: c++ c enums doxygen


【解决方案1】:

您只需在最后一个 enum 元素中添加一个尾随逗号即可自动记录:

typedef enum  {
    // ...
    MPTag_RollAngle = 0xb20d, // <<< add trailing comma
};

“添加逗号确实有效,但我认为这不是最终解决方案。这是否意味着它是一个 Doxygen 错误?”

嗯,那当然可以被认为是 doxygen 解析器的错误。
但我个人还是更喜欢这种风格(说实话:我滥用这种风格是为了让复制行和编辑更容易,这在编写代码时应该被视为一种强烈不鼓励的行为)。

【讨论】:

  • 已批准,因为它正在工作并且可能没有其他解决方案。供将来参考,该错误已报告bugzilla.gnome.org/show_bug.cgi?id=746226
  • 这里不再工作了(Fedora 21 是最新的)。我想隐藏最后一个成员,不管有没有逗号,它都会被记录下来。
  • @moorray 可能同时它已在您的 doxygen 版本中得到修复。 This post 展示了一种技术,您可以实际隐藏任何元素以使其不被记录。
猜你喜欢
  • 2012-08-15
  • 2013-07-09
  • 2010-10-07
  • 2012-11-24
  • 2014-09-03
  • 2014-03-02
  • 2014-10-07
  • 2012-10-13
  • 2014-04-10
相关资源
最近更新 更多