Doxygen C#<inheritdoc>一个.NET基类

时间:2017-11-22 19:47:15

标签: c# .net doxygen

问题我想继承标准.NET类的文档

(或者在doxygen文档中看起来没有记录)

在以下C#代码上使用Doxygen:

/// <summary>
/// ...
/// </summary>
public class MyCustomConverter: EnumConverter
{
      /// <inheritdoc/>
      public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value)
      {
       ...
      }
}

其中EnumConverter是标准.NET类

Doxygen config(简化):

QUIET = YES
INHERIT_DOCS = YES
EXTRACT_STATIC = YES
EXTRACT_PRIVATE = NO
WARN_NO_PARAMDOC = YES
WARN_IF_UNDOCUMENTED = YES
WARN_IF_DOC_ERROR = YES
WARN_AS_ERROR = NO
GENERATE_HTML = YES

Doxygen版本(1.8.13,最新版),稍后我想启用WARN_AS_ERROR(因为否则这些警告会被开发人员忽略)

不幸的是,doxygen会产生两个警告:

warning : parameters of member Cochlear.Cef.Localization.ResourceEnumTypeConverter.ConvertFrom are not (all) documented
warning : return type of member Cochlear.Cef.Localization.ResourceEnumTypeConverter.ConvertFrom is not documented

这是公平的,因为我认为它无法解析MSIL文件以提取文档( Q 或者我是否必须明确指出doxygen)?

所以现在我想要取消针对该特定功能的警告,以便我可以启用WARN_AS_ERROR,但我找不到办法做到这一点? //! @cond//! @endcond不会在此处执行,因为该功能已从文档中排除,这是不受欢迎的。 (如果我没有使用任何文件,我会得到&#34;未记录的#34;警告)

有关如何解决此问题的任何建议?

1 个答案:

答案 0 :(得分:0)

可以使用的工作(Source

//! \{
public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value)
{
...
}
//! \}

缺点是你不能有任何文件。如果你使用Visual Studio并让它生成XML文档,你必须禁止警告1591.虽然这不应该太关注,因为Doxygen将执行相同的检查。

虽然这不太理想,但也许有更好的解决方案。