Есть ли способ исключить функции и элементы уровня пакета из вывода Doxygen?

Я работаю с Doxygen на рабочем месте, и у меня проблемы с кодом Java. Если EXTRACT_ALL=NO, EXTRACT_PRIVATE=NO, EXTRACT_STATIC=NO, EXTRACT_LOCAL_CLASSES=NO и EXTRACT_LOCAL_METHODS=NO, выходные данные по-прежнему содержат статические элементы, которые не определены как открытые или закрытые.

EX. Допустим, у меня есть следующий код:

class EXAMPLE{

public static func1()

private static func2()

static func3()

}

func3 определяется только как static потому что это функция уровня пакета.

func1 а также func3 появляются в выводе, а я хочу только func1 появляться.

Кто-нибудь знает способ показать только те функции, которые явно определены как публичные?

Заранее спасибо.

2 ответа

Вы можете поместить вещи, которые вы не хотите видеть в выводе кислорода внутри \cond ... \endcond блок:

class EXAMPLE{

public static func1()

/// \cond

private static func2()
static func3()

/// \endcond

}

Разрабатывая некоторые новые фильтры для Doxygen (HTML, XSLT, BAT..., см. https://github.com/msillano/filters_dox), я создаю много псевдофункций с одинаковыми именами. Страницы файла в порядке, но это делает страницы "Члены файла / все" и "Члены / функции файла" без какого-либо интереса. В Doxygen-config невозможно исключить создание этих страниц (позор). Я нашел обходной путь для вывода HTML (на версии 1.8.15).

  • Установите для эксперта /HTML/HTML_DYNAMIC_MENUS значение "да".
  • Сборка документации.
  • Отредактируйте файлы navtreedata.js (для древовидного меню) и menudata.js (для вкладок). Используя редактор с "совпадением в скобках", легко удалить все элементы после "Списка файлов".

Не элегантно, но это работает.

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