È possibile sovrascrivere SPHINX AutoDOC per funzioni specifiche?
-
27-10-2019 - |
Domanda
Sto usando il plugin AutoDOC di SPINX per documentare automaticamente un set di moduli. Ho una funzione che accetta *args
, e vorrei sovrascrivere la documentazione per mostrare il leggermente più bello funcname(arg1[, arg2[, ...]])
stile che usano i documenti di Python Stdlib.
È possibile sovrascrivere l'output AutoDOC per una funzione specifica?
Soluzione
È possibile sovrascrivere una firma utilizzando autofunction
:
.. automodule:: yourmodule
:members:
:exclude-members: funcname
.. autofunction:: funcname(arg1[, arg2[, ...]])
Tuttavia, la funzione con la firma sovrascritta non è ordinata con le altre funzioni. automodule
. Usando esplicito autofunction
Le direttive per ogni funzione funzionano intorno a:
.. autofunction:: firstfunc
.. autofunction:: funcname(arg1[, arg2[, ...]])
.. autofunction:: thirdfunc
Aggiunta
Puoi anche aggiungere al dottore:
.. autofunction:: funcname(arg1[, arg2[, ...]])
Extra documentation here.
Per sovrascrivere sia la firma che il docstring, usa function
invece di autofunction
.
Aggiunta 2
La firma può anche essere sovrascritta avendo una firma come prima riga della funzione docstring. Vedere questa risposta per dettagli.