Herdando as docstrings dos métodos em Python
Eu tenho uma hierarquia OO com docstrings que exigem tanta manutenção quanto o próprio código. Por exemplo.
class Swallow(object):
def airspeed(self):
"""Returns the airspeed (unladen)"""
raise NotImplementedError
class AfricanSwallow(Swallow):
def airspeed(self):
# whatever
Agora, o problema é queAfricanSwallow.airspeed
não herda a documentação do método da superclasse. Eu sei que posso manter a docstring usando o padrão do método de modelo, ou seja,
class Swallow(object):
def airspeed(self):
"""Returns the airspeed (unladen)"""
return self._ask_arthur()
e implementação_ask_arthur
em cada subclasse. No entanto, eu queria saber se há outra maneira de herdar os documentos, talvez algum decorador que eu ainda não tinha descoberto?