在twisted的源代码中,许多文档字符串包含这样的格式:L {xxx}或C {xxx}或以'@'开头的行,它们的含义是什么?
例如,在twisted / internet / interfaces.py中:
def registerProducer(producer, streaming):
"""
Register to receive data from a producer.
...
For L{IPullProducer} providers, C{resumeProducing} will be called once
each time data is required.
...
@type producer: L{IProducer} provider
...
@return: C{None}
"""
L {IPullProducer},C {resumeProducing},@ type producer?
顺便说一句,这些格式是标准python文档字符串格式的一部分吗?如果是这样,我应该在哪里提到?谢谢:))
答案 0 :(得分:12)
Twisted使用的文档格式为Epytext, which is documented on epydoc.sourceforge.net
。
L{}
表示"链接" (即"这是一个Python标识符,请链接到它#34;)C{}
表示"代码" (即hello C{foo} bar
应格式化为" hello foo
bar")。 I{}
仅表示"斜体字"。您可以在epytext文档中看到更多字段。
Twisted项目使用pydoctor --add-package twisted
等调用生成pydoctor的文档。还有更多内容,要生成Twisted依赖的其他几个项目的链接,但如果你想为Twisted提供文档字符串,你可以使用它来获得一个想法。您也可以使用epydoc twisted
生成epydoc本身的文档,但epydoc不了解Zope接口,因此不会自动将类链接到它们实现的接口。
The generated API documentation for each release is published on twistedmatrix.com,您可以在那里浏览。