私はSphinxによってドキュメントに変換されることを意図ドキュメンテーション文字列で、Pythonのクラスに以下のようなものがある:Sphinxを使用してPythonプロパティ設定ツールのドキュメントを生成するにはどうすればよいですか?
class Direction(object):
"""
A direction in which movement can be made.
"""
def __init__(self):
self._name = None
@property
def name(self):
"""
The unique name of the direction.
:return: The direction name
:rtype: string
"""
return self._name
@name.setter
def name(self, value):
"""
Sets the direction name.
:param string value: The direction name
"""
self._name = value
スフィンクスの出力は次のようなものになります。
クラス方向を (名称) 移動可能な方向。
名 方向の一意の名前。
戻り値:方向名
戻り値の型:限りそれが行くように細かな文字列
が、どの情報が完全に存在しないことを注意してくださいname
セッターについて。
スフィンクスにプロパティ設定ツールのドキュメントを生成させる方法はありますか?
これは、スフィンクスがそれを探す場所であれば、getterのドキュメントで特別なget/set動作を文書化する方が意味があるようです。 setterのドキュメントは基本的に余計です。つまり、プロパティであるため明示的に値を設定し、パラメータを文書化する必要もありません。すべてのsetterが同じ引数を必要とし、setterが実際に明示的に呼び出されないためです。特別な取得/設定動作は、実際にはプロパティ全体の特徴です。プロパティのポイントは、個別のget/set関数呼び出しではなく、単一の属性名を使用してアクセスされる点です。 – BrenBarn
@BrenBarnスフィンクスが期待していることがあれば、確かにそうすることができます。しかし、生成されたドキュメントは実際にそれがプロパティであることを示すものではなく、 ':param:'、 ':return:'および ':rtype:'タグを使って、 –
@MatthewMurdoch、Sphinxは '()'を使わずにゲッターを記録します。これは、組み合わされたドキュメントストリングと共に、ユーザーがそれがプロパティであることを理解するのに役立ちます。 –