Есть ли способ исключить функции и элементы уровня пакета из вывода 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 (для вкладок). Используя редактор с "совпадением в скобках", легко удалить все элементы после "Списка файлов".
Не элегантно, но это работает.