Doxygen неправильно определяет тип возврата

У меня есть этот код:

#if PY_MAJOR_VERSION >= 3
int
#else
void
#endif
init_numpy()
{
    import_array();
}

Это не красиво, но это не проблема, которую я имею (причина этого кода обсуждается здесь https://mail.scipy.org/pipermail/numpy-discussion/2010-December/054357.html декабря/ 054357.html).

У меня проблема в том, что, если я добавлю комментарий к Doxygen выше, например:

/*! \brief some function
*
*/
#if PY_MAJOR_VERSION >= 3
...

Doxygen предполагает, что этот метод имеет тип возврата void. Что, конечно, не так в целом.

Вопрос

Есть ли способ получить правильную документацию, а именно, что тип возвращаемого значения зависит от используемой версии Python. Я не против, если приведенный выше код будет немного изменен (если, конечно, функциональность будет одинаковой).

1 ответ

Вы можете просто жестко закодировать тип возврата в комментарии. Он будет иметь тег [return] (я думаю) и просто иметь типы, которые могут быть (int/void), а затем указать причину в описании.

Другие вопросы по тегам