summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sphinx/domains/python.py11
1 files changed, 5 insertions, 6 deletions
diff --git a/sphinx/domains/python.py b/sphinx/domains/python.py
index 02a32f47c..5e430a1d7 100644
--- a/sphinx/domains/python.py
+++ b/sphinx/domains/python.py
@@ -108,6 +108,11 @@ def _parse_annotation(annotation: str, env: BuildEnvironment = None) -> List[Nod
return result
elif isinstance(node, ast.BitOr):
return [nodes.Text(' '), addnodes.desc_sig_punctuation('', '|'), nodes.Text(' ')]
+ elif isinstance(node, ast.Constant): # type: ignore
+ if node.value is Ellipsis:
+ return [addnodes.desc_sig_punctuation('', "...")]
+ else:
+ return [nodes.Text(node.value)]
elif isinstance(node, ast.Expr):
return unparse(node.value)
elif isinstance(node, ast.Index):
@@ -143,12 +148,6 @@ def _parse_annotation(annotation: str, env: BuildEnvironment = None) -> List[Nod
return result
else:
- if isinstance(node, ast.Constant): # type: ignore
- if node.value is Ellipsis:
- return [addnodes.desc_sig_punctuation('', "...")]
- else:
- return [nodes.Text(node.value)]
-
if sys.version_info < (3, 8):
if isinstance(node, ast.Ellipsis):
return [addnodes.desc_sig_punctuation('', "...")]