Python domain can link multiple types in a type field

This commit is contained in:
Ashley Whetter 2016-09-18 06:38:27 +01:00
parent d8876ce4b2
commit ea86d23845
2 changed files with 8 additions and 1 deletions

View File

@ -371,6 +371,13 @@ using the following syntax::
:type point: tuple(float, float)
:type point: tuple[float, float]
Multiple types in a type field will be linked automatically if separated by
the word "or"::
:type an_arg: int or None
:vartype a_var: str or int
:rtype: float or str
.. _python-roles:
Cross-referencing Python objects

View File

@ -103,7 +103,7 @@ class PyXrefMixin(object):
def make_xrefs(self, rolename, domain, target, innernode=nodes.emphasis,
contnode=None):
delims = '(\s*[\[\]\(\),]\s*)'
delims = '(\s*[\[\]\(\),](?:\s*or\s)?\s*|\s+or\s+)'
delims_re = re.compile(delims)
sub_targets = re.split(delims, target)