Frage

Ich bin mit Doxygen Dokumentation für unsere API zu erzeugen, in C # geschrieben. Allerdings macht es private / geschützt Mitglieder. Gibt es einen Weg, um diejenigen zu verbergen?

ich herausgefunden, wie Dateien zu verstecken: EXCLUDE = Liste der Dateinamen

Doch, ich brauche mehr Granularität und damit Schild Nutzer von unnötigem API Lärm. Eine Probe Doxygen Datei würde sowie Tipps / Tricks geschätzt werden.

Welche Tools verwenden Sie API aus dem Quellcode zu generieren?

Ich fühle mich im 18. Jahrhundert etwas links, wie ich Doxygen in C # weise C ++ verwenden.

War es hilfreich?

Lösung

Ich weiß nicht, wie gut C # durch Doxygen unterstützt wird.

Für private Mitglieder versteckt, Sie Doxyfile Konfigurationsdatei wie folgt zu ändern:

EXTRACT_PRIVATE        = YES

Viele andere Optionen können für verschiedene Arten von Extraktion / Ausblenden Codeelemente gesetzt werden, zum Beispiel unter Berufung auf Doxyfile selbst:

# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in 
# documentation are documented, even if no documentation was available. 
# Private class members and static file members will be hidden unless 
# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES

EXTRACT_ALL            = YES

# If the EXTRACT_PRIVATE tag is set to YES all private members of a class 
# will be included in the documentation.

EXTRACT_PRIVATE        = YES

# If the EXTRACT_STATIC tag is set to YES all static members of a file 
# will be included in the documentation.

EXTRACT_STATIC         = YES

# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) 
# defined locally in source files will be included in the documentation.
# If set to NO only classes defined in header files are included.

EXTRACT_LOCAL_CLASSES  = YES

# This flag is only useful for Objective-C code. When set to YES local
# methods, which are defined in the implementation section but not in
# the interface are included in the documentation.
# If set to NO (the default) only methods in the interface are included.

EXTRACT_LOCAL_METHODS  = YES

# If this flag is set to YES, the members of anonymous namespaces will be
# extracted and appear in the documentation as a namespace called
# 'anonymous_namespace{file}', where file will be replaced with the base
# name of the file that contains the anonymous namespace. By default
# anonymous namespace are hidden.

EXTRACT_ANON_NSPACES   = NO

# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all
# undocumented members of documented classes, files or namespaces.
# If set to NO (the default) these members will be included in the
# various overviews, but no documentation section is generated.
# This option has no effect if EXTRACT_ALL is enabled.

HIDE_UNDOC_MEMBERS     = NO

# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all
# undocumented classes that are normally visible in the class hierarchy.
# If set to NO (the default) these classes will be included in the various
# overviews. This option has no effect if EXTRACT_ALL is enabled.

HIDE_UNDOC_CLASSES     = NO

# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all
# friend (class|struct|union) declarations.
# If set to NO (the default) these declarations will be included in the
# documentation.

HIDE_FRIEND_COMPOUNDS  = NO

Andere Tipps

Überprüfen Sie die @cond Flagge für doxygen aus. In C # blende ich einige unserer Passwort-Verschlüsselung Mitglieder wie folgt aus:

    //! @cond
    private const String ENCRYPTEDFLAG = "xxxENCFLAGxxx";
    private const String SEED = "hi_i_r_@_seed";
    //! @endcond

Die doxygen Dokumentation würden Sie glauben, dass Sie ein bedingtes Symbol müssen definiert auf der @cond Linie doxygen und verwendet wird, aber das ist nicht für mich arbeiten. Diese Methode hat.

Dies funktioniert für mich, große Stücke von Code und Dokumentation zu verbergen:

/*! \cond PRIVATE */
<here goes private documented source code>
/*! \endcond */

Ausführen mit ENABLED_SECTIONS = PRIVATE Ihrer internen Version der Dokumente zu erstellen. Sie können mehrere Bedingungen haben und aktivieren / deaktivieren sie nach dem Publikum.

Um nur ein Teil einer Dokumentation Block zu verstecken, verwenden \internal (wird bis zum Ende des Blocks verstecken, es sei denn \endinternal gefunden wird)


. Hinweis: Sie können @ Schreibweise verwenden, wenn Sie es über Schrägstriche bevorzugen

Einige Möglichkeiten, aus dem doxygen Handbuch :

HIDE_UNDOC_MEMBERS, HIDE_UNDOC_CLASSES: Offensichtlich funktioniert nur, wenn Sie nur die öffentlichen Member dokumentieren

.

INTERNAL_DOCS: Hier können Sie die \ interne Markup verwenden Kommentare auszuschließen von der „öffentlichen“ Version der Dokumentation

.

ENABLED_SECTIONS: Ist allgemeinere Version von INTERNAL_DOCS

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top