我很难理解doxygen如何在Python中使用命名空间。默认情况下会生成名称为“filename”的名称空间,即temp.py
。我还可以使用\package
或\namespace
命令声明新的命名空间。
但是,我不明白为什么下面的类(或任何其他定义)总是出现在temp
名称空间下?
请帮助我理解命名空间命令在doxygen中的工作原理。
如果您知道在doxygen中如何以及为什么/ namespace pr / package命令,您可以绕过下面的示例并直接回答它。
#filename = temp.py
##\mainpage Main Page Title
#\brief main page title comments \n
## class class_demo1 \n
# the class declared below \n
class class_demo1:
pass
from new_package import *
现在,我正在添加一个名为\ new_package的新命名空间,添加到temp.py文件中
##\package new_package
#new namespace comments \n
我还创建了一个名为\ new_package.py的文件,并在其中添加了以下行:
def demo_fun:
pass
class demo_class:
pass
在生成的文档中,我在namespace \ temp下得到\ class_demo1。 但是,新的名称空间\ new_package.py不显示声明的类和def 它
答案 0 :(得分:2)
如果在Demo
模块中定义new_package
类,则将new_package.temp
类放入new_package/
├── __init__.py
│ # from .temp import Demo
└── temp.py
# class Demo:
# pass
命名空间:
{{1}}
在这种情况下,doxygen只需要反映代码中已有的关系。