Fortran类型绑定程序的doxygen处理

时间:2015-12-17 01:52:19

标签: fortran doxygen

我正在使用doxygen(1.8.10)记录一些包含类型绑定过程(成员函数)的Fortran类。该过程的文档与包含该定义的模块相关联。我希望文档与它所绑定的类型相关联,但我无法取得良好的效果。

我定义新类型/类的典型方法是定义一个模块type_newtype,它只包含新数据类型newtype_t的定义以及类型绑定过程。此处显示,包括新数据类型的类型绑定过程。

module type_newtype
    implicit none


    !> Class documentation
    type, public :: newtype_t

        integer(ik)  :: val

    contains

        procedure :: set_val

    end type newtype_t


contains


    !> set val
    !!
    !! @param[in] self
    !! @param[in] i
    subroutine set_val(self,i)
        class(newtype_t),  intent(in)  :: self
        integer(ik),       intent(in)  :: i


        self%val = i

    end subroutine set_val


end module type_newtype

当doxygen处理文件时,类型绑定过程的条目显示在模块type_newtype下,但不在实际数据类型newtype_t下。

我尝试将EXTRACT_ALL转为ON。这也为set_val下的newtype_t类型绑定过程提供了一个条目,但不包含任何文档。界面中没有简短的,没有变量。

我的目标是让程序文档在其关联类型中存在。不是模块。实际上,两者都没问题,但条目只显示在模块下完成。我欢迎任何经验以及关于使用和风格的建议,因为我是doxygen的相对新人。

1 个答案:

答案 0 :(得分:1)

您可以按照@copydoc所述,在类型绑定过程中尝试设置here

contains

    procedure :: set_val !< @copydoc type_newtype::set_val

然后应该复制文档。但是在我的情况下,呼叫签名丢失了,这似乎仍然是doxygen中的一个错误。参见here