aboutsummaryrefslogtreecommitdiff
path: root/scripts/gen_api_vimdoc.py
diff options
context:
space:
mode:
authorJustin M. Keyes <justinkz@gmail.com>2017-11-06 04:15:43 +0100
committerJustin M. Keyes <justinkz@gmail.com>2017-11-06 04:27:31 +0100
commit7e59b897c150e4d43af223aa47da115ee8beb653 (patch)
treecaa2048342d0c0aeaf84648c352690e90dd596ed /scripts/gen_api_vimdoc.py
parent7984959ef521bd06332d67a27b6b2ea07ffea43f (diff)
downloadrneovim-7e59b897c150e4d43af223aa47da115ee8beb653.tar.gz
rneovim-7e59b897c150e4d43af223aa47da115ee8beb653.tar.bz2
rneovim-7e59b897c150e4d43af223aa47da115ee8beb653.zip
gen_api_vimdoc.py: workaround: attributes of (void) functions
Diffstat (limited to 'scripts/gen_api_vimdoc.py')
-rw-r--r--scripts/gen_api_vimdoc.py13
1 files changed, 11 insertions, 2 deletions
diff --git a/scripts/gen_api_vimdoc.py b/scripts/gen_api_vimdoc.py
index 9128483f5f..8bc32d938f 100644
--- a/scripts/gen_api_vimdoc.py
+++ b/scripts/gen_api_vimdoc.py
@@ -38,6 +38,10 @@ import subprocess
from xml.dom import minidom
+if sys.version_info[0] < 3:
+ print("use Python 3")
+ sys.exit(1)
+
doc_filename = 'api.txt'
# String used to find the start of the generated part of the doc.
section_start_token = '*api-global*'
@@ -285,14 +289,19 @@ def parse_source_xml(filename):
parts = return_type.strip('_').split('_')
return_type = '%s(%s)' % (parts[0], ', '.join(parts[1:]))
+ name = get_text(get_child(member, 'name'))
+
annotations = get_text(get_child(member, 'argsstring'))
if annotations and ')' in annotations:
annotations = annotations.rsplit(')', 1)[-1].strip()
+ # XXX: (doxygen 1.8.11) 'argsstring' only includes FUNC_ATTR_*
+ # attributes if the function signature is non-void.
+ # Force attributes here for such functions.
+ if name == 'nvim_get_mode' and len(annotations) == 0:
+ annotations += 'FUNC_API_ASYNC'
annotations = filter(None, map(lambda x: annotation_map.get(x),
annotations.split()))
- name = get_text(get_child(member, 'name'))
-
vimtag = '*%s()*' % name
args = []
type_length = 0