Может кто-нибудь сказать мне, что не так с этим кодом, поэтому doxygen не может справиться?Doxygen и typedefs внутри пространств имен
/*!
\file Enumerator.h
\brief Implements an Enumerator pointer for accessing linked list elements.
*/
#pragma once
#ifndef __MSCL_ENUMERATOR_H__
#define __MSCL_ENUMERATOR_H__
namespace MSCL
{
/*!
\typedef Enumerator
Pointer to linked list data structure.
\sa ArrayList::GetEnumerator, \sa List::GetEnumerator
*/
typedef void* Enumerator;
};
#endif
мне нужно перечислитель, который используется многими способами в качестве типа аргумента, чтобы быть
1), видимый в индексе справки.
2) Правильно связан с этой страницей документации.
Формат целевой документации - chm.
Это абсолютно сбивает с толку, потому что нет ошибки, нет предупреждения, ничего.
Однажды, после игры с различными настройками конфигурации doxygen мне удалось достичь # 1 - тип был в индексе, но я понятия не имею, какой переключатель сделал это, и я не мог повторить его.
Возможно, вы имели в виду ---------------------- /*! \ имен MSCL \ краткое бла-бла-бла бла-бла-бла */ имен MSCL { (...) ------------------- --- ? Не работает. Обычно блок декларации пространства имен {} определяется макросами - это я заменил на обычный синтаксис, потому что doxygen вообще не обрабатывал его - даже при включенной предварительной обработке. К сожалению, с определённым пространством имен или без него он не работает. BTW: документация для макроопределений препроцессора также не генерируется, поэтому, возможно, это переключатель, который я включил или выключил, что вызывает это? – mslaf
Я предполагаю, что переключатель настройки кислорода в кислороде будет мешать. Попробуйте положить Enumerator.h в пустую папку и запустить doxygen с пустым doxyconf. Добавьте комментарий и запустите doxygen снова, с пустым doxyconf. Для меня этот второй запуск создает документацию для Enumerator на странице «Ссылка на пространство имен MSCL», включая ссылки на ссылки в комментариях. – Neil
Проблема решена. По-видимому, проблема была вызвана значением «SHOW_FILES» равным false. BTW: если для параметра «SHOW_NAMESPACES» установлено значение false typedefs, в индексе отсутствует страница документации. Большое спасибо за помощь;) – mslaf