2011-03-19 20 views
10

Bir dizi modülü otomatik olarak belgelemek için Sphinx'in autodoc eklentisini kullanıyorum. *args kabul eden bir işlev var ve Python stdlib belgelerinin kullandığı biraz daha güzel funcname(arg1[, arg2[, ...]]) stilini göstermek için belgeleri geçersiz kılmak istiyorum.Sphinx autodoc'u belirli işlevler için geçersiz kılmak mümkün mü?

belirli bir işlev için AutoDoc çıkışını geçersiz kılmak mümkün mü?

cevap

16

O autofunction kullanarak bir imza geçersiz kılmak mümkündür:

.. automodule:: yourmodule 
    :members: 
    :exclude-members: funcname 

.. autofunction:: funcname(arg1[, arg2[, ...]]) 

Ancak geçersiz kılınmış imzası ile fonksiyon automodule ile çekilmiş diğer işlevlerle sıralanır. Her fonksiyon için açık autofunction direktifleri kullanarak o etrafında çalışır:

.. autofunction:: firstfunc 

.. autofunction:: funcname(arg1[, arg2[, ...]]) 

.. autofunction:: thirdfunc 

ilavesi

Ayrıca docstringe ekleyebilirsiniz: yerine function kullanın

.. autofunction:: funcname(arg1[, arg2[, ...]]) 

    Extra documentation here. 

imza ve docstring'ini hem geçersiz kılmak için autofunction.

Eklenen 2

imza da işlev docstringe ilk satırı olan bir imzası bulunan geçersiz kılınabilir. Detaylar için bakınız this answer. "Addition2" için

+0

+1. İmzayı doc dizesinde geçersiz kılmak, üyeyi hariç tutmaya çalışmaktan çok daha kolaydır, ardından özel imzayı vb. – brianmearns

İlgili konular