diff --git a/frame/__pycache__/CompareViews.cpython-312.pyc b/frame/__pycache__/CompareViews.cpython-312.pyc index 3e16a48..1ebb339 100644 Binary files a/frame/__pycache__/CompareViews.cpython-312.pyc and b/frame/__pycache__/CompareViews.cpython-312.pyc differ diff --git a/frame/__pycache__/ReferView.cpython-312.pyc b/frame/__pycache__/ReferView.cpython-312.pyc index 400ce76..71337d0 100644 Binary files a/frame/__pycache__/ReferView.cpython-312.pyc and b/frame/__pycache__/ReferView.cpython-312.pyc differ diff --git a/graph/directed_acyclic_graph/__pycache__/DAGLayout.cpython-312.pyc b/graph/directed_acyclic_graph/__pycache__/DAGLayout.cpython-312.pyc index 5051962..12cb3ea 100644 Binary files a/graph/directed_acyclic_graph/__pycache__/DAGLayout.cpython-312.pyc and b/graph/directed_acyclic_graph/__pycache__/DAGLayout.cpython-312.pyc differ diff --git a/parse/StoryMap.py b/parse/StoryMap.py index 47bdd99..ab7d209 100644 --- a/parse/StoryMap.py +++ b/parse/StoryMap.py @@ -1,5 +1,5 @@ import xml.dom.minidom as mdom -from typing import List, Tuple, Dict +from typing import List, Tuple, Dict, Union from abc import abstractmethod from enum import Enum from frame.ReferView import EmptyNode @@ -20,23 +20,23 @@ class ElementSlice: raise NotImplementedError("type") @abstractmethod - def parent_slice(self) -> 'ElementSlice' | None: + def parent_slice(self) -> Union['ElementSlice', None]: raise NotImplementedError() @abstractmethod - def set_prev(self, inst: 'ElementSlice' | None): + def set_prev(self, inst: Union['ElementSlice', None]): raise NotImplementedError() @abstractmethod - def prev_sibling(self) -> 'ElementSlice' | None: + def prev_sibling(self) -> Union['ElementSlice', None]: raise NotImplementedError() @abstractmethod - def set_next(self, inst: 'ElementSlice' | None): + def set_next(self, inst: Union['ElementSlice', None]): raise NotImplementedError() @abstractmethod - def next_sibling(self) -> 'ElementSlice' | None: + def next_sibling(self) -> Union['ElementSlice', None]: raise NotImplementedError() @abstractmethod @@ -52,23 +52,23 @@ class Collection: class SiblingsImpl(ElementSlice): def __init__(self): - self.__prev_sib: 'StoryDefine' | None = None - self.__next_sib: 'StoryDefine' | None = None + self.__prev_sib: Union['StoryDefine', None] = None + self.__next_sib: Union['StoryDefine', None] = None pass - def parent_slice(self) -> 'ElementSlice' | None: + def parent_slice(self) -> Union['ElementSlice', None]: pass - def set_prev(self, inst: 'ElementSlice' | None): + def set_prev(self, inst: Union['ElementSlice', None]): pass - def prev_sibling(self) -> 'ElementSlice' | None: + def prev_sibling(self) -> Union['ElementSlice', None]: pass - def set_next(self, inst: 'ElementSlice' | None): + def set_next(self, inst: Union['ElementSlice', None]): pass - def next_sibling(self) -> 'ElementSlice' | None: + def next_sibling(self) -> Union['ElementSlice', None]: pass def index(self) -> int: @@ -79,30 +79,30 @@ class StoryDefine(ElementSlice, Collection): def __init__(self, nm: str, idx: int): self.__index = idx self.__name = nm - self.__prev_sib: 'StoryDefine' | None = None - self.__next_sib: 'StoryDefine' | None = None + self.__prev_sib: Union['StoryDefine', None] = None + self.__next_sib: Union['StoryDefine', None] = None self.__children: List[ElementSlice] = [] pass def type(self) -> SliceType: return SliceType.StoryDefine - def parent_slice(self) -> 'ElementSlice' | None: + def parent_slice(self) -> Union['ElementSlice', None]: return None - def set_prev(self, inst: 'ElementSlice' | None): + def set_prev(self, inst: Union['ElementSlice', None]): self.__prev_sib = inst pass - def prev_sibling(self) -> 'ElementSlice' | None: + def prev_sibling(self) -> Union['ElementSlice', None]: return self.__prev_sib pass - def set_next(self, inst: 'ElementSlice' | None): + def set_next(self, inst: Union['ElementSlice', None]): self.__next_sib = inst pass - def next_sibling(self) -> 'ElementSlice' | None: + def next_sibling(self) -> Union['ElementSlice', None]: return self.__next_sib pass @@ -131,30 +131,30 @@ def calc_index(inst: ElementSlice) -> int: class TextParagraph(ElementSlice): def __init__(self, parent: ElementSlice): self.__parent_node = parent - self.__prev_node: ElementSlice | None = None - self.__next_node: ElementSlice | None = None + self.__prev_node: Union[ElementSlice, None] = None + self.__next_node: Union[ElementSlice, None] = None self.__text_lines: List[str] = [] pass def type(self) -> SliceType: return SliceType.TextParagraph - def parent_slice(self) -> 'ElementSlice' | None: + def parent_slice(self) -> Union['ElementSlice', None]: return self.__parent_node - def set_prev(self, inst: 'ElementSlice' | None): + def set_prev(self, inst: Union['ElementSlice', None]): self.__prev_node = inst pass - def prev_sibling(self) -> 'ElementSlice' | None: + def prev_sibling(self) -> Union['ElementSlice', None]: return self.__prev_node - def set_next(self, inst: 'ElementSlice' | None): + def set_next(self, inst: Union['ElementSlice', None]): self.__next_node = inst inst.set_prev(self) pass - def next_sibling(self) -> 'ElementSlice' | None: + def next_sibling(self) -> Union['ElementSlice', None]: return self.__next_node def index(self) -> int: @@ -165,8 +165,8 @@ class FragmentDefine(ElementSlice): def __init__(self, nm:str, parent: ElementSlice): self.__name = nm self.__parent_inst = parent - self.__prev_node: ElementSlice | None = None - self.__next_node: ElementSlice | None = None + self.__prev_node: Union[ElementSlice, None] = None + self.__next_node: Union[ElementSlice, None] = None self.__refer_nodes: List[ElementSlice] = [] self.__description: TextParagraph = TextParagraph(self) pass @@ -174,22 +174,22 @@ class FragmentDefine(ElementSlice): def type(self) -> SliceType: return SliceType.FragmentDefine - def parent_slice(self) -> 'ElementSlice' | None: + def parent_slice(self) -> Union['ElementSlice', None]: return self.__parent_inst - def set_prev(self, inst: 'ElementSlice' | None): + def set_prev(self, inst: Union['ElementSlice', None]): self.__prev_node = inst pass - def prev_sibling(self) -> 'ElementSlice' | None: + def prev_sibling(self) -> Union['ElementSlice', None]: return self.__prev_node - def set_next(self, inst: 'ElementSlice' | None): + def set_next(self, inst: Union['ElementSlice', None]): self.__next_node = inst inst.set_prev(self) pass - def next_sibling(self) -> 'ElementSlice' | None: + def next_sibling(self) -> Union['ElementSlice', None]: return self.__next_node def index(self) -> int: @@ -210,7 +210,7 @@ class FragmentDefine(ElementSlice): class FragmentRefer(ElementSlice): def __init__(self, parent: ElementSlice): - + pass class FragmentSlice(EmptyNode): @@ -221,8 +221,8 @@ class FragmentSlice(EmptyNode): self.fragm_refer = "" self.fragm_sort_i = 0 - self.prev_node: 'FragmentSlice' | None = None # 上游节点 - self.next_node: 'FragmentSlice' | None = None # 下游节点 + self.prev_node: Union['FragmentSlice', None] = None # 上游节点 + self.next_node: Union['FragmentSlice', None] = None # 下游节点 self.refers_slice: Dict[str, 'FragmentSlice'] = {} # 引用切面 self.text_sections: List[str] = [] # 文本段落 @@ -272,7 +272,7 @@ class StoryMap: self.slice_list.append(node) pass - def get_fragment_defined(self, name: str) -> FragmentSlice | None: + def get_fragment_defined(self, name: str) -> Union[FragmentSlice, None]: for fit in self.slice_list: if fit.is_define_node[0]: if fit.is_define_node[1] == name: @@ -305,7 +305,7 @@ class XAST_ParseTool: pass return values - def __extract_empty_storymap(self, name: str) -> Tuple[StoryMap, mdom.Element] | None: + def __extract_empty_storymap(self, name: str) -> Union[Tuple[StoryMap, mdom.Element], None]: storys = self.dom_tree.getElementsByTagName("story") for node in storys: if node.getAttribute("name") == name: diff --git a/parse/__pycache__/StoryMap.cpython-312.pyc b/parse/__pycache__/StoryMap.cpython-312.pyc index 79fbc5c..bc01619 100644 Binary files a/parse/__pycache__/StoryMap.cpython-312.pyc and b/parse/__pycache__/StoryMap.cpython-312.pyc differ