From 8b1bf6dfc9df07fdba9b71fbff96a7ce4d86eff5 Mon Sep 17 00:00:00 2001 From: Takeshi KOMIYA Date: Wed, 3 Feb 2021 21:29:53 +0900 Subject: [PATCH] refactor: py domain: Put if-block for ast.Constant to the root level --- sphinx/domains/python.py | 11 +++++------ 1 file 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('', "...")]