Pytanie Zignoruj ​​ostrzeżenie doxygen dla nieudokumentowanej funkcji członkowskiej, ale pozostaw synopsis na miejscu


Szukam sposobu na stłumienie ostrzeżeń doxygen dotyczących nieudokumentowanych funkcji członkowskich, ale bez użycia //! @cond i //! @endcond, więc funkcje członka wciąż pojawiają się w streszczeniu klasy. Coś jak poniżej:

class Foo
{
public:
    Foo();
    Foo(const Foo&);
    Foo& operator=(const Foo&);
};

Te funkcje składowe robią oczywiste rzeczy i nie potrzebują dokumentacji, ale nadal chcę, aby pojawiały się na liście dostępnych funkcji składowych w dokumentacji (ponieważ wiedza, że ​​klasa jest możliwa do skopiowania / przypisania). Jak to jest, doxygen emituje "nie udokumentowane" ostrzeżenie dla każdego z nich. Jeśli używam //! @cond i //! @endcond, metody znikają całkowicie z dokumentacji. Chciałbym, żeby metody pozostały widoczne w dokumentacji, ale bez dalszych komentarzy, i chcę, żeby tlen nie narzekał na to, że są nieudokumentowane.

Czy jest jakiś rodzaj "fikcyjnego komentarza", który mówi doxygenowi, żeby się zamknął z powodu braku dokumentu, ale nadal zachowuje metody w dokumentacji, więc są one widoczne?


11
2018-06-07 21:28


pochodzenie


Jest zmienną konfiguracyjną WARN_IF_UNDOCUMENTED czego szukasz? Ustaw to na NO i Doxygen nie wyda tych ostrzeżeń. Może być również konieczne ustawienie EXTRACT_ALL do YES. - Chris
To nie jest to, o co mi chodzi. Chcę wyłączyć ostrzeżenie dla kilku metod, ale zachować ostrzeżenie dla innych nieudokumentowanych metod. W zasadzie to, co chciałbym, to coś w stylu //! @nowarn i //! @endnowarn. W ten sposób mógłbym uzyskać cichą kompilację bez wielu ostrzeżeń, ale nadal otrzymuję powiadomienia o metodach, które powinny być udokumentowane, ale nie są. - Michi Henning


Odpowiedzi:


Musisz tylko dodać nawiasy. To działa dla mnie:

//! \{
const int myVar3 = 3;
const int myVar4 = 3;
//! \}

Nie ma ostrzeżenia i nadal pojawia się na wyjściu. Możesz nazywać to komandami \nowarn i \endnowarn Jeśli lubisz.


9
2018-04-07 11:48



Znakomity, dziękuję! - Michi Henning
Doskonały! To jest geniusz. - Nathan Osman