синтаксис doxygen в python

может кто-нибудь, пожалуйста, помогите мне выяснить, как правильно комментировать код python, чтобы получить анализ doxygen?

каким-то образом он игнорирует теги. На выходе (HTML) отображаются теги:

@brief Creates a new Hello object.
This Hello Object is beeing used to ...

@param name The name of the user.

оба варианта я пробовал не работают:

class Hello:
    """@brief short description...

    longer description
    """
    def __init__(self, name):
    """@brief Creates a new Hello object.

    This Hello Object is beeing used to ...

    @param name The name of the user.
    """
        self.name = name

class Hello:
    """brief short description...

    longer description
    """
    def __init__(self, name):
    """brief Creates a new Hello object.

    This Hello Object is beeing used to ...

    param name The name of the user.
    """
        self.name = name

2 ответов


Doxygen также имеет недокументированную функцию( или ошибку): он анализирует синтаксис Doxygen в docstring, если вы запускаете docstring с восклицательным знаком:

class Hello: 
    def __init__(self, name):
    """!@brief Creates a new Hello object.

    This Hello Object is being used to...

    @param name The name of the user.
    """
    self.name = name
        dosomething(12)

    def dosomething(x):         
        dosomethingelse

обратите внимание, что в Python docsting вам нужно использовать @ вместо \ для запуска команд Doxygen (обратная косая черта работает как escape-символ в docstring).


чтобы Doxygen распознал специальные команды в комментариях Python, вы должны использовать следующую форму комментариев:

class Hello: 
    ## \brief Short description.
    # Longer description. 
    # \param self
    # \param name
    def __init__(self, name):         
        dosomething(12)

    def dosomething(x):         
        dosomethingelse

см.http://www.stack.nl / ~Дмитрий / доксиген / docblocks.html#pythonblocks