summaryrefslogtreecommitdiff
path: root/sphinx/util/nodes.py
diff options
context:
space:
mode:
authorTakeshi KOMIYA <i.tkomiya@gmail.com>2018-11-23 22:14:20 +0900
committerTakeshi KOMIYA <i.tkomiya@gmail.com>2018-11-23 22:14:20 +0900
commitd1aeedf67e7cb8c28cc09ea9b44a5e16f88ff07e (patch)
tree2feb21271e4d6e6c13d0d847e9be9c43e9e32a4d /sphinx/util/nodes.py
parent9f7b4ec3532d06e5d56220f1f4f2767eefe831c0 (diff)
downloadsphinx-git-d1aeedf67e7cb8c28cc09ea9b44a5e16f88ff07e.tar.gz
Fix annotations for util.nodes
Diffstat (limited to 'sphinx/util/nodes.py')
-rw-r--r--sphinx/util/nodes.py16
1 files changed, 9 insertions, 7 deletions
diff --git a/sphinx/util/nodes.py b/sphinx/util/nodes.py
index ff73819ee..f98c72b37 100644
--- a/sphinx/util/nodes.py
+++ b/sphinx/util/nodes.py
@@ -22,7 +22,7 @@ from sphinx.util import logging
if False:
# For type annotation
- from typing import Any, Callable, Iterable, List, Set, Tuple, Optional # NOQA
+ from typing import Any, Callable, Iterable, List, Optional, Set, Tuple, Type # NOQA
from sphinx.builders import Builder # NOQA
from sphinx.utils.tags import Tags # NOQA
@@ -57,7 +57,7 @@ class NodeMatcher:
"""
def __init__(self, *classes, **attrs):
- # type: (nodes.Node, Any) -> None
+ # type: (Type[nodes.Node], Any) -> None
self.classes = classes
self.attrs = attrs
@@ -118,7 +118,7 @@ def repr_domxml(node, length=80):
def apply_source_workaround(node):
- # type: (nodes.Node) -> None
+ # type: (nodes.Element) -> None
# workaround: nodes.term have wrong rawsource if classifier is specified.
# The behavior of docutils-0.11, 0.12 is:
# * when ``term text : classifier1 : classifier2`` is specified,
@@ -247,8 +247,9 @@ META_TYPE_NODES = (
def extract_messages(doctree):
- # type: (nodes.Node) -> Iterable[Tuple[nodes.Node, unicode]]
+ # type: (nodes.Element) -> Iterable[Tuple[nodes.Node, unicode]]
"""Extract translatable messages from a document tree."""
+ node = None # type: nodes.Element
for node in doctree.traverse(is_translatable):
if isinstance(node, addnodes.translatable):
for msg in node.extract_original_messages():
@@ -291,8 +292,9 @@ def traverse_parent(node, cls=None):
def traverse_translatable_index(doctree):
- # type: (nodes.Node) -> Iterable[Tuple[nodes.Node, List[unicode]]]
+ # type: (nodes.Element) -> Iterable[Tuple[nodes.Element, List[unicode]]]
"""Traverse translatable index node from a document tree."""
+ node = None # type: nodes.Element
for node in doctree.traverse(NodeMatcher(addnodes.index, inline=False)):
if 'raw_entries' in node:
entries = node['raw_entries']
@@ -322,7 +324,7 @@ def nested_parse_with_titles(state, content, node):
def clean_astext(node):
- # type: (nodes.Node) -> unicode
+ # type: (nodes.Element) -> unicode
"""Like node.astext(), but ignore images."""
node = node.deepcopy()
for img in node.traverse(nodes.image):
@@ -495,7 +497,7 @@ def process_only_nodes(document, tags):
# monkey-patch Element.copy to copy the rawsource and line
def _new_copy(self):
- # type: (nodes.Node) -> nodes.Node
+ # type: (nodes.Element) -> nodes.Element
newnode = self.__class__(self.rawsource, **self.attributes)
if isinstance(self, nodes.Element):
newnode.source = self.source