2013-07-17 14 views
8

スフィンクスのC and C++ domainsを見ると、enums(とはるかに少ない匿名のenum)を文書化するためのネイティブサポートがないようです。今のところ、enum型にはcpp:type::を使用し、すべての値とその説明のリストを使用しますが、それは対処する理想的な方法のようには見えません。私は型だけを参照するか、値の前に余分なマーカーを追加します)。スフィンクス:列挙型を文書化する正しい方法は?

これを行うより良い方法はありますか?そして、私は匿名の列挙型を扱うにはどうすればいいですか?

答えて

0

こんにちは、doxygenをc/C++のネイティブサポートがたくさん用意されているため、ドキュメント化することを検討する必要があります。ドキュメントのスフィンクス出力を保持したい場合は、doxygenからxmlとして出力することができます。Breatheを使用するとxmlが使用され、慣れているのと同じスフィンクス出力が得られます。

ここでは、呼吸のWebサイトからdoxygen形式の列挙型を文書化する例を示します。

//! Our toolset 
/*! The various tools we can opt to use to crack this particular nut */ 
enum Tool 
{ 
    kHammer = 0,   //!< What? It does the job 
    kNutCrackers,   //!< Boring 
    kNinjaThrowingStars //!< Stealthy 
}; 

希望します。

+0

Breatheの仕組みは実際に私たちのドキュメントが書かれている方法と互換性がない(出力を見れば、enumを提示するのと同様の問題があるようです) .BreatheとDoxygenは私たちにとって実行可能な選択肢ではありません、ごめんなさい。 – JustSid

3

Githubのプロジェクト、spdylayには、アプローチがあるようです。

/** 
* @enum 
* Error codes used in the Spdylay library. 
*/ 
typedef enum { 
    /** 
    * Invalid argument passed. 
    */ 
    SPDYLAY_ERR_INVALID_ARGUMENT = -501, 
    /** 
    * Zlib error. 
    */ 
    SPDYLAY_ERR_ZLIB = -502, 
} spdylay_error; 

あり https://github.com/tatsuhiro-t/spdylay/blob/master/doc/mkapiref.py

でご利用いただけます mkapiref.pyと呼ばれるAPIジェネレータを使用することを含む、彼らは https://github.com/tatsuhiro-t/spdylay/tree/master/docでそれをやっている方法のいくつかの記述、: https://github.com/tatsuhiro-t/spdylay/blob/master/lib/includes/spdylay/spdylay.h でヘッダファイルの1つが、このようなコードを持っていますそれがこの例で生成

RSTが

.. type:: spdylay_error 

    Error codes used in the Spdylay library. 

    .. macro:: SPDYLAY_ERR_INVALID_ARGUMENT 

     (``-501``) 
     Invalid argument passed. 
    .. macro:: SPDYLAY_ERR_ZLIB 

     (``-502``) 
     Zlib error. 

であるあなたは、見てみることができ、それが私たちだかどうかを確認しますあなたのためにeful。

+0

アレックスのおかげで、ありがとう - 私もこれの例が必要でした!私はあなたの答えに例文のために生成するスフィンクスマークアップを編集する自由を取った。 – Blair

関連する問題