2013-06-07 4 views
10

Sto cercando un modo per sopprimere gli avvertimenti Doxygen sulle funzioni membro non documentate, ma senza utilizzare //! @cond e //! @endcond, quindi le funzioni membro appaiono ancora nella sinossi del classe. Qualcosa di simile a quanto segue:Sopprimere l'avviso doxygen per la funzione membro non documentata, ma lasciare la sinossi in posizione

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

Queste funzioni membro fare la cosa più ovvia e non hanno bisogno di documentazione, ma ho ancora voglia loro di apparire nella lista delle funzioni membro disponibili nella documentazione (perché sapendo che una classe è questioni copiabili/assegnabili). Com'è, doxygen emette un avviso "non documentato" per ognuno di questi. Se utilizzo //! @cond e //! @endcond, i metodi scompaiono completamente dalla documentazione. Quello che vorrei è che i metodi rimangano visibili nella documentazione, ma senza ulteriori commenti, e voglio che l'ossigeno non si lamenti di non essere documentati.

Esiste una sorta di "commento fittizio" per dire a doxygen di tacere sulla mancanza di doc, ma conservare ancora i metodi nella documentazione, in modo che siano visibili?

+0

È la variabile di configurazione ['WARN_IF_UNDOCUMENTED'] (http://www.stack.nl/~dimitri/doxygen/manual/config.html#cfg_warn_if_undocumented) che cosa stai cercando? Impostalo su NO e Doxygen non emetterà questi avvertimenti. Potrebbe anche essere necessario impostare ['EXTRACT_ALL'] (http://www.stack.nl/~dimitri/doxygen/manual/config.html#cfg_extract_all) su' SÌ'. – Chris

+1

Non è proprio quello che sto cercando. Voglio sopprimere l'avviso solo per alcuni metodi, ma mantenere l'avviso per altri metodi non documentati. In sostanza, quello che mi piacerebbe è qualcosa come //! @ nowarn' e '//! @ Endnowarn'. In questo modo, potrei avere una build silenziosa senza molti avvertimenti, ma comunque ricevere avvisi sui metodi che dovrebbero essere documentati ma non lo sono. –

risposta

7

Hai solo bisogno di aggiungere parentesi. Questo funziona per me:

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

Non c'è nessun avviso e appare ancora nell'output. Si può alias questo commensali a \nowarn e \endnowarn se ti piace.

+0

Superbo, grazie! –

+0

Eccellente! Questo è genio. –