|
42 | 42 | from six import python_2_unicode_compatible, iteritems
|
43 | 43 | from typing import cast, List, Any, Callable, Optional, Union
|
44 | 44 |
|
45 |
| -if sys.version_info >= (3, 9): |
46 |
| - StrList = list[str] |
47 |
| - StrLList = list[list[str]] |
48 |
| -else: |
49 |
| - StrList = List[str] # Python 3.8 and earlier |
50 |
| - StrLList = List[List[str]] |
51 |
| - |
52 | 45 | try:
|
53 | 46 | from StringIO import StringIO # type: ignore
|
54 | 47 | except ImportError:
|
|
64 | 57 | )
|
65 | 58 | from .node import Node
|
66 | 59 |
|
| 60 | +if sys.version_info >= (3, 9): |
| 61 | + StrList = list[str] |
| 62 | + StrLList = list[list[str]] |
| 63 | + NodeList = list[Node] |
| 64 | +else: |
| 65 | + StrList = List[str] # Python 3.8 and earlier |
| 66 | + StrLList = List[List[str]] |
| 67 | + NodeList = List[Node] |
| 68 | + |
| 69 | + |
67 | 70 | __author__ = "chenxm"
|
68 | 71 |
|
69 | 72 |
|
@@ -365,7 +368,7 @@ def add_node(self, node: Node, parent: Optional[Union[Node, str]] = None) -> Non
|
365 | 368 | self.__update_bpointer(node.identifier, pid)
|
366 | 369 | node.set_initial_tree_id(cast(str, self._identifier))
|
367 | 370 |
|
368 |
| - def all_nodes(self) -> list[Node]: |
| 371 | + def all_nodes(self) -> NodeList: |
369 | 372 | """Return all nodes in a list"""
|
370 | 373 | return list(self._nodes.values())
|
371 | 374 |
|
@@ -408,7 +411,7 @@ def ancestor(self, nid, level=None):
|
408 | 411 | ascendant_level = self.level(ascendant)
|
409 | 412 | return None
|
410 | 413 |
|
411 |
| - def children(self, nid: str) -> list[Node]: |
| 414 | + def children(self, nid: str) -> NodeList: |
412 | 415 | """
|
413 | 416 | Return the children (Node) list of nid.
|
414 | 417 | Empty list is returned if nid does not exist
|
@@ -522,7 +525,7 @@ def expand_tree(
|
522 | 525 |
|
523 | 526 | elif mode is self.ZIGZAG:
|
524 | 527 | # Suggested by Ilya Kuprik ([email protected]).
|
525 |
| - stack_fw: list[Node] = [] |
| 528 | + stack_fw: NodeList = [] |
526 | 529 | queue.reverse()
|
527 | 530 | stack = stack_bw = queue
|
528 | 531 | direction = False
|
@@ -583,7 +586,7 @@ def is_branch(self, nid):
|
583 | 586 | fpointer = []
|
584 | 587 | return fpointer
|
585 | 588 |
|
586 |
| - def leaves(self, nid: Optional[str] = None) -> list[Node]: |
| 589 | + def leaves(self, nid: Optional[str] = None) -> NodeList: |
587 | 590 | """Get leaves of the whole tree or a subtree."""
|
588 | 591 | leaves = []
|
589 | 592 | if nid is None:
|
@@ -988,7 +991,7 @@ def write(line):
|
988 | 991 | else:
|
989 | 992 | return self._reader
|
990 | 993 |
|
991 |
| - def siblings(self, nid: str) -> list[Node]: |
| 994 | + def siblings(self, nid: str) -> NodeList: |
992 | 995 | """
|
993 | 996 | Return the siblings of given @nid.
|
994 | 997 |
|
|
0 commit comments