mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-02 07:13:54 -06:00
qapi: Conjure up QAPIDoc.ArgSection for undocumented members
qapi2texi.py already conjures up ArgSections for undocumented enumeration values, in texi_enum. Drop that, and conjure them up for all kinds of "arguments" (enumeration values, object and alternate type members) in qapi.py instead. Take care to keep generated documentation exactly the same for now. Signed-off-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> Message-Id: <1489582656-31133-16-git-send-email-armbru@redhat.com>
This commit is contained in:
parent
069fb5b250
commit
860e877861
2 changed files with 18 additions and 18 deletions
|
@ -224,8 +224,7 @@ class QAPIDoc(object):
|
|||
def connect_member(self, member):
|
||||
if member.name not in self.args:
|
||||
# Undocumented TODO outlaw
|
||||
pass
|
||||
else:
|
||||
self.args[member.name] = QAPIDoc.ArgSection(member.name)
|
||||
self.args[member.name].connect(member)
|
||||
|
||||
|
||||
|
|
|
@ -123,7 +123,7 @@ def texi_format(doc):
|
|||
return "\n".join(lines)
|
||||
|
||||
|
||||
def texi_body(doc):
|
||||
def texi_body(doc, only_documented=False):
|
||||
"""
|
||||
Format the body of a symbol documentation:
|
||||
- main body
|
||||
|
@ -131,17 +131,21 @@ def texi_body(doc):
|
|||
- followed by "Returns/Notes/Since/Example" sections
|
||||
"""
|
||||
body = texi_format(str(doc.body)) + "\n"
|
||||
if doc.args:
|
||||
body += "@table @asis\n"
|
||||
for arg, section in doc.args.iteritems():
|
||||
|
||||
args = ''
|
||||
for name, section in doc.args.iteritems():
|
||||
if not section.content and not only_documented:
|
||||
continue # Undocumented TODO require doc and drop
|
||||
desc = str(section)
|
||||
opt = ''
|
||||
if section.optional:
|
||||
desc = re.sub(r'^ *#optional *\n?|\n? *#optional *$|#optional',
|
||||
'', desc)
|
||||
opt = ' (optional)'
|
||||
body += "@item @code{'%s'}%s\n%s\n" % (arg, opt,
|
||||
texi_format(desc))
|
||||
args += "@item @code{'%s'}%s\n%s\n" % (name, opt, texi_format(desc))
|
||||
if args:
|
||||
body += "@table @asis\n"
|
||||
body += args
|
||||
body += "@end table\n"
|
||||
|
||||
for section in doc.sections:
|
||||
|
@ -183,10 +187,7 @@ def texi_union(expr, doc):
|
|||
|
||||
def texi_enum(expr, doc):
|
||||
"""Format an enum to texi"""
|
||||
for i in expr['data']:
|
||||
if i not in doc.args:
|
||||
doc.args[i] = qapi.QAPIDoc.ArgSection(i)
|
||||
body = texi_body(doc)
|
||||
body = texi_body(doc, True)
|
||||
return TYPE_FMT(type="Enum",
|
||||
name=doc.symbol,
|
||||
body=body)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue